mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-21 08:19:28 +00:00
net: dsa: add support for ksz9897 ethernet switch
ksz9477 is superset of ksz9xx series, driver just works out of the box for ksz9897 chip with this patch. Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7797b93b75
commit
4531681837
3 changed files with 13 additions and 1 deletions
|
@ -4,7 +4,9 @@ Microchip KSZ Series Ethernet switches
|
||||||
Required properties:
|
Required properties:
|
||||||
|
|
||||||
- compatible: For external switch chips, compatible string must be exactly one
|
- compatible: For external switch chips, compatible string must be exactly one
|
||||||
of: "microchip,ksz9477"
|
of the following:
|
||||||
|
- "microchip,ksz9477"
|
||||||
|
- "microchip,ksz9897"
|
||||||
|
|
||||||
See Documentation/devicetree/bindings/net/dsa/dsa.txt for a list of additional
|
See Documentation/devicetree/bindings/net/dsa/dsa.txt for a list of additional
|
||||||
required and optional properties.
|
required and optional properties.
|
||||||
|
|
|
@ -1102,6 +1102,15 @@ static const struct ksz_chip_data ksz_switch_chips[] = {
|
||||||
.cpu_ports = 0x7F, /* can be configured as cpu port */
|
.cpu_ports = 0x7F, /* can be configured as cpu port */
|
||||||
.port_cnt = 7, /* total physical port count */
|
.port_cnt = 7, /* total physical port count */
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
.chip_id = 0x00989700,
|
||||||
|
.dev_name = "KSZ9897",
|
||||||
|
.num_vlans = 4096,
|
||||||
|
.num_alus = 4096,
|
||||||
|
.num_statics = 16,
|
||||||
|
.cpu_ports = 0x7F, /* can be configured as cpu port */
|
||||||
|
.port_cnt = 7, /* total physical port count */
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static int ksz_switch_init(struct ksz_device *dev)
|
static int ksz_switch_init(struct ksz_device *dev)
|
||||||
|
|
|
@ -195,6 +195,7 @@ static int ksz_spi_remove(struct spi_device *spi)
|
||||||
|
|
||||||
static const struct of_device_id ksz_dt_ids[] = {
|
static const struct of_device_id ksz_dt_ids[] = {
|
||||||
{ .compatible = "microchip,ksz9477" },
|
{ .compatible = "microchip,ksz9477" },
|
||||||
|
{ .compatible = "microchip,ksz9897" },
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
MODULE_DEVICE_TABLE(of, ksz_dt_ids);
|
MODULE_DEVICE_TABLE(of, ksz_dt_ids);
|
||||||
|
|
Loading…
Reference in a new issue