<br><br><div><span class="gmail_quote">On 7/6/07, <b class="gmail_sendername">Grant Likely</b> &lt;<a href="mailto:grant.likely@secretlab.ca">grant.likely@secretlab.ca</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On 7/6/07, Arnd Bergmann &lt;<a href="mailto:arnd@arndb.de">arnd@arndb.de</a>&gt; wrote:<br>&gt; On Saturday 07 July 2007, Grant Likely wrote:<br>&gt; &gt; --- a/arch/powerpc/platforms/83xx/mpc834x_itx.c<br>&gt; &gt; +++ b/arch/powerpc/platforms/83xx/mpc834x_itx.c
<br>&gt; &gt; @@ -63,6 +63,8 @@ static void __init mpc834x_itx_setup_arch(void)<br>&gt; &gt;<br>&gt; &gt; ppc_md.pci_exclude_device = mpc83xx_exclude_device;<br>&gt; &gt; #endif<br>&gt; &gt; +<br>&gt; &gt; +mpc834x_usb_cfg();
<br>&gt; &gt; }<br>&gt;<br>&gt; Why is that necessary? Shouldn&#39;t there be an of_platform_driver that<br>&gt; simply does all the setup automatically if the device is present?<br><br>This call is actually for SoC setup stuff.&nbsp;&nbsp;There are actually 2 USB
<br>engines on the SoC, and this call figures out what mode the pins are<br>supposed to be in.&nbsp;&nbsp;I think this stuff firmly falls into the platform<br>setup arena since it is highly chip specific.<br><br>You bring up a good point though.&nbsp;&nbsp;The current usb support code in
<br>sysdev/fsl_soc.c uses arch_initcall(fsl_usb_of_init) to go searching<br>for USB interfaces in the device tree, which are EHCI (and sometimes<br>OTG) compatible.&nbsp;&nbsp;fsl_usb_of_init calls<br>platform_device_register_simple() for each USB device found which is
<br>kind of a round about way of doing things.&nbsp;&nbsp;That should probably be<br>depreciated and an of_platform_device binding should be added to the<br>EHCI driver.<br><br>This same comment probably goes for the other arch_initcall functions
<br>in fsl_soc.c which do exactly the same thing for other devices.</blockquote><div><br>This depends,&nbsp; some devices in fsl_soc.c may exist on non-powerpc SoCs <br>that do not have OF.&nbsp; The USB core in 8349 for example also is in the
<br>arm based mx27 and mx31.&nbsp; These devices should remain platform devices<br>and the glue in fls_soc.c will continure to be needed.<br><br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Cheers,<br>g.<br><br>--<br>Grant Likely, B.Sc., P.Eng.<br>Secret Lab Technologies Ltd.<br><a href="mailto:grant.likely@secretlab.ca">grant.likely@secretlab.ca</a><br>(403) 399-0195<br>_______________________________________________
<br>Linuxppc-dev mailing list<br><a href="mailto:Linuxppc-dev@ozlabs.org">Linuxppc-dev@ozlabs.org</a><br><a href="https://ozlabs.org/mailman/listinfo/linuxppc-dev">https://ozlabs.org/mailman/listinfo/linuxppc-dev</a><br></blockquote>
</div><br>