[PATCH v2 2/4] spi: introduce spi_delay struct as "value + unit" & spi_delay_exec()

2019-09-13 Thread Alexandru Ardelean
lay_exec()` function that processes a `spi_delay` object/struct to execute the delay. It's a copy of the `cs_change_delay` mechanism, but without the default for 10 uS. The clock-cycle delay unit is a bit special, as it needs to be bound to an `spi_transfer` object to execute. Signed-off-by: Alexandru

[RFC PATCH 06/15] spi: orion: use new `word_delay` field for SPI transfers

2019-09-13 Thread Alexandru Ardelean
-by: Alexandru Ardelean --- drivers/spi/spi-orion.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/spi/spi-orion.c b/drivers/spi/spi-orion.c index 6643ccdc2508..756c37e32dfe 100644 --- a/drivers/spi/spi-orion.c +++ b/drivers/spi/spi-orion.c @@ -467,8 +467,7

[RFC PATCH 10/15] spi: use new `spi_transfer_delay` helper where straightforward

2019-09-13 Thread Alexandru Ardelean
in all places (in the spi drivers) where this change is simple. Signed-off-by: Alexandru Ardelean --- drivers/spi/spi-atmel.c | 3 +-- drivers/spi/spi-bcm63xx-hsspi.c | 3 +-- drivers/spi/spi-cavium.c | 3 +-- drivers/spi/spi-fsl-dspi.c | 3 +-- drivers/spi/spi-fsl-

[RFC PATCH 04/15] iio: imu: adis: convert cs_change_delay to spi_delay struct

2019-09-13 Thread Alexandru Ardelean
The ADIS library is one of the few users of the new `cs_change_delay` parameter for an spi_transfer. The introduction of the `spi_delay` struct, requires that the users of of `cs_change_delay` get an update. This change updates the ADIS library. Signed-off-by: Alexandru Ardelean --- drivers

[RFC PATCH 15/15] spi: implement SW control for CS times

2019-09-13 Thread Alexandru Ardelean
call. Software-mode for CS control, implies that the `set_cs_timing()` hook has not been provided for the `spi_controller` object. Signed-off-by: Alexandru Ardelean --- drivers/spi/spi.c | 50 - include/linux/spi/spi.h | 5 + 2 files changed, 54 insert

[RFC PATCH 09/15] spi: introduce `delay` field for `spi_transfer` + spi_transfer_exec()

2019-09-13 Thread Alexandru Ardelean
maintains backwards compatibility with `delay_usecs`, by assigning the value to `delay` if non-zero. This should maintain backwards compatibility with current users of `udelay_usecs`. Signed-off-by: Alexandru Ardelean --- drivers/spi/spi.c | 6 +++--- include/linux/spi/spi.h | 18

[RFC PATCH 13/15] spi: spidev: use new `delay` field for spi transfers

2019-09-13 Thread Alexandru Ardelean
for spidev un-changed. Changing it can be part of another changeset and discussion. Signed-off-by: Alexandru Ardelean --- drivers/spi/spidev.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c index 495319c2fa11..6b6afd27f4a1 100644

[RFC PATCH 02/15] spi: introduce spi_delay struct as "value + unit" & spi_delay_exec()

2019-09-13 Thread Alexandru Ardelean
lay_exec()` function that processes a `spi_delay` object/struct to execute the delay. It's a copy of the `cs_change_delay` mechanism, but without the default for 10 uS. The clock-cycle delay unit is a bit special, as it needs to be bound to an `spi_transfer` object to execute. Signed-off-by: Alexandru

[RFC PATCH 14/15] spi: tegra114: change format for `spi_set_cs_timing()` function

2019-09-13 Thread Alexandru Ardelean
longer to start transferring that after CS is asserted. Signed-off-by: Alexandru Ardelean --- drivers/spi/spi-tegra114.c | 22 -- drivers/spi/spi.c | 16 ++-- include/linux/spi/spi.h| 9 ++--- 3 files changed, 36 insertions(+), 11 deletions(-) diff

[RFC PATCH 11/15] spi: tegra114: use `spi_transfer_delay` helper

2019-09-13 Thread Alexandru Ardelean
a mention in that commit message to suggest a specific need/use-case for having the 2 delay calls. For the most part, udelay() should be sufficient. This change replaces it with the new `spi_transfer_delay()`, which should do the same thing. Signed-off-by: Alexandru Ardelean --- drivers/spi/spi-tegra

[RFC PATCH 12/15] spi: spi-loopback-test: use new `delay` field

2019-09-13 Thread Alexandru Ardelean
This change replaces the use of the `delay_usecs` field with the new `delay` field. The code/test still uses micro-seconds, but they are now configured and used via the `struct spi_delay` format of the `delay` field. Signed-off-by: Alexandru Ardelean --- drivers/spi/spi-loopback-test.c | 12

[RFC PATCH 08/15] spi: core,atmel: convert `word_delay_usecs` -> `word_delay` for spi_device

2019-09-13 Thread Alexandru Ardelean
eds that both delays be converted to a common unit (nano-seconds) for comparison. Signed-off-by: Alexandru Ardelean --- drivers/spi/spi-atmel.c | 26 -- drivers/spi/spi.c | 24 ++-- include/linux/spi/spi.h | 7 ++- 3 files changed, 48 insertions(+)

[RFC PATCH 00/15] Unify SPI delays into an `struct spi_delay`

2019-09-13 Thread Alexandru Ardelean
y?". Hopefully, this can sort-of-explain things. I'll reference this RFC on the next series. Thanks Alexandru Ardelean (15): spi: move `cs_change_delay` backwards compat logic outside switch spi: introduce spi_delay struct as "value + unit" & spi_delay_exec() spi: mak

[RFC PATCH 05/15] spi: sprd: convert transfer word delay to spi_delay struct

2019-09-13 Thread Alexandru Ardelean
The Spreadtrum SPI driver is the only user of the `word_delay` field in the `spi_transfer` struct. This change converts the field to use the `spi_delay` struct. This also enforces the users to specify the delay unit to be `SPI_DELAY_UNIT_SCK`. Signed-off-by: Alexandru Ardelean --- drivers/spi

[RFC PATCH 07/15] spi: spidev: use new `word_delay` field for spi transfers

2019-09-13 Thread Alexandru Ardelean
` to `SPI_DELAY_UNIT_USECS` This keeps the uapi for spidev un-changed. Changing it can be part of another changeset and discussion. Signed-off-by: Alexandru Ardelean --- drivers/spi/spidev.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c index

[RFC PATCH 03/15] spi: make `cs_change_delay` the first user of the `spi_delay` logic

2019-09-13 Thread Alexandru Ardelean
handling needed to do that. Signed-off-by: Alexandru Ardelean --- drivers/spi/spi.c | 28 +++- include/linux/spi/spi.h | 4 +--- 2 files changed, 8 insertions(+), 24 deletions(-) diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 1883de8ffa82..d0bf0ffca042 100644

[RFC PATCH 01/15] spi: move `cs_change_delay` backwards compat logic outside switch

2019-09-13 Thread Alexandru Ardelean
The `cs_change_delay` backwards compatibility value could be moved outside of the switch statement. The only reason to do it, is to make the next patches easier to diff. Signed-off-by: Alexandru Ardelean --- drivers/spi/spi.c | 11 +-- 1 file changed, 5 insertions(+), 6 deletions

[PATCH v4 1/2] ethtool: implement Energy Detect Powerdown support via phy-tunable

2019-09-12 Thread Alexandru Ardelean
gned-off-by: Alexandru Ardelean --- include/uapi/linux/ethtool.h | 22 ++ net/core/ethtool.c | 6 ++ 2 files changed, 28 insertions(+) diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool.h index dd06302aa93e..8938b76c4ee3 100644 --- a/include/ua

[PATCH v4 2/2] net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable

2019-09-12 Thread Alexandru Ardelean
be configured. That is why the acceptable values are 1, ETHTOOL_PHY_EDPD_DFLT_TX_MSECS and ETHTOOL_PHY_EDPD_NO_TX (which disables TX pulses). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 61 ++ 1 file changed, 61 insertions(+) diff --git a/drivers

[PATCH v4 0/2] ethtool: implement Energy Detect Powerdown support via phy-tunable

2019-09-12 Thread Alexandru Ardelean
resolved. Alexandru Ardelean (2): ethtool: implement Energy Detect Powerdown support via phy-tunable net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable drivers/net/phy/adin.c | 61 include/uapi/linux/ethtool.h | 22 +

Re: [PATCH 2/2] staging: iio: accel: adis16240: move out of staging

2019-09-12 Thread Alexandru Ardelean
On Wed, Sep 11, 2019 at 7:21 PM Rodrigo Carvalho wrote: > > Hi, > > Em seg, 9 de set de 2019 às 02:53, Ardelean, Alexandru > escreveu: > > > > On Sun, 2019-09-08 at 12:09 +0100, Jonathan Cameron wrote: > > > On Mon, 2 Sep 2019 13:26:02 + > > > "Ardelean, Alexandru" wrote: > > > > > > > On

[PATCH v2] net: stmmac: socfpga: re-use the `interface` parameter from platform data

2019-09-12 Thread Alexandru Ardelean
()`). All that's needed now is to dig that information out, via some `dev_get_drvdata()` && `netdev_priv()` calls and re-use it. Signed-off-by: Alexandru Ardelean --- Changelog v1 -> v2: * initially, this patch was developed on a 4.14 kernel, and adapted (badly) to `net-next`, so it di

[PATCH v3 2/2] net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable

2019-09-09 Thread Alexandru Ardelean
be configured. That is why the acceptable values are 1, ETHTOOL_PHY_EDPD_DFLT_TX_INTERVAL and ETHTOOL_PHY_EDPD_NO_TX (which disables TX pulses). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 61 ++ 1 file changed, 61 insertions(+) diff --git

[PATCH v3 1/2] ethtool: implement Energy Detect Powerdown support via phy-tunable

2019-09-09 Thread Alexandru Ardelean
maximum of 65533 units should be sufficient * disable EDPD Signed-off-by: Alexandru Ardelean --- include/uapi/linux/ethtool.h | 19 +++ net/core/ethtool.c | 6 ++ 2 files changed, 25 insertions(+) diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/e

[PATCH v3 0/2] ethtool: implement Energy Detect Powerdown support via phy-tunable

2019-09-09 Thread Alexandru Ardelean
resolved. Alexandru Ardelean (2): ethtool: implement Energy Detect Powerdown support via phy-tunable net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable drivers/net/phy/adin.c | 61 include/uapi/linux/ethtool.h | 19 +++

[PATCH 2/2] dt-bindings: net: dwmac: document 'mac-mode' property

2019-09-06 Thread Alexandru Ardelean
This change documents the 'mac-mode' property that was introduced in the 'stmmac' driver to support passive mode converters that can sit in-between the MAC & PHY. Signed-off-by: Alexandru Ardelean --- Documentation/devicetree/bindings/net/snps,dwmac.yaml | 8 1 file change

[PATCH 1/2] net: stmmac: implement support for passive mode converters via dt

2019-09-06 Thread Alexandru Ardelean
be used for both. Signed-off-by: Alexandru Ardelean --- .../net/ethernet/stmicro/stmmac/stmmac_main.c | 2 +- .../ethernet/stmicro/stmmac/stmmac_platform.c | 34 ++- include/linux/stmmac.h| 1 + 3 files changed, 35 insertions(+), 2 deletions(-) di

[PATCH] net: stmmac: socfpga: re-use the `interface` parameter from platform data

2019-09-06 Thread Alexandru Ardelean
()`). All that's needed now is to dig that information out, via some `dev_get_drvdata()` && `netdev_priv()` calls and re-use it. Signed-off-by: Alexandru Ardelean --- .../net/ethernet/stmicro/stmmac/dwmac-socfpga.c | 15 +++ 1 file changed, 7 insertions(+), 8 deletions(-) di

[PATCH v2 0/2] ethtool: implement Energy Detect Powerdown support via phy-tunable

2019-09-04 Thread Alexandru Ardelean
resolved. Alexandru Ardelean (2): ethtool: implement Energy Detect Powerdown support via phy-tunable net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable drivers/net/phy/adin.c | 50 include/uapi/linux/ethtool.h | 5 net/core/e

[PATCH v2 2/2] net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable

2019-09-04 Thread Alexandru Ardelean
that in case the other PHY is also on EDPD mode, there is no lock-up situation where both sides are waiting for the other to transmit. Via the phy-tunable control, TX pulses can be disabled if specifying 0 `tx-interval` via ethtool. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 50

[PATCH v2 1/2] ethtool: implement Energy Detect Powerdown support via phy-tunable

2019-09-04 Thread Alexandru Ardelean
s a unit; a maximum of 32766 units should be sufficient * disable EDPD Signed-off-by: Alexandru Ardelean --- include/uapi/linux/ethtool.h | 5 + net/core/ethtool.c | 6 ++ 2 files changed, 11 insertions(+) diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool

[PATCH 4/4] [ethtool] ethtool: implement support for Energy Detect Power Down

2019-09-03 Thread Alexandru Ardelean
This change adds control for enabling/disabling Energy Detect Power Down mode, as well as configuring wake-up intervals for TX pulses, via the new ETHTOOL_PHY_EDPD control added in PHY tunable, in the kernel. Signed-off-by: Alexandru Ardelean --- ethtool.8.in | 28 + ethtool.c

[PATCH 3/4] [ethtool] ethtool: sync ethtool-copy.h: adds support for EDPD (3rd Sep 2019)

2019-09-03 Thread Alexandru Ardelean
This change syncs the `ethtool-copy.h` file with Linux net-next to add support for Energy Detect Powerdown control via phy tunable. Some formatting also changes with this sync. Signed-off-by: Alexandru Ardelean --- ethtool-copy.h | 13 + 1 file changed, 9 insertions(+), 4 deletions

[PATCH 0/4] ethtool: implement Energy Detect Powerdown support via phy-tunable

2019-09-03 Thread Alexandru Ardelean
This patch series is actually 2 series in 1. First 2 patches implement the kernel support for controlling Energy Detect Powerdown support via phy-tunable, and the next 2 patches implement the ethtool user-space control. Hopefully, this combination of 2 series is an acceptable approach; if not, I

[PATCH 2/4] net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable

2019-09-03 Thread Alexandru Ardelean
that in case the other PHY is also on EDPD mode, there is no lock-up situation where both sides are waiting for the other to transmit. Via the phy-tunable control, TX pulses can be disabled if specifying 0 `tx-interval` via ethtool. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 50

[PATCH 1/4] ethtool: implement Energy Detect Powerdown support via phy-tunable

2019-09-03 Thread Alexandru Ardelean
s a unit; a maximum of 32766 units should be sufficient * disable EDPD Signed-off-by: Alexandru Ardelean --- include/uapi/linux/ethtool.h | 5 + net/core/ethtool.c | 6 ++ 2 files changed, 11 insertions(+) diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool

[PATCH v5 06/13] net: phy: adin: make RGMII internal delays configurable

2019-08-16 Thread Alexandru Ardelean
The internal delays for the RGMII are configurable for both RX & TX. This change adds support for configuring them via device-tree (or ACPI). Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c

[PATCH v5 03/13] net: phy: adin: add support for interrupts

2019-08-16 Thread Alexandru Ardelean
This change hooks link-status-change interrupts to phylib. Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 36 1 file changed, 36 insertions(+) diff --git a/drivers/net/phy/adin.c b

[PATCH v5 05/13] net: phy: adin: configure RGMII/RMII/MII modes on config

2019-08-16 Thread Alexandru Ardelean
able and will be done in a subsequent change. Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 79 +- 1 file changed, 78 insertions(+), 1 deletion(-) diff --git a/drivers/net/phy/adin.c b/dri

[PATCH v5 00/13] net: phy: adin: add support for Analog Devices PHYs

2019-08-16 Thread Alexandru Ardelean
://www.analog.com/media/en/technical-documentation/data-sheets/ADIN1200.pdf Signed-off-by: Alexandru Ardelean Alexandru Ardelean (13): net: phy: adin: add support for Analog Devices PHYs net: phy: adin: hook genphy_{suspend,resume} into the driver net: phy: adin: add support for interrupts net: phy: adin

[PATCH v5 10/13] net: phy: adin: implement PHY subsystem software reset

2019-08-16 Thread Alexandru Ardelean
case phylib is configured to also do a reset via GPIO, the ADIN PHY may be reset twice when the PHY device registers, but that isn't a problem, since it's being done on boot (or PHY device register). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 26 ++ 1 file

[PATCH v5 07/13] net: phy: adin: make RMII fifo depth configurable

2019-08-16 Thread Alexandru Ardelean
The FIFO depth can be configured for the RMII mode. This change adds support for doing this via device-tree (or ACPI). Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 29 + 1 file changed, 29

[PATCH v5 11/13] net: phy: adin: implement downshift configuration via phy-tunable

2019-08-16 Thread Alexandru Ardelean
be controlled via the phy-tunable interface (ETHTOOL_PHY_DOWNSHIFT control). The change has been adapted from the Aquantia PHY driver. Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 86 ++ 1

[PATCH v5 12/13] net: phy: adin: add ethtool get_stats support

2019-08-16 Thread Alexandru Ardelean
that they are read. The counter values need to be accumulated by the driver, as each time that RxErrCnt is read, the values that are latched are the ones that have incremented from the last read. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 128

[PATCH v5 09/13] net: phy: adin: add EEE translation layer from Clause 45 to Clause 22

2019-08-16 Thread Alexandru Ardelean
nism, a translation table is required to convert these addresses. For Clause 45, this is not needed since the driver will likely never use this access mode. Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c

[PATCH v5 13/13] dt-bindings: net: add bindings for ADIN PHY driver

2019-08-16 Thread Alexandru Ardelean
This change adds bindings for the Analog Devices ADIN PHY driver, detailing all the properties implemented by the driver. Reviewed-by: Andrew Lunn Reviewed-by: Rob Herring Signed-off-by: Alexandru Ardelean --- .../devicetree/bindings/net/adi,adin.yaml | 73 +++ MAINTAINERS

[PATCH v5 04/13] net: phy: adin: add {write,read}_mmd hooks

2019-08-16 Thread Alexandru Ardelean
echanism is needed to manage configuration of chip settings and to access EEE registers via Clause 22. Since Clause 45 access will likely never be used, it is not implemented via this hook. Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers

[PATCH v5 01/13] net: phy: adin: add support for Analog Devices PHYs

2019-08-16 Thread Alexandru Ardelean
-sheets/ADIN1200.pdf Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- MAINTAINERS | 7 ++ drivers/net/phy/Kconfig | 9 drivers/net/phy/Makefile | 1 + drivers/net/phy/adin.c | 49 4

[PATCH v5 08/13] net: phy: adin: add support MDI/MDIX/Auto-MDI selection

2019-08-16 Thread Alexandru Ardelean
3. MDI preferred & ! Pair01Swapped == MDIX 4. MDIX preferred & ! Pair01Swapped == MDI The preferred MDI/MDIX mode is not configured via SW, but can be configured via HW pins. Note that the `Pair01Swapped` is the Green-Yellow physical pairs. Reviewed-by: Florian Fainelli Signed-of

[PATCH v5 02/13] net: phy: adin: hook genphy_{suspend,resume} into the driver

2019-08-16 Thread Alexandru Ardelean
The chip supports standard suspend/resume via BMCR reg. Hook these functions into the `adin` driver. Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 4 1 file changed, 4 insertions(+) diff --git a/drivers/net/phy

[PATCH v4 06/14] net: phy: adin: make RGMII internal delays configurable

2019-08-12 Thread Alexandru Ardelean
The internal delays for the RGMII are configurable for both RX & TX. This change adds support for configuring them via device-tree (or ACPI). Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 82 ++ 1 file cha

[PATCH v4 03/14] net: phy: adin: add support for interrupts

2019-08-12 Thread Alexandru Ardelean
This change hooks link-status-change interrupts to phylib. Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 36 1 file changed, 36 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c index

[PATCH v4 09/14] net: phy: adin: add EEE translation layer from Clause 45 to Clause 22

2019-08-12 Thread Alexandru Ardelean
nism, a translation table is required to convert these addresses. For Clause 45, this is not needed since the driver will likely never use this access mode. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 69 -- 1 file changed, 67 insertions(+

[PATCH v4 08/14] net: phy: adin: add support MDI/MDIX/Auto-MDI selection

2019-08-12 Thread Alexandru Ardelean
3. MDI preferred & ! Pair01Swapped == MDIX 4. MDIX preferred & ! Pair01Swapped == MDI The preferred MDI/MDIX mode is not configured via SW, but can be configured via HW pins. Note that the `Pair01Swapped` is the Green-Yellow physical pairs. Signed-off-by: Alexandru Ardelean --- driv

[PATCH v4 12/14] net: phy: adin: implement downshift configuration via phy-tunable

2019-08-12 Thread Alexandru Ardelean
be controlled via the phy-tunable interface (ETHTOOL_PHY_DOWNSHIFT control). The change has been adapted from the Aquantia PHY driver. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 86 ++ 1 file changed, 86 insertions(+) diff --git a/drivers/net/phy

[PATCH v4 11/14] net: phy: adin: implement Energy Detect Powerdown mode

2019-08-12 Thread Alexandru Ardelean
The ADIN PHYs support Energy Detect Powerdown mode, which puts the PHY into a low power mode when there is no signal on the wire (typically cable unplugged). This behavior is enabled by default, but can be disabled via device property. Signed-off-by: Alexandru Ardelean --- drivers/net/phy

[PATCH v4 14/14] dt-bindings: net: add bindings for ADIN PHY driver

2019-08-12 Thread Alexandru Ardelean
This change adds bindings for the Analog Devices ADIN PHY driver, detailing all the properties implemented by the driver. Signed-off-by: Alexandru Ardelean --- .../devicetree/bindings/net/adi,adin.yaml | 73 +++ MAINTAINERS | 1 + 2 files

[PATCH v4 13/14] net: phy: adin: add ethtool get_stats support

2019-08-12 Thread Alexandru Ardelean
spec). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 109 + 1 file changed, 109 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c index e4afa8c2bec7..3ab15a585c1b 100644 --- a/drivers/net/phy/adin.c +++ b/drivers

[PATCH v4 10/14] net: phy: adin: implement PHY subsystem software reset

2019-08-12 Thread Alexandru Ardelean
useful when doing a warm reboot, because this will reset the subsystem registers to default values. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 43 ++ 1 file changed, 43 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/ne

[PATCH v4 00/14] net: phy: adin: add support for Analog Devices PHYs

2019-08-12 Thread Alexandru Ardelean
://www.analog.com/media/en/technical-documentation/data-sheets/ADIN1200.pdf Signed-off-by: Alexandru Ardelean Alexandru Ardelean (14): net: phy: adin: add support for Analog Devices PHYs net: phy: adin: hook genphy_{suspend,resume} into the driver net: phy: adin: add support for interrupts net: phy: adin

[PATCH v4 02/14] net: phy: adin: hook genphy_{suspend,resume} into the driver

2019-08-12 Thread Alexandru Ardelean
The chip supports standard suspend/resume via BMCR reg. Hook these functions into the `adin` driver. Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 4 1 file changed, 4 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c

[PATCH v4 04/14] net: phy: adin: add {write,read}_mmd hooks

2019-08-12 Thread Alexandru Ardelean
echanism is needed to manage configuration of chip settings and to access EEE registers via Clause 22. Since Clause 45 access will likely never be used, it is not implemented via this hook. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 34 ++

[PATCH v4 05/14] net: phy: adin: configure RGMII/RMII/MII modes on config

2019-08-12 Thread Alexandru Ardelean
able and will be done in a subsequent change. Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 79 +- 1 file changed, 78 insertions(+), 1 deletion(-) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c i

[PATCH v4 07/14] net: phy: adin: make RMII fifo depth configurable

2019-08-12 Thread Alexandru Ardelean
The FIFO depth can be configured for the RMII mode. This change adds support for doing this via device-tree (or ACPI). Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 29 + 1 file changed, 29 insertions(+) diff --git

[PATCH v4 01/14] net: phy: adin: add support for Analog Devices PHYs

2019-08-12 Thread Alexandru Ardelean
-sheets/ADIN1200.pdf Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- MAINTAINERS | 7 ++ drivers/net/phy/Kconfig | 9 drivers/net/phy/Makefile | 1 + drivers/net/phy/adin.c | 49 4 files changed, 66 insertions

[PATCH v3 06/14] net: phy: adin: make RGMII internal delays configurable

2019-08-09 Thread Alexandru Ardelean
The internal delays for the RGMII are configurable for both RX & TX. This change adds support for configuring them via device-tree (or ACPI). Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 82 ++ 1 file cha

[PATCH v3 02/14] net: phy: adin: hook genphy_{suspend,resume} into the driver

2019-08-09 Thread Alexandru Ardelean
The chip supports standard suspend/resume via BMCR reg. Hook these functions into the `adin` driver. Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 4 1 file changed, 4 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c

[PATCH v3 07/14] net: phy: adin: make RMII fifo depth configurable

2019-08-09 Thread Alexandru Ardelean
The FIFO depth can be configured for the RMII mode. This change adds support for doing this via device-tree (or ACPI). Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 29 + 1 file changed, 29 insertions(+) diff --git

[PATCH v3 09/14] net: phy: adin: add EEE translation layer from Clause 45 to Clause 22

2019-08-09 Thread Alexandru Ardelean
nism, a translation table is required to convert these addresses. For Clause 45, this is not needed; the addresses are available as specified by IEEE. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 69 -- 1 file changed, 67 insertions(+), 2 delet

[PATCH v3 13/14] net: phy: adin: add ethtool get_stats support

2019-08-09 Thread Alexandru Ardelean
spec). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 109 + 1 file changed, 109 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c index fb39104508ff..28424209d9c3 100644 --- a/drivers/net/phy/adin.c +++ b/drivers

[PATCH v3 10/14] net: phy: adin: implement PHY subsystem software reset

2019-08-09 Thread Alexandru Ardelean
useful when doing a warm reboot, because this will reset the subsystem registers to default values. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 43 ++ 1 file changed, 43 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/ne

[PATCH v3 04/14] net: phy: adin: add {write,read}_mmd hooks

2019-08-09 Thread Alexandru Ardelean
xtRegPtr) This mechanism is needed to manage configuration of chip settings and to access EEE registers (via Clause 22). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 46 ++ 1 file changed, 46 insertions(+) diff --git a/drivers/net/phy/

[PATCH v3 05/14] net: phy: adin: configure RGMII/RMII/MII modes on config

2019-08-09 Thread Alexandru Ardelean
able and will be done in a subsequent change. Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 79 +- 1 file changed, 78 insertions(+), 1 deletion(-) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c i

[PATCH v3 08/14] net: phy: adin: add support MDI/MDIX/Auto-MDI selection

2019-08-09 Thread Alexandru Ardelean
3. MDI preferred & ! Pair01Swapped == MDIX 4. MDIX preferred & ! Pair01Swapped == MDI The preferred MDI/MDIX mode is not configured via SW, but can be configured via HW pins. Note that the `Pair01Swapped` is the Green-Yellow physical pairs. Signed-off-by: Alexandru Ardelean --- driv

[PATCH v3 12/14] net: phy: adin: implement downshift configuration via phy-tunable

2019-08-09 Thread Alexandru Ardelean
be controlled via the phy-tunable interface (ETHTOOL_PHY_DOWNSHIFT control). The change has been adapted from the Aquantia PHY driver. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 86 ++ 1 file changed, 86 insertions(+) diff --git a/drivers/net/phy

[PATCH v3 14/14] dt-bindings: net: add bindings for ADIN PHY driver

2019-08-09 Thread Alexandru Ardelean
This change adds bindings for the Analog Devices ADIN PHY driver, detailing all the properties implemented by the driver. Signed-off-by: Alexandru Ardelean --- .../devicetree/bindings/net/adi,adin.yaml | 73 +++ MAINTAINERS | 1 + 2 files

[PATCH v3 00/14] net: phy: adin: add support for Analog Devices PHYs

2019-08-09 Thread Alexandru Ardelean
ttps://www.analog.com/media/en/technical-documentation/data-sheets/ADIN1200.pdf Signed-off-by: Alexandru Ardelean Alexandru Ardelean (14): net: phy: adin: add support for Analog Devices PHYs net: phy: adin: hook genphy_{suspend,resume} into the driver net: phy: adin: add support for interrupts net:

[PATCH v3 11/14] net: phy: adin: implement Energy Detect Powerdown mode

2019-08-09 Thread Alexandru Ardelean
The ADIN PHYs support Energy Detect Powerdown mode, which puts the PHY into a low power mode when there is no signal on the wire (typically cable unplugged). This behavior is enabled by default, but can be disabled via device property. Signed-off-by: Alexandru Ardelean --- drivers/net/phy

[PATCH v3 03/14] net: phy: adin: add support for interrupts

2019-08-09 Thread Alexandru Ardelean
This change adds support for enabling PHY interrupts that can be used by the PHY framework to get signal for link/speed/auto-negotiation changes. Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 38 ++ 1 file changed

[PATCH v3 01/14] net: phy: adin: add support for Analog Devices PHYs

2019-08-09 Thread Alexandru Ardelean
tion/data-sheets/ADIN1200.pdf Reviewed-by: Andrew Lunn Signed-off-by: Alexandru Ardelean --- MAINTAINERS | 7 ++ drivers/net/phy/Kconfig | 9 drivers/net/phy/Makefile | 1 + drivers/net/phy/adin.c | 49 4 files changed

[PATCH v2 01/15] net: phy: adin: add support for Analog Devices PHYs

2019-08-08 Thread Alexandru Ardelean
tion/data-sheets/ADIN1200.pdf Signed-off-by: Alexandru Ardelean --- MAINTAINERS | 7 ++ drivers/net/phy/Kconfig | 9 drivers/net/phy/Makefile | 1 + drivers/net/phy/adin.c | 49 4 files changed, 66 insertions(+) create

[PATCH v2 00/15] net: phy: adin: add support for Analog Devices PHYs

2019-08-08 Thread Alexandru Ardelean
ttps://www.analog.com/media/en/technical-documentation/data-sheets/ADIN1200.pdf Signed-off-by: Alexandru Ardelean Alexandru Ardelean (15): net: phy: adin: add support for Analog Devices PHYs net: phy: adin: hook genphy_read_abilities() to get_features net: phy: adin: hook genphy_{suspend,re

[PATCH v2 03/15] net: phy: adin: hook genphy_{suspend,resume} into the driver

2019-08-08 Thread Alexandru Ardelean
The chip supports standard suspend/resume via BMCR reg. Hook these functions into the `adin` driver. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 4 1 file changed, 4 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c index 879797d076e0

[PATCH v2 05/15] net: phy: adin: add {write,read}_mmd hooks

2019-08-08 Thread Alexandru Ardelean
is mechanism is needed to manage configuration of chip settings and to access EEE registers (via Clause 22). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 46 ++ 1 file changed, 46 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/ne

[PATCH v2 14/15] net: phy: adin: add ethtool get_stats support

2019-08-08 Thread Alexandru Ardelean
spec). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 109 + 1 file changed, 109 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c index d6d1f5037eb7..d170d1e837b5 100644 --- a/drivers/net/phy/adin.c +++ b/drivers

[PATCH v2 09/15] net: phy: adin: add support MDI/MDIX/Auto-MDI selection

2019-08-08 Thread Alexandru Ardelean
3. MDI preferred & ! Pair01Swapped == MDIX 4. MDIX preferred & ! Pair01Swapped == MDI The preferred MDI/MDIX mode is not configured via SW, but can be configured via HW pins. Note that the `Pair01Swapped` is the Green-Yellow physical pairs. Signed-off-by: Alexandru Ardelean --- driv

[PATCH v2 08/15] net: phy: adin: make RMII fifo depth configurable

2019-08-08 Thread Alexandru Ardelean
The FIFO depth can be configured for the RMII mode. This change adds support for doing this via device-tree (or ACPI). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 29 + 1 file changed, 29 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers

[PATCH v2 11/15] net: phy: adin: implement PHY subsystem software reset

2019-08-08 Thread Alexandru Ardelean
useful when doing a warm reboot, because this will reset the subsystem registers to default values. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 43 ++ 1 file changed, 43 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/ne

[PATCH v2 02/15] net: phy: adin: hook genphy_read_abilities() to get_features

2019-08-08 Thread Alexandru Ardelean
via the `genphy_c45_pma_read_abilities()`, which will try to read PMA regs that are unsupported. Hooking the `genphy_read_abilities()` function to the `get_features` hook will ensure that this does not happen and the PHY features are read correctly regardless of Clause 22 or Clause 45 operation. Signed-off-by: Alexandru Arde

[PATCH v2 15/15] dt-bindings: net: add bindings for ADIN PHY driver

2019-08-08 Thread Alexandru Ardelean
This change adds bindings for the Analog Devices ADIN PHY driver, detailing all the properties implemented by the driver. Signed-off-by: Alexandru Ardelean --- .../devicetree/bindings/net/adi,adin.yaml | 76 +++ MAINTAINERS | 1 + 2 files

[PATCH v2 13/15] net: phy: adin: configure downshift on config_init

2019-08-08 Thread Alexandru Ardelean
. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 39 +++ 1 file changed, 39 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c index bc4393195de7..d6d1f5037eb7 100644 --- a/drivers/net/phy/adin.c +++ b/drivers/net/phy

[PATCH v2 07/15] net: phy: adin: make RGMII internal delays configurable

2019-08-08 Thread Alexandru Ardelean
The internal delays for the RGMII are configurable for both RX & TX. This change adds support for configuring them via device-tree (or ACPI). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 82 ++ 1 file changed, 82 insertions(+)

[PATCH v2 12/15] net: phy: adin: implement Energy Detect Powerdown mode

2019-08-08 Thread Alexandru Ardelean
The ADIN PHYs support Energy Detect Powerdown mode, which puts the PHY into a low power mode when there is no signal on the wire (typically cable unplugged). This behavior is enabled by default, but can be disabled via device property. Signed-off-by: Alexandru Ardelean --- drivers/net/phy

[PATCH v2 10/15] net: phy: adin: add EEE translation layer from Clause 45 to Clause 22

2019-08-08 Thread Alexandru Ardelean
nism, a translation table is required to convert these addresses. For Clause 45, this is not needed; the addresses are available as specified by IEEE. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 69 -- 1 file changed, 67 insertions(+), 2 delet

[PATCH v2 06/15] net: phy: adin: configure RGMII/RMII/MII modes on config

2019-08-08 Thread Alexandru Ardelean
able and will be done in a subsequent change. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 79 +- 1 file changed, 78 insertions(+), 1 deletion(-) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c index a833e329be6f..9169d6c08383 10

[PATCH v2 04/15] net: phy: adin: add support for interrupts

2019-08-08 Thread Alexandru Ardelean
This change adds support for enabling PHY interrupts that can be used by the PHY framework to get signal for link/speed/auto-negotiation changes. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 38 ++ 1 file changed, 38 insertions(+) diff

[PATCH 04/16] net: phy: adin: add {write,read}_mmd hooks

2019-08-05 Thread Alexandru Ardelean
is mechanism is needed to manage configuration of chip settings and to access EEE registers (via Clause 22). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 46 ++ 1 file changed, 46 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/ne

[PATCH 06/16] net: phy: adin: support PHY mode converters

2019-08-05 Thread Alexandru Ardelean
tups, but testing has been done in DT context. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 39 --- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c index dbdb8f60741c..e3d2ff8cc09c 10

[PATCH 08/16] net: phy: adin: make RMII fifo depth configurable

2019-08-05 Thread Alexandru Ardelean
The FIFO depth can be configured for the RMII mode. This change adds support for doing this via device-tree (or ACPI). Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 11 +++ 1 file changed, 11 insertions(+) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c

[PATCH 05/16] net: phy: adin: configure RGMII/RMII/MII modes on config

2019-08-05 Thread Alexandru Ardelean
able and will be done in a subsequent change. Signed-off-by: Alexandru Ardelean --- drivers/net/phy/adin.c | 79 +- 1 file changed, 78 insertions(+), 1 deletion(-) diff --git a/drivers/net/phy/adin.c b/drivers/net/phy/adin.c index 3dd9fe50f4c8..dbdb8f60741c 10

<    4   5   6   7   8   9   10   >