qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-ppc] [PATCH 16/25] PPC: e500: dt: create serial nodes dynamica


From: Scott Wood
Subject: Re: [Qemu-ppc] [PATCH 16/25] PPC: e500: dt: create serial nodes dynamically
Date: Thu, 31 May 2012 17:02:43 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20120430 Thunderbird/12.0.1

On 05/30/2012 06:00 AM, Alexander Graf wrote:
> @@ -196,6 +199,38 @@ static int mpc8544_load_device_tree(CPUPPCState *env,
>      /* XXX should contain a reasonable value */
>      qemu_devtree_setprop_cell(fdt, soc, "bus-frequency", 0);
>  
> +    /*
> +     * We have to generate ser1 first, because Linux takes the first
> +     * device it finds in the dt as serial output device. And we generate
> +     * devices in reverse order to the dt.
> +     */
> +    sprintf(ser1, "%s/address@hidden", soc,
> +            MPC8544_SERIAL1_REGS_BASE - MPC8544_CCSRBAR_BASE);
> +    qemu_devtree_add_subnode(fdt, ser1);
> +    qemu_devtree_setprop_string(fdt, ser1, "device_type", "serial");
> +    qemu_devtree_setprop_string(fdt, ser1, "compatible", "ns16550");
> +    qemu_devtree_setprop_cell2(fdt, ser1, "reg", MPC8544_SERIAL1_REGS_BASE -
> +                               MPC8544_CCSRBAR_BASE, 0x100);
> +    qemu_devtree_setprop_cell(fdt, ser1, "cell-index", 1);
> +    qemu_devtree_setprop_cell(fdt, ser1, "clock-frequency", 0);
> +    qemu_devtree_setprop_cell2(fdt, ser1, "interrupts", 42, 2);
> +    qemu_devtree_setprop_phandle(fdt, ser1, "interrupt-parent", mpic);
> +    qemu_devtree_setprop_string(fdt, "/aliases", "serial1", ser1);

Please put this somewhere it won't have to be duplicated for every board
-- preferably in the serial device code itself.

-Scott




reply via email to

[Prev in Thread] Current Thread [Next in Thread]