[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 2/3] xen/arm: Add new driver for R-Car Gen2 UART
On Thu, Jan 22, 2015 at 7:27 PM, Oleksandr Tyshchenko <oleksandr.tyshchenko@xxxxxxxxxxxxxxx> wrote: > On Thu, Jan 22, 2015 at 7:02 PM, Julien Grall <julien.grall@xxxxxxxxxx> wrote: >> On 22/01/15 16:55, Oleksandr Tyshchenko wrote: >>> On Thu, Jan 22, 2015 at 6:49 PM, Julien Grall <julien.grall@xxxxxxxxxx> >>> wrote: >>>> On 22/01/15 16:44, Oleksandr Tyshchenko wrote: >>>>> I understand, then I will implement local delay func in uart driver >>>>> based on READ_SYSREG64(CNTPCT_EL0). >>>> >>>> Unless I miss something, udelay should work in your case even if the >>>> xen_init_time is not called. >>> Unfortunately, no. If I understand correctly the var "cpu_khz" (used >>> in ticks_to_ns()) is initialized in init_xen_time(). >> >> Hrm, right. I looked too quickly to the function. >> >> I don't like the idea to use READ_SYSREG64(CNTPCT_EL0) in the UART drivers. >> >> Does the udelay necessary here? If yes, maybe we should either split the >> xen_init_time in 2 parts or create a udelay_tick function to use when >> timer is not set. >> >> I'm not sure what is the best one. >> >> Regards, >> >> -- >> Julien Grall > > According to the TRM for this family we need to add delay after > changing baudrate before continuing init sequence. > I tried without udelay and it is worked fine. But, if the TRM says we > need to follow this. > > -- > > Oleksandr Tyshchenko | Embedded Dev > GlobalLogic > www.globallogic.com I would prefer a first variant. In xen_init_time_1() initialize "cpu_khz" and "boot_count" only. cpu_khz = READ_SYSREG32(CNTFRQ_EL0) / 1000; boot_count = READ_SYSREG64(CNTPCT_EL0); In xen_init_time_2() perform all initialization as it was done for this moment and correct "cpu_khz" if node is present. What do you think? -- Oleksandr Tyshchenko | Embedded Dev GlobalLogic www.globallogic.com _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |