[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <AANLkTikidj-RS_sQZ4ppvscwAtxGOnUEw2bYueu7pVvz@mail.gmail.com>
Date: Thu, 22 Jul 2010 21:27:46 +0200
From: Karl Beldan <karl.beldan@...il.com>
To: Mike Frysinger <vapier.adi@...il.com>
Cc: Lennert Buytenhek <buytenh@...tstofly.org>, netdev@...r.kernel.org,
uclinux-dist-devel@...ckfin.uclinux.org,
"David S. Miller" <davem@...emloft.net>
Subject: Re: [Uclinux-dist-devel] [PATCH 2/2] net: dsa: introduce MICREL
KSZ8893MQL/BL ethernet switch chip support
On Wed, Jul 21, 2010 at 11:00 PM, Mike Frysinger <vapier.adi@...il.com> wrote:
> On Wed, Jul 21, 2010 at 16:31, Karl Beldan wrote:
>> On Wed, Jul 21, 2010 at 6:05 PM, Mike Frysinger wrote:
>>> On Wed, Jul 21, 2010 at 11:16, Lennert Buytenhek wrote:
>>>> On Wed, Jul 21, 2010 at 09:37:22AM -0400, Mike Frysinger wrote:
>>>>> +static int ksz8893m_setup(struct dsa_switch *ds)
>>>>> +{
>>>>> + int i;
>>>>> + int ret;
>>>>> +
>>>>> + ret = ksz8893m_switch_reset(ds);
>>>>> + if (ret < 0)
>>>>> + return ret;
>>>>
>>>> It's pretty ugly that the mdiobus is passed in via the normal means,
>>>> but a reference to the SPI bus to use is just stuffed into some global
>>>> variable.
>>>>
>>>> Can you not access all registers via MII?
>>>
>>> it depends on the host mdio bus. if it supports the semi-standard
>>> behavior of toggling the OP field of MDIO frames, then yes, you can do
>>> it via MII. but i dont think the current mdio framework in the kernel
>>> keeps track of that functionality, so there isnt a way in the driver
>>> to say "is this possible, else fall back to SPI".
>>
>> Are you referring to SMI ?
>
> that is the term the ksz datasheet uses (Serial Management Interface),
> but i'm not aware of it being a standardized term. even the ksz
> datasheet admits that its behavior is a bit non-standard. the
> Blackfin MAC doesnt support it so we have no way of testing the it as
> that is the MAC on the board with the ksz switch.
>
Can't either, we don't even have mdio, only spi.
Speaking of which, maybe you can replace this while you are at it :
--- net/dsa/slave.c 2010-05-22 09:58:34.000000000 +0200
void dsa_slave_mii_bus_init(struct dsa_switch *ds)
{
ds->slave_mii_bus->priv = (void *)ds;
- ds->slave_mii_bus->name = "dsa slave smi";
--
Karl
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists