Message ID | 1398674237-4129-1-git-send-email-yegorslists@googlemail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 4/28/2014 2:07 PM, yegorslists@googlemail.com wrote: > From: Yegor Yefremov <yegorslists@googlemail.com> > > This patch creates unique DMA channels for the second USB > interface, otherwise the second USB interface is not usable > at all. MUSB_DMA_NUM_CHANNELS is 15, so if you pass any dma-names > 15 (> rx15/tx15), the dma_controller_create in musb_core.c fails and it falls back to PIO mode. > > Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com> > --- > arch/arm/boot/dts/am33xx.dtsi | 12 ++++++------ > 1 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi > index 07f283c..e04cbbc 100644 > --- a/arch/arm/boot/dts/am33xx.dtsi > +++ b/arch/arm/boot/dts/am33xx.dtsi > @@ -548,12 +548,12 @@ > &cppi41dma 26 1 &cppi41dma 27 1 > &cppi41dma 28 1 &cppi41dma 29 1>; > dma-names = > - "rx1", "rx2", "rx3", "rx4", "rx5", "rx6", "rx7", > - "rx8", "rx9", "rx10", "rx11", "rx12", "rx13", > - "rx14", "rx15", > - "tx1", "tx2", "tx3", "tx4", "tx5", "tx6", "tx7", > - "tx8", "tx9", "tx10", "tx11", "tx12", "tx13", > - "tx14", "tx15"; > + "rx16", "rx17", "rx18", "rx19", "rx20", "rx21", "rx22", > + "rx23", "rx24", "rx25", "rx26", "rx27", "rx28", > + "rx29", "rx30", > + "tx16", "tx17", "tx18", "tx19", "tx20", "tx21", "tx22", > + "tx23", "tx24", "tx25", "tx26", "tx27", "tx28", > + "tx29", "tx30"; > }; > > cppi41dma: dma-controller@47402000 {
On Mon, Apr 28, 2014 at 4:25 PM, George Cherian <george.cherian@ti.com> wrote: > On 4/28/2014 2:07 PM, yegorslists@googlemail.com wrote: >> >> From: Yegor Yefremov <yegorslists@googlemail.com> >> >> This patch creates unique DMA channels for the second USB >> interface, otherwise the second USB interface is not usable >> at all. > > MUSB_DMA_NUM_CHANNELS is 15, so if you pass any dma-names > 15 (> > rx15/tx15), > the dma_controller_create in musb_core.c fails and it falls back to PIO > mode. What's the proper fix for the DMA issue? Yegor
On 4/28/2014 9:47 PM, Yegor Yefremov wrote: > On Mon, Apr 28, 2014 at 4:25 PM, George Cherian <george.cherian@ti.com> wrote: >> On 4/28/2014 2:07 PM, yegorslists@googlemail.com wrote: >>> From: Yegor Yefremov <yegorslists@googlemail.com> >>> >>> This patch creates unique DMA channels for the second USB >>> interface, otherwise the second USB interface is not usable >>> at all. >> MUSB_DMA_NUM_CHANNELS is 15, so if you pass any dma-names > 15 (> >> rx15/tx15), >> the dma_controller_create in musb_core.c fails and it falls back to PIO >> mode. > What's the proper fix for the DMA issue? I could not understand what issue you are referring to. In my setup I use both BBB and BBW (Beagle Bone Black/White)with one USB in host (USB1) and one USB in gadget (USB0). I dont see any issues with DMA. Can you be more specific? > > Yegor
On Tue, Apr 29, 2014 at 6:31 AM, George Cherian <george.cherian@ti.com> wrote: > On 4/28/2014 9:47 PM, Yegor Yefremov wrote: >> >> On Mon, Apr 28, 2014 at 4:25 PM, George Cherian <george.cherian@ti.com> >> wrote: >>> >>> On 4/28/2014 2:07 PM, yegorslists@googlemail.com wrote: >>>> >>>> From: Yegor Yefremov <yegorslists@googlemail.com> >>>> >>>> This patch creates unique DMA channels for the second USB >>>> interface, otherwise the second USB interface is not usable >>>> at all. >>> >>> MUSB_DMA_NUM_CHANNELS is 15, so if you pass any dma-names > 15 (> >>> rx15/tx15), >>> the dma_controller_create in musb_core.c fails and it falls back to PIO >>> mode. >> >> What's the proper fix for the DMA issue? > > I could not understand what issue you are referring to. > In my setup I use both BBB and BBW (Beagle Bone Black/White)with one USB in > host (USB1) > and one USB in gadget (USB0). I dont see any issues with DMA. > > Can you be more specific? I've totally overlooked the DMA channel allocation errors (though usb0 in host mode was working, usb1 in OTG not). of_get_named_gpiod_flags: can't parse gpios property of node '/ocp/usb@47400000/usb-phy@47401300[0]' 47401300.usb-phy supply vcc not found, using dummy regulator musb-hdrc musb-hdrc.0.auto: Failed to request rx1. musb-hdrc musb-hdrc.0.auto: musb_init_controller failed with status -517 platform musb-hdrc.0.auto: Driver musb-hdrc requests probe deferral of_get_named_gpiod_flags: can't parse gpios property of node '/ocp/usb@47400000/usb-phy@47401b00[0]' 47401b00.usb-phy supply vcc not found, using dummy regulator musb-hdrc musb-hdrc.1.auto: Failed to request rx1. musb-hdrc musb-hdrc.1.auto: musb_init_controller failed with status -517 platform musb-hdrc.1.auto: Driver musb-hdrc requests probe deferral This patch fixes the issue: "ARM: dts: am33xx: Move the cppi41dma node so it's probed early" Thanks. Yegor
diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi index 07f283c..e04cbbc 100644 --- a/arch/arm/boot/dts/am33xx.dtsi +++ b/arch/arm/boot/dts/am33xx.dtsi @@ -548,12 +548,12 @@ &cppi41dma 26 1 &cppi41dma 27 1 &cppi41dma 28 1 &cppi41dma 29 1>; dma-names = - "rx1", "rx2", "rx3", "rx4", "rx5", "rx6", "rx7", - "rx8", "rx9", "rx10", "rx11", "rx12", "rx13", - "rx14", "rx15", - "tx1", "tx2", "tx3", "tx4", "tx5", "tx6", "tx7", - "tx8", "tx9", "tx10", "tx11", "tx12", "tx13", - "tx14", "tx15"; + "rx16", "rx17", "rx18", "rx19", "rx20", "rx21", "rx22", + "rx23", "rx24", "rx25", "rx26", "rx27", "rx28", + "rx29", "rx30", + "tx16", "tx17", "tx18", "tx19", "tx20", "tx21", "tx22", + "tx23", "tx24", "tx25", "tx26", "tx27", "tx28", + "tx29", "tx30"; }; cppi41dma: dma-controller@47402000 {