Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1440047 > unrolled thread
| Started by | Wan Zongshun <vw@iommu.org> |
|---|---|
| First post | 2016-07-10 09:50 +0200 |
| Last post | 2016-07-21 13:00 +0200 |
| Articles | 5 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH v2 09/10] Documentation: devicetree: Add dts description for nuc900 Wan Zongshun <vw@iommu.org> - 2016-07-10 09:50 +0200
Re: [PATCH v2 09/10] Documentation: devicetree: Add dts description for nuc900 Arnd Bergmann <arnd@arndb.de> - 2016-07-11 00:20 +0200
Re: [PATCH v2 09/10] Documentation: devicetree: Add dts description for nuc900 Arnd Bergmann <arnd@arndb.de> - 2016-07-11 00:20 +0200
Re: [PATCH v2 09/10] Documentation: devicetree: Add dts description for nuc900 Wan Zongshun <vw@iommu.org> - 2016-07-11 04:20 +0200
Re: [PATCH v2 09/10] Documentation: devicetree: Add dts description for nuc900 Arnd Bergmann <arnd@arndb.de> - 2016-07-21 13:00 +0200
| From | Wan Zongshun <vw@iommu.org> |
|---|---|
| Date | 2016-07-10 09:50 +0200 |
| Subject | [PATCH v2 09/10] Documentation: devicetree: Add dts description for nuc900 |
| Message-ID | <rThEZ-65d-7@gated-at.bofh.it> |
This patch is to add dts description for nuc900 platform.
Signed-off-by: Wan Zongshun <mcuos.com@gmail.com>
---
.../devicetree/bindings/arm/nuvoton/nuc970.txt | 12 ++++++++++++
.../bindings/clock/nuvoton,nuc970-clk.txt | 13 +++++++++++++
.../interrupt-controller/nuvoton,nuc900-aic.txt | 15 +++++++++++++++
.../bindings/reset/nuvoton,nuc900-reset.txt | 12 ++++++++++++
.../devicetree/bindings/serial/nuc970-uart.txt | 22 ++++++++++++++++++++++
.../bindings/soc/nuvoton/nuvoton,nuc900-soc.txt | 12 ++++++++++++
.../bindings/timer/nuvoton,nuc970-tmr.txt | 20 ++++++++++++++++++++
7 files changed, 106 insertions(+)
create mode 100644 Documentation/devicetree/bindings/arm/nuvoton/nuc970.txt
create mode 100644 Documentation/devicetree/bindings/clock/nuvoton,nuc970-clk.txt
create mode 100644 Documentation/devicetree/bindings/interrupt-controller/nuvoton,nuc900-aic.txt
create mode 100644 Documentation/devicetree/bindings/reset/nuvoton,nuc900-reset.txt
create mode 100644 Documentation/devicetree/bindings/serial/nuc970-uart.txt
create mode 100644 Documentation/devicetree/bindings/soc/nuvoton/nuvoton,nuc900-soc.txt
create mode 100644 Documentation/devicetree/bindings/timer/nuvoton,nuc970-tmr.txt
diff --git a/Documentation/devicetree/bindings/arm/nuvoton/nuc970.txt b/Documentation/devicetree/bindings/arm/nuvoton/nuc970.txt
new file mode 100644
index 0000000..0872f6f
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/nuvoton/nuc970.txt
@@ -0,0 +1,12 @@
+Nuvoton NUC970 SoC platform Device Tree Bindings
+------------------------------------------
+
+Boards with the NUC970 SoC shall have the following properties:
+
+Root node required properties:
+- compatible: Should be "syscon" or "nuvoton,nuc970-gcr"
+
+GCR register required properties:
+- compatible: Should be "nuvoton,nuc970-gcr"
+- reg: Should contain registers location and length
+
diff --git a/Documentation/devicetree/bindings/clock/nuvoton,nuc970-clk.txt b/Documentation/devicetree/bindings/clock/nuvoton,nuc970-clk.txt
new file mode 100644
index 0000000..82fcf32
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/nuvoton,nuc970-clk.txt
@@ -0,0 +1,13 @@
+NUC970 Clock Controller
+
+Clock required properties:
+- compatible: Should be "nuvoton,nuc970-clk"
+- reg: Should contain registers location and length
+
+Examples:
+
+clks: clk@b0000200 {
+ compatible = "nuvoton,nuc970-clk";
+ reg = <0xb0000200 0x200>;
+ #clock-cells = <1>;
+};
diff --git a/Documentation/devicetree/bindings/interrupt-controller/nuvoton,nuc900-aic.txt b/Documentation/devicetree/bindings/interrupt-controller/nuvoton,nuc900-aic.txt
new file mode 100644
index 0000000..f265095
--- /dev/null
+++ b/Documentation/devicetree/bindings/interrupt-controller/nuvoton,nuc900-aic.txt
@@ -0,0 +1,15 @@
+NUC900 interrupt Controller
+
+Interrupt-controller required properties
+- compatible: Should be "nuvoton,nuc900-aic"
+- reg: Should contain registers location and length
+- interrupt-cells: set to 1
+
+Examples:
+
+aic: interrupt-controller@b8002000 {
+ compatible = "nuvoton,nuc900-aic";
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ reg = <0xb8002000 0x1000>;
+};
diff --git a/Documentation/devicetree/bindings/reset/nuvoton,nuc900-reset.txt b/Documentation/devicetree/bindings/reset/nuvoton,nuc900-reset.txt
new file mode 100644
index 0000000..ab6056a
--- /dev/null
+++ b/Documentation/devicetree/bindings/reset/nuvoton,nuc900-reset.txt
@@ -0,0 +1,12 @@
+. Nuvoton NUC900 series, reset controller binding.
+
+Required properties:
+- compatible : Should be "nuvoton,nuc900-reset"
+- syscon : Reference to gcr controller.
+
+Example:
+
+reset {
+ compatible = "nuvoton,nuc900-reset";
+ syscon = <&gcr>;
+};
diff --git a/Documentation/devicetree/bindings/serial/nuc970-uart.txt b/Documentation/devicetree/bindings/serial/nuc970-uart.txt
new file mode 100644
index 0000000..a143a5e
--- /dev/null
+++ b/Documentation/devicetree/bindings/serial/nuc970-uart.txt
@@ -0,0 +1,22 @@
+NUC970 UART Controller
+
+Uart required properties:
+- compatible: Should be "nuvoton,nuc970-uart"
+- reg: Should contain registers location and length
+
+Examples:
+
+aliases {
+ serial0 = &uart0;
+};
+
+uart0: serial@b8000000 {
+ compatible = "nuvoton,nuc970-uart";
+ reg = <0xb8000000 0x1000>;
+ interrupts = <36>;
+ clocks = <&clks UART0_GATE>,
+ <&clks UART0_ECLK_GATE>;
+ clock-names = "uart0", "uart0_eclk";
+ clock-frequency = <12000000>;
+ status = "disabled";
+};
diff --git a/Documentation/devicetree/bindings/soc/nuvoton/nuvoton,nuc900-soc.txt b/Documentation/devicetree/bindings/soc/nuvoton/nuvoton,nuc900-soc.txt
new file mode 100644
index 0000000..0284edf
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/nuvoton/nuvoton,nuc900-soc.txt
@@ -0,0 +1,12 @@
+. Nuvoton NUC900 series, Soc specific driver binding.
+
+Required properties:
+- compatible : Should be "nuvoton,nuc900-soc"
+- syscon : Reference to gcr controller.
+
+Example:
+
+reset {
+ compatible = "nuvoton,nuc900-soc";
+ syscon = <&gcr>;
+};
diff --git a/Documentation/devicetree/bindings/timer/nuvoton,nuc970-tmr.txt b/Documentation/devicetree/bindings/timer/nuvoton,nuc970-tmr.txt
new file mode 100644
index 0000000..4d74615
--- /dev/null
+++ b/Documentation/devicetree/bindings/timer/nuvoton,nuc970-tmr.txt
@@ -0,0 +1,20 @@
+. Nuvoton NUC900 series, NUC970 SoC timer
+
+The NUC900 family has several general-purpose 32 bits timers.
+
+Required properties:
+- compatible : Should be "nuvoton,nuc970-tmr"
+- reg : Address and length of the register set
+- clocks : Reference on the timer input clock
+- interrupts : Reference to the timer interrupt
+
+Example:
+
+tmr@0xb8001000 {
+ compatible = "nuvoton,nuc970-tmr";
+ reg = <0xb8001000 0x1000>;
+ interrupts = <16>;
+ clocks = <&clks TIMER0_GATE>,
+ <&clks TIMER1_GATE>;
+ clock-names = "timer0", "timer1";
+};
--
2.7.4
[toc] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2016-07-11 00:20 +0200 |
| Message-ID | <rTveV-6MU-1@gated-at.bofh.it> |
| In reply to | #1440047 |
On Sunday, July 10, 2016 3:42:21 PM CEST Wan Zongshun wrote:
> diff --git a/Documentation/devicetree/bindings/soc/nuvoton/nuvoton,nuc900-soc.txt b/Documentation/devicetree/bindings/soc/nuvoton/nuvoton,nuc900-soc.txt
> new file mode 100644
> index 0000000..0284edf
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/soc/nuvoton/nuvoton,nuc900-soc.txt
> @@ -0,0 +1,12 @@
> +. Nuvoton NUC900 series, Soc specific driver binding.
> +
> +Required properties:
> +- compatible : Should be "nuvoton,nuc900-soc"
> +- syscon : Reference to gcr controller.
> +
> +Example:
> +
> +reset {
> + compatible = "nuvoton,nuc900-soc";
> + syscon = <&gcr>;
> +};
I think this one should be dropped: Instead of modeling the DT based on what
is convenient for the current Linux driver implementation, we only want to
list devices in the dts that are physically present, and the "soc" is really
the sum of all the on-chip devices.
Better change the soc_device driver to bind directly to the "nuvoton,nuc970-gcr"
device.
Arnd
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2016-07-11 00:20 +0200 |
| Message-ID | <rTveV-6MU-3@gated-at.bofh.it> |
| In reply to | #1440047 |
On Sunday, July 10, 2016 3:42:21 PM CEST Wan Zongshun wrote:
> +
> +Required properties:
> +- compatible : Should be "nuvoton,nuc970-tmr"
> +- reg : Address and length of the register set
> +- clocks : Reference on the timer input clock
> +- interrupts : Reference to the timer interrupt
> +
> +Example:
> +
> +tmr@0xb8001000 {
The name should be "timer", not "tmr", and the address should
not contain a leading "0x".
> + compatible = "nuvoton,nuc970-tmr";
> + reg = <0xb8001000 0x1000>;
> + interrupts = <16>;
> + clocks = <&clks TIMER0_GATE>,
> + <&clks TIMER1_GATE>;
> + clock-names = "timer0", "timer1";
> +};
The clocks/clock-names description does not match the example:
you only define a single clock in the required properties, but
have two separate inputs in the example. Please fix one or the
other.
Arnd
[toc] | [prev] | [next] | [standalone]
| From | Wan Zongshun <vw@iommu.org> |
|---|---|
| Date | 2016-07-11 04:20 +0200 |
| Subject | Re: [PATCH v2 09/10] Documentation: devicetree: Add dts description for nuc900 |
| Message-ID | <rTyZb-Pn-1@gated-at.bofh.it> |
| In reply to | #1440179 |
On 2016年07月11日 06:17, Arnd Bergmann wrote:
> On Sunday, July 10, 2016 3:42:21 PM CEST Wan Zongshun wrote:
>> +
>> +Required properties:
>> +- compatible : Should be "nuvoton,nuc970-tmr"
>> +- reg : Address and length of the register set
>> +- clocks : Reference on the timer input clock
>> +- interrupts : Reference to the timer interrupt
>> +
>> +Example:
>> +
>> +tmr@0xb8001000 {
>
> The name should be "timer", not "tmr", and the address should
> not contain a leading "0x".
Ok, so all dts addresses has no need contain a leading "0x"?
>
>> + compatible = "nuvoton,nuc970-tmr";
>> + reg = <0xb8001000 0x1000>;
>> + interrupts = <16>;
>> + clocks = <&clks TIMER0_GATE>,
>> + <&clks TIMER1_GATE>;
>> + clock-names = "timer0", "timer1";
>> +};
>
> The clocks/clock-names description does not match the example:
> you only define a single clock in the required properties, but
> have two separate inputs in the example. Please fix one or the
> other.
Two clocks are necessary, so I only need modify this description like?
Required properties:
clocks : Reference on the timer input clock, This list should be 2
clocks, the order is timer0 , timer1.
Is it ok?
>
> Arnd
>
>
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2016-07-21 13:00 +0200 |
| Message-ID | <rXjRU-6ms-15@gated-at.bofh.it> |
| In reply to | #1440203 |
On Monday, July 11, 2016 10:13:54 AM CEST Wan Zongshun wrote:
>
> On 2016年07月11日 06:17, Arnd Bergmann wrote:
> > On Sunday, July 10, 2016 3:42:21 PM CEST Wan Zongshun wrote:
> >> +
> >> +Required properties:
> >> +- compatible : Should be "nuvoton,nuc970-tmr"
> >> +- reg : Address and length of the register set
> >> +- clocks : Reference on the timer input clock
> >> +- interrupts : Reference to the timer interrupt
> >> +
> >> +Example:
> >> +
> >> +tmr@0xb8001000 {
> >
> > The name should be "timer", not "tmr", and the address should
> > not contain a leading "0x".
>
> Ok, so all dts addresses has no need contain a leading "0x"?
In properties, you need the leading 0x for hexadecimal numbers,
in the node name the portion after the "@" depends on the bus,
but is usually just the value of the address in hexadecimal
without the leading 0x.
> >
> >> + compatible = "nuvoton,nuc970-tmr";
> >> + reg = <0xb8001000 0x1000>;
> >> + interrupts = <16>;
> >> + clocks = <&clks TIMER0_GATE>,
> >> + <&clks TIMER1_GATE>;
> >> + clock-names = "timer0", "timer1";
> >> +};
> >
> > The clocks/clock-names description does not match the example:
> > you only define a single clock in the required properties, but
> > have two separate inputs in the example. Please fix one or the
> > other.
>
> Two clocks are necessary, so I only need modify this description like?
>
> Required properties:
> clocks : Reference on the timer input clock, This list should be 2
> clocks, the order is timer0 , timer1.
>
> Is it ok?
Yes, looks good.
Arnd
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web