* [U-Boot] RMII ethernet problems on i.MX6 Solo
@ 2012-09-27 18:27 Carolyn Smith
2012-09-27 18:50 ` Troy Kisky
2012-09-27 19:00 ` Fabio Estevam
0 siblings, 2 replies; 6+ messages in thread
From: Carolyn Smith @ 2012-09-27 18:27 UTC (permalink / raw)
To: u-boot
Hello,
Has anyone had any success getting RMII ethernet to work on an i.MX6 Solo
or DualLite? I am pretty confident I have the IOMUX registers set up
properly and the clocking configured and working properly but am not seeing
any activity on the TXEN line when trying to transmit a packet.I can access
the PHY's registers so I think that means MDC and MDIO must be working.
Any suggestions greatly appreciated,
Carolyn
^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] RMII ethernet problems on i.MX6 Solo
2012-09-27 18:27 [U-Boot] RMII ethernet problems on i.MX6 Solo Carolyn Smith
@ 2012-09-27 18:50 ` Troy Kisky
2012-09-27 19:00 ` Fabio Estevam
1 sibling, 0 replies; 6+ messages in thread
From: Troy Kisky @ 2012-09-27 18:50 UTC (permalink / raw)
To: u-boot
On 9/27/2012 11:27 AM, Carolyn Smith wrote:
> Hello,
>
> Has anyone had any success getting RMII ethernet to work on an i.MX6 Solo
> or DualLite? I am pretty confident I have the IOMUX registers set up
> properly and the clocking configured and working properly but am not seeing
> any activity on the TXEN line when trying to transmit a packet.I can access
> the PHY's registers so I think that means MDC and MDIO must be working.
>
> Any suggestions greatly appreciated,
> Carolyn
>
I've used ethernet with the Micrel 9021 phy on both solo and duallite.
But that phy doesn't use TXEN.
Troy
^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] RMII ethernet problems on i.MX6 Solo
2012-09-27 18:27 [U-Boot] RMII ethernet problems on i.MX6 Solo Carolyn Smith
2012-09-27 18:50 ` Troy Kisky
@ 2012-09-27 19:00 ` Fabio Estevam
2012-09-27 21:07 ` Carolyn Smith
1 sibling, 1 reply; 6+ messages in thread
From: Fabio Estevam @ 2012-09-27 19:00 UTC (permalink / raw)
To: u-boot
On Thu, Sep 27, 2012 at 3:27 PM, Carolyn Smith <carolynsmi56@gmail.com> wrote:
> Hello,
>
> Has anyone had any success getting RMII ethernet to work on an i.MX6 Solo
> or DualLite? I am pretty confident I have the IOMUX registers set up
> properly and the clocking configured and working properly but am not seeing
> any activity on the TXEN line when trying to transmit a packet.I can access
> the PHY's registers so I think that means MDC and MDIO must be working.
Which Ethernet PHY are you using and which board?
Can you post your patches in the list for review, so that we can try
to understand the problem better?
Regards,
Fabio Estevam
^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] RMII ethernet problems on i.MX6 Solo
2012-09-27 19:00 ` Fabio Estevam
@ 2012-09-27 21:07 ` Carolyn Smith
2012-09-28 15:20 ` Carolyn Smith
0 siblings, 1 reply; 6+ messages in thread
From: Carolyn Smith @ 2012-09-27 21:07 UTC (permalink / raw)
To: u-boot
On Thu, Sep 27, 2012 at 12:00 PM, Fabio Estevam <festevam@gmail.com> wrote:
>
> On Thu, Sep 27, 2012 at 3:27 PM, Carolyn Smith <carolynsmi56@gmail.com> wrote:
> > Hello,
> >
> > Has anyone had any success getting RMII ethernet to work on an i.MX6 Solo
> > or DualLite? I am pretty confident I have the IOMUX registers set up
> > properly and the clocking configured and working properly but am not seeing
> > any activity on the TXEN line when trying to transmit a packet.I can access
> > the PHY's registers so I think that means MDC and MDIO must be working.
>
> Which Ethernet PHY are you using and which board?
>
> Can you post your patches in the list for review, so that we can try
> to understand the problem better?
>
> Regards,
>
> Fabio Estevam
It's an SMSC LAN8720A PHY on a custom i.MX6 Solo board. I can't post
all my patches at this point but I could provide register dumps of
anything you think might be relevant.
I did make a change to fec_mxc.c in the fec_open function. I #ifdef'ed
out this section
#ifdef FEC_QUIRK_ENET_MAC
{
u32 ecr = readl(&fec->eth->ecntrl) & ~FEC_ECNTRL_SPEED;
u32 rcr = (readl(&fec->eth->r_cntrl) &
~(FEC_RCNTRL_RMII | FEC_RCNTRL_RMII_10T)) |
FEC_RCNTRL_RGMII | FEC_RCNTRL_MII_MODE;
if (speed == _1000BASET)
ecr |= FEC_ECNTRL_SPEED;
else if (speed != _100BASET)
rcr |= FEC_RCNTRL_RMII_10T;
writel(ecr, &fec->eth->ecntrl);
writel(rcr, &fec->eth->r_cntrl);
}
#endif
Since it seems to put the ENET_RCR register into RGMII mode which is
not what I am using. I have ENET_RCR set to 0x05ee0124.
Thanks,
Carolyn
^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] RMII ethernet problems on i.MX6 Solo
2012-09-27 21:07 ` Carolyn Smith
@ 2012-09-28 15:20 ` Carolyn Smith
2012-09-28 15:26 ` Fabio Estevam
0 siblings, 1 reply; 6+ messages in thread
From: Carolyn Smith @ 2012-09-28 15:20 UTC (permalink / raw)
To: u-boot
On Thu, Sep 27, 2012 at 2:07 PM, Carolyn Smith <carolynsmi56@gmail.com> wrote:
> On Thu, Sep 27, 2012 at 12:00 PM, Fabio Estevam <festevam@gmail.com> wrote:
>>
>> On Thu, Sep 27, 2012 at 3:27 PM, Carolyn Smith <carolynsmi56@gmail.com> wrote:
>> > Hello,
>> >
>> > Has anyone had any success getting RMII ethernet to work on an i.MX6 Solo
>> > or DualLite? I am pretty confident I have the IOMUX registers set up
>> > properly and the clocking configured and working properly but am not seeing
>> > any activity on the TXEN line when trying to transmit a packet.I can access
>> > the PHY's registers so I think that means MDC and MDIO must be working.
>>
>> Which Ethernet PHY are you using and which board?
>>
>> Can you post your patches in the list for review, so that we can try
>> to understand the problem better?
>>
>> Regards,
>>
>> Fabio Estevam
>
>
> It's an SMSC LAN8720A PHY on a custom i.MX6 Solo board. I can't post
> all my patches at this point but I could provide register dumps of
> anything you think might be relevant.
>
> I did make a change to fec_mxc.c in the fec_open function. I #ifdef'ed
> out this section
>
> #ifdef FEC_QUIRK_ENET_MAC
> {
> u32 ecr = readl(&fec->eth->ecntrl) & ~FEC_ECNTRL_SPEED;
> u32 rcr = (readl(&fec->eth->r_cntrl) &
> ~(FEC_RCNTRL_RMII | FEC_RCNTRL_RMII_10T)) |
> FEC_RCNTRL_RGMII | FEC_RCNTRL_MII_MODE;
> if (speed == _1000BASET)
> ecr |= FEC_ECNTRL_SPEED;
> else if (speed != _100BASET)
> rcr |= FEC_RCNTRL_RMII_10T;
> writel(ecr, &fec->eth->ecntrl);
> writel(rcr, &fec->eth->r_cntrl);
> }
> #endif
>
> Since it seems to put the ENET_RCR register into RGMII mode which is
> not what I am using. I have ENET_RCR set to 0x05ee0124.
>
> Thanks,
> Carolyn
As it turns out, I found the magic bullet late last night and got
ethernet working on my board. The secret turned out to be the
IOMUXC_ENET_IPG_CLK_RMII_SELECT_INPUT daisy chain register. I had it
set incorrectly so the processor wasn't getting the ethernet clock.
Regards,
Carolyn
^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] RMII ethernet problems on i.MX6 Solo
2012-09-28 15:20 ` Carolyn Smith
@ 2012-09-28 15:26 ` Fabio Estevam
0 siblings, 0 replies; 6+ messages in thread
From: Fabio Estevam @ 2012-09-28 15:26 UTC (permalink / raw)
To: u-boot
Hi Carolyn,
On Fri, Sep 28, 2012 at 12:20 PM, Carolyn Smith <carolynsmi56@gmail.com> wrote:
> As it turns out, I found the magic bullet late last night and got
> ethernet working on my board. The secret turned out to be the
> IOMUXC_ENET_IPG_CLK_RMII_SELECT_INPUT daisy chain register. I had it
> set incorrectly so the processor wasn't getting the ethernet clock.
Excellent!
Can you please submit the mx6 solo IOMUX config with this fix to the list?
I have a mx6slevk and could add support for it.
Regards,
Fabio Estevam
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-09-28 15:26 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-27 18:27 [U-Boot] RMII ethernet problems on i.MX6 Solo Carolyn Smith
2012-09-27 18:50 ` Troy Kisky
2012-09-27 19:00 ` Fabio Estevam
2012-09-27 21:07 ` Carolyn Smith
2012-09-28 15:20 ` Carolyn Smith
2012-09-28 15:26 ` Fabio Estevam
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.