On 01/31/2014 12:37 PM, Paul Zimmerman wrote:
>> From: Andre Heider [mailto:a.hei...@gmail.com]
>> Sent: Friday, January 31, 2014 11:04 AM
>> On Fri, Jan 31, 2014 at 12:15:26PM -0600, Felipe Balbi wrote:
>>> On Fri, Jan 31, 2014 at 07:12:36PM +0100, Andre Heider wrote:
>>>> On Mon, Jan 13, 2014 at 01:50:09PM -0800, Paul Zimmerman wrote:
>>>>> The DWC2 driver should now be in good enough shape to move out of
>>>>> staging. I have stress tested it overnight on RPI running mass
>>>>> storage and Ethernet transfers in parallel, and for several days
>>>>> on our proprietary PCI-based platform.
...
>>>> this looks just fine, but for whatever reason it breaks sdhci on my rpi.
>>>> With today's Linus' master the dwc2 controller seems to initialize fine,
>>>> but I get this upon boot:
>>>>
>>>> [    1.783316] sdhci-bcm2835 20300000.sdhci: sdhci_pltfm_init failed -12
>>>> [    1.794820] sdhci-bcm2835: probe of 20300000.sdhci failed with error -12
...
>> This silly move doesn't trigger the sdhci ENOMEM:
>>
>> diff --git a/arch/arm/boot/dts/bcm2835.dtsi b/arch/arm/boot/dts/bcm2835.dtsi
>> index b021c96..f739b80 100644
>> --- a/arch/arm/boot/dts/bcm2835.dtsi
>> +++ b/arch/arm/boot/dts/bcm2835.dtsi
>> @@ -100,6 +100,12 @@
>>                      status = "disabled";
>>              };
>>
>> +            usb {
>> +                    compatible = "brcm,bcm2835-usb";
>> +                    reg = <0x7e980000 0x10000>;
>> +                    interrupts = <1 9>;
>> +            };
>> +
>>              sdhci: sdhci {
>>                      compatible = "brcm,bcm2835-sdhci";
>>                      reg = <0x7e300000 0x100>;
>> @@ -107,12 +113,6 @@
>>                      clocks = <&clk_mmc>;
>>                      status = "disabled";
>>              };
>> -
>> -            usb {
>> -                    compatible = "brcm,bcm2835-usb";
>> -                    reg = <0x7e980000 0x10000>;
>> -                    interrupts = <1 9>;
>> -            };
>>      };
>>
>>      clocks {
>>
>> Maybe there's some kind of race, or something even messing at the .dtb
>> at runtime?
> 
> Hi Greg, Steve,
> 
> Would moving a USB driver from drivers/staging/ to drivers/usb/ perhaps
> cause the initialization order to change?

Yes, certainly.

> If so, maybe that has exposed
> some pre-existing interference between sdhci and dwc2?
> 
> Could moving the resource in the .dts file as Andre has done also cause
> the initialization order to change?

Yes, certainly.

I'll try to look into this, this weekend.
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to