Re: [PATCH] dt-bindings: Nokia N9 audio support
From: Rob Herring <hidden>
Date: 2018-01-19 20:15:54
Also in:
linux-arm-kernel, linux-omap, lkml
On Wed, Jan 10, 2018 at 09:53:15AM +0100, Pavel Machek wrote:
quoted hunk ↗ jump to hunk
From: Filip Matijević <redacted> Add bindings for Nokia N9 audio components. Signed-off-by: Filip Matijević <redacted> Signed-off-by: Pavel Machek <redacted>diff --git a/Documentation/devicetree/bindings/media/ti-wl1273.txt b/Documentation/devicetree/bindings/media/ti-wl1273.txt new file mode 100644 index 0000000..21db389 --- /dev/null +++ b/Documentation/devicetree/bindings/media/ti-wl1273.txt@@ -0,0 +1,36 @@ +Texas Instruments - wl1273 radio/bluetooth module
bluetooth chips have a binding location: bindings/net/bluetooth. And we already have a WL1273 binding. Plus there's the one for the Nokia BT which I think can be TI chips with a different firmware and protocol. Is this related?
+ +Required properties: + +- compatible - "ti,wl1273-core" +- reg - I2C slave address +- interrupts - The interrupt output from the device. +- interrupt-parent - The parent interrupt controller. +- power-gpio - gpio pin to power the device. + +- wl1273radio child - compatible = "ti,wl1273-fm-radio";
AIUI, the FM radio is accessed thru the HCI interface aka shared transport via the UART. So it is already covered by the serial device binding for TI chips.
+ +Optional properties: + +- wl1273codec child - compatible = "ti,wl1273codec";
This is a codec or just BT audio I2S/PCM interface?
quoted hunk ↗ jump to hunk
+ +Example: + +wl1273core: wl1273core@22 { + compatible = "ti,wl1273-core"; + reg = <0x22>; + + pinctrl-names = "default"; + pinctrl-0 = <&wl1273_gpio>; + + interrupt-parent = <&gpio2>; + interrupts = <11 2>; /* gpio_43, IRQF_TRIGGER_FALLING */ + + wl1273radio: wl1273radio { + compatible = "ti,wl1273-fm-radio"; + }; + + wl1273codec: wl1273codec { + compatible = "ti,wl1273-codec"; + }; + };diff --git a/Documentation/devicetree/bindings/sound/nokia,n9.txt b/Documentation/devicetree/bindings/sound/nokia,n9.txt new file mode 100644 index 0000000..230b1eb --- /dev/null +++ b/Documentation/devicetree/bindings/sound/nokia,n9.txt@@ -0,0 +1,32 @@ +* Nokia N9/N950 audio setup + +Required properties: +- compatible: "nokia,n9-audio" + +- nokia,twl4030-cpu-dai: phandle for the McBSP node connected to TWL4030 +- nokia,tlv320dac33-cpu-dai: phandle for the McBSP node connected to TLV320DAC33 +- nokia,wl1273-cpu-dai: phandle for the McBSP node connected to WL1273 + +- nokia,twl4030-codec: phandle for the TWL4030 codec +- nokia,tlv320dac33-codec: phandle for the TLV320DAC33 codec +- nokia,wl1273-codec: phandle for the WL1273 codec
Both dais and codecs should just be lists with a defined order.
+- nokia,headphone-amplifier: phandle for the TPA6130A2 node
The simple card or graph card binding don't work? At least follow them to the extent that they do work.
quoted hunk ↗ jump to hunk
+ +- nokia,speaker-amplifier-gpios: GPIO for speaker amplifier + +Example: + +sound: n9-audio { + compatible = "nokia,n9-audio"; + + nokia,twl4030-cpu-dai = <&mcbsp3>; + nokia,tlv320dac33-cpu-dai = <&mcbsp2>; + nokia,wl1273-cpu-dai = <&mcbsp4>; + + nokia,twl4030-codec = <&twl4030_audio>; + nokia,tlv320dac33-codec = <&tlv320dac33>; + nokia,wl1273-codec = <&wl1273codec>; + nokia,headphone-amplifier = <&tpa6140a2>; + + nokia,speaker-amplifier-gpios = <&twl_gpio 7 GPIO_ACTIVE_HIGH>; +};diff --git a/Documentation/devicetree/bindings/sound/tlv320dac33.txt b/Documentation/devicetree/bindings/sound/tlv320dac33.txt new file mode 100644 index 0000000..8e981f7 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tlv320dac33.txt@@ -0,0 +1,39 @@ +Texas Instruments - tlv320dac33 Codec module + +The tlv320dac33 serial control bus communicates through I2C protocols. + +Required properties: + +- compatible - "ti,tlv320dac33" +- reg - I2C slave address + +Optional properties: + +- power-gpio - gpio pin to power the device
power-gpios. Active high or low?
+
+- avdd-supply, dvdd-supply, iovdd-supply: power supplies for the device as covered
+ in Documentation/devicetree/bindings/regulator/regulator.txt
+
+- interrupts - The interrupt output from the device.
+- interrupt-parent - The parent interrupt controller.
+
+- ti,keep-bclk - Keep the BCLK running in FIFO modes
+- ti,burst-bclkdiv - BCLK divider value in burst mode
+
+Example:
+
+tlv320dac33: tlv320dac33@19 {audio-codec@19
+ compatible = "ti,tlv320dac33"; + reg = <0x19>; + + avdd-supply = <&vaux4>; + dvdd-supply = <&vio>; + iovdd-supply = <&vio>; + + interrupt-parent = <&gpio2>; + interrupts = <21 1>; /* gpio_53, IRQF_TRIGGER_RISING */ + power-gpio = <&gpio2 28 0>; /* gpio_60 */ + + ti,keep-bclk; + ti,burst-bclkdiv = /bits/ 8 <3>; +}; -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
-- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html