Subject: Re: [patch 1/1] fsldma: the MPC8377MDS board device tree node for fsldma driver

From: Scott Wood <[email-masked]>
Date: Wed, 14 May 2008 18:28:08 -0500

[email-masked] wrote:
> From: Zhang Wei <[email-masked]>
> 
> The fsldma driver is tested on MPC8377MDS board.  The patch adds fsldma driver
> support into MPC8377MDS device tree.
> 
> Signed-off-by: Zhang Wei <[email-masked]>
> Cc: "Nelson, Shannon" <[email-masked]>
> Cc: Dan Williams <[email-masked]>
> Cc: Kumar Gala <[email-masked]>
> Cc: Paul Mackerras <[email-masked]>
> Cc: Benjamin Herrenschmidt <[email-masked]>
> Signed-off-by: Andrew Morton <[email-masked]>
> ---
> 
>  arch/powerpc/boot/dts/mpc8377_mds.dts |   27 ++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
> 
> diff -puN arch/powerpc/boot/dts/mpc8377_mds.dts~fsldma-the-mpc8377mds-board-device-tree-node-for-fsldma-driver arch/powerpc/boot/dts/mpc8377_mds.dts
> --- a/arch/powerpc/boot/dts/mpc8377_mds.dts~fsldma-the-mpc8377mds-board-device-tree-node-for-fsldma-driver
> +++ a/arch/powerpc/boot/dts/mpc8377_mds.dts
> @@ -295,6 +295,33 @@
>  			};
>  		};
>  
> +		dma@82a8 {
> +			#address-cells = <1>;
> +			#size-cells = <1>;
> +			compatible = "fsl,mpc8349-dma";
> +			reg = <0x82a8 4>;
> +			ranges = <0 0x8100 0x1a8>;
> +			interrupt-parent = <&ipic>;
> +			interrupts = <0x47 8>;
> +			cell-index = <0>;
> +			dma-channel@0 {
> +				compatible = "fsl,mpc8349-dma-channel";
> +				reg = <0 0x80>;
> +			};
> +			dma-channel@80 {
> +				compatible = "fsl,mpc8349-dma-channel";
> +				reg = <0x80 0x80>;
> +			};
> +			dma-channel@100 {
> +				compatible = "fsl,mpc8349-dma-channel";
> +				reg = <0x100 0x80>;
> +			};
> +			dma-channel@180 {
> +				compatible = "fsl,mpc8349-dma-channel";
> +				reg = <0x180 0x28>;
> +			};

According to booting-without-of.txt, the interrupts property should be 
repeated in each channel.  The driver also needs to be fixed to remember 
whether it registered a DMA-block-level interrupt handler already, and 
not try to register a channel interrupt.

-Scott