Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
+1
-1
@@ -20,7 +20,7 @@ opkg_package_files = $(wildcard \
|
|||||||
|
|
||||||
apk_package_files = $(wildcard \
|
apk_package_files = $(wildcard \
|
||||||
$(foreach dir,$(PACKAGE_SUBDIRS), \
|
$(foreach dir,$(PACKAGE_SUBDIRS), \
|
||||||
$(foreach pkg,$(1), $(dir)/$(pkg)-*.apk)))
|
$(foreach pkg,$(1), $(dir)/$(pkg)*.apk)))
|
||||||
|
|
||||||
# 1: package name
|
# 1: package name
|
||||||
define FeedPackageDir
|
define FeedPackageDir
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ include $(TOPDIR)/rules.mk
|
|||||||
|
|
||||||
PKG_NAME:=rtl826x-firmware
|
PKG_NAME:=rtl826x-firmware
|
||||||
PKG_SOURCE_DATE:=2026-01-24
|
PKG_SOURCE_DATE:=2026-01-24
|
||||||
PKG_RELEASE:=2
|
PKG_RELEASE:=3
|
||||||
|
|
||||||
PKG_SOURCE_URL:=https://github.com/balika011/realtek_phy_firmware
|
PKG_SOURCE_URL:=https://github.com/balika011/realtek_phy_firmware
|
||||||
PKG_SOURCE_VERSION:=0cd4abe2b0bf197f75c27088f86a74c7ddb103b4
|
PKG_SOURCE_VERSION:=0cd4abe2b0bf197f75c27088f86a74c7ddb103b4
|
||||||
@@ -23,30 +23,31 @@ define Build/Compile
|
|||||||
)
|
)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/rtl8261n-firmware
|
define Package/rtl826x-firmware/Default
|
||||||
SECTION:=firmware
|
SECTION:=firmware
|
||||||
CATEGORY:=Firmware
|
CATEGORY:=Firmware
|
||||||
TITLE:=Realtek RTL8251L/RTL8261BE/RTL8261N firmware
|
DEPENDS:=+kmod-phy-realtek
|
||||||
VERSION:=20221115
|
|
||||||
PKGARCH:=all
|
PKGARCH:=all
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/rtl8261n-firmware
|
||||||
|
$(call Package/rtl826x-firmware/Default)
|
||||||
|
TITLE:=Realtek RTL8251L/RTL8261BE/RTL8261N firmware
|
||||||
|
VERSION:=20221115
|
||||||
|
endef
|
||||||
|
|
||||||
define Package/rtl8261n-lp-firmware
|
define Package/rtl8261n-lp-firmware
|
||||||
SECTION:=firmware
|
$(call Package/rtl826x-firmware/Default)
|
||||||
CATEGORY:=Firmware
|
|
||||||
TITLE:=Realtek RTL8251L/RTL8261BE/RTL8261N low-power firmware
|
TITLE:=Realtek RTL8251L/RTL8261BE/RTL8261N low-power firmware
|
||||||
VERSION:=20240729
|
VERSION:=20240729
|
||||||
PROVIDES:=rtl8261n-firmware
|
PROVIDES:=rtl8261n-firmware
|
||||||
CONFLICTS:=rtl8261n-firmware
|
CONFLICTS:=rtl8261n-firmware
|
||||||
PKGARCH:=all
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/rtl8264b-firmware
|
define Package/rtl8264b-firmware
|
||||||
SECTION:=firmware
|
$(call Package/rtl826x-firmware/Default)
|
||||||
CATEGORY:=Firmware
|
|
||||||
TITLE:=Realtek RTL8254B/RTL8264/RTL8264B firmware
|
TITLE:=Realtek RTL8254B/RTL8264/RTL8264B firmware
|
||||||
VERSION:=20221215
|
VERSION:=20221215
|
||||||
PKGARCH:=all
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/rtl8261n-firmware/install
|
define Package/rtl8261n-firmware/install
|
||||||
|
|||||||
@@ -344,6 +344,9 @@ function hwmodelist(name) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function assoclist(dev) {
|
export function assoclist(dev) {
|
||||||
|
if (!ifaces[dev])
|
||||||
|
return {};
|
||||||
|
|
||||||
let stations = ifaces[dev].assoclist;
|
let stations = ifaces[dev].assoclist;
|
||||||
let ret = {};
|
let ret = {};
|
||||||
|
|
||||||
@@ -574,23 +577,24 @@ export function scan(dev) {
|
|||||||
scan_ssids: [ '' ],
|
scan_ssids: [ '' ],
|
||||||
};
|
};
|
||||||
|
|
||||||
let res = nl80211.request(nl80211.const.NL80211_CMD_TRIGGER_SCAN, 0, params);
|
nl80211.request(nl80211.const.NL80211_CMD_TRIGGER_SCAN, 0, params);
|
||||||
if (res === false) {
|
let err = nl80211.error();
|
||||||
printf("Unable to trigger scan: " + nl80211.error() + "\n");
|
if (err) {
|
||||||
exit(1);
|
warn("Unable to trigger scan on " + dev + ": " + err + "\n");
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
res = nl80211.waitfor([
|
let res = nl80211.waitfor([
|
||||||
nl80211.const.NL80211_CMD_NEW_SCAN_RESULTS,
|
nl80211.const.NL80211_CMD_NEW_SCAN_RESULTS,
|
||||||
nl80211.const.NL80211_CMD_SCAN_ABORTED
|
nl80211.const.NL80211_CMD_SCAN_ABORTED
|
||||||
], 5000);
|
], 5000);
|
||||||
|
|
||||||
if (!res) {
|
if (!res) {
|
||||||
printf("Netlink error while awaiting scan results: " + nl80211.error() + "\n");
|
warn("Netlink error while awaiting scan results on " + dev + ": " + nl80211.error() + "\n");
|
||||||
exit(1);
|
return null;
|
||||||
} else if (res.cmd == nl80211.const.NL80211_CMD_SCAN_ABORTED) {
|
} else if (res.cmd == nl80211.const.NL80211_CMD_SCAN_ABORTED) {
|
||||||
printf("Scan aborted by kernel\n");
|
warn("Scan aborted by kernel on " + dev + "\n");
|
||||||
exit(1);
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
let scan = nl80211.request(nl80211.const.NL80211_CMD_GET_SCAN, nl80211.const.NLM_F_DUMP, { dev });
|
let scan = nl80211.request(nl80211.const.NL80211_CMD_GET_SCAN, nl80211.const.NLM_F_DUMP, { dev });
|
||||||
|
|||||||
@@ -9,9 +9,9 @@ PKG_RELEASE:=1
|
|||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/uhttpd.git
|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/uhttpd.git
|
||||||
PKG_SOURCE_DATE:=2026-05-20
|
PKG_SOURCE_DATE:=2026-05-21
|
||||||
PKG_SOURCE_VERSION:=6ab9abb56bcb28684f382f7a94c170fad02348ea
|
PKG_SOURCE_VERSION:=1b624f8f814ed568608d756512892416e0431d77
|
||||||
PKG_MIRROR_HASH:=5edf4161ae48fd38db530f12091821d445d7346e72c69b76097f2f3e07e53a65
|
PKG_MIRROR_HASH:=7fb56c4aa2e67a8d6d90e0cbb91f8108a363d0242bb62a8880c41ad4c10ff5ff
|
||||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||||
PKG_LICENSE:=ISC
|
PKG_LICENSE:=ISC
|
||||||
|
|
||||||
|
|||||||
@@ -12,9 +12,9 @@ PKG_RELEASE:=1
|
|||||||
|
|
||||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/mdnsd.git
|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/mdnsd.git
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_DATE:=2026-02-06
|
PKG_SOURCE_DATE:=2026-05-22
|
||||||
PKG_SOURCE_VERSION:=a52cdb354d13c179150d2ba26f9f8a51d418b43d
|
PKG_SOURCE_VERSION:=bd7599d021571e785bd32a75469e7148eb1772e3
|
||||||
PKG_MIRROR_HASH:=64d6b454aefd208881a130ec0d503e690375565ed3de0171a8c70f5d1a4a25bf
|
PKG_MIRROR_HASH:=0e1942f8aacb730fa7a32642dbf812ed24f4929fe532039d48ace3cba46c040c
|
||||||
|
|
||||||
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
|
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
|
||||||
PKG_LICENSE:=LGPL-2.1
|
PKG_LICENSE:=LGPL-2.1
|
||||||
|
|||||||
@@ -10,9 +10,9 @@ include $(TOPDIR)/rules.mk
|
|||||||
PKG_NAME:=unetd
|
PKG_NAME:=unetd
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/unetd.git
|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/unetd.git
|
||||||
PKG_SOURCE_DATE:=2026-02-15
|
PKG_SOURCE_DATE:=2026-05-22
|
||||||
PKG_SOURCE_VERSION:=52e504192ea746632e99abd75f07438c0237ff1a
|
PKG_SOURCE_VERSION:=090abf9a55211cc076d22d2a9d3699ee1374850c
|
||||||
PKG_MIRROR_HASH:=a0a2d2aefb6789795e048e15b762bffba8303c2ca6a32b34337d5034faac5c4f
|
PKG_MIRROR_HASH:=60516c3104ad5fd0ed0811bf835df62f385cd1d05ed45c2aa2d0639285fdabb3
|
||||||
|
|
||||||
PKG_LICENSE:=GPL-2.0
|
PKG_LICENSE:=GPL-2.0
|
||||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||||
|
|||||||
@@ -12,9 +12,9 @@ PKG_RELEASE:=1
|
|||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/fstools.git
|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/fstools.git
|
||||||
PKG_MIRROR_HASH:=2e5cd45a2324478408abd651dc966abac9b731281447e60e948c0c0cf5217945
|
PKG_MIRROR_HASH:=c7c846ce6427d186f9f52562eb5951a27e209b77dac40fafd2b11dc104ae1cf5
|
||||||
PKG_SOURCE_DATE:=2026-02-15
|
PKG_SOURCE_DATE:=2026-03-17
|
||||||
PKG_SOURCE_VERSION:=8d377aa627be1ae538f8cdeb3295c0c39b9b1d90
|
PKG_SOURCE_VERSION:=e600d842ce81b776dc8e2c7aaf39bb923e446c45
|
||||||
CMAKE_INSTALL:=1
|
CMAKE_INSTALL:=1
|
||||||
|
|
||||||
PKG_LICENSE:=GPL-2.0
|
PKG_LICENSE:=GPL-2.0
|
||||||
|
|||||||
+45
@@ -0,0 +1,45 @@
|
|||||||
|
From 985d4a55e64e43bd86eeb896b81ceba453301989 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lorenzo Bianconi <lorenzo@kernel.org>
|
||||||
|
Date: Wed, 20 May 2026 15:12:02 +0200
|
||||||
|
Subject: [PATCH] net: airoha: Disable GDM2 forwarding before configuring GDM2
|
||||||
|
loopback
|
||||||
|
|
||||||
|
Hw design requires to disable GDM2 forwarding before configuring GDM2
|
||||||
|
loopback in airoha_set_gdm2_loopback routine.
|
||||||
|
|
||||||
|
Fixes: 9cd451d414f6e ("net: airoha: Add loopback support for GDM2")
|
||||||
|
Tested-by: Madhur Agrawal <madhur.agrawal@airoha.com>
|
||||||
|
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
|
||||||
|
Link: https://patch.msgid.link/20260520-airoha-disable-gdm2-fwd-v1-1-1eeea5dffc2f@kernel.org
|
||||||
|
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||||
|
---
|
||||||
|
drivers/net/ethernet/airoha/airoha_eth.c | 10 ++++++----
|
||||||
|
1 file changed, 6 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
--- a/drivers/net/ethernet/airoha/airoha_eth.c
|
||||||
|
+++ b/drivers/net/ethernet/airoha/airoha_eth.c
|
||||||
|
@@ -1790,11 +1790,8 @@ static int airoha_set_gdm2_loopback(stru
|
||||||
|
u32 val, pse_port, chan;
|
||||||
|
int i, src_port;
|
||||||
|
|
||||||
|
- /* Forward the traffic to the proper GDM port */
|
||||||
|
- pse_port = port->id == AIROHA_GDM3_IDX ? FE_PSE_PORT_GDM3
|
||||||
|
- : FE_PSE_PORT_GDM4;
|
||||||
|
airoha_set_gdm_port_fwd_cfg(eth, REG_GDM_FWD_CFG(AIROHA_GDM2_IDX),
|
||||||
|
- pse_port);
|
||||||
|
+ FE_PSE_PORT_DROP);
|
||||||
|
airoha_fe_clear(eth, REG_GDM_FWD_CFG(AIROHA_GDM2_IDX),
|
||||||
|
GDM_STRIP_CRC_MASK);
|
||||||
|
|
||||||
|
@@ -1812,6 +1809,11 @@ static int airoha_set_gdm2_loopback(stru
|
||||||
|
GDM_SHORT_LEN_MASK | GDM_LONG_LEN_MASK,
|
||||||
|
FIELD_PREP(GDM_SHORT_LEN_MASK, 60) |
|
||||||
|
FIELD_PREP(GDM_LONG_LEN_MASK, AIROHA_MAX_MTU));
|
||||||
|
+ /* Forward the traffic to the proper GDM port */
|
||||||
|
+ pse_port = port->id == AIROHA_GDM3_IDX ? FE_PSE_PORT_GDM3
|
||||||
|
+ : FE_PSE_PORT_GDM4;
|
||||||
|
+ airoha_set_gdm_port_fwd_cfg(eth, REG_GDM_FWD_CFG(AIROHA_GDM2_IDX),
|
||||||
|
+ pse_port);
|
||||||
|
|
||||||
|
/* Disable VIP and IFC for GDM2 */
|
||||||
|
airoha_fe_clear(eth, REG_FE_VIP_PORT_EN, BIT(AIROHA_GDM2_IDX));
|
||||||
@@ -15,7 +15,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/airoha/airoha_eth.c
|
--- a/drivers/net/ethernet/airoha/airoha_eth.c
|
||||||
+++ b/drivers/net/ethernet/airoha/airoha_eth.c
|
+++ b/drivers/net/ethernet/airoha/airoha_eth.c
|
||||||
@@ -3194,7 +3194,6 @@ static void airoha_remove(struct platfor
|
@@ -3196,7 +3196,6 @@ static void airoha_remove(struct platfor
|
||||||
}
|
}
|
||||||
|
|
||||||
static const char * const en7581_xsi_rsts_names[] = {
|
static const char * const en7581_xsi_rsts_names[] = {
|
||||||
@@ -23,7 +23,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
"hsi0-mac",
|
"hsi0-mac",
|
||||||
"hsi1-mac",
|
"hsi1-mac",
|
||||||
"hsi-mac",
|
"hsi-mac",
|
||||||
@@ -3248,7 +3247,6 @@ static u32 airoha_en7581_get_vip_port(st
|
@@ -3250,7 +3249,6 @@ static u32 airoha_en7581_get_vip_port(st
|
||||||
}
|
}
|
||||||
|
|
||||||
static const char * const an7583_xsi_rsts_names[] = {
|
static const char * const an7583_xsi_rsts_names[] = {
|
||||||
|
|||||||
+5
-5
@@ -79,7 +79,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2914,6 +2936,11 @@ static const struct ethtool_ops airoha_e
|
@@ -2916,6 +2938,11 @@ static const struct ethtool_ops airoha_e
|
||||||
.get_link = ethtool_op_get_link,
|
.get_link = ethtool_op_get_link,
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -91,7 +91,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
static int airoha_metadata_dst_alloc(struct airoha_gdm_port *port)
|
static int airoha_metadata_dst_alloc(struct airoha_gdm_port *port)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
@@ -2958,6 +2985,119 @@ bool airoha_is_valid_gdm_port(struct air
|
@@ -2960,6 +2987,119 @@ bool airoha_is_valid_gdm_port(struct air
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -211,7 +211,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
static int airoha_alloc_gdm_port(struct airoha_eth *eth,
|
static int airoha_alloc_gdm_port(struct airoha_eth *eth,
|
||||||
struct device_node *np)
|
struct device_node *np)
|
||||||
{
|
{
|
||||||
@@ -3031,6 +3171,12 @@ static int airoha_alloc_gdm_port(struct
|
@@ -3033,6 +3173,12 @@ static int airoha_alloc_gdm_port(struct
|
||||||
port->nbq = id == AIROHA_GDM3_IDX && airoha_is_7581(eth) ? 4 : 0;
|
port->nbq = id == AIROHA_GDM3_IDX && airoha_is_7581(eth) ? 4 : 0;
|
||||||
eth->ports[p] = port;
|
eth->ports[p] = port;
|
||||||
|
|
||||||
@@ -224,7 +224,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
return airoha_metadata_dst_alloc(port);
|
return airoha_metadata_dst_alloc(port);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3158,8 +3304,11 @@ error_napi_stop:
|
@@ -3160,8 +3306,11 @@ error_napi_stop:
|
||||||
if (!port)
|
if (!port)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@@ -237,7 +237,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
airoha_metadata_dst_free(port);
|
airoha_metadata_dst_free(port);
|
||||||
}
|
}
|
||||||
airoha_hw_cleanup(eth);
|
airoha_hw_cleanup(eth);
|
||||||
@@ -3184,6 +3333,8 @@ static void airoha_remove(struct platfor
|
@@ -3186,6 +3335,8 @@ static void airoha_remove(struct platfor
|
||||||
if (!port)
|
if (!port)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|||||||
+5
-5
@@ -57,7 +57,7 @@ Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -2988,6 +2994,7 @@ bool airoha_is_valid_gdm_port(struct air
|
@@ -2990,6 +2996,7 @@ bool airoha_is_valid_gdm_port(struct air
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
|
|||||||
static void airoha_mac_link_up(struct phylink_config *config, struct phy_device *phy,
|
static void airoha_mac_link_up(struct phylink_config *config, struct phy_device *phy,
|
||||||
unsigned int mode, phy_interface_t interface,
|
unsigned int mode, phy_interface_t interface,
|
||||||
int speed, int duplex, bool tx_pause, bool rx_pause)
|
int speed, int duplex, bool tx_pause, bool rx_pause)
|
||||||
@@ -3100,6 +3107,7 @@ static int airoha_setup_phylink(struct n
|
@@ -3102,6 +3109,7 @@ static int airoha_setup_phylink(struct n
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@@ -73,7 +73,7 @@ Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
|
|||||||
|
|
||||||
static int airoha_alloc_gdm_port(struct airoha_eth *eth,
|
static int airoha_alloc_gdm_port(struct airoha_eth *eth,
|
||||||
struct device_node *np)
|
struct device_node *np)
|
||||||
@@ -3174,11 +3182,13 @@ static int airoha_alloc_gdm_port(struct
|
@@ -3176,11 +3184,13 @@ static int airoha_alloc_gdm_port(struct
|
||||||
port->nbq = id == AIROHA_GDM3_IDX && airoha_is_7581(eth) ? 4 : 0;
|
port->nbq = id == AIROHA_GDM3_IDX && airoha_is_7581(eth) ? 4 : 0;
|
||||||
eth->ports[p] = port;
|
eth->ports[p] = port;
|
||||||
|
|
||||||
@@ -87,7 +87,7 @@ Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
|
|||||||
|
|
||||||
return airoha_metadata_dst_alloc(port);
|
return airoha_metadata_dst_alloc(port);
|
||||||
}
|
}
|
||||||
@@ -3308,8 +3318,10 @@ error_napi_stop:
|
@@ -3310,8 +3320,10 @@ error_napi_stop:
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (port->dev->reg_state == NETREG_REGISTERED) {
|
if (port->dev->reg_state == NETREG_REGISTERED) {
|
||||||
@@ -98,7 +98,7 @@ Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
|
|||||||
unregister_netdev(port->dev);
|
unregister_netdev(port->dev);
|
||||||
}
|
}
|
||||||
airoha_metadata_dst_free(port);
|
airoha_metadata_dst_free(port);
|
||||||
@@ -3336,8 +3348,10 @@ static void airoha_remove(struct platfor
|
@@ -3338,8 +3350,10 @@ static void airoha_remove(struct platfor
|
||||||
if (!port)
|
if (!port)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|||||||
@@ -212,7 +212,7 @@ Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
|
|||||||
q->ndesc = ndesc;
|
q->ndesc = ndesc;
|
||||||
netif_napi_add(eth->napi_dev, &q->napi, airoha_qdma_rx_napi_poll);
|
netif_napi_add(eth->napi_dev, &q->napi, airoha_qdma_rx_napi_poll);
|
||||||
|
|
||||||
@@ -2032,6 +2151,64 @@ int airoha_get_fe_port(struct airoha_gdm
|
@@ -2034,6 +2153,64 @@ int airoha_get_fe_port(struct airoha_gdm
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -277,7 +277,7 @@ Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
|
|||||||
static netdev_tx_t airoha_dev_xmit(struct sk_buff *skb,
|
static netdev_tx_t airoha_dev_xmit(struct sk_buff *skb,
|
||||||
struct net_device *dev)
|
struct net_device *dev)
|
||||||
{
|
{
|
||||||
@@ -2931,6 +3108,7 @@ static const struct net_device_ops airoh
|
@@ -2933,6 +3110,7 @@ static const struct net_device_ops airoh
|
||||||
.ndo_stop = airoha_dev_stop,
|
.ndo_stop = airoha_dev_stop,
|
||||||
.ndo_change_mtu = airoha_dev_change_mtu,
|
.ndo_change_mtu = airoha_dev_change_mtu,
|
||||||
.ndo_select_queue = airoha_dev_select_queue,
|
.ndo_select_queue = airoha_dev_select_queue,
|
||||||
@@ -285,7 +285,7 @@ Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
|
|||||||
.ndo_start_xmit = airoha_dev_xmit,
|
.ndo_start_xmit = airoha_dev_xmit,
|
||||||
.ndo_get_stats64 = airoha_dev_get_stats64,
|
.ndo_get_stats64 = airoha_dev_get_stats64,
|
||||||
.ndo_set_mac_address = airoha_dev_set_macaddr,
|
.ndo_set_mac_address = airoha_dev_set_macaddr,
|
||||||
@@ -3148,12 +3326,9 @@ static int airoha_alloc_gdm_port(struct
|
@@ -3150,12 +3328,9 @@ static int airoha_alloc_gdm_port(struct
|
||||||
dev->ethtool_ops = &airoha_ethtool_ops;
|
dev->ethtool_ops = &airoha_ethtool_ops;
|
||||||
dev->max_mtu = AIROHA_MAX_MTU;
|
dev->max_mtu = AIROHA_MAX_MTU;
|
||||||
dev->watchdog_timeo = 5 * HZ;
|
dev->watchdog_timeo = 5 * HZ;
|
||||||
|
|||||||
@@ -252,21 +252,27 @@
|
|||||||
|
|
||||||
serdes0: serdes@0 {
|
serdes0: serdes@0 {
|
||||||
reg = <0>;
|
reg = <0>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes1: serdes@1 {
|
serdes1: serdes@1 {
|
||||||
reg = <1>;
|
reg = <1>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes2: serdes@2 {
|
serdes2: serdes@2 {
|
||||||
reg = <2>;
|
reg = <2>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes3: serdes@3 {
|
serdes3: serdes@3 {
|
||||||
reg = <3>;
|
reg = <3>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes4: serdes@4 {
|
serdes4: serdes@4 {
|
||||||
reg = <4>;
|
reg = <4>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes5: serdes@5 {
|
serdes5: serdes@5 {
|
||||||
reg = <5>;
|
reg = <5>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -265,45 +265,59 @@
|
|||||||
|
|
||||||
serdes0: serdes@0 {
|
serdes0: serdes@0 {
|
||||||
reg = <0>;
|
reg = <0>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes1: serdes@1 {
|
serdes1: serdes@1 {
|
||||||
reg = <1>;
|
reg = <1>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes2: serdes@2 {
|
serdes2: serdes@2 {
|
||||||
reg = <2>;
|
reg = <2>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes3: serdes@3 {
|
serdes3: serdes@3 {
|
||||||
reg = <3>;
|
reg = <3>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes4: serdes@4 {
|
serdes4: serdes@4 {
|
||||||
reg = <4>;
|
reg = <4>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes5: serdes@5 {
|
serdes5: serdes@5 {
|
||||||
reg = <5>;
|
reg = <5>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes6: serdes@6 {
|
serdes6: serdes@6 {
|
||||||
reg = <6>;
|
reg = <6>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes7: serdes@7 {
|
serdes7: serdes@7 {
|
||||||
reg = <7>;
|
reg = <7>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes8: serdes@8 {
|
serdes8: serdes@8 {
|
||||||
reg = <8>;
|
reg = <8>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes9: serdes@9 {
|
serdes9: serdes@9 {
|
||||||
reg = <9>;
|
reg = <9>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes10: serdes@10 {
|
serdes10: serdes@10 {
|
||||||
reg = <10>;
|
reg = <10>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes11: serdes@11 {
|
serdes11: serdes@11 {
|
||||||
reg = <11>;
|
reg = <11>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes12: serdes@12 {
|
serdes12: serdes@12 {
|
||||||
reg = <12>;
|
reg = <12>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes13: serdes@13 {
|
serdes13: serdes@13 {
|
||||||
reg = <13>;
|
reg = <13>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -252,39 +252,51 @@
|
|||||||
|
|
||||||
serdes0: serdes@0 {
|
serdes0: serdes@0 {
|
||||||
reg = <0>;
|
reg = <0>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes1: serdes@1 {
|
serdes1: serdes@1 {
|
||||||
reg = <1>;
|
reg = <1>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes2: serdes@2 {
|
serdes2: serdes@2 {
|
||||||
reg = <2>;
|
reg = <2>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes3: serdes@3 {
|
serdes3: serdes@3 {
|
||||||
reg = <3>;
|
reg = <3>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes4: serdes@4 {
|
serdes4: serdes@4 {
|
||||||
reg = <4>;
|
reg = <4>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes5: serdes@5 {
|
serdes5: serdes@5 {
|
||||||
reg = <5>;
|
reg = <5>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes6: serdes@6 {
|
serdes6: serdes@6 {
|
||||||
reg = <6>;
|
reg = <6>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes7: serdes@7 {
|
serdes7: serdes@7 {
|
||||||
reg = <7>;
|
reg = <7>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes8: serdes@8 {
|
serdes8: serdes@8 {
|
||||||
reg = <8>;
|
reg = <8>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes9: serdes@9 {
|
serdes9: serdes@9 {
|
||||||
reg = <9>;
|
reg = <9>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes10: serdes@10 {
|
serdes10: serdes@10 {
|
||||||
reg = <10>;
|
reg = <10>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes11: serdes@11 {
|
serdes11: serdes@11 {
|
||||||
reg = <11>;
|
reg = <11>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -284,45 +284,59 @@
|
|||||||
|
|
||||||
serdes0: serdes@0 {
|
serdes0: serdes@0 {
|
||||||
reg = <0>;
|
reg = <0>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes1: serdes@1 {
|
serdes1: serdes@1 {
|
||||||
reg = <1>;
|
reg = <1>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes2: serdes@2 {
|
serdes2: serdes@2 {
|
||||||
reg = <2>;
|
reg = <2>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes3: serdes@3 {
|
serdes3: serdes@3 {
|
||||||
reg = <3>;
|
reg = <3>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes4: serdes@4 {
|
serdes4: serdes@4 {
|
||||||
reg = <4>;
|
reg = <4>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes5: serdes@5 {
|
serdes5: serdes@5 {
|
||||||
reg = <5>;
|
reg = <5>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes6: serdes@6 {
|
serdes6: serdes@6 {
|
||||||
reg = <6>;
|
reg = <6>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes7: serdes@7 {
|
serdes7: serdes@7 {
|
||||||
reg = <7>;
|
reg = <7>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes8: serdes@8 {
|
serdes8: serdes@8 {
|
||||||
reg = <8>;
|
reg = <8>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes9: serdes@9 {
|
serdes9: serdes@9 {
|
||||||
reg = <9>;
|
reg = <9>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes10: serdes@10 {
|
serdes10: serdes@10 {
|
||||||
reg = <10>;
|
reg = <10>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes11: serdes@11 {
|
serdes11: serdes@11 {
|
||||||
reg = <11>;
|
reg = <11>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes12: serdes@12 {
|
serdes12: serdes@12 {
|
||||||
reg = <12>;
|
reg = <12>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
serdes13: serdes@13 {
|
serdes13: serdes@13 {
|
||||||
reg = <13>;
|
reg = <13>;
|
||||||
|
#pcs-cells = <0>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -4107,8 +4107,6 @@ struct phylink_pcs *rtpcs_create(struct device *dev, struct device_node *np, int
|
|||||||
sds = &ctrl->serdes[sds_id];
|
sds = &ctrl->serdes[sds_id];
|
||||||
if (rtpcs_sds_read(sds, 0, 0) < 0)
|
if (rtpcs_sds_read(sds, 0, 0) < 0)
|
||||||
return ERR_PTR(-EINVAL);
|
return ERR_PTR(-EINVAL);
|
||||||
if (sds->num_of_links >= RTPCS_MAX_LINKS_PER_SDS)
|
|
||||||
return ERR_PTR(-ERANGE);
|
|
||||||
|
|
||||||
link = devm_kzalloc(ctrl->dev, sizeof(*link), GFP_KERNEL);
|
link = devm_kzalloc(ctrl->dev, sizeof(*link), GFP_KERNEL);
|
||||||
if (!link) {
|
if (!link) {
|
||||||
@@ -4118,7 +4116,6 @@ struct phylink_pcs *rtpcs_create(struct device *dev, struct device_node *np, int
|
|||||||
|
|
||||||
device_link_add(dev, ctrl->dev, DL_FLAG_AUTOREMOVE_CONSUMER);
|
device_link_add(dev, ctrl->dev, DL_FLAG_AUTOREMOVE_CONSUMER);
|
||||||
|
|
||||||
sds->num_of_links++;
|
|
||||||
link->ctrl = ctrl;
|
link->ctrl = ctrl;
|
||||||
link->port = port;
|
link->port = port;
|
||||||
link->sds = sds;
|
link->sds = sds;
|
||||||
@@ -4166,6 +4163,41 @@ static void rtpcs_sds_put_of_node(void *data)
|
|||||||
of_node_put(sds->of_node);
|
of_node_put(sds->of_node);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void rtpcs_count_links(struct rtpcs_ctrl *ctrl)
|
||||||
|
{
|
||||||
|
struct device_node *consumer __free(device_node) = NULL;
|
||||||
|
struct of_phandle_args args;
|
||||||
|
|
||||||
|
for_each_node_with_property(consumer, "pcs-handle") {
|
||||||
|
int idx = 0;
|
||||||
|
|
||||||
|
if (!of_device_is_available(consumer))
|
||||||
|
continue;
|
||||||
|
|
||||||
|
while (!of_parse_phandle_with_args(consumer, "pcs-handle",
|
||||||
|
"#pcs-cells", idx++, &args)) {
|
||||||
|
struct device_node *arg_np __free(device_node) = args.np;
|
||||||
|
|
||||||
|
for (int s = 0; s < ctrl->cfg->serdes_count; s++) {
|
||||||
|
struct rtpcs_serdes *sds = &ctrl->serdes[s];
|
||||||
|
|
||||||
|
if (arg_np != sds->of_node)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (sds->num_of_links >= RTPCS_MAX_LINKS_PER_SDS) {
|
||||||
|
dev_warn(ctrl->dev,
|
||||||
|
"%pOF: pcs-handle to sds%u exceeds max %u, clamping\n",
|
||||||
|
consumer, sds->id, RTPCS_MAX_LINKS_PER_SDS);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
sds->num_of_links++;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static int rtpcs_probe(struct platform_device *pdev)
|
static int rtpcs_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
struct device_node *np = pdev->dev.of_node;
|
struct device_node *np = pdev->dev.of_node;
|
||||||
@@ -4220,6 +4252,8 @@ static int rtpcs_probe(struct platform_device *pdev)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rtpcs_count_links(ctrl);
|
||||||
|
|
||||||
if (ctrl->cfg->init) {
|
if (ctrl->cfg->init) {
|
||||||
ret = ctrl->cfg->init(ctrl);
|
ret = ctrl->cfg->init(ctrl);
|
||||||
if (ret)
|
if (ret)
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ define Device/9tripod_x3568-v4
|
|||||||
DEVICE_DTS := rk3568-9tripod-x3568-v4
|
DEVICE_DTS := rk3568-9tripod-x3568-v4
|
||||||
SUPPORTED_DEVICES := ninetripod,x3568-v4
|
SUPPORTED_DEVICES := ninetripod,x3568-v4
|
||||||
DEVICE_PACKAGES := blkdiscard block-mount kmod-ata-ahci-dwc kmod-nvme kmod-hwmon-pwmfan \
|
DEVICE_PACKAGES := blkdiscard block-mount kmod-ata-ahci-dwc kmod-nvme kmod-hwmon-pwmfan \
|
||||||
kmod-input-adc-keys kmod-saradc-rockchip kmod-rtc-pcf8563 kmod-brcmfmac wpad-openssl \
|
kmod-input-adc-keys kmod-rtc-pcf8563 kmod-brcmfmac wpad-openssl \
|
||||||
brcmfmac-firmware-43752-sdio brcmfmac-nvram-43752-sdio
|
brcmfmac-firmware-43752-sdio brcmfmac-nvram-43752-sdio
|
||||||
UBOOT_DEVICE_NAME := 9tripod-x3568-v4-rk3568
|
UBOOT_DEVICE_NAME := 9tripod-x3568-v4-rk3568
|
||||||
endef
|
endef
|
||||||
@@ -343,7 +343,7 @@ define Device/nlnet_xiguapi-v3
|
|||||||
$(Device/rk3568)
|
$(Device/rk3568)
|
||||||
DEVICE_VENDOR := NLnet
|
DEVICE_VENDOR := NLnet
|
||||||
DEVICE_MODEL := XiGuaPi V3
|
DEVICE_MODEL := XiGuaPi V3
|
||||||
DEVICE_PACKAGES := kmod-hwmon-pwmfan kmod-input-adc-keys kmod-saradc-rockchip
|
DEVICE_PACKAGES := kmod-hwmon-pwmfan kmod-input-adc-keys
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += nlnet_xiguapi-v3
|
TARGET_DEVICES += nlnet_xiguapi-v3
|
||||||
|
|
||||||
|
|||||||
@@ -1,59 +0,0 @@
|
|||||||
CONFIG_ARCH_32BIT_OFF_T=y
|
|
||||||
CONFIG_ARCH_HAS_BINFMT_FLAT=y
|
|
||||||
CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y
|
|
||||||
CONFIG_ARCH_MULTIPLATFORM=y
|
|
||||||
CONFIG_ARCH_MULTI_CPU_AUTO=y
|
|
||||||
# CONFIG_ARCH_MULTI_V4 is not set
|
|
||||||
# CONFIG_ARCH_MULTI_V4T is not set
|
|
||||||
CONFIG_ARCH_MULTI_V4_V5=y
|
|
||||||
CONFIG_ARCH_MULTI_V5=y
|
|
||||||
CONFIG_ARCH_NR_GPIO=416
|
|
||||||
CONFIG_ARCH_OPTIONAL_KERNEL_RWX=y
|
|
||||||
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
|
|
||||||
CONFIG_ARCH_SPARSEMEM_ENABLE=y
|
|
||||||
CONFIG_ARCH_SUNXI=y
|
|
||||||
# CONFIG_ARM_LPAE is not set
|
|
||||||
# CONFIG_ARM_PMUV3 is not set
|
|
||||||
# CONFIG_ARM_SMMU is not set
|
|
||||||
CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK=y
|
|
||||||
CONFIG_COMPAT_32BIT_TIME=y
|
|
||||||
# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
|
|
||||||
# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
|
|
||||||
# CONFIG_MACH_SUN4I is not set
|
|
||||||
# CONFIG_MACH_SUN5I is not set
|
|
||||||
# CONFIG_MACH_SUN6I is not set
|
|
||||||
# CONFIG_MACH_SUN7I is not set
|
|
||||||
# CONFIG_MACH_SUN8I is not set
|
|
||||||
# CONFIG_MACH_SUN9I is not set
|
|
||||||
CONFIG_MACH_SUNIV=y
|
|
||||||
CONFIG_MDIO_BUS_MUX=y
|
|
||||||
CONFIG_MTD_SPI_NAND=y
|
|
||||||
CONFIG_MUSB_PIO_ONLY=y
|
|
||||||
CONFIG_NOP_USB_XCEIV=y
|
|
||||||
# CONFIG_PHY_SUN9I_USB is not set
|
|
||||||
# CONFIG_PINCTRL_SUN4I_A10 is not set
|
|
||||||
# CONFIG_PINCTRL_SUN50I_A64 is not set
|
|
||||||
# CONFIG_PINCTRL_SUN50I_A64_R is not set
|
|
||||||
# CONFIG_PINCTRL_SUN50I_H5 is not set
|
|
||||||
# CONFIG_PINCTRL_SUN50I_H6 is not set
|
|
||||||
# CONFIG_PINCTRL_SUN50I_H6_R is not set
|
|
||||||
# CONFIG_PINCTRL_SUN5I is not set
|
|
||||||
# CONFIG_PINCTRL_SUN6I_A31 is not set
|
|
||||||
# CONFIG_PINCTRL_SUN6I_A31_R is not set
|
|
||||||
# CONFIG_PINCTRL_SUN8I_A23 is not set
|
|
||||||
# CONFIG_PINCTRL_SUN8I_A23_R is not set
|
|
||||||
# CONFIG_PINCTRL_SUN8I_A33 is not set
|
|
||||||
# CONFIG_PINCTRL_SUN8I_A83T is not set
|
|
||||||
# CONFIG_PINCTRL_SUN8I_A83T_R is not set
|
|
||||||
# CONFIG_PINCTRL_SUN8I_H3 is not set
|
|
||||||
# CONFIG_PINCTRL_SUN8I_H3_R is not set
|
|
||||||
# CONFIG_PINCTRL_SUN8I_V3S is not set
|
|
||||||
# CONFIG_PINCTRL_SUN9I_A80 is not set
|
|
||||||
# CONFIG_PINCTRL_SUN9I_A80_R is not set
|
|
||||||
CONFIG_PINCTRL_SUNIV_F1C100S=y
|
|
||||||
CONFIG_PINCTRL_SUNXI=y
|
|
||||||
CONFIG_SUNIV_F1C100S_CCU=y
|
|
||||||
CONFIG_UNWINDER_ARM=y
|
|
||||||
CONFIG_USB_MUSB_DUAL_ROLE=y
|
|
||||||
CONFIG_USB_MUSB_HDRC=y
|
|
||||||
CONFIG_USB_MUSB_SUNXI=y
|
|
||||||
@@ -26,6 +26,7 @@ CONFIG_COMPAT_32BIT_TIME=y
|
|||||||
# CONFIG_MACH_SUN8I is not set
|
# CONFIG_MACH_SUN8I is not set
|
||||||
# CONFIG_MACH_SUN9I is not set
|
# CONFIG_MACH_SUN9I is not set
|
||||||
CONFIG_MACH_SUNIV=y
|
CONFIG_MACH_SUNIV=y
|
||||||
|
# CONFIG_MAXIO_PHY is not set
|
||||||
CONFIG_MDIO_BUS_MUX=y
|
CONFIG_MDIO_BUS_MUX=y
|
||||||
CONFIG_MTD_SPI_NAND=y
|
CONFIG_MTD_SPI_NAND=y
|
||||||
CONFIG_MUSB_PIO_ONLY=y
|
CONFIG_MUSB_PIO_ONLY=y
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ CONFIG_GRO_CELLS=y
|
|||||||
# CONFIG_IOMMU_IO_PGTABLE_LPAE is not set
|
# CONFIG_IOMMU_IO_PGTABLE_LPAE is not set
|
||||||
# CONFIG_MACH_SUN4I is not set
|
# CONFIG_MACH_SUN4I is not set
|
||||||
# CONFIG_MACH_SUN5I is not set
|
# CONFIG_MACH_SUN5I is not set
|
||||||
|
# CONFIG_MAXIO_PHY is not set
|
||||||
CONFIG_MDIO_BUS_MUX=y
|
CONFIG_MDIO_BUS_MUX=y
|
||||||
CONFIG_MICREL_PHY=y
|
CONFIG_MICREL_PHY=y
|
||||||
CONFIG_MOTORCOMM_PHY=y
|
CONFIG_MOTORCOMM_PHY=y
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
|
|||||||
# CONFIG_MACH_SUN7I is not set
|
# CONFIG_MACH_SUN7I is not set
|
||||||
# CONFIG_MACH_SUN8I is not set
|
# CONFIG_MACH_SUN8I is not set
|
||||||
# CONFIG_MACH_SUN9I is not set
|
# CONFIG_MACH_SUN9I is not set
|
||||||
|
# CONFIG_MAXIO_PHY is not set
|
||||||
CONFIG_PGTABLE_LEVELS=2
|
CONFIG_PGTABLE_LEVELS=2
|
||||||
# CONFIG_PHY_SUN9I_USB is not set
|
# CONFIG_PHY_SUN9I_USB is not set
|
||||||
CONFIG_PINCTRL_AXP209=y
|
CONFIG_PINCTRL_AXP209=y
|
||||||
|
|||||||
Reference in New Issue
Block a user