[alsa-devel] [PATCH 6/6] ARM: DTS: da850: Add McBSP0 and McBSP1

Petr Kulhavy petr at barix.com
Thu Apr 7 14:16:11 CEST 2016


On 07.04.2016 13:34, Peter Ujfalusi wrote:
> On 04/06/16 16:21, Petr Kulhavy wrote:
>> Add SoC nodes for McBSP0 and McBSP1 as well as the corresponding pinmux
>> configurations.
>>
>> Signed-off-by: Petr Kulhavy <petr at barix.com>
>> ---
>>   arch/arm/boot/dts/da850.dtsi | 45 +++++++++++++++++++++++++++++++++++++++++++-
>>   1 file changed, 44 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/boot/dts/da850.dtsi b/arch/arm/boot/dts/da850.dtsi
>> index 5996e765e59c..9e2b1e97377c 100644
>> --- a/arch/arm/boot/dts/da850.dtsi
>> +++ b/arch/arm/boot/dts/da850.dtsi
>> @@ -148,7 +148,24 @@
>>   					0xc 0x88888888 0xffffffff
>>   				>;
>>   			};
>> -
>> +			mcbsp0_pins: pinmux_mcbsp0_pins {
>> +				pinctrl-single,bits = <
>> +					/* PINMUX2:
>> +					* CLKS0, DX0, DR0, FSX0
>> +					* FSR0, CLKX0, CLKR0
>> +					*/
>> +					0x8 0x02222220 0xfffffff0
>> +				>;
>> +			};
>> +			mcbsp1_pins: pinmux_mcbsp1_pins {
>> +				pinctrl-single,bits = <
>> +					/* PINMUX1:
>> +					* CLKS1, DX1, DR1, FSX1,
>> +					* FSR1, CLKX1, CLKR1
>> +					*/
>> +					0x4 0x22222220 0xfffffff0
> This will conflict with the mcasp0_pins in da850-evm as AXR11 and AXR12 is
> used by the board for audio. When I say conflict, I mean that audio will be
> completely broken on the board.

I agree with you, the EVM uses the pins for other peripherals. However I 
understand that the da850.dtsi is a generic description of the DA850 
platform.
Other DA850 based designs that use the McBSP will not have conflicts. 
For instance my two AM1808 based boards don't use the McASP.
Of course the board's DTS must enable only non-conflicting 
peripherals/pinmux configurations.
But having the pinmuxes defined does not break anything and actually 
helps creating the DTS file.
Or did I miss something?

>
>> +				>;
>> +			};
>>   		};
>>   		edma0: edma at 01c00000 {
>>   			compatible = "ti,edma3-tpcc";
>> @@ -335,6 +352,32 @@
>>   				<&edma0 0 1>;
>>   			dma-names = "tx", "rx";
>>   		};
>> +
>> +		mcbsp0: mcbsp at 1d10000 {
>> +			compatible = "ti,da850-mcbsp-audio";
>> +			reg =	<0x00110000 0x1000>,
>> +				<0x00310000 0x1000>;
>> +			reg-names = "mpu", "dat";
>> +			interrupts = <97 98>;
>> +			interrupts-names = "rx", "tx";
>> +			dmas = <&edma0 3
>> +				&edma0 2>;
> This will not work since the eDMA now has the new binding in use, you need to
> have:
> 			dmas = <&edma0 3 1>,
> 				<&edma0 2 1>;
>
> McBSP should also select the higher priority TPTC as the McASP does.
Absolutely, you are right! I still use the old DMA phandles. I will 
correct that.

Petr


More information about the Alsa-devel mailing list