On Sat, Aug 15, 2015 at 12:59 AM, Simon Glass <s...@chromium.org> wrote: > Hi Stephen, > > On 14 August 2015 at 10:58, Stephen Warren <swar...@wwwdotorg.org> wrote: >> On 08/14/2015 10:50 AM, Simon Glass wrote: >>> >>> Hi Bin, >>> >>> On 14 August 2015 at 03:18, Bin Meng <bmeng...@gmail.com> wrote: >>>> >>>> Hi, >>>> >>>> Currently there are 5 dm serial drivers, all of which are ns16550 >>>> compatible drivers. They are: >>>> >>>> serial_omap.c >>>> serial_dw.c >>>> serial_tegra.c >>>> serial_x86.c >>>> serial_ppc.c >>>> >>>> All these drivers are pretty much similar. I think we can justmerge >>>> these into one ns16550 driver. >>>> >>>> If you think this is necessary, I will send a patch series to do this. >>> >>> >>> The tegra one is there because it needs an input clock and Stephen >>> didn't want to add this to the device tree binding (the kernel has a >>> clock framework which gets around this problem). >>> >>> After that I followed the same pattern. I would support updating the >>> binding to support an input clock. Even with the new clock framework >>> in U-Boot it might be painful to fit it into SPL in some cases. >> >> >> The clock is already in the DT, in both Linux and U-Boot's copy, at least >> for Tegra DTs: >> >> uarta: serial@0,70006000 { >> compatible = "nvidia,tegra124-uart", ... >> ... >> clocks = <&tegra_car TEGRA124_CLK_UARTA>; >> > > I mean the clock-frequency property. However if there is a plan to > implement the clock framework in U-Boot that would be good too. >
The clock-frequency is a fixed value on x86 super i/o chipset, and fixed on the PCI bus too. But for ARM and PPC, it might get dynamically calculated due to different PLL settings. We can implement a _weak function like the one in serial_ppc.c get_serial_clock() to initialize plat->clock with its return value. The _weak function gets clock-frequency from device tree. If there is not, platform codes which uses the ns16550 driver should provide the implementation of get_serial_clock(). Thoughts? Regards, Bin _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot