[U-Boot] [PATCH] serial: ns16550: Add register shift variable
Felix Brack
fb at ltec.ch
Sun Jul 15 11:05:17 UTC 2018
Hello Wolfgang,
On 14.07.2018 12:47, Wolfgang Denk wrote:
> Dear Felix,
>
> In message <1531492980-16543-1-git-send-email-fb at ltec.ch> you wrote:
>>
>> The motivation for writing this patch originates in the
>> effort of synchronizing U-Boot DT to Linux DT for am33xx SOCs.
>> The current am33xx.dtsi file from U-Boot defines the <reg-shift>
>> property for all UART nodes. The actual (4.18+) am33xx.dtsi
>> file from Linux does not define <reg-shift> anymore. To prevent
>> (probably difficult) changes in many .dts and .dtsi files once
>> the synchronization is done, one can use this new variable. For
>> the pdu001 board, for example, SYS_NS16550_REG_SHIFT is set
>> to 2; no need to clutter U-Boot and board specific dts files
>> with <reg-shift> properties.
>
> Does this mean that U-Boot will not be able to use the same DTB as
> Linux?
>
This has already been answered very accurately by Tom.
I have also written an RFC dealing with this: "[RFC] arm: dts: am33xx:
Sync DTS with Linux 4.16.11", posted May 24.
>> +config SYS_NS16550_REG_SHIFT
>> + int "Number of bytes to shift register offsets"
>> + default 0
>> + depends on SYS_NS16550
>> + help
>> + Use this to specify the amount of bytes between discrete
>> + device registers. If, for example, the device registers are
>> + located at 0x00, 0x04, 0x08, 0x0C and so forth than set
>> + this to 2. The default value is 0.
>
> This description is inconsistent or misleading. How do you define
> "space between registers"? The unused gaps? In the example, the
> registers are spaced at 4 bytes intervals, so a value of 2 would
> only make sense of we have 16 bit registters and you count the gap
> bytes.
>
> But this is a very strange and uncommon way to describe such a
> situation, especially when you write that you "shift register
> offsets". Here I think about something like a LSL operation, so
> shifing by 2 bits would result in a 2^2 = 4 byte spacing.
>
> This needs to be rewritten.
>
You are right, sorry. It seems I used my brain to mix up two different
explanations and that's the result - will be fixed.
>
> Best regards,
>
> Wolfgang Denk
>
regards, Felix
More information about the U-Boot
mailing list