diff mbox series

[v6,15/17] hw/loongarch: fdt remove unused irqchip node

Message ID 20240307164835.300412-16-gaosong@loongson.cn (mailing list archive)
State New, archived
Headers show
Series Add boot LoongArch elf kernel with FDT | expand

Commit Message

gaosong March 7, 2024, 4:48 p.m. UTC
Signed-off-by: Song Gao <gaosong@loongson.cn>
Message-Id: <20240301093839.663947-16-gaosong@loongson.cn>
---
 hw/loongarch/virt.c | 31 +------------------------------
 1 file changed, 1 insertion(+), 30 deletions(-)

Comments

bibo mao March 8, 2024, 8:44 a.m. UTC | #1
On 2024/3/8 上午12:48, Song Gao wrote:
> Signed-off-by: Song Gao <gaosong@loongson.cn>
> Message-Id: <20240301093839.663947-16-gaosong@loongson.cn>
> ---
>   hw/loongarch/virt.c | 31 +------------------------------
>   1 file changed, 1 insertion(+), 30 deletions(-)
> 
> diff --git a/hw/loongarch/virt.c b/hw/loongarch/virt.c
> index d00343f0c2..c80732a223 100644
> --- a/hw/loongarch/virt.c
> +++ b/hw/loongarch/virt.c
> @@ -446,34 +446,6 @@ static void fdt_add_pcie_node(const LoongArchMachineState *lams,
>       g_free(nodename);
>   }
>   
> -static void fdt_add_irqchip_node(LoongArchMachineState *lams)
> -{
> -    MachineState *ms = MACHINE(lams);
> -    char *nodename;
> -    uint32_t irqchip_phandle;
> -
> -    irqchip_phandle = qemu_fdt_alloc_phandle(ms->fdt);
> -    qemu_fdt_setprop_cell(ms->fdt, "/", "interrupt-parent", irqchip_phandle);
> -
> -    nodename = g_strdup_printf("/intc@%lx", VIRT_IOAPIC_REG_BASE);
> -    qemu_fdt_add_subnode(ms->fdt, nodename);
> -    qemu_fdt_setprop_cell(ms->fdt, nodename, "#interrupt-cells", 3);
> -    qemu_fdt_setprop(ms->fdt, nodename, "interrupt-controller", NULL, 0);
> -    qemu_fdt_setprop_cell(ms->fdt, nodename, "#address-cells", 0x2);
> -    qemu_fdt_setprop_cell(ms->fdt, nodename, "#size-cells", 0x2);
> -    qemu_fdt_setprop(ms->fdt, nodename, "ranges", NULL, 0);
> -
> -    qemu_fdt_setprop_string(ms->fdt, nodename, "compatible",
> -                            "loongarch,ls7a");
> -
> -    qemu_fdt_setprop_sized_cells(ms->fdt, nodename, "reg",
> -                                 2, VIRT_IOAPIC_REG_BASE,
> -                                 2, PCH_PIC_ROUTE_ENTRY_OFFSET);
> -
> -    qemu_fdt_setprop_cell(ms->fdt, nodename, "phandle", irqchip_phandle);
> -    g_free(nodename);
> -}
> -
>   static void fdt_add_memory_node(MachineState *ms,
>                                   uint64_t base, uint64_t size, int node_id)
>   {
> @@ -1011,8 +983,7 @@ static void loongarch_init(MachineState *machine)
>   
>       /* Initialize the IO interrupt subsystem */
>       loongarch_irq_init(lams);
> -    fdt_add_irqchip_node(lams);
> -    platform_bus_add_all_fdt_nodes(machine->fdt, "/intc",
> +    platform_bus_add_all_fdt_nodes(machine->fdt, "/platic",
>                                      VIRT_PLATFORM_BUS_BASEADDRESS,
>                                      VIRT_PLATFORM_BUS_SIZE,
>                                      VIRT_PLATFORM_BUS_IRQ);
> 
Reviewed-by: Bibo Mao <maobibo@loongson.cn>
diff mbox series

Patch

diff --git a/hw/loongarch/virt.c b/hw/loongarch/virt.c
index d00343f0c2..c80732a223 100644
--- a/hw/loongarch/virt.c
+++ b/hw/loongarch/virt.c
@@ -446,34 +446,6 @@  static void fdt_add_pcie_node(const LoongArchMachineState *lams,
     g_free(nodename);
 }
 
-static void fdt_add_irqchip_node(LoongArchMachineState *lams)
-{
-    MachineState *ms = MACHINE(lams);
-    char *nodename;
-    uint32_t irqchip_phandle;
-
-    irqchip_phandle = qemu_fdt_alloc_phandle(ms->fdt);
-    qemu_fdt_setprop_cell(ms->fdt, "/", "interrupt-parent", irqchip_phandle);
-
-    nodename = g_strdup_printf("/intc@%lx", VIRT_IOAPIC_REG_BASE);
-    qemu_fdt_add_subnode(ms->fdt, nodename);
-    qemu_fdt_setprop_cell(ms->fdt, nodename, "#interrupt-cells", 3);
-    qemu_fdt_setprop(ms->fdt, nodename, "interrupt-controller", NULL, 0);
-    qemu_fdt_setprop_cell(ms->fdt, nodename, "#address-cells", 0x2);
-    qemu_fdt_setprop_cell(ms->fdt, nodename, "#size-cells", 0x2);
-    qemu_fdt_setprop(ms->fdt, nodename, "ranges", NULL, 0);
-
-    qemu_fdt_setprop_string(ms->fdt, nodename, "compatible",
-                            "loongarch,ls7a");
-
-    qemu_fdt_setprop_sized_cells(ms->fdt, nodename, "reg",
-                                 2, VIRT_IOAPIC_REG_BASE,
-                                 2, PCH_PIC_ROUTE_ENTRY_OFFSET);
-
-    qemu_fdt_setprop_cell(ms->fdt, nodename, "phandle", irqchip_phandle);
-    g_free(nodename);
-}
-
 static void fdt_add_memory_node(MachineState *ms,
                                 uint64_t base, uint64_t size, int node_id)
 {
@@ -1011,8 +983,7 @@  static void loongarch_init(MachineState *machine)
 
     /* Initialize the IO interrupt subsystem */
     loongarch_irq_init(lams);
-    fdt_add_irqchip_node(lams);
-    platform_bus_add_all_fdt_nodes(machine->fdt, "/intc",
+    platform_bus_add_all_fdt_nodes(machine->fdt, "/platic",
                                    VIRT_PLATFORM_BUS_BASEADDRESS,
                                    VIRT_PLATFORM_BUS_SIZE,
                                    VIRT_PLATFORM_BUS_IRQ);