Merge Official Source

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
Tianling Shen
2026-05-23 17:21:09 +08:00
22 changed files with 185 additions and 111 deletions
+1 -1
View File
@@ -20,7 +20,7 @@ opkg_package_files = $(wildcard \
apk_package_files = $(wildcard \
$(foreach dir,$(PACKAGE_SUBDIRS), \
$(foreach pkg,$(1), $(dir)/$(pkg)-*.apk)))
$(foreach pkg,$(1), $(dir)/$(pkg)*.apk)))
# 1: package name
define FeedPackageDir
+11 -10
View File
@@ -4,7 +4,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=rtl826x-firmware
PKG_SOURCE_DATE:=2026-01-24
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_SOURCE_URL:=https://github.com/balika011/realtek_phy_firmware
PKG_SOURCE_VERSION:=0cd4abe2b0bf197f75c27088f86a74c7ddb103b4
@@ -23,30 +23,31 @@ define Build/Compile
)
endef
define Package/rtl8261n-firmware
define Package/rtl826x-firmware/Default
SECTION:=firmware
CATEGORY:=Firmware
TITLE:=Realtek RTL8251L/RTL8261BE/RTL8261N firmware
VERSION:=20221115
DEPENDS:=+kmod-phy-realtek
PKGARCH:=all
endef
define Package/rtl8261n-firmware
$(call Package/rtl826x-firmware/Default)
TITLE:=Realtek RTL8251L/RTL8261BE/RTL8261N firmware
VERSION:=20221115
endef
define Package/rtl8261n-lp-firmware
SECTION:=firmware
CATEGORY:=Firmware
$(call Package/rtl826x-firmware/Default)
TITLE:=Realtek RTL8251L/RTL8261BE/RTL8261N low-power firmware
VERSION:=20240729
PROVIDES:=rtl8261n-firmware
CONFLICTS:=rtl8261n-firmware
PKGARCH:=all
endef
define Package/rtl8264b-firmware
SECTION:=firmware
CATEGORY:=Firmware
$(call Package/rtl826x-firmware/Default)
TITLE:=Realtek RTL8254B/RTL8264/RTL8264B firmware
VERSION:=20221215
PKGARCH:=all
endef
define Package/rtl8261n-firmware/install
@@ -344,6 +344,9 @@ function hwmodelist(name) {
}
export function assoclist(dev) {
if (!ifaces[dev])
return {};
let stations = ifaces[dev].assoclist;
let ret = {};
@@ -574,23 +577,24 @@ export function scan(dev) {
scan_ssids: [ '' ],
};
let res = nl80211.request(nl80211.const.NL80211_CMD_TRIGGER_SCAN, 0, params);
if (res === false) {
printf("Unable to trigger scan: " + nl80211.error() + "\n");
exit(1);
nl80211.request(nl80211.const.NL80211_CMD_TRIGGER_SCAN, 0, params);
let err = nl80211.error();
if (err) {
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_SCAN_ABORTED
], 5000);
if (!res) {
printf("Netlink error while awaiting scan results: " + nl80211.error() + "\n");
exit(1);
warn("Netlink error while awaiting scan results on " + dev + ": " + nl80211.error() + "\n");
return null;
} else if (res.cmd == nl80211.const.NL80211_CMD_SCAN_ABORTED) {
printf("Scan aborted by kernel\n");
exit(1);
warn("Scan aborted by kernel on " + dev + "\n");
return null;
}
let scan = nl80211.request(nl80211.const.NL80211_CMD_GET_SCAN, nl80211.const.NLM_F_DUMP, { dev });
+3 -3
View File
@@ -9,9 +9,9 @@ PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/uhttpd.git
PKG_SOURCE_DATE:=2026-05-20
PKG_SOURCE_VERSION:=6ab9abb56bcb28684f382f7a94c170fad02348ea
PKG_MIRROR_HASH:=5edf4161ae48fd38db530f12091821d445d7346e72c69b76097f2f3e07e53a65
PKG_SOURCE_DATE:=2026-05-21
PKG_SOURCE_VERSION:=1b624f8f814ed568608d756512892416e0431d77
PKG_MIRROR_HASH:=7fb56c4aa2e67a8d6d90e0cbb91f8108a363d0242bb62a8880c41ad4c10ff5ff
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
PKG_LICENSE:=ISC
+3 -3
View File
@@ -12,9 +12,9 @@ PKG_RELEASE:=1
PKG_SOURCE_URL=$(PROJECT_GIT)/project/mdnsd.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2026-02-06
PKG_SOURCE_VERSION:=a52cdb354d13c179150d2ba26f9f8a51d418b43d
PKG_MIRROR_HASH:=64d6b454aefd208881a130ec0d503e690375565ed3de0171a8c70f5d1a4a25bf
PKG_SOURCE_DATE:=2026-05-22
PKG_SOURCE_VERSION:=bd7599d021571e785bd32a75469e7148eb1772e3
PKG_MIRROR_HASH:=0e1942f8aacb730fa7a32642dbf812ed24f4929fe532039d48ace3cba46c040c
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_LICENSE:=LGPL-2.1
+3 -3
View File
@@ -10,9 +10,9 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=unetd
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/unetd.git
PKG_SOURCE_DATE:=2026-02-15
PKG_SOURCE_VERSION:=52e504192ea746632e99abd75f07438c0237ff1a
PKG_MIRROR_HASH:=a0a2d2aefb6789795e048e15b762bffba8303c2ca6a32b34337d5034faac5c4f
PKG_SOURCE_DATE:=2026-05-22
PKG_SOURCE_VERSION:=090abf9a55211cc076d22d2a9d3699ee1374850c
PKG_MIRROR_HASH:=60516c3104ad5fd0ed0811bf835df62f385cd1d05ed45c2aa2d0639285fdabb3
PKG_LICENSE:=GPL-2.0
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
+3 -3
View File
@@ -12,9 +12,9 @@ PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/fstools.git
PKG_MIRROR_HASH:=2e5cd45a2324478408abd651dc966abac9b731281447e60e948c0c0cf5217945
PKG_SOURCE_DATE:=2026-02-15
PKG_SOURCE_VERSION:=8d377aa627be1ae538f8cdeb3295c0c39b9b1d90
PKG_MIRROR_HASH:=c7c846ce6427d186f9f52562eb5951a27e209b77dac40fafd2b11dc104ae1cf5
PKG_SOURCE_DATE:=2026-03-17
PKG_SOURCE_VERSION:=e600d842ce81b776dc8e2c7aaf39bb923e446c45
CMAKE_INSTALL:=1
PKG_LICENSE:=GPL-2.0
@@ -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
+++ 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[] = {
@@ -23,7 +23,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
"hsi0-mac",
"hsi1-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[] = {
@@ -79,7 +79,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
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,
};
@@ -91,7 +91,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
static int airoha_metadata_dst_alloc(struct airoha_gdm_port *port)
{
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;
}
@@ -211,7 +211,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
static int airoha_alloc_gdm_port(struct airoha_eth *eth,
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;
eth->ports[p] = port;
@@ -224,7 +224,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
return airoha_metadata_dst_alloc(port);
}
@@ -3158,8 +3304,11 @@ error_napi_stop:
@@ -3160,8 +3306,11 @@ error_napi_stop:
if (!port)
continue;
@@ -237,7 +237,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
airoha_metadata_dst_free(port);
}
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)
continue;
@@ -57,7 +57,7 @@ Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
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;
}
@@ -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,
unsigned int mode, phy_interface_t interface,
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;
}
@@ -73,7 +73,7 @@ Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
static int airoha_alloc_gdm_port(struct airoha_eth *eth,
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;
eth->ports[p] = port;
@@ -87,7 +87,7 @@ Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
return airoha_metadata_dst_alloc(port);
}
@@ -3308,8 +3318,10 @@ error_napi_stop:
@@ -3310,8 +3320,10 @@ error_napi_stop:
continue;
if (port->dev->reg_state == NETREG_REGISTERED) {
@@ -98,7 +98,7 @@ Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
unregister_netdev(port->dev);
}
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)
continue;
@@ -212,7 +212,7 @@ Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
q->ndesc = ndesc;
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,
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_change_mtu = airoha_dev_change_mtu,
.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_get_stats64 = airoha_dev_get_stats64,
.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->max_mtu = AIROHA_MAX_MTU;
dev->watchdog_timeo = 5 * HZ;
+6
View File
@@ -252,21 +252,27 @@
serdes0: serdes@0 {
reg = <0>;
#pcs-cells = <0>;
};
serdes1: serdes@1 {
reg = <1>;
#pcs-cells = <0>;
};
serdes2: serdes@2 {
reg = <2>;
#pcs-cells = <0>;
};
serdes3: serdes@3 {
reg = <3>;
#pcs-cells = <0>;
};
serdes4: serdes@4 {
reg = <4>;
#pcs-cells = <0>;
};
serdes5: serdes@5 {
reg = <5>;
#pcs-cells = <0>;
};
};
+14
View File
@@ -265,45 +265,59 @@
serdes0: serdes@0 {
reg = <0>;
#pcs-cells = <0>;
};
serdes1: serdes@1 {
reg = <1>;
#pcs-cells = <0>;
};
serdes2: serdes@2 {
reg = <2>;
#pcs-cells = <0>;
};
serdes3: serdes@3 {
reg = <3>;
#pcs-cells = <0>;
};
serdes4: serdes@4 {
reg = <4>;
#pcs-cells = <0>;
};
serdes5: serdes@5 {
reg = <5>;
#pcs-cells = <0>;
};
serdes6: serdes@6 {
reg = <6>;
#pcs-cells = <0>;
};
serdes7: serdes@7 {
reg = <7>;
#pcs-cells = <0>;
};
serdes8: serdes@8 {
reg = <8>;
#pcs-cells = <0>;
};
serdes9: serdes@9 {
reg = <9>;
#pcs-cells = <0>;
};
serdes10: serdes@10 {
reg = <10>;
#pcs-cells = <0>;
};
serdes11: serdes@11 {
reg = <11>;
#pcs-cells = <0>;
};
serdes12: serdes@12 {
reg = <12>;
#pcs-cells = <0>;
};
serdes13: serdes@13 {
reg = <13>;
#pcs-cells = <0>;
};
};
+12
View File
@@ -252,39 +252,51 @@
serdes0: serdes@0 {
reg = <0>;
#pcs-cells = <0>;
};
serdes1: serdes@1 {
reg = <1>;
#pcs-cells = <0>;
};
serdes2: serdes@2 {
reg = <2>;
#pcs-cells = <0>;
};
serdes3: serdes@3 {
reg = <3>;
#pcs-cells = <0>;
};
serdes4: serdes@4 {
reg = <4>;
#pcs-cells = <0>;
};
serdes5: serdes@5 {
reg = <5>;
#pcs-cells = <0>;
};
serdes6: serdes@6 {
reg = <6>;
#pcs-cells = <0>;
};
serdes7: serdes@7 {
reg = <7>;
#pcs-cells = <0>;
};
serdes8: serdes@8 {
reg = <8>;
#pcs-cells = <0>;
};
serdes9: serdes@9 {
reg = <9>;
#pcs-cells = <0>;
};
serdes10: serdes@10 {
reg = <10>;
#pcs-cells = <0>;
};
serdes11: serdes@11 {
reg = <11>;
#pcs-cells = <0>;
};
};
+14
View File
@@ -284,45 +284,59 @@
serdes0: serdes@0 {
reg = <0>;
#pcs-cells = <0>;
};
serdes1: serdes@1 {
reg = <1>;
#pcs-cells = <0>;
};
serdes2: serdes@2 {
reg = <2>;
#pcs-cells = <0>;
};
serdes3: serdes@3 {
reg = <3>;
#pcs-cells = <0>;
};
serdes4: serdes@4 {
reg = <4>;
#pcs-cells = <0>;
};
serdes5: serdes@5 {
reg = <5>;
#pcs-cells = <0>;
};
serdes6: serdes@6 {
reg = <6>;
#pcs-cells = <0>;
};
serdes7: serdes@7 {
reg = <7>;
#pcs-cells = <0>;
};
serdes8: serdes@8 {
reg = <8>;
#pcs-cells = <0>;
};
serdes9: serdes@9 {
reg = <9>;
#pcs-cells = <0>;
};
serdes10: serdes@10 {
reg = <10>;
#pcs-cells = <0>;
};
serdes11: serdes@11 {
reg = <11>;
#pcs-cells = <0>;
};
serdes12: serdes@12 {
reg = <12>;
#pcs-cells = <0>;
};
serdes13: serdes@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];
if (rtpcs_sds_read(sds, 0, 0) < 0)
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);
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);
sds->num_of_links++;
link->ctrl = ctrl;
link->port = port;
link->sds = sds;
@@ -4166,6 +4163,41 @@ static void rtpcs_sds_put_of_node(void *data)
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)
{
struct device_node *np = pdev->dev.of_node;
@@ -4220,6 +4252,8 @@ static int rtpcs_probe(struct platform_device *pdev)
return ret;
}
rtpcs_count_links(ctrl);
if (ctrl->cfg->init) {
ret = ctrl->cfg->init(ctrl);
if (ret)
+2 -2
View File
@@ -75,7 +75,7 @@ define Device/9tripod_x3568-v4
DEVICE_DTS := rk3568-9tripod-x3568-v4
SUPPORTED_DEVICES := ninetripod,x3568-v4
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
UBOOT_DEVICE_NAME := 9tripod-x3568-v4-rk3568
endef
@@ -343,7 +343,7 @@ define Device/nlnet_xiguapi-v3
$(Device/rk3568)
DEVICE_VENDOR := NLnet
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
TARGET_DEVICES += nlnet_xiguapi-v3
-59
View File
@@ -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
+1
View File
@@ -26,6 +26,7 @@ CONFIG_COMPAT_32BIT_TIME=y
# CONFIG_MACH_SUN8I is not set
# CONFIG_MACH_SUN9I is not set
CONFIG_MACH_SUNIV=y
# CONFIG_MAXIO_PHY is not set
CONFIG_MDIO_BUS_MUX=y
CONFIG_MTD_SPI_NAND=y
CONFIG_MUSB_PIO_ONLY=y
+1
View File
@@ -14,6 +14,7 @@ CONFIG_GRO_CELLS=y
# CONFIG_IOMMU_IO_PGTABLE_LPAE is not set
# CONFIG_MACH_SUN4I is not set
# CONFIG_MACH_SUN5I is not set
# CONFIG_MAXIO_PHY is not set
CONFIG_MDIO_BUS_MUX=y
CONFIG_MICREL_PHY=y
CONFIG_MOTORCOMM_PHY=y
+1
View File
@@ -10,6 +10,7 @@ CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
# CONFIG_MACH_SUN7I is not set
# CONFIG_MACH_SUN8I is not set
# CONFIG_MACH_SUN9I is not set
# CONFIG_MAXIO_PHY is not set
CONFIG_PGTABLE_LEVELS=2
# CONFIG_PHY_SUN9I_USB is not set
CONFIG_PINCTRL_AXP209=y