brintos

brintos / linux-shallow public Read only

0
0
Text · 2.5 KiB · b6cc5f6 Raw
93 lines · plain
1Devicetree bindings for the Axentia TSE-850 audio complex2 3Required properties:4  - compatible: "axentia,tse850-pcm5142"5  - axentia,cpu-dai: The phandle of the cpu dai.6  - axentia,audio-codec: The phandle of the PCM5142 codec.7  - axentia,add-gpios: gpio specifier that controls the mixer.8  - axentia,loop1-gpios: gpio specifier that controls loop relays on channel 1.9  - axentia,loop2-gpios: gpio specifier that controls loop relays on channel 2.10  - axentia,ana-supply: Regulator that supplies the output amplifier. Must11    support voltages in the 2V - 20V range, in 1V steps.12 13The schematics explaining the gpios are as follows:14 15               loop1 relays16   IN1 +---o  +------------+  o---+ OUT117            \                /18             +              +19             |   /          |20             +--o  +--.     |21             |  add   |     |22             |        V     |23             |      .---.   |24   DAC +----------->|Sum|---+25             |      '---'   |26             |              |27             +              +28 29   IN2 +---o--+------------+--o---+ OUT230               loop2 relays31 32The 'loop1' gpio pin controls two relays, which are either in loop position,33meaning that input and output are directly connected, or they are in mixer34position, meaning that the signal is passed through the 'Sum' mixer. Similarly35for 'loop2'.36 37In the above, the 'loop1' relays are inactive, thus feeding IN1 to the mixer38(if 'add' is active) and feeding the mixer output to OUT1. The 'loop2' relays39are active, short-cutting the TSE-850 from channel 2. IN1, IN2, OUT1 and OUT240are TSE-850 connectors and DAC is the PCB name of the (filtered) output from41the PCM5142 codec.42 43Example:44 45	&ssc0 {46		#sound-dai-cells = <0>;47 48	};49 50	&i2c {51		codec: pcm5142@4c {52			compatible = "ti,pcm5142";53 54			reg = <0x4c>;55 56			AVDD-supply = <&reg_3v3>;57			DVDD-supply = <&reg_3v3>;58			CPVDD-supply = <&reg_3v3>;59 60			clocks = <&sck>;61 62			pll-in = <3>;63			pll-out = <6>;64		};65	};66 67	ana: ana-reg {68		compatible = "pwm-regulator";69 70		regulator-name = "ANA";71 72		pwms = <&pwm0 2 1000 PWM_POLARITY_INVERTED>;73		pwm-dutycycle-unit = <1000>;74		pwm-dutycycle-range = <100 1000>;75 76		regulator-min-microvolt = <2000000>;77		regulator-max-microvolt = <20000000>;78		regulator-ramp-delay = <1000>;79	};80 81	sound {82		compatible = "axentia,tse850-pcm5142";83 84		axentia,cpu-dai = <&ssc0>;85		axentia,audio-codec = <&codec>;86 87		axentia,add-gpios = <&pioA 8 GPIO_ACTIVE_LOW>;88		axentia,loop1-gpios = <&pioA 10 GPIO_ACTIVE_LOW>;89		axentia,loop2-gpios = <&pioA 11 GPIO_ACTIVE_LOW>;90 91		axentia,ana-supply = <&ana>;92	};93