Re: tg3 'No PHY devices' loading issue

From: Harald Hoyer
Date: Wed Apr 18 2012 - 04:16:08 EST


Am 17.04.2012 23:05, schrieb Josh Boyer:
> On Tue, Apr 17, 2012 at 03:39:08PM -0400, Josh Boyer wrote:
>> On Tue, Apr 17, 2012 at 11:50:07AM -0700, Matt Carlson wrote:
>>> On Tue, Apr 17, 2012 at 10:18:57AM -0400, Josh Boyer wrote:
>>>> It has worked on some of the older kernels without the need for the
>>>> manual rmmod/modprobe step, so it seems to be somewhat timing related.
>>>> I'm not sure if there is a module load ordering issue, but that doesn't
>>>> seem to be the case. I can't explain why a later modprobe would work
>>>> just fine though.
>>>>
>>>> Do you have any thoughts on how to go about debugging/fixing this? I'd
>>>> be happy to test and provide whatever information you need.
>>>
>>> The 57788 uses the broadcom phylib module. For some reason, it isn't
>>> available the first module load attempt. A while ago, code was added to
>>> phylib to request modules from userspace if the particular phy support
>>> code wasn't already loaded. It looks like this mechanism isn't working
>>> too well the first time through.
>>>
>>> Can you reproduce the problem if you run 'rmmod broadcom' and then
>>> reload tg3?
>>
>> I'll give it a shot, but that sounds like a quite plausible scenario to
>> me. Oddly, even after the manual modprobe, the broadcom phy module
>> doesn't show an increased use count. There's also no dependency on
>> 'broadcom' listed for tg3 by modinfo.
>
> If I rmmod both tg3 and broadcom and then just load tg3 (either via
> insmod or modprobe), it works fine. It does so because whatever you did
> to make it request the phylib module from userspace also worked because
> the broadcom module is loaded as well.
>
> So it seems my issue is basically because the initramfs isn't built with
> the broadcom module included. I'll have to figure out a way to teach
> dracut what to do here, since it doesn't seem to be automatically
> picking it up (Harald CC'd).
>
> Thanks much for the very quick response from everyone.
>
> josh

Ok, so we have to include all kernel/drivers/net/phy/*.ko in the initramfs?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/