Commit d3627795 authored by David S. Miller's avatar David S. Miller
Browse files

Merge branch 'dsa-next'

Guenter Roeck says:

====================
net: dsa: Fixes and enhancements

Patch 01/15 addresses a bug indicated by an an annoying and unhelpful
log message.

Patches 02/15 and 03/15 are minor enhancements, adding support for
known switch revisions.

Patches 04/15 and 05/15 add support for MV88E6352 and MV88E6176.

Patch 06/15 adds support for hardware monitoring, specifically for
reporting the chip temperature, to the dsa subsystem.

Patches 07/15 and 08/15 implement hardware monitoring for MV88E6352,
MV88E6176, MV88E6123, MV88E6161, and MV88E6165.

Patch 09/15 and 10/15 add support for EEPROM access to the DSA subsystem.

Patch 11/15 implements EEPROM access for MV88E6352 and MV88E6176.

Patch 12/15 adds support for reading switch registers to the DSA
subsystem.

Patches 13/15 amd 14/15 implement support for reading switch registers
to the drivers for MV88E6352, MV88E6176, MV88E6123, MV88E6161, and MV88E6165.

Patch 15/15 adds support for reading additional RMON registers to the drivers
for  MV88E6352, MV88E6176, MV88E6123, MV88E6161, and MV88E6165.

The series was tested on top of v3.18-rc2 in an x86 system with MV88E6352.
Testing in systems with 88E6131, 88E6060 and MV88E6165 was done earlier
(I don't have access to those systems right now). The series was also build
tested using my build system at http://server.roeck-us.net:8010/builders

.
Look into the 'dsa' column for build results.

The series merges cleanly into net-next as of today (10/29).

v3:
- Fix bug in eeprom patches seen if devicetree is enabled:
  eeprom-length property is attached to switch devicetree node,
  not to dsa node, and there was a compile error.
v2:
- Made reporting chip temperatures through the hwmon subsystem optional
  with new Kconfig option
- Changed the hwmon chip name to <network device name>_dsa<index>
- Made EEPROM presence and size configurable through platform and devicetree
  data
- Various minor changes and fixes (see individual patches for details)
====================

Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 75fbfd33 17ee3e04
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@ Required properties:
- dsa,ethernet		: Should be a phandle to a valid Ethernet device node
- dsa,mii-bus		: Should be a phandle to a valid MDIO bus device node

Optionnal properties:
Optional properties:
- interrupts		: property with a value describing the switch
			  interrupt number (not supported by the driver)

@@ -23,6 +23,13 @@ Each of these switch child nodes should have the following required properties:
- #address-cells	: Must be 1
- #size-cells		: Must be 0

A switch child node has the following optional property:

- eeprom-length		: Set to the length of an EEPROM connected to the
			  switch. Must be set if the switch can not detect
			  the presence and/or size of a connected EEPROM,
			  otherwise optional.

A switch may have multiple "port" children nodes

Each port children node must have the following mandatory properties:
+5 −0
Original line number Diff line number Diff line
@@ -5848,6 +5848,11 @@ M: Russell King <rmk+kernel@arm.linux.org.uk>
S:	Maintained
F:	drivers/gpu/drm/armada/

MARVELL 88E6352 DSA support
M:	Guenter Roeck <linux@roeck-us.net>
S:	Maintained
F:	drivers/net/dsa/mv88e6352.c

MARVELL GIGABIT ETHERNET DRIVERS (skge/sky2)
M:	Mirko Lindner <mlindner@marvell.com>
M:	Stephen Hemminger <stephen@networkplumber.org>
+9 −0
Original line number Diff line number Diff line
@@ -45,6 +45,15 @@ config NET_DSA_MV88E6171
	  This enables support for the Marvell 88E6171 ethernet switch
	  chip.

config NET_DSA_MV88E6352
	tristate "Marvell 88E6176/88E6352 ethernet switch chip support"
	select NET_DSA
	select NET_DSA_MV88E6XXX
	select NET_DSA_TAG_EDSA
	---help---
	  This enables support for the Marvell 88E6176 and 88E6352 ethernet
	  switch chips.

config NET_DSA_BCM_SF2
	tristate "Broadcom Starfighter 2 Ethernet switch support"
	depends on HAS_IOMEM
+3 −0
Original line number Diff line number Diff line
@@ -7,6 +7,9 @@ endif
ifdef CONFIG_NET_DSA_MV88E6131
mv88e6xxx_drv-y += mv88e6131.o
endif
ifdef CONFIG_NET_DSA_MV88E6352
mv88e6xxx_drv-y += mv88e6352.o
endif
ifdef CONFIG_NET_DSA_MV88E6171
mv88e6xxx_drv-y += mv88e6171.o
endif
+4 −1
Original line number Diff line number Diff line
@@ -69,8 +69,11 @@ static char *mv88e6060_probe(struct device *host_dev, int sw_addr)

	ret = mdiobus_read(bus, sw_addr + REG_PORT(0), 0x03);
	if (ret >= 0) {
		ret &= 0xfff0;
		if (ret == 0x0600)
			return "Marvell 88E6060 (A0)";
		if (ret == 0x0601 || ret == 0x0602)
			return "Marvell 88E6060 (B0)";
		if ((ret & 0xfff0) == 0x0600)
			return "Marvell 88E6060";
	}

Loading