[U-Boot] [PATCH v2 5/9] AVR32: macb - Disable 100mbps if clock is slow

Ben Warren
2009-01-28T23:40:49Z

Jean-Christophe PLAGNIOL-VILLARD wrote:
> On 22:42 Wed 28 Jan , Haavard Skinnemoen wrote:
>
>> Jean-Christophe PLAGNIOL-VILLARD wrote:
>>
>>>> On the EVK1100 board, the CPU (UC3A0512) is connected to the PHY via an
>>>> RMII bus. This requires the CPU clock to be at least 50 MHz.
>>>> Unfortunately, the chip on current EVK1100 boards may be unable to run
>>>> at more than 50 MHz, and with the oscillator on the board, the closest
>>>> frequency we can generate is 48 MHz.
>>>>
>>> IMHO It's a HW design error to not use the MII
>>>
>> Some people want to use the extra pins for other things...
>>
> make sense
> so I'll put a 10Mpbs phy personnaly instead or a 10/100 that can be put in a
> 10 mode instead to avoid to manage it in the code
>
I haven't shopped for PHYs in a while, but imagine it's probably hard to
find one that's 10Mb only, and if so it's probably more expensive than
10/100
>> Unfortunately, there are quite a few boards with early engineering
>> samples around, and they have various issues. The chips that are in
>> production are capable of running fast enough to support RMII.
>>
>>
>>>> This patch makes it possible to limit the macb to 10 MBit for this
>>>> case. We are open for suggestions for other solutions.
>>>>
>>> I guest you may need to disable the phy auto config mode and force him to be
>>> see as a 10Mbps phy evenif it's a 10/100
>>>
>> No need to disable autonegotiation -- you still want to select between
>> half an full duplex, for example. But you'll need to limit the
>> available options to the ones that actually work.
>>
> I do not mean the autoneg but to specify to the phy, if possible, to never
> accept the 100Mps instead of do it in the code
>
That's basically why the advertise register is r/w, so you can limit
autonegotiation through software and don't have to allocate pins for
strapping.
>> That said, I kind of like Ben's suggestion -- it's a more general
>> solution to all sorts of board/phy/chip/whatever limitations.
>>
>> As for a better name, how about CONFIG_MACB_ADVERTISE?
>>
> why not
>
I like it too. One of the common checkbox items, though: do any Atmel
chips have more than one MACB, in which case this should be
CONFIG_MACBx_ADVERTISE or something like that?
> Best Regards,
> J.
>
regards,
Ben