>
> *"r116" yeap.. time to go home. ;)*
>

Same here, and yeah wulf is right. My problem is: I'm already home. Maybe I
need a brewski . . .

On Tue, May 19, 2015 at 3:01 PM, Robert Nelson <robertcnel...@gmail.com>
wrote:

> On Tue, May 19, 2015 at 5:00 PM, Robert Nelson <robertcnel...@gmail.com>
> wrote:
> > On Tue, May 19, 2015 at 4:57 PM, Robert Nelson <robertcnel...@gmail.com>
> wrote:
> >> On Tue, May 19, 2015 at 3:56 PM, Robert Nelson <robertcnel...@gmail.com>
> wrote:
> >>> On Tue, May 19, 2015 at 3:48 PM, Fernando Derkoski <bril...@gmail.com>
> wrote:
> >>>> Hi, first thank you for the response, here is the output where the
> network
> >>>> did not work:
> >>>>
> >>>> root@beaglebone:~# dmesg | grep mdio
> >>>> [    1.040419] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
> >>>> [    1.040439] davinci_mdio 4a101000.mdio: detected phy mask fffffffb
> >>>> [    1.047217] libphy: 4a101000.mdio: probed
> >>>> [    1.047246] davinci_mdio 4a101000.mdio: phy[2]: device
> 4a101000.mdio:02,
> >>>> driver SMSC LAN8710/LAN8720
> >>>
> >>> Humm, that is odd, it corrected for [phy mask fffffffb] with
> [4a101000.mdio:02]
> >>>
> >>> But it should have been phy[4]... [4a101000.mdio:04]
> >>>
> >>> The math conversion in the phy search patch is:
> >>>
> >>> phy_mask = fffffffb
> >>>
> >>> for (i = 0; i < PHY_MAX_ADDR; i++) {
> >>>       if ((phy_mask & (1 << i)) == 0) {
> >>>               addr = (u32) i;
> >>>               break;
> >>>        }
> >>> }
> >>
> >> This looks like a fun rabbit hole:
> >>
> >> From: http://www.ti.com/lit/ug/spruh73l/spruh73l.pdf
> >>
> >> Table 14-252. MDIOALIVE Register Field Descriptions
> >>
> >> "The alive bits are only meant to be used to give an indication of the
> >> presence or not of a PHY with the corresponding address."
> >>
> >> Whereas in the kernel:
> >>
> >> /* get phy mask from the alive register */
> >> phy_mask = __raw_readl(&data->regs->alive);
> >> if (phy_mask) {
> >>    /* restrict mdio bus to live phys only */
> >>    dev_info(data->dev, "detected phy mask %x\n", ~phy_mask);
> >>    phy_mask = ~phy_mask;
> >> } else {
> >>     /* desperately scan all phys */
> >>    dev_warn(data->dev, "no live phy, scanning all\n");
> >>    phy_mask = 0;
> >> }
> >> data->bus->phy_mask = phy_mask;
> >>
> >> We "assume" phy_mask to be 100% correct. Maybe we should just force
> >> the dt value of phy_id always into phy_mask?
> >
> > nm... total 5pm brain fart..
> >
> > I really need to find a board that 'never' boots with 0xfffffffe..
> >
> > I'm thinking yanking r117 and shorting RXD3/PHYAD2 -> vdd_3v3b
>
> "r116" yeap.. time to go home. ;)
>
> Regards,
>
> --
> Robert Nelson
> https://rcn-ee.com/
>
> --
> For more options, visit http://beagleboard.org/discuss
> ---
> You received this message because you are subscribed to the Google Groups
> "BeagleBoard" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to beagleboard+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to