lkml.org 
[lkml]   [2016]   [May]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 1/2] arm64: dts: NS2: Add all of the UARTs
From
Date


On 2016/5/13 0:52, Ray Jui wrote:
> Hi Kefeng,
>
> On 5/12/2016 7:46 AM, Jon Mason wrote:
>>
>>
>> On Thu, May 12, 2016 at 2:16 AM, Kefeng Wang <wangkefeng.wang@huawei.com
>> <mailto:wangkefeng.wang@huawei.com>> wrote:
>>
>>
>>
>> On 2016/5/12 6:56, Jon Mason wrote:
>> > Add all of the UARTs present on NS2 and enable them in the SVK device
>> > tree file. Also, do some magic to make sure that uart3 is discovered as
>> > ttyS0 (as that is the console UART).
>> >
>> > Signed-off-by: Jon Mason <jonmason@broadcom.com <mailto:jonmason@broadcom.com>>
>> > ---
>> > arch/arm64/boot/dts/broadcom/ns2-svk.dts | 16 ++++++++++++++++
>> > arch/arm64/boot/dts/broadcom/ns2.dtsi | 30 ++++++++++++++++++++++++++++++
>> > 2 files changed, 46 insertions(+)
>> >
>> > diff --git a/arch/arm64/boot/dts/broadcom/ns2-svk.dts b/arch/arm64/boot/dts/broadcom/ns2-svk.dts
>> > index 7cd3640..b062a44 100644
>> > --- a/arch/arm64/boot/dts/broadcom/ns2-svk.dts
>> > +++ b/arch/arm64/boot/dts/broadcom/ns2-svk.dts
>> > @@ -40,10 +40,14 @@
>> >
>> > aliases {
>> > serial0 = &uart3;
>> > + serial1 = &uart0;
>> > + serial2 = &uart1;
>> > + serial3 = &uart2;
>> > };
>> >
>> > chosen {
>> > stdout-path = "serial0:115200n8";
>> > + bootargs = "earlycon=uart8250,mmio32,0x66130000";
>>
>> Hi Jon,
>>
>> I submit a patch[1], with it, we can use earlycon without option to
>> enable early console
>> for "snps,dw-apb-uart", could you help me to test it, thanks.
>>
>>
>> Adding your change and removing the line above does not cause earlycon
>> to work for me. Is there any additional changes necessary for this to work?
>>
>> Thanks,
>> Jon
>>
>
> "OF_EARLYCON_DECLARE" doesn't seem to have a way to deal with DT properties? In the case of UART for NS2, it needs mmio32, configured with DT property "reg-io-width" set to 4. I don't think "OF_EARLYCON_DECLARE" is parsing that, which is likely the reason why it doesn't work for devices that required mmio32.
>
It should work, I test this in Hisi D02 board, it uses same uart and same configuration.

early_init_dt_scan_chosen_serial()
for (match = __earlycon_table; match < __earlycon_table_end; match++)
......
of_setup_earlycon()
val = of_get_flat_dt_prop(node, "reg-io-width", NULL); // will obtain the reg-io-width and set iotype=mmio32
err = match->setup(&early_console_dev, options); // call early_serial8250_setup

Could you check it again, thanks,

Kefeng


> Thanks,
>
> Ray
>
> .
>

\
 
 \ /
  Last update: 2016-05-13 03:41    [W:2.108 / U:0.004 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site