anything else from claiming the SDIO bus first.
Fixes: 20db07332736 ("rsi: sdio suspend and resume support")
Signed-off-by: Marek Vasut
Cc: Amitkumar Karwar
Cc: Angus Ainslie
Cc: David S. Miller
Cc: Jakub Kicinski
Cc: Kalle Valo
Cc: Karun Eagalapati
Cc: Martin Kepplinger
Cc:
On 3/4/21 9:47 PM, Sasha Levin wrote:
On Tue, Mar 02, 2021 at 08:25:49PM +0100, Marek Vasut wrote:
On 12/23/20 3:13 AM, Sasha Levin wrote:
Hello Sasha,
From: Marek Vasut
[ Upstream commit 65277100caa2f2c62b6f3c4648b90d6f0435f3bc ]
In case RSI9116 SDIO WiFi operates in STA mode against
On 12/23/20 3:13 AM, Sasha Levin wrote:
Hello Sasha,
From: Marek Vasut
[ Upstream commit 65277100caa2f2c62b6f3c4648b90d6f0435f3bc ]
In case RSI9116 SDIO WiFi operates in STA mode against Intel 9260 in AP mode,
the association fails. The former is using wpa_supplicant during association,
the
On 1/25/21 1:19 PM, Arnd Bergmann wrote:
From: Arnd Bergmann
An object file cannot be built for both loadable module and built-in
use at the same time:
arm-linux-gnueabi-ld: drivers/net/ethernet/micrel/ks8851_common.o: in function
`ks8851_probe_common':
ks8851_common.c:(.text+0xf80): undefine
On 1/21/21 2:31 AM, Jakub Kicinski wrote:
On Wed, 20 Jan 2021 04:05:02 +0100 Marek Vasut wrote:
KSZ8794CNX datasheet section 8.0 RESET CIRCUIT describes recommended
circuit for interfacing with CPU/FPGA reset consisting of 10k pullup
resistor and 10uF capacitor to ground. This circuit takes
fits the constraint with a bit of extra
space.
Fixes: 5b797980908a ("net: dsa: microchip: Implement recommended reset timing")
Reviewed-by: Florian Fainelli
Signed-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: Florian Fainelli
Cc: Jakub Kicinski
Cc: Michael Grzeschik
Cc: Paul Barker
-
fits the constraint with a bit of extra
space.
Fixes: 5b797980908a ("net: dsa: microchip: Implement recommended reset timing")
Signed-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: Florian Fainelli
Cc: Jakub Kicinski
Cc: Michael Grzeschik
Cc: Paul Barker
---
drivers/net/dsa/microchip/ks
e2a984abd8 ("net: dsa: microchip: ksz8795: use phy_port_cnt where
possible")
Fixes: 241ed719bc98 ("net: dsa: microchip: ksz8795: use port_cnt instead of
TOTOAL_PORT_NUM")
Signed-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: Florian Fainelli
Cc: Michael Grzeschik
Cc: Jakub Kicinski
e2a984abd8 ("net: dsa: microchip: ksz8795: use phy_port_cnt where
possible")
Fixes: 241ed719bc98 ("net: dsa: microchip: ksz8795: use port_cnt instead of
TOTOAL_PORT_NUM")
Signed-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: Florian Fainelli
Cc: Michael Grzeschik
Cc: Jakub Kicinski
On 1/16/21 9:39 PM, Lukas Wunner wrote:
On Sat, Jan 16, 2021 at 08:26:22PM +0100, Arnd Bergmann wrote:
On Sat, Jan 16, 2021 at 6:56 PM Marek Vasut wrote:
On 1/16/21 6:04 PM, Arnd Bergmann wrote:
On Sat, Jan 16, 2021 at 5:48 PM Marek Vasut wrote:
I don't really like this version,
On 1/16/21 6:04 PM, Arnd Bergmann wrote:
On Sat, Jan 16, 2021 at 5:48 PM Marek Vasut wrote:
When either the SPI or PAR variant is compiled as module AND the other
variant is compiled as built-in, the following build error occurs:
arm-linux-gnueabi-ld: drivers/net/ethernet/micrel
On 1/15/21 10:36 PM, Arnd Bergmann wrote:
On Fri, Jan 15, 2021 at 6:24 PM Heiner Kallweit wrote:
On 15.01.2021 16:59, Andrew Lunn wrote:
On Fri, Jan 15, 2021 at 04:05:57PM +0100, Marek Vasut wrote:
On 1/15/21 4:00 PM, Andrew Lunn wrote:
On Fri, Jan 15, 2021 at 02:42:39PM +0100, Marek Vasut
ce to `__this_module'
Fix this by passing THIS_MODULE as argument to ks8851_probe_common(),
ks8851_register_mdiobus(), and ultimately __mdiobus_register() in the
ks8851_common.c.
Fixes: ef3631220d2b ("net: ks8851: Register MDIO bus and the internal PHY")
Signed-off-by: Marek Vasut
On 1/15/21 4:31 PM, t...@redhat.com wrote:
From: Tom Rix
Defining DEBUG should only be done in development.
So remove DEBUG.
Signed-off-by: Tom Rix
Reviewed-by: Marek Vasut
Thanks
On 1/15/21 4:59 PM, Andrew Lunn wrote:
On Fri, Jan 15, 2021 at 04:05:57PM +0100, Marek Vasut wrote:
On 1/15/21 4:00 PM, Andrew Lunn wrote:
On Fri, Jan 15, 2021 at 02:42:39PM +0100, Marek Vasut wrote:
When either the SPI or PAR variant is compiled as module AND the other
variant is compiled as
On 1/15/21 4:00 PM, Andrew Lunn wrote:
On Fri, Jan 15, 2021 at 02:42:39PM +0100, Marek Vasut wrote:
When either the SPI or PAR variant is compiled as module AND the other
variant is compiled as built-in, the following build error occurs:
arm-linux-gnueabi-ld: drivers/net/ethernet/micrel
ce to `__this_module'
Fix this by including the ks8851_common.c in both ks8851_spi.c and
ks8851_par.c. The DEBUG macro is defined in ks8851_common.c, so it
does not have to be defined again.
Signed-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: Heiner Kallweit
Cc: Jakub Kicinski
Cc: Lukas Wunner
On 1/14/21 2:54 PM, Andrew Lunn wrote:
On Tue, Jan 12, 2021 at 11:28:00PM +0100, Marek Vasut wrote:
On 1/11/21 3:47 PM, Andrew Lunn wrote:
On Mon, Jan 11, 2021 at 01:53:37PM +0100, Marek Vasut wrote:
Unless the internal PHY is connected and started, the phylib will not
poll the PHY for state
On 1/11/21 3:43 PM, Heiner Kallweit wrote:
On 11.01.2021 15:10, Marek Vasut wrote:
On 1/11/21 2:50 PM, Heiner Kallweit wrote:
On 11.01.2021 14:38, Marek Vasut wrote:
On 1/11/21 2:26 PM, Heiner Kallweit wrote:
[...]
LGTM. When having a brief look at the driver I stumbled across two things
On 1/11/21 3:47 PM, Andrew Lunn wrote:
On Mon, Jan 11, 2021 at 01:53:37PM +0100, Marek Vasut wrote:
Unless the internal PHY is connected and started, the phylib will not
poll the PHY for state and produce state updates. Connect the PHY and
start/stop it.
Hi Marek
Please continue the
On 1/11/21 2:50 PM, Heiner Kallweit wrote:
On 11.01.2021 14:38, Marek Vasut wrote:
On 1/11/21 2:26 PM, Heiner Kallweit wrote:
[...]
LGTM. When having a brief look at the driver I stumbled across two things:
1. Do MAC/PHY support any pause mode? Then a call to
phy_support_(a)sym_pause
On 1/11/21 2:26 PM, Heiner Kallweit wrote:
[...]
LGTM. When having a brief look at the driver I stumbled across two things:
1. Do MAC/PHY support any pause mode? Then a call to
phy_support_(a)sym_pause() would be missing.
https://ww1.microchip.com/downloads/en/DeviceDoc/KSZ8851-16MLL-Sing
Unless the internal PHY is connected and started, the phylib will not
poll the PHY for state and produce state updates. Connect the PHY and
start/stop it.
Signed-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: Heiner Kallweit
Cc: Lukas Wunner
---
drivers/net/ethernet/micrel/ks8851.h| 2
The PHYLIB must be selected to provide mdiobus_*() functions, and the
MICREL_PHY is necessary too, as that is the only possible PHY attached
to the KS8851 (it is the internal PHY).
Fixes: ef3631220d2b ("net: ks8851: Register MDIO bus and the internal PHY")
Signed-off-by: Marek Vasut
On 1/5/21 8:03 PM, Andrew Lunn wrote:
On Tue, Jan 05, 2021 at 06:53:48PM +0100, Marek Vasut wrote:
On 1/5/21 6:38 PM, Andrew Lunn wrote:
+static void smsc_link_change_notify(struct phy_device *phydev)
+{
+ struct smsc_phy_priv *priv = phydev->priv;
+
+ if (!priv->
On 1/5/21 6:38 PM, Andrew Lunn wrote:
+static void smsc_link_change_notify(struct phy_device *phydev)
+{
+ struct smsc_phy_priv *priv = phydev->priv;
+
+ if (!priv->vddio)
+ return;
+
+ if (phydev->state == PHY_HALTED)
+ regulator_disable(priv->vddio)
Add support for controlling regulator powering the magnetics. In case
the interface is down, it is possible to save considerable power by
turning the regulator supplying the magnetics off.
Signed-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: Florian Fainelli
Cc: David S. Miller
Cc: Heiner Kallweit
because old_state = PHY_HALTED and
phy_dev->state = PHY_HALTED.
Signed-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: David S. Miller
Cc: Heiner Kallweit
---
drivers/net/phy/phy.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c
index 4
: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: Heiner Kallweit
Cc: Lukas Wunner
---
V2: - Cast the BIT(0) to u32 to avoid build warnings
- Swap PHY ID Hi/Lo registers for MDIO bus access
(retain old behavior for MII bus access)
- Return -EOPNOTSUPP on read from
The KS8851 has a reduced internal PHY, which is accessible through its
registers at offset 0xe4. The PHY is compatible with KS886x PHY present
in Micrel switches, including the PHY ID Low/High registers swap, which
is present both in the MAC and the switch.
Marek Vasut (2):
net: phy: micrel
: Marek Vasut
Cc: Andrew Lunn
Cc: Heiner Kallweit
Cc: Lukas Wunner
---
V2: Merge the KSZ8851 and KS886X entries, as those PHYs cannot be discerned
V3: Add RB from Andrew
---
drivers/net/phy/micrel.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/phy/micrel.c b
: Marek Vasut
Cc: Andrew Lunn
Cc: Heiner Kallweit
Cc: Lukas Wunner
To: netdev@vger.kernel.org
---
V2: - Cast the BIT(0) to u32 to avoid build warnings
- Swap PHY ID Hi/Lo registers for MDIO bus access
(retain old behavior for MII bus access)
- Return -EOPNOTSUPP on read from
The KS8851 has a reduced internal PHY, which is accessible through its
registers at offset 0xe4. The PHY is compatible with KS886x PHY present
in Micrel switches, including the PHY ID Low/High registers swap, which
is present both in the MAC and the switch.
Signed-off-by: Marek Vasut
Cc: Andrew
On 1/3/21 5:55 PM, Andrew Lunn wrote:
On Sun, Jan 03, 2021 at 01:55:22PM +0100, Marek Vasut wrote:
On 12/30/20 4:43 PM, Andrew Lunn wrote:
On Wed, Dec 30, 2020 at 01:53:57PM +0100, Marek Vasut wrote:
The KS8851 has a reduced internal PHY, which is accessible through its
registers at offset
On 12/30/20 5:00 PM, Andrew Lunn wrote:
+static int ks8851_mdio_read(struct mii_bus *bus, int phy_id, int reg)
+{
+ struct ks8851_net *ks = bus->priv;
+
+ if (phy_id != 0)
+ return 0x;
+
Please check for C45 and return -EOPNOTSUPP.
The ks8851_reg_read() does
On 12/30/20 4:43 PM, Andrew Lunn wrote:
On Wed, Dec 30, 2020 at 01:53:57PM +0100, Marek Vasut wrote:
The KS8851 has a reduced internal PHY, which is accessible through its
registers at offset 0xe4. The PHY is compatible with KS886x PHY present
in Micrel switches, except the PHY ID Low/High
-off-by: Marek Vasut
Cc: Andrew Lunn
Cc: Heiner Kallweit
Cc: Lukas Wunner
To: netdev@vger.kernel.org
---
drivers/net/phy/micrel.c | 9 +
include/linux/micrel_phy.h | 2 ++
2 files changed, 11 insertions(+)
diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index
: Marek Vasut
Cc: Andrew Lunn
Cc: Heiner Kallweit
Cc: Lukas Wunner
To: netdev@vger.kernel.org
---
drivers/net/ethernet/micrel/ks8851.h| 1 +
drivers/net/ethernet/micrel/ks8851_common.c | 69 -
2 files changed, 67 insertions(+), 3 deletions(-)
diff --git a/drivers/net
On 11/4/20 4:21 PM, Martin Kepplinger wrote:
On 03.11.20 19:09, Marek Vasut wrote:
The interrupt handling of the RS911x is particularly heavy. For each RX
packet, the card does three SDIO transactions, one to read interrupt
status register, one to RX buffer length, one to read the RX packet(s
The inner do { ... } while loop is completely useless, all it does
is iterate over a switch-case statement, one bit at a time. This
can easily be replaced by simple if (status & bit) { ... } tests
for each bit. No functional change.
Signed-off-by: Marek Vasut
Cc: Angus Ainslie
Cc: Dav
th local buffer.
Signed-off-by: Marek Vasut
Cc: Angus Ainslie
Cc: David S. Miller
Cc: Jakub Kicinski
Cc: Kalle Valo
Cc: Lee Jones
Cc: Martin Kepplinger
Cc: Sebastian Krzyszkowiak
Cc: Siva Rebbagondla
Cc: linux-wirel...@vger.kernel.org
Cc: netdev@vger.kernel.org
---
drivers/net/wireless/rsi
lob/master/rsi/rsi_91x_hal.c#L238
Signed-off-by: Marek Vasut
Cc: Angus Ainslie
Cc: David S. Miller
Cc: Jakub Kicinski
Cc: Kalle Valo
Cc: Lee Jones
Cc: Martin Kepplinger
Cc: Sebastian Krzyszkowiak
Cc: Siva Rebbagondla
Cc: linux-wirel...@vger.kernel.org
Cc: netdev@vger.kernel.org
---
driv
On 10/12/20 7:48 AM, Oleksij Rempel wrote:
> Hi all,
>
> thank you for the feedback!
>
> On Fri, Oct 09, 2020 at 04:25:49PM +0200, Bruno Thomsen wrote:
>> Hi Fabio and Oleksij
>>
>> Den ons. 7. okt. 2020 kl. 11.50 skrev Fabio Estevam :
>>>
>>> Hi Oleksij,
>>>
>>> On Tue, Oct 6, 2020 at 5:05 AM Ol
xes: 1b0a83ac04e3 ("net: fec: add phy_reset_after_clk_enable() support")
Signed-off-by: Marek Vasut
Cc: Christoph Niedermaier
Cc: David S. Miller
Cc: NXP Linux Team
Cc: Richard Leitner
Cc: Shawn Guo
---
V2: - put_device() the phy_dev reference from of_phy_find_device()
- A
On 10/9/20 8:02 PM, Jakub Kicinski wrote:
> On Fri, 9 Oct 2020 19:34:10 +0200 Marek Vasut wrote:
>>>>> To an untrained eye this looks pretty weird.
>>>>
>>>> I see, I'm not quite sure how to address this comment.
>>>
>>> I
On 10/9/20 5:15 PM, Jakub Kicinski wrote:
> On Fri, 9 Oct 2020 09:20:30 +0200 Marek Vasut wrote:
>>> Can you describe your problem in detail?
>>
>> Yes, I tried to do that in the commit message and the extra detailed
>> comment above the code. What exactly d
On 10/9/20 2:46 AM, Jakub Kicinski wrote:
> On Wed, 7 Oct 2020 00:02:42 +0200 Marek Vasut wrote:
>> On 10/6/20 11:09 PM, Florian Fainelli wrote:
>>> On 10/6/2020 1:20 PM, Marek Vasut wrote:
>>>> The phy_reset_after_clk_enable() is always called with ndev->phydev,
On 10/9/20 2:51 AM, Jakub Kicinski wrote:
> On Tue, 6 Oct 2020 15:52:53 +0200 Marek Vasut wrote:
>> The phy_reset_after_clk_enable() does a PHY reset, which means the PHY
>> loses its register settings. The fec_enet_mii_probe() starts the PHY
>> and does the necessary calls
On 10/7/20 11:06 AM, Marco Felsch wrote:
> On 20-10-07 10:23, Marek Vasut wrote:
>> On 10/7/20 10:14 AM, Marco Felsch wrote:
>>> Hi Marek,
>>
>> Hi,
>>
>> [...]
>>
>>> On 20-10-06 14:11, Florian Fainelli wrote:
>>>> On 10/6/2020
On 10/7/20 10:14 AM, Marco Felsch wrote:
> Hi Marek,
Hi,
[...]
> On 20-10-06 14:11, Florian Fainelli wrote:
>> On 10/6/2020 1:24 PM, Marek Vasut wrote:
>
> ...
>
>>> If this happens on MX6 with FEC, can you please try these two patches?
>>>
>>
On 10/6/20 11:11 PM, Florian Fainelli wrote:
>
>
> On 10/6/2020 1:24 PM, Marek Vasut wrote:
>> On 10/6/20 9:36 PM, Florian Fainelli wrote:
>> [...]
>>>> - Use compatible ("compatible = "ethernet-phy-id0022.1560") in the
>>>>
On 10/6/20 11:09 PM, Florian Fainelli wrote:
>
>
> On 10/6/2020 1:20 PM, Marek Vasut wrote:
>> The phy_reset_after_clk_enable() is always called with ndev->phydev,
>> however that pointer may be NULL even though the PHY device instance
>> already exists and is suffi
On 10/6/20 9:36 PM, Florian Fainelli wrote:
[...]
>> - Use compatible ("compatible = "ethernet-phy-id0022.1560") in the
>> devicetree,
>> so that reading the PHYID is not needed
>> - easy to solve.
>> Disadvantage:
>> - losing PHY auto-detection capability
>> - need a new devicetree
ice instance already, use the OF PHY node to
obtain the PHY device instance, and then use that PHY device instance
when triggering the PHY reset.
Fixes: 1b0a83ac04e3 ("net: fec: add phy_reset_after_clk_enable() support")
Signed-off-by: Marek Vasut
Cc: Christoph Niedermaier
Cc: David S. Miller
() should be called only after the PHY has been
reset, not before as it is now.
Fixes: 1b0a83ac04e3 ("net: fec: add phy_reset_after_clk_enable() support")
Reviewed-by: Andrew Lunn
Tested-by: Richard Leitner
Signed-off-by: Marek Vasut
Cc: Christoph Niedermaier
Cc: David S. Miller
Cc: NXP
On 9/28/20 3:03 PM, Richard Leitner wrote:
> On Sat, Sep 26, 2020 at 08:52:17PM +0200, Marek Vasut wrote:
>> On 9/9/20 10:38 AM, Richard Leitner wrote:
>>> On Fri, Sep 04, 2020 at 09:23:26PM +0200, Marek Vasut wrote:
>>>> On 9/4/20 9:02 PM, Richard Leitner wrote:
&g
On 9/9/20 10:38 AM, Richard Leitner wrote:
> On Fri, Sep 04, 2020 at 09:23:26PM +0200, Marek Vasut wrote:
>> On 9/4/20 9:02 PM, Richard Leitner wrote:
>>> On Fri, Sep 04, 2020 at 05:26:14PM +0200, Marek Vasut wrote:
>>>> On 9/4/20 4:02 PM, Andrew Lunn wrote:
>&
On 9/1/20 8:56 PM, Marek Vasut wrote:
> On 8/9/20 1:01 PM, Marek Vasut wrote:
>> On 5/31/20 8:13 PM, Marek Vasut wrote:
>>> On systems like stm32mp1 where pins have both "default" and "sleep" pinmux
>>> states in DT, the pins are in "sleep"
On 9/4/20 9:02 PM, Richard Leitner wrote:
> On Fri, Sep 04, 2020 at 05:26:14PM +0200, Marek Vasut wrote:
>> On 9/4/20 4:02 PM, Andrew Lunn wrote:
>>> On Fri, Sep 04, 2020 at 12:45:44AM +0200, Marek Vasut wrote:
>>>> On 9/4/20 12:08 AM, Andrew Lunn wrote:
>>
On 9/4/20 4:02 PM, Andrew Lunn wrote:
> On Fri, Sep 04, 2020 at 12:45:44AM +0200, Marek Vasut wrote:
>> On 9/4/20 12:08 AM, Andrew Lunn wrote:
>>>>> b4 am 20200903043947.3272453-1-f.faine...@gmail.com
>>>>
>>>> That might be a fix for the long run,
On 9/4/20 12:08 AM, Andrew Lunn wrote:
>>> b4 am 20200903043947.3272453-1-f.faine...@gmail.com
>>
>> That might be a fix for the long run, but I doubt there's any chance to
>> backport it all to stable, is there ?
>
> No. For stable we need something simpler.
Like this patch ?
> I think a be
On 9/3/20 11:53 PM, Andrew Lunn wrote:
> On Thu, Sep 03, 2020 at 11:36:39PM +0200, Marek Vasut wrote:
>> On 9/3/20 11:00 PM, Andrew Lunn wrote:
>>> On Thu, Sep 03, 2020 at 10:27:12PM +0200, Marek Vasut wrote:
>>>> The phy_reset_after_clk_enable() does a PHY reset,
On 9/3/20 11:00 PM, Andrew Lunn wrote:
> On Thu, Sep 03, 2020 at 10:27:12PM +0200, Marek Vasut wrote:
>> The phy_reset_after_clk_enable() does a PHY reset, which means the PHY
>> loses its register settings. The fec_enet_mii_probe() starts the PHY
>> and does the necessary c
() should be called only after the PHY has been
reset, not before as it is now.
Fixes: 1b0a83ac04e3 ("net: fec: add phy_reset_after_clk_enable() support")
Signed-off-by: Marek Vasut
Cc: Christoph Niedermaier
Cc: David S. Miller
Cc: NXP Linux Team
Cc: Richard Leitner
Cc: Shawn Guo
---
d
On 8/9/20 1:01 PM, Marek Vasut wrote:
> On 5/31/20 8:13 PM, Marek Vasut wrote:
>> On systems like stm32mp1 where pins have both "default" and "sleep" pinmux
>> states in DT, the pins are in "sleep" state by default. Switch the pins into
>> th
anymore.
There should be no functional change.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V2: Get rid of the KS_MAR(i + 1) by adjusting KS_MAR(x) macro
V3: Swap MARx MSB and LSB in ks8851_read_mac_addr()
V4: No
how to access the bus, but uses the common ks8851.c
code. To make this patch reviewable, instead of rewriting ks8851_mll.c,
ks8851_mll.c is removed in a separate subsequent patch.
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V2: - Drop
Pull all the SPI bus specific code into a separate file, so that it is
not mixed with the common code. Rename ks8851.c to ks8851_common.c. The
ks8851_common.c is linked with ks8851_spi.c now, so it can call the
accessors in the ks8851_spi.c without any pointer indirection.
Signed-off-by: Marek
The ks8851_mll.c is replaced by ks8851_par.c, which is using common code
from ks8851.c, just like ks8851_spi.c . Remove this old ad-hoc driver.
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V2: No change
V3: No change
V4: No change
V5: No
the parallel bus driver.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V3: New patch
V4: No change
V5: No change
V6: No change
V7: No change
---
drivers/net/ethernet/micrel/ks8851.c | 16
1 file
Pull out the spi->dev into one common place in the function instead of
having it repeated over and over again. This is done in preparation for
unifying ks8851 and ks8851-mll drivers. No functional change.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wun
The parallel bus variant does not need to use the TX interrupt at all
as it writes the TX FIFO directly with in .ndo_start_xmit, permit the
drivers to configure the interrupt enable bits.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
his is done in preparation for unifying the KS8851 SPI and parallel bus
drivers.
No functional change.
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V2: Pass in of_node instead of the entire device pointer
V3: No change
V4: No change
V5:
bus driver is because the SPI
bus driver is much higher quality.
Note that I dropped "net: ks8851: Drop define debug and pr_fmt()" for now,
will send it separatelly later.
Marek Vasut (19):
net: ks8851: Factor out spi->dev in probe()/remove()
net: ks8851: Rename ndev to netdev i
Factor out this netif_rx_ni(), so it could be overridden by the parallel
bus variant of the KS8851 driver.
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V3: New patch
V4: No change
V5: No change
V6: No change
V7: No change
---
drivers
Replace spi_{get,set}_drvdata() with dev_{get,set}_drvdata(), which
works for both SPI and platform drivers. This is done in preparation
for unifying the KS8851 SPI and parallel bus drivers.
There should be no functional change.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S
Factor out common code into ks8851_probe_common() and
ks8851_remove_common() to permit both SPI and parallel
bus driver variants to use the common code path for
both probing and removal.
There should be no functional change.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S
ers.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V2: Add RB from Andrew
V3: No change
V4: No change
V5: No change
V6: No change
V7: No change
---
drivers/net/ethernet/micrel/ks8851.c | 2 +-
1 file changed, 1 insertion(+)
anymore.
There should be no functional change.
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V2: No change
V3: No change
V4: Drop the NOTE from the comment, the performance is OK
V5: No change
V6: No change
V7: No change
---
drivers/net
Rename ndev variable to netdev for the sake of consistency.
No functional change.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V2: New patch
V3: No change
V4: No change
V5: No change
V6: No change
V7: No change
Use device managed version of alloc_etherdev() to simplify the code.
No functional change intended.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V2: Add RB from Andrew
V3: No change
V4: No change
V5: No change
noticeable performance impact on the SPI variant of KS8851,
then we should consider using regmap to abstract the SPI and parallel
bus options and in case of SPI, permit regmap to merge register reads
of neighboring registers into single, longer, read.
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc
The register and FIFO accessors are bus specific, so is locking.
Implement callbacks so that each variant of the KS8851 can implement
matching accessors and locking, and use the rest of the common code.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V3: New patch
V4: s@unsigned status@unsigned int status@ in ks8851_irq()
V5: No change
V6: No change
V7: No change
---
drivers/net/ethernet/micrel/ks8851.c | 97
Add a new struct ks8851_net_spi, which embeds the original
struct ks8851_net and contains the entries specific only to
the SPI variant of KS8851.
There should be no functional change.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
On 5/17/20 9:30 PM, David Miller wrote:
> From: Andrew Lunn
> Date: Sun, 17 May 2020 21:16:35 +0200
>
>>> Nevertheless I was going to repeat the performance measurements on a
>>> recent kernel but haven't gotten around to that yet because the
>>> measurements need to be performed with CONFIG_PREE
On 5/17/20 4:55 AM, Joe Perches wrote:
> On Sun, 2020-05-17 at 04:47 +0200, Marek Vasut wrote:
>> On 5/17/20 4:37 AM, Joe Perches wrote:
>>> On Sun, 2020-05-17 at 04:28 +0200, Marek Vasut wrote:
>>>> On 5/17/20 4:01 AM, Joe Perches wrote:
>>>>> On Sun,
On 5/18/20 6:34 PM, Jakub Kicinski wrote:
> On Sun, 17 May 2020 02:33:50 +0200 Marek Vasut wrote:
>> The register and FIFO accessors are bus specific, so is locking.
>> Implement callbacks so that each variant of the KS8851 can implement
>> matching accessors and locking, an
On 5/17/20 9:26 PM, Andrew Lunn wrote:
>> So I was already led into reworking the entire series to do this
>> inlining once, after V1. It then turned out it's a horrible mess to get
>> everything to compile as modules and built-in and then also only the
>> parallel/SPI as a module and then the othe
On 5/17/20 9:44 PM, Andrew Lunn wrote:
> On Sun, May 17, 2020 at 02:33:43AM +0200, Marek Vasut wrote:
>> The RXFC register is the only one being read using 8-bit accessors.
>> To make it easier to support the 16-bit accesses used by the parallel
>> bus variant of KS8851, u
create
> a new branch with RT patches on the test machine, which is fairly
> involved and time consuming.
>
> I think it's fair that the two drivers are unified, but the performance
> for the SPI variant shouldn't be unnecessarily diminished in the process.
Could it be that your problem is related to this huge out-of-tree patch
you use then ?
--
Best regards,
Marek Vasut
On 5/17/20 4:37 AM, Joe Perches wrote:
> On Sun, 2020-05-17 at 04:28 +0200, Marek Vasut wrote:
>> On 5/17/20 4:01 AM, Joe Perches wrote:
>>> On Sun, 2020-05-17 at 02:33 +0200, Marek Vasut wrote:
>>>> Drop those debug statements from both drivers. They were ther
On 5/17/20 4:01 AM, Joe Perches wrote:
> On Sun, 2020-05-17 at 02:33 +0200, Marek Vasut wrote:
>> Drop those debug statements from both drivers. They were there since
>> at least 2011 and enabled by default, but that's likely wrong.
> []
>> diff --git a/drivers/net
On 5/17/20 4:02 AM, David Miller wrote:
> From: Marek Vasut
> Date: Sun, 17 May 2020 02:33:34 +0200
>
>> The KS8851SNL/SNLI and KS8851-16MLL/MLLI/MLLU are very much the same pieces
>> of silicon, except the former has an SPI interface, while the later has a
>> paral
The parallel bus variant does not need to use the TX interrupt at all
as it writes the TX FIFO directly with in .ndo_start_xmit, permit the
drivers to configure the interrupt enable bits.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Pull all the SPI bus specific code into a separate file, so that it is
not mixed with the common code. Rename ks8851.c to ks8851_common.c. The
ks8851_common.c is linked with ks8851_spi.c now, so it can call the
accessors in the ks8851_spi.c without any pointer indirection.
Signed-off-by: Marek
Pull out the spi->dev into one common place in the function instead of
having it repeated over and over again. This is done in preparation for
unifying ks8851 and ks8851-mll drivers. No functional change.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wun
Factor out this netif_rx_ni(), so it could be overridden by the parallel
bus variant of the KS8851 driver.
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V3: New patch
V4: No change
V5: No change
V6: No change
---
drivers/net/ethernet
Use device managed version of alloc_etherdev() to simplify the code.
No functional change intended.
Reviewed-by: Andrew Lunn
Signed-off-by: Marek Vasut
Cc: David S. Miller
Cc: Lukas Wunner
Cc: Petr Stetiar
Cc: YueHaibing
---
V2: Add RB from Andrew
V3: No change
V4: No change
V5: No change
bus driver is because the SPI
bus driver is much higher quality.
Marek Vasut (20):
net: ks8851: Factor out spi->dev in probe()/remove()
net: ks8851: Rename ndev to netdev in probe
net: ks8851: Replace dev_err() with netdev_err() in IRQ handler
net: ks8851: Pass device node i
1 - 100 of 445 matches
Mail list logo