Lines Matching +full:interrupt +full:- +full:parent

4 #include "kvm/kvm-cpu.h"
93 _FDT(fdt_property_cell(fdt, "#address-cells", 0x1)); in generate_cpu_nodes()
94 _FDT(fdt_property_cell(fdt, "#size-cells", 0x0)); in generate_cpu_nodes()
95 _FDT(fdt_property_cell(fdt, "timebase-frequency", in generate_cpu_nodes()
96 kvm->cpus[0]->riscv_timebase)); in generate_cpu_nodes()
98 for (cpu = 0; cpu < kvm->nrcpus; ++cpu) { in generate_cpu_nodes()
102 struct kvm_cpu *vcpu = kvm->cpus[cpu]; in generate_cpu_nodes()
108 snprintf(cpu_isa, CPU_ISA_MAX_LEN, "rv%ld", vcpu->riscv_xlen); in generate_cpu_nodes()
112 index = valid_isa_order[i] - 'A'; in generate_cpu_nodes()
113 if (vcpu->riscv_isa & (1 << (index))) in generate_cpu_nodes()
120 if (ioctl(vcpu->vcpu_fd, KVM_GET_ONE_REG, &reg) < 0) in generate_cpu_nodes()
126 if (kvm->cfg.arch.ext_disabled[isa_info_arr[i].ext_id]) { in generate_cpu_nodes()
128 if (ioctl(vcpu->vcpu_fd, KVM_SET_ONE_REG, &reg) < 0) in generate_cpu_nodes()
137 if (ioctl(vcpu->vcpu_fd, KVM_GET_ONE_REG, &reg) < 0) in generate_cpu_nodes()
144 if (ioctl(vcpu->vcpu_fd, KVM_GET_ONE_REG, &reg) < 0) in generate_cpu_nodes()
160 if (ioctl(vcpu->vcpu_fd, KVM_GET_ONE_REG, &reg) < 0) in generate_cpu_nodes()
161 satp_mode = (vcpu->riscv_xlen == 64) ? 8 : 1; in generate_cpu_nodes()
166 if (vcpu->riscv_xlen == 64) { in generate_cpu_nodes()
169 _FDT(fdt_property_string(fdt, "mmu-type", in generate_cpu_nodes()
173 _FDT(fdt_property_string(fdt, "mmu-type", in generate_cpu_nodes()
177 _FDT(fdt_property_string(fdt, "mmu-type", in generate_cpu_nodes()
181 _FDT(fdt_property_string(fdt, "mmu-type", in generate_cpu_nodes()
188 _FDT(fdt_property_string(fdt, "mmu-type", in generate_cpu_nodes()
192 _FDT(fdt_property_string(fdt, "mmu-type", in generate_cpu_nodes()
199 _FDT(fdt_property_cell(fdt, "riscv,cbom-block-size", cbom_blksz)); in generate_cpu_nodes()
201 _FDT(fdt_property_cell(fdt, "riscv,cboz-block-size", cboz_blksz)); in generate_cpu_nodes()
205 _FDT(fdt_begin_node(fdt, "interrupt-controller")); in generate_cpu_nodes()
206 _FDT(fdt_property_string(fdt, "compatible", "riscv,cpu-intc")); in generate_cpu_nodes()
207 _FDT(fdt_property_cell(fdt, "#interrupt-cells", 1)); in generate_cpu_nodes()
208 _FDT(fdt_property(fdt, "interrupt-controller", NULL, 0)); in generate_cpu_nodes()
224 cpu_to_fdt64(kvm->arch.memory_guest_start), in setup_fdt()
225 cpu_to_fdt64(kvm->ram_size), in setup_fdt()
230 kvm->arch.dtb_guest_start); in setup_fdt()
240 _FDT(fdt_property_string(fdt, "compatible", "linux,dummy-virt")); in setup_fdt()
241 _FDT(fdt_property_cell(fdt, "#address-cells", 0x2)); in setup_fdt()
242 _FDT(fdt_property_cell(fdt, "#size-cells", 0x2)); in setup_fdt()
248 if (kvm->cfg.firmware_filename) { in setup_fdt()
249 if (kvm->cfg.kernel_cmdline) in setup_fdt()
251 kvm->cfg.kernel_cmdline)); in setup_fdt()
254 kvm->cfg.real_cmdline)); in setup_fdt()
256 _FDT(fdt_property_string(fdt, "stdout-path", "serial0")); in setup_fdt()
259 if (kvm->arch.initrd_size != 0) { in setup_fdt()
260 u64 ird_st_prop = cpu_to_fdt64(kvm->arch.initrd_guest_start); in setup_fdt()
261 u64 ird_end_prop = cpu_to_fdt64(kvm->arch.initrd_guest_start + in setup_fdt()
262 kvm->arch.initrd_size); in setup_fdt()
264 _FDT(fdt_property(fdt, "linux,initrd-start", in setup_fdt()
266 _FDT(fdt_property(fdt, "linux,initrd-end", in setup_fdt()
288 _FDT(fdt_property_string(fdt, "compatible", "simple-bus")); in setup_fdt()
289 _FDT(fdt_property_cell(fdt, "#address-cells", 0x2)); in setup_fdt()
290 _FDT(fdt_property_cell(fdt, "#size-cells", 0x2)); in setup_fdt()
291 _FDT(fdt_property_cell(fdt, "interrupt-parent", in setup_fdt()
298 generate_mmio_fdt_nodes = dev_hdr->data; in setup_fdt()
307 generate_mmio_fdt_nodes = dev_hdr->data; in setup_fdt()
337 if (kvm->cfg.arch.dump_dtb_filename) in setup_fdt()
338 dump_fdt(kvm->cfg.arch.dump_dtb_filename, fdt_dest); in setup_fdt()