[PATCH 1/2] ASoC: dt-bindings: add rockchip i2s bindings

2014-07-11 Thread jianqun
From: Jianqun Xu 

Add devicetree bindings for i2s controller found on
rk3066, rk3188 and rk3288 processors from rockchip.

Signed-off-by: Jianqun Xu 
---
 .../devicetree/bindings/sound/rockchip-i2s.txt |   37 
 1 file changed, 37 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/rockchip-i2s.txt

diff --git a/Documentation/devicetree/bindings/sound/rockchip-i2s.txt 
b/Documentation/devicetree/bindings/sound/rockchip-i2s.txt
new file mode 100644
index 000..6c55fcf
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/rockchip-i2s.txt
@@ -0,0 +1,37 @@
+* Rockchip I2S controller
+
+The I2S bus (Inter-IC sound bus) is a serial link for digital
+audio data transfer between devices in the system.
+
+Required properties:
+
+- compatible: should be one of the followings
+   - "rockchip,rk3066-i2s": for rk3066
+   - "rockchip,rk3188-i2s", "rockchip,rk3066-i2s": for rk3188
+   - "rockchip,rk3288-i2s", "rockchip,rk3066-i2s": for rk3288
+- reg: physical base address of the controller and length of memory mapped
+  region.
+- interrupts: should contain the I2S interrupt.
+- #address-cells: should be 1.
+- #size-cells: should be 0.
+- dmas: DMA specifiers for tx and rx dma. See the DMA client binding,
+   Documentation/devicetree/bindings/dma/dma.txt
+- dma-names: should include "tx" and "rx".
+- clocks: a list of phandle + clock-specifer pairs, one for each entry in 
clock-names.
+- clock-names: should contain followings:
+   - "i2s_hclk": clock for I2S BUS
+   - "i2s_clk" : clock for I2S controller
+
+Example for rk3288 I2S controller:
+
+i2s@ff89 {
+   compatible = "rockchip,rk3288-i2s", "rockchip,rk3066-i2s";
+   reg = <0xff89 0x1>;
+   interrupts = ;
+   #address-cells = <1>;
+   #size-cells = <0>;
+   dmas = <&pdma1 0>, <&pdma1 1>;
+   dma-names = "rx", "tx";
+   clock-names = "i2s_hclk", "i2s_clk";
+   clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>;
+};
-- 
1.7.9.5


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 1/2] ASoC: dt-bindings: add rockchip i2s bindings

2014-07-01 Thread jianqun
From: Jianqun Xu 

Add devicetree bindings for i2s controller found on rk3066, rk3188 and rk3288
processors from rockchip.

Signed-off-by: Jianqun Xu 
---
Changes since v1:
- dt-bindings: change dmas and clocks description, adviced by mark.rutland


 .../devicetree/bindings/sound/rockchip-i2s.txt |   44 
 1 file changed, 44 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/rockchip-i2s.txt

diff --git a/Documentation/devicetree/bindings/sound/rockchip-i2s.txt 
b/Documentation/devicetree/bindings/sound/rockchip-i2s.txt
new file mode 100644
index 000..db26e09
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/rockchip-i2s.txt
@@ -0,0 +1,44 @@
+* Rockchip I2S controller
+
+The I2S bus (Inter-IC sound bus) is a serial link for digital audio data 
transfer
+between devices in the system and be invented by Philips Semiconductor.
+
+Required properties:
+
+- compatible : should be one of the following.
+   "rockchip,rk3066-i2s": for rk3066
+   "rockchip,rk3188-i2s", "rockchip,rk3066-i2s" for rk3188
+   "rockchip,rk3288-i2s", "rockchip,rk3066-i2s" for rk3288
+- reg : physical base address of the controller and length of memory mapped
+  region.
+- interrupts : The interrupt number to the cpu. The interrupt specifier format
+  depends on the interrupt controller.
+- #address-cells : should be 1.
+- #size-cells : should be 0.
+- dmas: DMA specifiers for tx and rx dma. See the DMA client binding,
+   Documentation/devicetree/bindings/dma/dma.txt
+- dma-names: DMA request names should include "tx" and "rx" if present.
+- clocks : a list of phandle + clock-specifer pairs, one for each entry in 
clock-names.
+- clock-names : Should include "i2s_hclk" and "i2s_clk",
+  - "i2s_hclk": support AHB bus interface
+  - "i2s_clk": work clock for i2s controller
+- aliases : Since device need i2s channel number as part of device's name,
+   driver will get its id by of_alias_get_id(np, "i2s").
+
+Example:
+
+aliases {
+   i2s0 = &i2s0;
+}
+
+i2s0: i2s@ff89 {
+   compatible = "rockchip,rk3066-i2s";
+   reg = <0xff89 0x1>;
+   interrupts = ;
+   #address-cells = <1>;
+   #size-cells = <0>;
+   dmas = <&pdma1 0>, <&pdma1 1>;
+   dma-names = "rx", "tx";
+   clock-names = "i2s_hclk", "i2s_clk";
+   clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>;
+};
-- 
1.7.9.5


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/2] ASoC: dt-bindings: add rockchip i2s bindings

2014-07-01 Thread Mark Rutland
On Tue, Jul 01, 2014 at 09:37:39AM +0100, jianqun wrote:
> From: Jianqun Xu 
> 
> Add devicetree bindings for i2s controller found on rk3066, rk3188 and rk3288
> processors from rockchip.
> 
> Signed-off-by: Jianqun Xu 
> ---
>  .../devicetree/bindings/sound/rockchip-i2s.txt |   45 
> 
>  1 file changed, 45 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/rockchip-i2s.txt
> 
> diff --git a/Documentation/devicetree/bindings/sound/rockchip-i2s.txt 
> b/Documentation/devicetree/bindings/sound/rockchip-i2s.txt
> new file mode 100644
> index 000..e9ab122
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/rockchip-i2s.txt
> @@ -0,0 +1,45 @@
> +* Rockchip I2S controller
> +
> +The I2S bus (Inter-IC sound bus) is a serial link for digital audio data 
> transfer
> +between devices in the system and be invented by Philips Semiconductor.
> +
> +Required properties:
> +
> +- compatible : should be one of the following.
> +   "rockchip,rk3066-i2s": for rk3066
> +   "rockchip,rk3188-i2s", "rockchip,rk3066-i2s" for rk3188
> +   "rockchip,rk3288-i2s", "rockchip,rk3066-i2s" for rk3288
> +- reg : physical base address of the controller and length of memory mapped
> +  region.
> +- interrupts : The interrupt number to the cpu. The interrupt specifier 
> format
> +  depends on the interrupt controller.
> +- #address-cells : should be 1.
> +- #size-cells : should be 0.
> +- dmas : list of DMA controller phandle and DMA request line ordered pairs.
> +- dma-names : identifier string for each DMA request line in the dmas 
> property.
> +  These strings correspond 1:1 with the ordered pairs in dmas.
> +  Must include the following entries:
> +  - rx:
> +  - tx:

Can these be quoted for consistency with clock-names below?

> +- clocks : Handle to internal work clock and master clock output to IO.

Can this be written in terms of clock-names, e.g.

- clocks: a list of phandle + clock-specifer pairs, one for each entry
  in clock-names.

Cheers,
Mark.

> +- clock-names :
> +  - "i2s_hclk": support AHB bus interface
> +  - "i2s_clk": work clock for i2s controller
> +
> +Example:
> +
> +aliases {
> + i2s0 = &i2s0;
> +}
> +
> +i2s0: i2s@ff89 {
> + compatible = "rockchip,rk3066-i2s";
> + reg = <0xff89 0x1>;
> + interrupts = ;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + dmas = <&pdma1 0>, <&pdma1 1>;
> + dma-names = "rx", "tx";
> + clock-names = "i2s_hclk", "i2s_clk";
> + clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>;
> +};
> -- 
> 1.7.9.5
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe devicetree" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 1/2] ASoC: dt-bindings: add rockchip i2s bindings

2014-07-01 Thread jianqun
From: Jianqun Xu 

Add devicetree bindings for i2s controller found on rk3066, rk3188 and rk3288
processors from rockchip.

Signed-off-by: Jianqun Xu 
---
 .../devicetree/bindings/sound/rockchip-i2s.txt |   45 
 1 file changed, 45 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/rockchip-i2s.txt

diff --git a/Documentation/devicetree/bindings/sound/rockchip-i2s.txt 
b/Documentation/devicetree/bindings/sound/rockchip-i2s.txt
new file mode 100644
index 000..e9ab122
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/rockchip-i2s.txt
@@ -0,0 +1,45 @@
+* Rockchip I2S controller
+
+The I2S bus (Inter-IC sound bus) is a serial link for digital audio data 
transfer
+between devices in the system and be invented by Philips Semiconductor.
+
+Required properties:
+
+- compatible : should be one of the following.
+   "rockchip,rk3066-i2s": for rk3066
+   "rockchip,rk3188-i2s", "rockchip,rk3066-i2s" for rk3188
+   "rockchip,rk3288-i2s", "rockchip,rk3066-i2s" for rk3288
+- reg : physical base address of the controller and length of memory mapped
+  region.
+- interrupts : The interrupt number to the cpu. The interrupt specifier format
+  depends on the interrupt controller.
+- #address-cells : should be 1.
+- #size-cells : should be 0.
+- dmas : list of DMA controller phandle and DMA request line ordered pairs.
+- dma-names : identifier string for each DMA request line in the dmas property.
+  These strings correspond 1:1 with the ordered pairs in dmas.
+  Must include the following entries:
+  - rx:
+  - tx:
+- clocks : Handle to internal work clock and master clock output to IO.
+- clock-names :
+  - "i2s_hclk": support AHB bus interface
+  - "i2s_clk": work clock for i2s controller
+
+Example:
+
+aliases {
+   i2s0 = &i2s0;
+}
+
+i2s0: i2s@ff89 {
+   compatible = "rockchip,rk3066-i2s";
+   reg = <0xff89 0x1>;
+   interrupts = ;
+   #address-cells = <1>;
+   #size-cells = <0>;
+   dmas = <&pdma1 0>, <&pdma1 1>;
+   dma-names = "rx", "tx";
+   clock-names = "i2s_hclk", "i2s_clk";
+   clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>;
+};
-- 
1.7.9.5


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/