[alsa-devel] [PATCH 1/6] ASoC: davinci-mcbsp: add binding for McBSP

Peter Ujfalusi peter.ujfalusi at ti.com
Thu Apr 7 15:33:26 CEST 2016


On 04/06/16 16:21, Petr Kulhavy wrote:
> Add devicetree binding for the TI DA8xx/OMAP-L1x/AM17xx/AM18xx
> MultiChannel Buffered Serial Port (McBSP)
> 
> The optional register range "dat" is not implemented at the moment.
> The current driver supports only DMA into RX/TX registers but no FIFO.
> Once the FIFO is implemented in the driver the "dat" range will be used.
> 
> Signed-off-by: Petr Kulhavy <petr at barix.com>
> ---
>  .../bindings/sound/davinci-mcbsp-audio.txt         | 57 ++++++++++++++++++++++

I would drop the -audio postfix.
I know the McASP introduced this and it is annoying. Let's not repeat it again...

>  1 file changed, 57 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/davinci-mcbsp-audio.txt
> 
> diff --git a/Documentation/devicetree/bindings/sound/davinci-mcbsp-audio.txt b/Documentation/devicetree/bindings/sound/davinci-mcbsp-audio.txt
> new file mode 100644
> index 000000000000..f60fceb927dd
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/davinci-mcbsp-audio.txt
> @@ -0,0 +1,57 @@
> +Texas Instruments DaVinci McBSP module
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +This binding describes the "Multi-channel Buffered Serial Port" (McBSP)
> +audio interface found in some TI DaVinci processors like e.g. the DA850,
> +DM6446, DA355.

Given that the driver is actually a driver for daVinci ASP and it completely
ignores registers introduced when the IP is renamed from ASP to McBSP, should
we say something about this? That the ASP is compatible or subset of McBSP
(w/o the multichannel support) and these bindings could be used for ASP, with
adding new compatible?
Or just leave that out and bother with it when we have such a device booting
with DT?

> +
> +
> +Required properties:
> +~~~~~~~~~~~~~~~~~~~~
> +- compatible : "ti,da850-mcbsp-audio"
> +
> +- reg : physical base address and length of the controller memory mapped
> +        region(s).
> +- reg-names : Should contain:
> +         * "mpu" for the main registers (required). For compatibility with
> +           existing software, it is recommended this is the first entry.
> +         * "dat" for the data FIFO (optional).
> +
> +- dmas: two element list of DMA controller phandles 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. The dma
> +	     identifiers must be "rx" and "tx".
> +
> +Optional properties:
> +~~~~~~~~~~~~~~~~~~~~
> +- interrupts : Interrupt numbers for McBSP
> +- interrupt-names : Known interrupt names are "rx" and "tx"
> +
> +- pinctrl-0: Should specify pin control group used for this controller.
> +- pinctrl-names: Should contain only one value - "default", for more details
> +  		 please refer to pinctrl-bindings.txt
> +
> +- channel-combine : boolean. If present L and R channels are combined into one
> +		DMA transfer, however the labelling of the channels is swapped.
> +		Therefore this option should be used only if the channels can
> +		be swapped back at the codec side again.
> +
> +Example (AM1808):
> +~~~~~~~~~~~~~~~~~
> +
> +mcbsp0: mcbsp at 1d10000 {
> +	compatible = "ti,davinci-mcbsp-audio";
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&mcbsp0_pins>;
> +
> +	reg = 	<0x00110000 0x1000>,
> +		<0x00310000 0x1000>;
> +	reg-names = "mpu", "dat";
> +	interrupts = <97 98>;
> +	interrupts-names = "rx", "tx";
> +	dmas = <&edma0 3
> +		&edma0 2>;
> +	dma-names = "tx", "rx";
> +	status = "okay";
> +};
> 


-- 
Péter


More information about the Alsa-devel mailing list