[PATCH net] net: marvell: prestera: fix port event handling on init

2021-04-20 Thread Vadym Kochan
From: Vadym Kochan For some reason there might be a crash during ports creation if port events are handling at the same time because fw may send initial port event with down state. The crash points to cancel_delayed_work() which is called when port went is down. Currently I did not find out

[PATCH RESEND net-next] net: marvell: prestera: add support for AC3X 98DX3265 device

2021-04-16 Thread Vadym Kochan
From: Vadym Kochan Add PCI match for AC3X 98DX3265 device which is supported by the current driver and firmware. Signed-off-by: Vadym Kochan --- drivers/net/ethernet/marvell/prestera/prestera_pci.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/ethernet/marvell/prestera

Re: [PATCH] net: marvell: prestera: add support for AC3X 98DX3265 device

2021-04-16 Thread Vadym Kochan
On Sat, Apr 17, 2021 at 02:02:02AM +0300, Vadym Kochan wrote: > From: Vadym Kochan > > Add PCI match for AC3X 98DX3265 device which is supported by the current > driver and firmware. > > Signed-off-by: Vadym Kochan > --- > drivers/net/ethernet/marvell/prestera/preste

[PATCH] net: marvell: prestera: add support for AC3X 98DX3265 device

2021-04-16 Thread Vadym Kochan
From: Vadym Kochan Add PCI match for AC3X 98DX3265 device which is supported by the current driver and firmware. Signed-off-by: Vadym Kochan --- drivers/net/ethernet/marvell/prestera/prestera_pci.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/ethernet/marvell/prestera

Re: [RFC] net: core: devlink: add port_params_ops for devlink port parameters altering

2021-04-09 Thread Vadym Kochan
Hi Sridhar, On Fri, Apr 09, 2021 at 09:51:13AM -0700, Samudrala, Sridhar wrote: > On 4/9/2021 9:22 AM, Oleksandr Mazur wrote: > > I'd like to discuss a possibility of handling devlink port parameters > > with devlink port pointer supplied. > > > > Current design makes it impossible to

Re: [PATCH net-next 7/7] net: marvell: prestera: fix port event handling on init

2021-02-05 Thread Vadym Kochan
Hi Jakub, On Thu, Feb 04, 2021 at 09:19:34PM -0800, Jakub Kicinski wrote: > On Wed, 3 Feb 2021 18:54:58 +0200 Vadym Kochan wrote: > > For some reason there might be a crash during ports creation if port > > events are handling at the same time because fw may send initial

Re: [PATCH net-next 2/7] net: marvell: prestera: disable events interrupt while handling

2021-02-05 Thread Vadym Kochan
Hi Jakub, On Thu, Feb 04, 2021 at 09:10:12PM -0800, Jakub Kicinski wrote: > On Wed, 3 Feb 2021 18:54:53 +0200 Vadym Kochan wrote: > > There are change in firmware which requires that receiver will > > disable event interrupts before handling them and enable them > > after

[PATCH net-next 3/7] net: marvell: prestera: add support for AC3X 98DX3265 device

2021-02-03 Thread Vadym Kochan
Add PCI match for AC3X 98DX3265 device which is supported by the current driver and firmware. Signed-off-by: Vadym Kochan --- drivers/net/ethernet/marvell/prestera/prestera_pci.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/ethernet/marvell/prestera/prestera_pci.c b/drivers

[PATCH net-next 6/7] net: marvell: prestera: align flood setting according to latest firmware version

2021-02-03 Thread Vadym Kochan
Latest FW IPC floow message format was changed to configure uc/mc flooding separately, so change code according to this. Signed-off-by: Vadym Kochan --- .../ethernet/marvell/prestera/prestera_hw.c | 37 +-- .../ethernet/marvell/prestera/prestera_hw.h | 3 +- .../marvell

[PATCH net-next 7/7] net: marvell: prestera: fix port event handling on init

2021-02-03 Thread Vadym Kochan
race 5eced933df3a080b ]--- Signed-off-by: Vadym Kochan --- drivers/net/ethernet/marvell/prestera/prestera_main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/marvell/prestera/prestera_main.c b/drivers/net/ethernet/marvell/prestera/prestera_main.c index 39465e65

[PATCH net-next 5/7] net: marvell: prestera: add LAG support

2021-02-03 Thread Vadym Kochan
-by: Serhiy Boiko Signed-off-by: Vadym Kochan --- .../net/ethernet/marvell/prestera/prestera.h | 30 ++- .../ethernet/marvell/prestera/prestera_hw.c | 180 - .../ethernet/marvell/prestera/prestera_hw.h | 14 + .../ethernet/marvell/prestera/prestera_main.c | 247

[PATCH net-next 4/7] net: marvell: prestera: move netdev topology validation to prestera_main

2021-02-03 Thread Vadym Kochan
Move handling of PRECHANGEUPPER event from prestera_switchdev to prestera_main which is responsible for basic netdev events handling and routing them to related module. Signed-off-by: Vadym Kochan --- .../ethernet/marvell/prestera/prestera_main.c | 29 +-- .../marvell/prestera

[PATCH net-next 1/7] net: marvell: prestera: bump supported firmware version to 2.5

2021-02-03 Thread Vadym Kochan
New firmware version has some ABI and feature changes like: - LAG support - initial L3 support - changed events handling logic Signed-off-by: Vadym Kochan --- drivers/net/ethernet/marvell/prestera/prestera_pci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git

[PATCH net-next 0/7] Marvell Prestera Switchdev misc updates

2021-02-03 Thread Vadym Kochan
LAG support Vadym Kochan (6): net: marvell: prestera: bump supported firmware version to 2.5 net: marvell: prestera: disable events interrupt while handling net: marvell: prestera: add support for AC3X 98DX3265 device net: marvell: prestera: move netdev topology validation

[PATCH net-next 2/7] net: marvell: prestera: disable events interrupt while handling

2021-02-03 Thread Vadym Kochan
There are change in firmware which requires that receiver will disable event interrupts before handling them and enable them after finish with handling. Events still may come into the queue but without receiver interruption. Signed-off-by: Vadym Kochan --- .../ethernet/marvell/prestera

Re: [PATCH net] net: marvell: prestera: fix error return code in prestera_pci_probe()

2020-11-13 Thread Vadym Kochan
err = -ENOMEM; > goto err_wq_alloc; > + } > > INIT_WORK(>evt_work, prestera_fw_evt_work_fn); Thank you! Just in case it is needed: Reviewed-by: Vadym Kochan Acked-by: Vadym Kochan

[PATCH net] net: marvell: prestera: fix compilation with CONFIG_BRIDGE=m

2020-11-06 Thread Vadym Kochan
it by adding 'BRIDGE || BRIDGE=n' dependency. Fixes: e1189d9a5fbe ("net: marvell: prestera: Add Switchdev driver implementation") Reported-by: Randy Dunlap Signed-off-by: Vadym Kochan --- drivers/net/ethernet/marvell/prestera/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/ne

Re: linux-next: Tree for Nov 3 (drivers/net/ethernet/marvell/prestera/prestera_switchdev.o)

2020-11-06 Thread Vadym Kochan
o: in function > `prestera_bridge_port_event': > prestera_switchdev.c:(.text+0x2ebd): undefined reference to `br_vlan_enabled' > > > Also please add drivers/net/ethernet/marvell/prestera/ to the > MAINTAINERS file. > > thanks. Thanks for catching this, will send fix via the "net" tree. Regards, Vadym Kochan

Re: linux-next: build failure after merge of the net-next tree

2020-09-30 Thread Vadym Kochan
Hi Stephen, On Thu, Oct 01, 2020 at 08:09:16AM +1000, Stephen Rothwell wrote: > Hi all, > [CUT] > > I am still getting this build failure ... > > -- I just 've checked linux-next/master and it builds fine at least with my custom config, do/how I need to handle this case ? I see the changes

[PATCH v3] nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell()

2020-09-23 Thread Vadym Kochan
s used to convert cell_info -> cell without name duplication as a lighweight version of nvmem_cell_info_to_nvmem_cell(). Fixes: e2a5402ec7c6 ("nvmem: Add nvmem_device based consumer apis.") Signed-off-by: Vadym Kochan --- v3: * rename __nvmem_cell

Re: [PATCH v2] nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell()

2020-09-23 Thread Vadym Kochan
On Wed, Sep 23, 2020 at 04:51:06PM +0100, Srinivas Kandagatla wrote: > > > On 23/09/2020 15:51, Vadym Kochan wrote: > > > - return nvmem_cell_write(, buf, cell.bytes); > > > + rc = nvmem_cell_write(, buf, cell.bytes); > > > + if (rc) > >

Re: [PATCH v2] nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell()

2020-09-23 Thread Vadym Kochan
On Wed, Sep 23, 2020 at 04:51:06PM +0100, Srinivas Kandagatla wrote: > > > On 23/09/2020 15:51, Vadym Kochan wrote: > > > - return nvmem_cell_write(, buf, cell.bytes); > > > + rc = nvmem_cell_write(, buf, cell.bytes); > > > + if (rc) > >

Re: [PATCH v2] nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell()

2020-09-23 Thread Vadym Kochan
On Wed, Sep 23, 2020 at 03:47:14PM +0100, Srinivas Kandagatla wrote: > > > On 23/09/2020 15:13, Vadym Kochan wrote: > > On Wed, Sep 23, 2020 at 03:10:36PM +0100, Srinivas Kandagatla wrote: > > > > > > > > > On 23/09/2020 14:53, Vadym Kochan wrote: &

Re: [PATCH v2] nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell()

2020-09-23 Thread Vadym Kochan
On Wed, Sep 23, 2020 at 03:10:36PM +0100, Srinivas Kandagatla wrote: > > > On 23/09/2020 14:53, Vadym Kochan wrote: > > Fix missing 'kfree_const(cell->name)' when call to > > nvmem_cell_info_to_nvmem_cell() in several places: > > > > * after nvmem_cel

[PATCH v2] nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell()

2020-09-23 Thread Vadym Kochan
r apis.") Signed-off-by: Vadym Kochan --- v2: * remove not needed 'kfree_const(cell->name)' after nvmem_cell_info_to_nvmem_cell() failed. drivers/nvmem/core.c | 35 ++- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/drivers/nvmem/core.c

Re: [PATCH] nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell()

2020-09-23 Thread Vadym Kochan
On Wed, Sep 23, 2020 at 02:50:05AM +0300, Vadym Kochan wrote: [CUT] > > +static int nvmem_cell_info_to_nvmem_cell(struct nvmem_device *nvmem, > +const struct nvmem_cell_info *info, > +struct nvmem_cell *cell) > +{

[PATCH] nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell()

2020-09-22 Thread Vadym Kochan
m_cell() helper was introduced. Fixes: e2a5402ec7c6 ("nvmem: Add nvmem_device based consumer apis.") Signed-off-by: Vadym Kochan --- drivers/nvmem/core.c | 35 ++- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/drivers/nvmem/core.c b/drivers/nvmem/

Re: [PATCH 1/3] nvmem: core: introduce cells parser

2020-09-22 Thread Vadym Kochan
On Tue, Sep 22, 2020 at 10:48:27AM +0100, Srinivas Kandagatla wrote: > > > On 15/09/2020 13:41, Vadym Kochan wrote: > > Currently NVMEM core does not allow to register cells for an already > > registered nvmem device and requires that this should be done before. > &g

Re: [PATCH 0/3] nvmem: add ONIE NVMEM cells provider

2020-09-22 Thread Vadym Kochan
Hi Srinivas, On Tue, Sep 22, 2020 at 10:48:23AM +0100, Srinivas Kandagatla wrote: > > > On 22/09/2020 00:56, Vadym Kochan wrote: > > Hi Srinivas, > > > > On Tue, Sep 15, 2020 at 03:41:13PM +0300, Vadym Kochan wrote: > > > This series adds cells pars

Re: [PATCH 0/3] nvmem: add ONIE NVMEM cells provider

2020-09-21 Thread Vadym Kochan
Hi Srinivas, On Tue, Sep 15, 2020 at 03:41:13PM +0300, Vadym Kochan wrote: > This series adds cells parser for the ONIE TLV attributes which are > stored on NVMEM device. It adds possibility to read the mac address (and > other info) by other drivers. > > Because ONIE stores inf

[PATCH 2/2] dt-bindings: nvmem: add description for ONIE provider

2020-09-21 Thread Vadym Kochan
Add device-tree binding description for the ONIE nvmem provider. Signed-off-by: Vadym Kochan --- .../devicetree/bindings/nvmem/onie-nvmem.txt | 11 +++ 1 file changed, 11 insertions(+) create mode 100644 Documentation/devicetree/bindings/nvmem/onie-nvmem.txt diff --git

[PATCH 0/2] Add ONIE NVMEM provider

2020-09-21 Thread Vadym Kochan
This series adds NVMEM provider for the ONIE TLV attributes which are stored on NVMEM device. It adds possibility to read the mac address (and other info) by other drivers. Vadym Kochan (2): nvmem: add ONIE nvmem provider dt-bindings: nvmem: add description for ONIE provider .../devicetree

[PATCH 1/2] nvmem: add ONIE nvmem provider

2020-09-21 Thread Vadym Kochan
nvmem as accessor for reading the cell, and proxies the reg_read() call to this device driver. Signed-off-by: Vadym Kochan --- drivers/nvmem/Kconfig | 9 ++ drivers/nvmem/Makefile | 2 + drivers/nvmem/onie.c | 357 + 3 files changed, 368 insertions

[GIT PULL] linux-firmware: Update Marvell Prestera Switchdev firmware ABI changes

2020-09-18 Thread Vadym Kochan
to 7a0221265cda381b5231355965a403ca264392a5: linux-firmware: Update Marvell Switchdev firmware with ABI changes (2020-09-18 16:54:29 +0300) Vadym Kochan (1): linux-firmware: Update Marvell Switchdev firmware with ABI changes mrvl/prestera

[PATCH net-next v9 2/6] net: marvell: prestera: Add PCI interface support

2020-09-16 Thread Vadym Kochan
ixes, firmware ABI is not changed. Firmware image file name contains only MAJOR and MINOR numbers to make driver be compatible with any PATCH version. Co-developed-by: Oleksandr Mazur Signed-off-by: Oleksandr Mazur Signed-off-by: Vadym Kochan --- PATCH v8: 1) Sort includes. 2) Add missing c

[PATCH net-next v9 5/6] net: marvell: prestera: Add Switchdev driver implementation

2020-09-16 Thread Vadym Kochan
timeout parameter is set globally per device Co-developed-by: Serhiy Boiko Signed-off-by: Serhiy Boiko Co-developed-by: Serhiy Pshyk Signed-off-by: Serhiy Pshyk Co-developed-by: Taras Chornyi Signed-off-by: Taras Chornyi Signed-off-by: Vadym Kochan --- PATCH v8: 1) Add missing comma for last

[PATCH net-next v9 6/6] dt-bindings: marvell,prestera: Add description for device-tree bindings

2020-09-16 Thread Vadym Kochan
Add brief description how to configure base mac address binding in device-tree. Describe requirement for the PCI port which is connected to the ASIC, to allow access to the firmware related registers. Signed-off-by: Vadym Kochan --- .../bindings/net/marvell,prestera.txt | 34

[PATCH 1/3] eeprom: at24: set type id as EEPROM

2020-09-16 Thread Vadym Kochan
Set type as NVMEM_TYPE_EEPROM to expose this info via sysfs: $ cat /sys/bus/nvmem/devices/{DEVICE}/type EEPROM Signed-off-by: Vadym Kochan --- drivers/misc/eeprom/at24.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/misc/eeprom/at24.c b/drivers/misc/eeprom/at24.c index

[PATCH] misc: eeprom: set type id as EEPROM for nvmem devices

2020-09-16 Thread Vadym Kochan
Set type as NVMEM_TYPE_EEPROM to expose this info via sysfs: $ cat /sys/bus/nvmem/devices/0-00560/type EEPROM Signed-off-by: Vadym Kochan --- Checked only with at24. drivers/misc/eeprom/at24.c | 1 + drivers/misc/eeprom/at25.c | 1 + drivers/misc/eeprom/eeprom_93xx46.c | 1

[PATCH net-next v9 3/6] net: marvell: prestera: Add basic devlink support

2020-09-16 Thread Vadym Kochan
Add very basic support for devlink interface: - driver name - fw version - devlink ports Signed-off-by: Vadym Kochan --- PATCH v8: 1) Put license in one line. 2) Use traditional error handling pattern in prestera_devlink_port_register(): err = F(); if (err

[PATCH 0/3] misc: eeprom: set type id as EEPROM for nvmem devices

2020-09-16 Thread Vadym Kochan
Set type as NVMEM_TYPE_EEPROM to expose this info via sysfs: $ cat /sys/bus/nvmem/devices/0-00560/type EEPROM Tested only with at24 device. Vadym Kochan (3): eeprom: at24: set type id as EEPROM eeprom: at25: set type id as EEPROM eeprom: 93xx46: set type id as EEPROM drivers/misc/eeprom

[PATCH 3/3] eeprom: 93xx46: set type id as EEPROM

2020-09-16 Thread Vadym Kochan
Set type as NVMEM_TYPE_EEPROM to expose this info via sysfs: $ cat /sys/bus/nvmem/devices/{DEVICE}/type EEPROM Signed-off-by: Vadym Kochan --- drivers/misc/eeprom/eeprom_93xx46.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/misc/eeprom/eeprom_93xx46.c b/drivers/misc/eeprom

[PATCH 2/3] eeprom: at25: set type id as EEPROM

2020-09-16 Thread Vadym Kochan
Set type as NVMEM_TYPE_EEPROM to expose this info via sysfs: $ cat /sys/bus/nvmem/devices/{DEVICE}/type EEPROM Signed-off-by: Vadym Kochan --- drivers/misc/eeprom/at25.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/misc/eeprom/at25.c b/drivers/misc/eeprom/at25.c index

[PATCH net-next v9 4/6] net: marvell: prestera: Add ethtool interface support

2020-09-16 Thread Vadym Kochan
-by: Serhiy Boiko Signed-off-by: Vadym Kochan --- PATCH v8: 1) Sorted includes. 2) Use traditional error handling pattern: err = F(); if (err) return err; 3) Invert '!err ? speed : SPEED_UNKNOWN' into 'err ? SPEED_UNKNOWN : speed' 4) Return original error

[PATCH net-next v9 0/6] net: marvell: prestera: Add Switchdev driver for Prestera family ASIC device 98DX3255 (AC3x)

2020-09-16 Thread Vadym Kochan
struct prestera_bridge_device which may confuse. - use refcount_t 9) Get rid of macro usage for sending fw requests in prestera_hw.c 10) Add base_mac setting as module parameter. base_mac is required for generation default port's mac. Vadym Kochan (6): net: marvell: pre

[PATCH net-next v9 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-16 Thread Vadym Kochan
off-by: Taras Chornyi Co-developed-by: Volodymyr Mytnyk Signed-off-by: Volodymyr Mytnyk Signed-off-by: Vadym Kochan --- PATCH v9: 1) Replace read_poll_timeout_atomic() by original 'do {} while()' loop because it works much better than read_poll_timeout_atomic() considering the TX r

[PATCH 3/3] dt-bindings: nvmem: add description for ONIE cells parser

2020-09-15 Thread Vadym Kochan
Add device-tree binding description for the ONIE cells parser. Signed-off-by: Vadym Kochan --- .../devicetree/bindings/nvmem/onie-nvmem-cells.txt| 11 +++ 1 file changed, 11 insertions(+) create mode 100644 Documentation/devicetree/bindings/nvmem/onie-nvmem-cells.txt diff --git

[PATCH] nvmem: core: fix missing of_node_put() in of_nvmem_device_get()

2020-09-15 Thread Vadym Kochan
of_parse_phandle() returns device_node with incremented ref count which needs to be decremented by of_node_put() when device_node is not used. Fixes: e2a5402ec7c6 ("nvmem: Add nvmem_device based consumer apis.") Signed-off-by: Vadym Kochan --- drivers/nvmem/core.c | 5 - 1 file

[PATCH 2/3] nvmem: add ONIE nvmem cells parser

2020-09-15 Thread Vadym Kochan
ONIE TLV attributes and registers them as NVMEM cells which can be accessed by other platform driver. Also it allows to use of_get_mac_address() to retrieve mac address for the netdev. Signed-off-by: Vadym Kochan --- drivers/nvmem/Kconfig | 9 + drivers/nvmem/Makefile | 3 + drivers

[PATCH 1/3] nvmem: core: introduce cells parser

2020-09-15 Thread Vadym Kochan
parser which is called during nvmem device registration. During this stage the parser can read the nvmem device and register the cells table. Signed-off-by: Vadym Kochan --- drivers/nvmem/core.c | 89 ++ include/linux/nvmem-provider.h | 27 +++ 2

[PATCH 0/3] nvmem: add ONIE NVMEM cells provider

2020-09-15 Thread Vadym Kochan
the device's cells and reister the cell table. Vadym Kochan (3): nvmem: core: introduce cells parser nvmem: add ONIE nvmem cells parser dt-bindings: nvmem: add description for ONIE cells parser .../bindings/nvmem/onie,nvmem-cells.txt | 11 + drivers/nvmem/Kconfig

Re: [PATCH v3 1/3] nvmem: core: allow to register cells during nvmem registration

2020-09-11 Thread Vadym Kochan
Hi Srinivas, On Fri, Sep 04, 2020 at 02:23:10PM +0300, Vadym Kochan wrote: > Hi Srinivas, > > On Fri, Sep 04, 2020 at 12:02:40PM +0100, Srinivas Kandagatla wrote: > > Hi Vadym, > > > > Thanks for the patch, > > On 31/08/2020 02:55, Vadym Kochan wrote: > >

Re: [net-next v8 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-11 Thread Vadym Kochan
On Thu, Sep 10, 2020 at 06:30:47PM -0700, Jakub Kicinski wrote: > On Thu, 10 Sep 2020 18:00:50 +0300 Vadym Kochan wrote: > > +static int prestera_sdma_tx_wait(struct prestera_sdma *sdma, > > +struct prestera_tx_ring *tx_ring) > > +{ &g

[net-next v8 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-10 Thread Vadym Kochan
off-by: Taras Chornyi Co-developed-by: Volodymyr Mytnyk Signed-off-by: Volodymyr Mytnyk Signed-off-by: Vadym Kochan --- PATCH v8: 1) Put license in one line. 2) Sort includes. 3) Add missing comma for last enum member 4) Use PRESTERA_DSA_ as macro prefix in prestera_dsa.c 5) Ret

[net-next v8 2/6] net: marvell: prestera: Add PCI interface support

2020-09-10 Thread Vadym Kochan
ixes, firmware ABI is not changed. Firmware image file name contains only MAJOR and MINOR numbers to make driver be compatible with any PATCH version. Co-developed-by: Oleksandr Mazur Signed-off-by: Oleksandr Mazur Signed-off-by: Vadym Kochan --- PATCH v8: 1) Sort includes. 2) Add missing c

[net-next v8 4/6] net: marvell: prestera: Add ethtool interface support

2020-09-10 Thread Vadym Kochan
-by: Serhiy Boiko Signed-off-by: Vadym Kochan --- PATCH v8: 1) Sorted includes. 2) Use traditional error handling pattern: err = F(); if (err) return err; 3) Invert '!err ? speed : SPEED_UNKNOWN' into 'err ? SPEED_UNKNOWN : speed' 4) Return original error

[net-next v8 3/6] net: marvell: prestera: Add basic devlink support

2020-09-10 Thread Vadym Kochan
Add very basic support for devlink interface: - driver name - fw version - devlink ports Signed-off-by: Vadym Kochan --- PATCH v8: 1) Put license in one line. 2) Use traditional error handling pattern in prestera_devlink_port_register(): err = F(); if (err

[net-next v8 6/6] dt-bindings: marvell,prestera: Add description for device-tree bindings

2020-09-10 Thread Vadym Kochan
Add brief description how to configure base mac address binding in device-tree. Describe requirement for the PCI port which is connected to the ASIC, to allow access to the firmware related registers. Signed-off-by: Vadym Kochan --- .../bindings/net/marvell,prestera.txt | 34

[net-next v8 5/6] net: marvell: prestera: Add Switchdev driver implementation

2020-09-10 Thread Vadym Kochan
timeout parameter is set globally per device Co-developed-by: Serhiy Boiko Signed-off-by: Serhiy Boiko Co-developed-by: Serhiy Pshyk Signed-off-by: Serhiy Pshyk Co-developed-by: Taras Chornyi Signed-off-by: Taras Chornyi Signed-off-by: Vadym Kochan --- PATCH v8: 1) Add missing comma for last

[PATCH net] net: ipa: fix u32_replace_bits by u32p_xxx version

2020-09-10 Thread Vadym Kochan
Looks like u32p_replace_bits() should be used instead of u32_replace_bits() which does not modifies the value but returns the modified version. Fixes: 2b9feef2b6c2 ("soc: qcom: ipa: filter and routing tables") Signed-off-by: Vadym Kochan Reviewed-by: Alex Elder --- Found it whil

[net-next v8 0/6] net: marvell: prestera: Add Switchdev driver for Prestera family ASIC device 98DX3255 (AC3x)

2020-09-10 Thread Vadym Kochan
era_hw.c 10) Add base_mac setting as module parameter. base_mac is required for generation default port's mac. Vadym Kochan (6): net: marvell: prestera: Add driver for Prestera family ASIC devices net: marvell: prestera: Add PCI interface support net: marvell: prestera: Add basic devlin

Re: [PATCH net-next v7 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-10 Thread Vadym Kochan
On Fri, Sep 04, 2020 at 10:12:07PM +0300, Andy Shevchenko wrote: > On Fri, Sep 4, 2020 at 7:52 PM Vadym Kochan wrote: > > > > Marvell Prestera 98DX326x integrates up to 24 ports of 1GbE with 8 > > ports of 10GbE uplinks or 2 ports of 40Gbps stacking for a largely > &

Re: [PATCH net-next v7 5/6] net: marvell: prestera: Add Switchdev driver implementation

2020-09-10 Thread Vadym Kochan
Hi Andy, On Fri, Sep 04, 2020 at 10:41:17PM +0300, Andy Shevchenko wrote: > On Fri, Sep 4, 2020 at 7:52 PM Vadym Kochan wrote: > > > > The following features are supported: > > > > - VLAN-aware bridge offloading > > - VLAN-unaware bridge offloading &

Re: [PATCH net-next v7 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-09 Thread Vadym Kochan
On Mon, Sep 07, 2020 at 10:55:49AM +0300, Andy Shevchenko wrote: > On Mon, Sep 7, 2020 at 10:30 AM Vadym Kochan wrote: > > On Fri, Sep 04, 2020 at 10:12:07PM +0300, Andy Shevchenko wrote: > > > On Fri, Sep 4, 2020 at 7:52 PM Vadym Kochan > > > wrote: > > I'm a

Re: [PATCH net-next v7 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-09 Thread Vadym Kochan
Hi Andy, On Tue, Sep 08, 2020 at 12:38:04PM +0300, Andy Shevchenko wrote: > On Tue, Sep 8, 2020 at 11:35 AM Vadym Kochan wrote: > > On Fri, Sep 04, 2020 at 10:12:07PM +0300, Andy Shevchenko wrote: > > > On Fri, Sep 4, 2020 at 7:52 PM Vadym Kochan > > > wrote: >

Re: [RFT net] net: ipa: fix u32_replace_bits by u32p_xxx version

2020-09-09 Thread Vadym Kochan
Hi Alex, On Wed, Sep 09, 2020 at 06:53:17AM -0500, Alex Elder wrote: > On 9/8/20 9:32 AM, Vadym Kochan wrote: > > Looks like u32p_replace_bits() should be used instead of > > u32_replace_bits() which does not modifies the value but returns the > > modified version. > &g

[RFT net] net: ipa: fix u32_replace_bits by u32p_xxx version

2020-09-08 Thread Vadym Kochan
Looks like u32p_replace_bits() should be used instead of u32_replace_bits() which does not modifies the value but returns the modified version. Fixes: 2b9feef2b6c2 ("soc: qcom: ipa: filter and routing tables") Signed-off-by: Vadym Kochan --- Found it while grepping of u32_replace_bi

Re: [PATCH net-next v7 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-08 Thread Vadym Kochan
On Fri, Sep 04, 2020 at 10:12:07PM +0300, Andy Shevchenko wrote: > On Fri, Sep 4, 2020 at 7:52 PM Vadym Kochan wrote: > > > > Marvell Prestera 98DX326x integrates up to 24 ports of 1GbE with 8 > > ports of 10GbE uplinks or 2 ports of 40Gbps stacking for a largely > &

Re: [PATCH net-next v7 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-07 Thread Vadym Kochan
Hi Andy, On Fri, Sep 04, 2020 at 10:12:07PM +0300, Andy Shevchenko wrote: > On Fri, Sep 4, 2020 at 7:52 PM Vadym Kochan wrote: > > > > Marvell Prestera 98DX326x integrates up to 24 ports of 1GbE with 8 > > ports of 10GbE uplinks or 2 ports of 40Gbps stacking for a lar

[PATCH net-next v7 2/6] net: marvell: prestera: Add PCI interface support

2020-09-04 Thread Vadym Kochan
ixes, firmware ABI is not changed. Firmware image file name contains only MAJOR and MINOR numbers to make driver be compatible with any PATCH version. Co-developed-by: Oleksandr Mazur Signed-off-by: Oleksandr Mazur Signed-off-by: Vadym Kochan --- PATCH v5: 1) Remove not-needed packed &

[PATCH net-next v7 0/6] net: marvell: prestera: Add Switchdev driver for Prestera family ASIC device 98DX3255 (AC3x)

2020-09-04 Thread Vadym Kochan
stera.c - use struct prestera_bridge for bridge objects, and get rid of struct prestera_bridge_device which may confuse. - use refcount_t 9) Get rid of macro usage for sending fw requests in prestera_hw.c 10) Add base_mac setting as module parameter. base_mac is requi

[PATCH net-next v7 3/6] net: marvell: prestera: Add basic devlink support

2020-09-04 Thread Vadym Kochan
Add very basic support for devlink interface: - driver name - fw version - devlink ports Signed-off-by: Vadym Kochan --- PATCH v5: 1) Simplified some error path handling by simple return error code in: - prestera_dl_info_get(...) 2) Remove not-needed err assignment

[PATCH net-next v7 5/6] net: marvell: prestera: Add Switchdev driver implementation

2020-09-04 Thread Vadym Kochan
timeout parameter is set globally per device Co-developed-by: Serhiy Boiko Signed-off-by: Serhiy Boiko Co-developed-by: Serhiy Pshyk Signed-off-by: Serhiy Pshyk Co-developed-by: Taras Chornyi Signed-off-by: Taras Chornyi Signed-off-by: Vadym Kochan --- PATCH v7: 1) Add missing

[PATCH net-next v7 4/6] net: marvell: prestera: Add ethtool interface support

2020-09-04 Thread Vadym Kochan
-by: Serhiy Boiko Signed-off-by: Vadym Kochan --- PATCH v5: 1) Convert following error check: if (func(...)) or if (!func(...)) to use err variable: err = func(...) if (err) 2) Remove "," from terminated enum entry. PATCH v4:

[PATCH net-next v7 6/6] dt-bindings: marvell,prestera: Add description for device-tree bindings

2020-09-04 Thread Vadym Kochan
Add brief description how to configure base mac address binding in device-tree. Describe requirement for the PCI port which is connected to the ASIC, to allow access to the firmware related registers. Signed-off-by: Vadym Kochan --- .../bindings/net/marvell,prestera.txt | 34

[PATCH net-next v7 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-04 Thread Vadym Kochan
off-by: Taras Chornyi Co-developed-by: Volodymyr Mytnyk Signed-off-by: Volodymyr Mytnyk Signed-off-by: Vadym Kochan --- PATCH v7: 1) Use ether_addr_copy() in prestera_main.c:prestera_port_set_mac_address() instead of memcpy(). 2) Removed not needed device's DMA address range ch

Re: [PATCH net v6 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-04 Thread Vadym Kochan
Hi Andrew, On Fri, Sep 04, 2020 at 03:32:17PM +0200, Andrew Lunn wrote: > > > > +static int prestera_is_valid_mac_addr(struct prestera_port *port, u8 > > > > *addr) > > > > +{ > > > > + if (!is_valid_ether_addr(addr)) > > > > + return -EADDRNOTAVAIL; > > > > + > > > > +

Re: [PATCH v3 1/3] nvmem: core: allow to register cells during nvmem registration

2020-09-04 Thread Vadym Kochan
Hi Srinivas, On Fri, Sep 04, 2020 at 12:02:40PM +0100, Srinivas Kandagatla wrote: > Hi Vadym, > > Thanks for the patch, > On 31/08/2020 02:55, Vadym Kochan wrote: > > Add NVMEM_PRE_ADD notification step which is called before any cells > > binding - from lookup tabl

Re: [PATCH net v6 5/6] net: marvell: prestera: Add Switchdev driver implementation

2020-09-04 Thread Vadym Kochan
On Thu, Sep 03, 2020 at 07:18:59PM +0200, Willem de Bruijn wrote: > On Wed, Sep 2, 2020 at 5:07 PM Vadym Kochan wrote: > > > > The following features are supported: > > > > - VLAN-aware bridge offloading > > - VLAN-unaware bridge offloading > >

Re: [PATCH net v6 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-04 Thread Vadym Kochan
On Thu, Sep 03, 2020 at 06:35:34PM +0300, Andy Shevchenko wrote: > On Thu, Sep 3, 2020 at 6:23 PM Willem de Bruijn > wrote: > > On Wed, Sep 2, 2020 at 5:37 PM Vadym Kochan > > wrote: > > ... > > > > +static int prestera_is_valid_mac_addr(struct

Re: [PATCH net v6 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-04 Thread Vadym Kochan
Hi Willem, On Thu, Sep 03, 2020 at 05:22:24PM +0200, Willem de Bruijn wrote: > On Wed, Sep 2, 2020 at 5:37 PM Vadym Kochan wrote: > > > > Marvell Prestera 98DX326x integrates up to 24 ports of 1GbE with 8 > > ports of 10GbE uplinks or 2 ports of 40Gbps stacking for a lar

Re: [PATCH net v6 0/6] net: marvell: prestera: Add Switchdev driver for Prestera family ASIC device 98DX3255 (AC3x)

2020-09-02 Thread Vadym Kochan
Sorry, I mistakenly used "net" instead of "net-next" as label. On Wed, Sep 02, 2020 at 06:04:36PM +0300, Vadym Kochan wrote: > Marvell Prestera 98DX3255 integrates up to 24 ports of 1GbE with 8 > ports of 10GbE uplinks or 2 ports of 40Gbps stacking for a largely

[PATCH net v6 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-09-02 Thread Vadym Kochan
ped-by: Volodymyr Mytnyk Signed-off-by: Volodymyr Mytnyk Signed-off-by: Vadym Kochan --- PATCH v6: 1) Use rwlock to protect port list on create/delete stages. The list is mostly readable by fw event handler or packets receiver. 2) Remove not needed variable initializat

[PATCH net v6 2/6] net: marvell: prestera: Add PCI interface support

2020-09-02 Thread Vadym Kochan
ABI is not changed. Firmware image file name contains only MAJOR and MINOR numbers to make driver be compatible with any PATCH version. Co-developed-by: Oleksandr Mazur Signed-off-by: Oleksandr Mazur Signed-off-by: Vadym Kochan --- PATCH v5: 1) Remove not-needed packed & aligned at

[PATCH net v6 3/6] net: marvell: prestera: Add basic devlink support

2020-09-02 Thread Vadym Kochan
Add very basic support for devlink interface: - driver name - fw version - devlink ports Signed-off-by: Vadym Kochan --- PATCH v5: 1) Simplified some error path handling by simple return error code in: - prestera_dl_info_get(...) 2) Remove not-needed err assignment

[PATCH net v6 6/6] dt-bindings: marvell,prestera: Add description for device-tree bindings

2020-09-02 Thread Vadym Kochan
Add brief description how to configure base mac address binding in device-tree. Describe requirement for the PCI port which is connected to the ASIC, to allow access to the firmware related registers. Signed-off-by: Vadym Kochan --- .../bindings/net/marvell,prestera.txt | 34

[PATCH net v6 4/6] net: marvell: prestera: Add ethtool interface support

2020-09-02 Thread Vadym Kochan
-by: Serhiy Boiko Signed-off-by: Vadym Kochan --- PATCH v5: 1) Convert following error check: if (func(...)) or if (!func(...)) to use err variable: err = func(...) if (err) 2) Remove "," from terminated enum entry. PATCH v4:

[PATCH net v6 5/6] net: marvell: prestera: Add Switchdev driver implementation

2020-09-02 Thread Vadym Kochan
timeout parameter is set globally per device Co-developed-by: Serhiy Boiko Signed-off-by: Serhiy Boiko Co-developed-by: Serhiy Pshyk Signed-off-by: Serhiy Pshyk Co-developed-by: Taras Chornyi Signed-off-by: Taras Chornyi Signed-off-by: Vadym Kochan --- PATCH v5: 0) Add Co-developed tag

[PATCH net v6 0/6] net: marvell: prestera: Add Switchdev driver for Prestera family ASIC device 98DX3255 (AC3x)

2020-09-02 Thread Vadym Kochan
- use refcount_t 9) Get rid of macro usage for sending fw requests in prestera_hw.c 10) Add base_mac setting as module parameter. base_mac is required for generation default port's mac. Vadym Kochan (6): net: marvell: prestera: Add driver for Prestera family ASIC devices net: marvel

Re: [PATCH v3 3/3] misc: eeprom: at24: register nvmem only after eeprom is ready to use

2020-08-31 Thread Vadym Kochan
Hi Bartosz, On Mon, Aug 31, 2020 at 07:21:39PM +0200, Bartosz Golaszewski wrote: > On Mon, Aug 31, 2020 at 3:56 AM Vadym Kochan wrote: > > > > During nvmem_register() the nvmem core sends notifications when: > > > > - cell added > > - nvmem added >

[PATCH v3 3/3] misc: eeprom: at24: register nvmem only after eeprom is ready to use

2020-08-30 Thread Vadym Kochan
-by: Vadym Kochan --- v3: 1) at24 driver enables regulator and pm state machine after nvmem registration which does not allow to use it on handing NVMEM_PRE_ADD event. drivers/misc/eeprom/at24.c | 11 +++ 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/drivers/misc

[PATCH v3 2/3] nvmem: add ONIE NVMEM cells support

2020-08-30 Thread Vadym Kochan
registers ONIE TLV attributes as NVMEM cells which can be accessed by other platform driver. Also it allows to use of_get_mac_address() to retrieve mac address for the netdev. Signed-off-by: Vadym Kochan --- v3: 1) Update onie-cells.c by using nvmem notification to parse and register cells

[PATCH v3 1/3] nvmem: core: allow to register cells during nvmem registration

2020-08-30 Thread Vadym Kochan
this notification step. Signed-off-by: Vadym Kochan --- v3: 1) Update core.c changes by extending notification mechanism by adding new NVMEM_PRE_ADD event id which is called before lookup table cells binding, this allows for notification handler to register cells which

[PATCH v3 0/3] nvmem: add ONIE NVMEM cells provider

2020-08-30 Thread Vadym Kochan
registration which does not allow to use it on handing NVMEM_PRE_ADD event. v2: 1) Fixed wrong memcmp comparison Vadym Kochan (3): nvmem: core: allow to register cells during nvmem registration nvmem: add ONIE NVMEM cells support misc: eeprom: at24: register nvmem only after eeprom is ready

Re: [net-next v5 0/6] net: marvell: prestera: Add Switchdev driver for Prestera family ASIC device 98DX326x (AC3x)

2020-08-30 Thread Vadym Kochan
Hi Chris, On Wed, Aug 26, 2020 at 04:30:35AM +, Chris Packham wrote: > Hi Vadym, > > On 26/08/20 12:20 am, Vadym Kochan wrote: > > Marvell Prestera 98DX326x integrates up to 24 ports of 1GbE with 8 > > ports of 10GbE uplinks or 2 ports of 40Gbps stacking for a lar

Re: [net-next v5 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-08-30 Thread Vadym Kochan
Hi David, On Wed, Aug 26, 2020 at 07:34:46AM -0700, David Miller wrote: > From: Vadym Kochan > Date: Wed, 26 Aug 2020 11:17:44 +0300 > > > Initially there was (in RFC patch set), not locking, but _rcu list API > > used, because the port list is modified only by 1

Re: [net-next v5 1/6] net: marvell: prestera: Add driver for Prestera family ASIC devices

2020-08-26 Thread Vadym Kochan
On Tue, Aug 25, 2020 at 05:20:03PM -0700, David Miller wrote: > From: Vadym Kochan > Date: Tue, 25 Aug 2020 15:20:08 +0300 > > > +int prestera_dsa_parse(struct prestera_dsa *dsa, const u8 *dsa_buf) > > +{ > > + __be32 *dsa_words = (__be32 *)dsa_buf; > &

[net-next v5 5/6] net: marvell: prestera: Add Switchdev driver implementation

2020-08-25 Thread Vadym Kochan
timeout parameter is set globally per device Co-developed-by: Serhiy Boiko Signed-off-by: Serhiy Boiko Co-developed-by: Serhiy Pshyk Signed-off-by: Serhiy Pshyk Co-developed-by: Taras Chornyi Signed-off-by: Taras Chornyi Co-developed-by: Vadym Kochan Signed-off-by: Vadym Kochan --- PATCH v5

[net-next v5 3/6] net: marvell: prestera: Add basic devlink support

2020-08-25 Thread Vadym Kochan
Add very basic support for devlink interface: - driver name - fw version - devlink ports Signed-off-by: Vadym Kochan --- PATCH v5: 1) Simplified some error path handling by simple return error code in: - prestera_dl_info_get(...) 2) Remove not-needed err assignment

[net-next v5 4/6] net: marvell: prestera: Add ethtool interface support

2020-08-25 Thread Vadym Kochan
-by: Serhiy Boiko Co-developed-by: Vadym Kochan Signed-off-by: Vadym Kochan --- PATCH v5: 1) Convert following error check: if (func(...)) or if (!func(...)) to use err variable: err = func(...) if (err) 2) Remove "," from termi

  1   2   >