Re: [RFC] am33xx: create child nodes for the two musb controllers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Wed, Jun 26, 2013 at 05:33:26PM +0200, Sebastian Andrzej Siewior wrote:
> I've been thinkig about creating two child nodes for the independent musb
> controllers on the am33. I've been thinking about the following:
> 
> diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
> index 8e1248f..6aa9506 100644
> --- a/arch/arm/boot/dts/am33xx.dtsi
> +++ b/arch/arm/boot/dts/am33xx.dtsi
> @@ -326,21 +326,78 @@
>  			status = "disabled";
>  		};
>  
>  		usb@47400000 {
>  			compatible = "ti,musb-am33xx";
> -			reg = <0x47400000 0x1000	/* usbss */
> -			       0x47401000 0x800		/* musb instance 0 */
> -			       0x47401800 0x800>;	/* musb instance 1 */
> -			interrupts = <17		/* usbss */
> -				      18		/* musb instance 0 */
> -				      19>;		/* musb instance 1 */
> -			multipoint = <1>;
> -			num-eps = <16>;
> -			ram-bits = <12>;
> -			port0-mode = <3>;
> -			port1-mode = <3>;
> -			power = <250>;
> +			reg = <0x47400000 0x1000>;	/* usbss */
> +			interrupts = <17>;		/* usbss */
>  			ti,hwmods = "usb_otg_hs";
> +
> +			usb0@0x47401000 {
> +				reg = <0x47401000 0x800>;	/* musb instance 0 */
> +				interrupts = <18>;		/* musb instance 0 */
> +				multipoint = <1>;
> +				num-eps = <16>;
> +				ram-bits = <12>;
> +				port-mode = <3>;
> +				power = <250>;
> +
> +				phys = <&nopphy0>;
> +				dmas = <&cppi41dma 0
> +					&cppi41dma 1
> +					&cppi41dma 2
> +					&cppi41dma 3
> +					&cppi41dma 4
> +					&cppi41dma 32
> +					&cppi41dma 34
> +					&cppi41dma 36
> +					&cppi41dma 38
> +					&cppi41dma 40>;
> +				dma-names = "rx1", "rx2", "rx3", "rx4", "rx5",
> +					    "tx1", "tx2", "tx3", "tx4", "tx5";
> +			};
> +
> +			usb0@0x47401800 {
> +				reg = <0x47401800 0x800>;	/* musb instance 1 */
> +				interrupts = <19>;		/* musb instance 1 */
> +				multipoint = <1>;
> +				num-eps = <16>;
> +				ram-bits = <12>;
> +				port-mode = <3>;
> +				power = <250>;
> +
> +				phys = <&nopphy1>;
> +				dmas = <&cppi41dma 0
> +					&cppi41dma 1
> +					&cppi41dma 2
> +					&cppi41dma 3
> +					&cppi41dma 4
> +					&cppi41dma 62
> +					&cppi41dma 64
> +					&cppi41dma 66
> +					&cppi41dma 68
> +					&cppi41dma 70>;
> +				dma-names = "rx1", "rx2", "rx3", "rx4", "rx5",
> +					    "tx1", "tx2", "tx3", "tx4", "tx5";
> +			};
> +		};
> 
> Please keep in mind that his is not a proper patch it should point out
> what I have in mind.
> This would easy the for instance the dma channel assignment. Also, it will
> move back to the port-mode property instead of portX-mode one which it has
> now. This is kind of confusing since it is not a root hub or anything like
> that it is a complete musb controller. Plus for the phys property could
> easily take the one avaible and would not require which instance it
> really it is.

the patch is alright, but what about the giant amoutn of function
pointers we have ? Are you planning to use of_dev_auxdata ??

-- 
balbi

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux