[PATCH 4/6] net: phy: Support Marvell 88EE1545 PHY
Sebastian Hesselbarth
sebastian.hesselbarth at gmail.com
Thu Jul 31 10:25:45 PDT 2014
On 29.07.2014 23:37, Ezequiel Garcia wrote:
> On 29 Jul 05:44 PM, Ezequiel Garcia wrote:
>> This commit adds support for Marvell's 88E1545 PHY chip. In particular, this
>> allows to support QSGMII interfaces.
>>
>> Signed-off-by: Ezequiel Garcia <ezequiel.garcia at free-electrons.com>
>> ---
>> drivers/net/phy/marvell.c | 59 +++++++++++++++++++++++++++++++++++++++++++++++
>> 1 file changed, 59 insertions(+)
>>
>> diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c
>> index 34f852e..ad8854d 100644
>> --- a/drivers/net/phy/marvell.c
>> +++ b/drivers/net/phy/marvell.c
>> @@ -23,6 +23,7 @@
>> #define MARVELL_PHY_ID_88E1318S 0x01410e90
>> #define MARVELL_PHY_ID_88E1116R 0x01410e40
>> #define MARVELL_PHY_ID_88E1510 0x01410dd0
>> +#define MARVELL_PHY_ID_88E154x 0x01410eb1
>>
>> /* Mask used for ID comparisons */
>> #define MARVELL_PHY_ID_MASK 0xfffffff0
>
> Small erratum: given this mask, the ID for the new PHY device should be
> 0x0x01410eb0 instead of 0x01410eb1.
>
> And by the way, Mirabox and Openblocks AX3 network support is not working.
> The link is not detected, so it seems there's some more PHY work to be done.
I just confirmed that (after adding support for 88e1318), driver works
on Armada XP ix4-300d on both RGMII ports.
Armada XP requires some additional magic foo in some retarded register
to enable RGMII:
#define ARMADA_XP_PUP_ENABLE_BASE (ARMADA_370_XP_INT_REGS_BASE + 0x1864c)
/* Enable GBE0, GBE1, LCD and NFC PUP */
reg = readl(ARMADA_XP_PUP_ENABLE_BASE);
reg |= 0x17;
writel(reg, ARMADA_XP_PUP_ENABLE_BASE);
I am not yet sure if that is also true for Armada 370 nor if it is also
true for SGMII/QSGMII ports. Took me a while to hunt this down, but
without above foo, there is no txclk on RGMII.
Sebastian
More information about the barebox
mailing list