2015-10-23 0:34 GMT+09:00 Rob Herring <robh@xxxxxxxxxx>: > On Tue, Oct 20, 2015 at 8:20 PM, Masahiro Yamada > <yamada.masahiro@xxxxxxxxxxxxx> wrote: >> Hi Peter, >> (+ Rob Herring, Stefan Agner) >> >> 2015-10-20 23:00 GMT+09:00 Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>: >>> On 10/19/2015 11:36 PM, Masahiro Yamada wrote: >>>> The input clock frequency varies from device to device, but the >>>> earlycon uses the fixed frequency (BASE_BAUD * 16). It makes >>>> impossible to set the correct divisor to the register. >>> >>> So the bootloader hasn't setup the serial port? >> >> It does. >> I use U-boot and the serial port is already set up by U-boot. > > This problem is now moving into u-boot which is using DT for configuration. > >> But, earlycon setup functions update hardware registers. >> See early_serial8250_setup(), ingenic_early_console_setup(), etc. >> >> >> Without port->uartclk set to a valid value, >> the init code in earlycon setup does not make sense. >> >> >> What I want to clarify is, >> what should we do in the earlycon setup function? >> >> Currently, I see >> [1] set device->con->write callback >> [2] initialize UART port registers >> >> >> For [2], we need to know baudrate and input clock frequency. >> (and the latter is missing, that's why my patch is here.) > > I'm missing context of what you did, but it needs to be parse-able > from a flattened tree. My suggestion would be use clock-frequency > property in the uart node. We should be able to parse that. This came > up with u-boot as well[1]. Right. But, I think things have been going wrong since SPL started to parse a device tree. -- Best Regards Masahiro Yamada -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html