diff mbox

[U-Boot,1/2] ns16550: update compatible and reg-shift binding

Message ID 1449810510-17105-1-git-send-email-thomas@wytron.com.tw
State Superseded
Delegated to: Tom Rini
Headers show

Commit Message

Thomas Chou Dec. 11, 2015, 5:08 a.m. UTC
Update compatible and reg-shift in device tree binding.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
---
 doc/device-tree-bindings/serial/ns16550.txt | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

Comments

Stephen Warren Dec. 11, 2015, 5:35 a.m. UTC | #1
On 12/10/2015 10:08 PM, Thomas Chou wrote:
> Update compatible and reg-shift in device tree binding.

Has this change been submitted to and accepted by the Linux kernel?
That's where the official DT binding documents are stored. Honestly I
think we should remove the copies in U-Boot to avoid confusion and forking.

The content of the change looks reasonable at a quick glance.
Thomas Chou Dec. 11, 2015, 7:08 a.m. UTC | #2
Hi Stephen,

On 2015年12月11日 13:35, Stephen Warren wrote:
> On 12/10/2015 10:08 PM, Thomas Chou wrote:
>> Update compatible and reg-shift in device tree binding.
>
> Has this change been submitted to and accepted by the Linux kernel?
> That's where the official DT binding documents are stored. Honestly I
> think we should remove the copies in U-Boot to avoid confusion and forking.
>
> The content of the change looks reasonable at a quick glance.
>

These changes actually came from Linux kernel. They are scattered in 
several files. I included only those are prevalent to u-boot.

8250.txt
- compatible : one of:
	- "ns8250"
	- "ns16450"
	- "ns16550a"
	- "ns16550"
	- "ns16750"
	- "ns16850"
	- For Tegra20, must contain "nvidia,tegra20-uart"
	- For other Tegra, must contain '"nvidia,<chip>-uart",
	  "nvidia,tegra20-uart"' where <chip> is tegra30, tegra114, tegra124,
	  tegra132, or tegra210.

omap_serial.txt
- compatible : should be "ti,omap2-uart" for OMAP2 controllers
- compatible : should be "ti,omap3-uart" for OMAP3 controllers
- compatible : should be "ti,omap4-uart" for OMAP4 controllers
- compatible : should be "ti,am4372-uart" for AM437x controllers
- compatible : should be "ti,am3352-uart" for AM335x controllers
- compatible : should be "ti,dra742-uart" for DRA7x controllers

snps-dw-apb-uart.txt
- compatible : "snps,dw-apb-uart"
- reg-shift : quantity to shift the register offsets by.  If this 
property is not present then the register offsets are not shifted.

I can change the description reg-shift property to above if this make it 
clearer.

I would agree that we can remove these copies of Linux kernel. Almost 
every dts binding I added to u-boot these months are copied from Linux 
kernel.

Best regards,
Thomas
Stephen Warren Dec. 11, 2015, 3:42 p.m. UTC | #3
On 12/11/2015 12:08 AM, Thomas Chou wrote:
> Hi Stephen,
>
> On 2015年12月11日 13:35, Stephen Warren wrote:
>> On 12/10/2015 10:08 PM, Thomas Chou wrote:
>>> Update compatible and reg-shift in device tree binding.
>>
>> Has this change been submitted to and accepted by the Linux kernel?
>> That's where the official DT binding documents are stored. Honestly I
>> think we should remove the copies in U-Boot to avoid confusion and
>> forking.
>>
>> The content of the change looks reasonable at a quick glance.
>>
>
> These changes actually came from Linux kernel. They are scattered in
> several files. I included only those are prevalent to u-boot.
>
> 8250.txt
> - compatible : one of:
>      - "ns8250"
...
>
> omap_serial.txt
> - compatible : should be "ti,omap2-uart" for OMAP2 controllers
...
>
> snps-dw-apb-uart.txt
> - compatible : "snps,dw-apb-uart"
> - reg-shift : quantity to shift the register offsets by.  If this
> property is not present then the register offsets are not shifted.

If we are going to have DT binding definitions in U-Boot, we should at 
least keep the directory structure, filenames, and file content 
identical to the bindings in the Linux kernel.
diff mbox

Patch

diff --git a/doc/device-tree-bindings/serial/ns16550.txt b/doc/device-tree-bindings/serial/ns16550.txt
index ef0b9ae..2b3904b 100644
--- a/doc/device-tree-bindings/serial/ns16550.txt
+++ b/doc/device-tree-bindings/serial/ns16550.txt
@@ -3,8 +3,21 @@  NS16550 UART
 This UART driver supports many chip variants and is used in mamy SoCs.
 
 Required properties:
-- compatible: "ns16550" or "nvidia,tegra20-uart"
+- compatible: one of:
+	- "ns16550"
+	- "ns16550a"
+	- "nvidia,tegra20-uart"
+	- "snps,dw-apb-uart"
+	- "ti,omap2-uart"
+	- "ti,omap3-uart"
+	- "ti,omap4-uart"
+	- "ti,am3352-uart"
+	- "ti,am4372-uart"
+	- "ti,dra742-uart"
 - reg: start address and size of registers
-- reg-shift: shift value indicating register size: 0=byte, 1=16bit,2=32bit etc.
 - clock-frequency: input clock frequency for the UART (used to calculate the
     baud rate divisor)
+
+Optional properties:
+- reg-shift: shift value indicating register size: 0=byte, 1=16bit, 2=32bit etc.
+  default to 0 if not given.