generic: add driver for the RTL8367R/M switches
SVN-Revision: 29678
This commit is contained in:
parent
87fb92ee03
commit
8b567fb508
8 changed files with 1955 additions and 0 deletions
|
@ -2076,6 +2076,7 @@ CONFIG_RTC_LIB=y
|
|||
# CONFIG_RTL8192SU is not set
|
||||
# CONFIG_RTL8192U is not set
|
||||
# CONFIG_RTL8306_PHY is not set
|
||||
# CONFIG_RTL8367_PHY is not set
|
||||
# CONFIG_RTL8366RB_PHY is not set
|
||||
# CONFIG_RTL8366S_PHY is not set
|
||||
# CONFIG_RTL8366S_PHY_DEBUG_FS is not set
|
||||
|
|
|
@ -2065,6 +2065,7 @@ CONFIG_RTC_LIB=y
|
|||
# CONFIG_RTL8192E is not set
|
||||
# CONFIG_RTL8192U is not set
|
||||
# CONFIG_RTL8306_PHY is not set
|
||||
# CONFIG_RTL8367_PHY is not set
|
||||
# CONFIG_RTL8366RB_PHY is not set
|
||||
# CONFIG_RTL8366S_PHY is not set
|
||||
# CONFIG_RTL8366S_PHY_DEBUG_FS is not set
|
||||
|
|
|
@ -2081,6 +2081,7 @@ CONFIG_RTC_LIB=y
|
|||
# CONFIG_RTL8192E is not set
|
||||
# CONFIG_RTL8192U is not set
|
||||
# CONFIG_RTL8306_PHY is not set
|
||||
# CONFIG_RTL8367_PHY is not set
|
||||
# CONFIG_RTL8366RB_PHY is not set
|
||||
# CONFIG_RTL8366S_PHY is not set
|
||||
# CONFIG_RTL8366S_PHY_DEBUG_FS is not set
|
||||
|
|
1825
target/linux/generic/files/drivers/net/phy/rtl8367.c
Normal file
1825
target/linux/generic/files/drivers/net/phy/rtl8367.c
Normal file
File diff suppressed because it is too large
Load diff
58
target/linux/generic/files/include/linux/rtl8367.h
Normal file
58
target/linux/generic/files/include/linux/rtl8367.h
Normal file
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* Platform data definition for the Realtek RTL8367 ethernet switch driver
|
||||
*
|
||||
* Copyright (C) 2011 Gabor Juhos <juhosg@openwrt.org>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 as published
|
||||
* by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef _RTL8367_H
|
||||
#define _RTL8367_H
|
||||
|
||||
#define RTL8367_DRIVER_NAME "rtl8367"
|
||||
|
||||
enum rtl8367_port_speed {
|
||||
RTL8367_PORT_SPEED_10 = 0,
|
||||
RTL8367_PORT_SPEED_100,
|
||||
RTL8367_PORT_SPEED_1000,
|
||||
};
|
||||
|
||||
struct rtl8367_port_ability {
|
||||
int force_mode;
|
||||
int nway;
|
||||
int txpause;
|
||||
int rxpause;
|
||||
int link;
|
||||
int duplex;
|
||||
enum rtl8367_port_speed speed;
|
||||
};
|
||||
|
||||
enum rtl8367_extif_mode {
|
||||
RTL8367_EXTIF_MODE_DISABLED = 0,
|
||||
RTL8367_EXTIF_MODE_RGMII,
|
||||
RTL8367_EXTIF_MODE_MII_MAC,
|
||||
RTL8367_EXTIF_MODE_MII_PHY,
|
||||
RTL8367_EXTIF_MODE_TMII_MAC,
|
||||
RTL8367_EXTIF_MODE_TMII_PHY,
|
||||
RTL8367_EXTIF_MODE_GMII,
|
||||
RTL8367_EXTIF_MODE_RGMII_33V,
|
||||
};
|
||||
|
||||
struct rtl8367_extif_config {
|
||||
unsigned int txdelay;
|
||||
unsigned int rxdelay;
|
||||
enum rtl8367_extif_mode mode;
|
||||
struct rtl8367_port_ability ability;
|
||||
};
|
||||
|
||||
struct rtl8367_platform_data {
|
||||
unsigned gpio_sda;
|
||||
unsigned gpio_sck;
|
||||
|
||||
struct rtl8367_extif_config *extif0_cfg;
|
||||
struct rtl8367_extif_config *extif1_cfg;
|
||||
};
|
||||
|
||||
#endif /* _RTL8367_H */
|
23
target/linux/generic/patches-2.6.39/727-phy-rtl8367.patch
Normal file
23
target/linux/generic/patches-2.6.39/727-phy-rtl8367.patch
Normal file
|
@ -0,0 +1,23 @@
|
|||
--- a/drivers/net/phy/Kconfig
|
||||
+++ b/drivers/net/phy/Kconfig
|
||||
@@ -175,6 +175,10 @@ config RTL8366RB_PHY
|
||||
tristate "Driver for the Realtek RTL8366RB switch"
|
||||
select SWCONFIG
|
||||
|
||||
+config RTL8367_PHY
|
||||
+ tristate "Driver for the Realtek RTL8367R/M switches"
|
||||
+ select SWCONFIG
|
||||
+
|
||||
config RTL8366S_PHY_DEBUG_FS
|
||||
bool "RTL8366 switch driver DEBUG_FS support"
|
||||
depends on RTL8366S_PHY || RTL8366RB_PHY
|
||||
--- a/drivers/net/phy/Makefile
|
||||
+++ b/drivers/net/phy/Makefile
|
||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_RTL8306_PHY) += rtl8306.o
|
||||
obj-$(CONFIG_RTL8366_SMI) += rtl8366_smi.o
|
||||
obj-$(CONFIG_RTL8366S_PHY) += rtl8366s.o
|
||||
obj-$(CONFIG_RTL8366RB_PHY) += rtl8366rb.o
|
||||
+obj-$(CONFIG_RTL8367_PHY) += rtl8367.o
|
||||
obj-$(CONFIG_LSI_ET1011C_PHY) += et1011c.o
|
||||
obj-$(CONFIG_FIXED_PHY) += fixed.o
|
||||
obj-$(CONFIG_MDIO_BITBANG) += mdio-bitbang.o
|
23
target/linux/generic/patches-3.0/727-phy-rtl8367.patch
Normal file
23
target/linux/generic/patches-3.0/727-phy-rtl8367.patch
Normal file
|
@ -0,0 +1,23 @@
|
|||
--- a/drivers/net/phy/Kconfig
|
||||
+++ b/drivers/net/phy/Kconfig
|
||||
@@ -179,6 +179,10 @@ config RTL8366RB_PHY
|
||||
tristate "Driver for the Realtek RTL8366RB switch"
|
||||
select SWCONFIG
|
||||
|
||||
+config RTL8367_PHY
|
||||
+ tristate "Driver for the Realtek RTL8367R/M switches"
|
||||
+ select SWCONFIG
|
||||
+
|
||||
config RTL8366S_PHY_DEBUG_FS
|
||||
bool "RTL8366 switch driver DEBUG_FS support"
|
||||
depends on RTL8366S_PHY || RTL8366RB_PHY
|
||||
--- a/drivers/net/phy/Makefile
|
||||
+++ b/drivers/net/phy/Makefile
|
||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_RTL8306_PHY) += rtl8306.o
|
||||
obj-$(CONFIG_RTL8366_SMI) += rtl8366_smi.o
|
||||
obj-$(CONFIG_RTL8366S_PHY) += rtl8366s.o
|
||||
obj-$(CONFIG_RTL8366RB_PHY) += rtl8366rb.o
|
||||
+obj-$(CONFIG_RTL8367_PHY) += rtl8367.o
|
||||
obj-$(CONFIG_LSI_ET1011C_PHY) += et1011c.o
|
||||
obj-$(CONFIG_FIXED_PHY) += fixed.o
|
||||
obj-$(CONFIG_MDIO_BITBANG) += mdio-bitbang.o
|
23
target/linux/generic/patches-3.1/727-phy-rtl8367.patch
Normal file
23
target/linux/generic/patches-3.1/727-phy-rtl8367.patch
Normal file
|
@ -0,0 +1,23 @@
|
|||
--- a/drivers/net/phy/Kconfig
|
||||
+++ b/drivers/net/phy/Kconfig
|
||||
@@ -179,6 +179,10 @@ config RTL8366RB_PHY
|
||||
tristate "Driver for the Realtek RTL8366RB switch"
|
||||
select SWCONFIG
|
||||
|
||||
+config RTL8367_PHY
|
||||
+ tristate "Driver for the Realtek RTL8367R/M switches"
|
||||
+ select SWCONFIG
|
||||
+
|
||||
config RTL8366S_PHY_DEBUG_FS
|
||||
bool "RTL8366 switch driver DEBUG_FS support"
|
||||
depends on RTL8366S_PHY || RTL8366RB_PHY
|
||||
--- a/drivers/net/phy/Makefile
|
||||
+++ b/drivers/net/phy/Makefile
|
||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_RTL8306_PHY) += rtl8306.o
|
||||
obj-$(CONFIG_RTL8366_SMI) += rtl8366_smi.o
|
||||
obj-$(CONFIG_RTL8366S_PHY) += rtl8366s.o
|
||||
obj-$(CONFIG_RTL8366RB_PHY) += rtl8366rb.o
|
||||
+obj-$(CONFIG_RTL8367_PHY) += rtl8367.o
|
||||
obj-$(CONFIG_LSI_ET1011C_PHY) += et1011c.o
|
||||
obj-$(CONFIG_FIXED_PHY) += fixed.o
|
||||
obj-$(CONFIG_MDIO_BITBANG) += mdio-bitbang.o
|
Loading…
Reference in a new issue