[U-Boot] [PATCH v1 1/2] Revert "powerpc: mpc85xx: remove P2020DS board support"

Bin Meng bmeng.cn at gmail.com
Tue Feb 2 04:19:15 CET 2016


Hi York,

On Tue, Feb 2, 2016 at 11:11 AM, york sun <york.sun at nxp.com> wrote:
> On 02/01/2016 04:05 PM, Simon Glass wrote:
> <snip>
>>>
>>> I will take this chance to convert P2020DS to use DM. Need some guidance here.
>>> For NS16550, it needs the clock. To keep it simple, let's presume platform data
>>> is used. My trouble is the clock is not unknown at compiling time. It needs to
>>> be updated by checking the board/soc configuration after power up. The clock is
>>> only available after get_clocks() is called in init_sequance. Is there a way I
>>> can update the clocks before the driver is initialized?
>>>
>>> York
>>
>> See this commit:
>>
>> 858530a8     dm: tegra: Enable driver model for serial
>>
>> It sets up its own clock.
>
> Simon,
>
> Thanks for the pointer. I actually noticed this commit but it adds some
> confusion to me. Take your code as an example
>
> U_BOOT_DRIVER(serial_ns16550) = {
>        .name   = "serial_tegra20",
>        .id     = UCLASS_SERIAL,
>        .of_match = tegra_serial_ids,
>        .ofdata_to_platdata = tegra_serial_ofdata_to_platdata,
>        .platdata_auto_alloc_size = sizeof(struct ns16550_platdata),
>        .priv_auto_alloc_size = sizeof(struct NS16550),
>        .probe = ns16550_serial_probe,
>        .ops    = &ns16550_serial_ops,
> };
>
> The name "serial_ns16550" is not directly used anywhere. So I guess you didn't
> have to name it as "serial_ns16550", right?
>

The commit Simon gave was an old one. Now all ns16550 driver has been
unified into one.

> One step forward, if I want to create a new driver, say "fsl_ns16550", I will
> have to use ofdata_to_platdata to fill in plat->clock. But for majority powerpc
> SoCs, we don't use device tree. We may start to use device tree on new products.
> But it is probably not a good idea to force every platform to change.
>

Please do not create a new driver for FSL chipset. Does FSL have any
plan to continue maintaining all these PowerPC SoCs in U-Boot? If yes,
I believe the intention is to bring driver model and device tree to
these boards.

> Is there another way to update plat->clock?
>

You can define CONFIG_SYS_NS16550_CLK to a routine that gets the
correct clock freq at runtime: eg: get_serial_clock()

Regards,
Bin


More information about the U-Boot mailing list