From 53eab6198bf87d12055409bc4a38d58b68291b2f Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Mon, 18 Nov 2024 11:21:02 +0100 Subject: [PATCH 01/15] mac80211: backport some upstream fixes Fix various issues, including potential crashes Signed-off-by: Felix Fietkau --- ...x-vif-addr-when-switching-from-monit.patch | 63 ++++++++ ...x-incorrect-timing-to-initialize-sta.patch | 32 ++++ ...ee80211_i-Fix-memory-corruption-bug-.patch | 53 +++++++ ...ix-user-power-when-emulating-chanctx.patch | 24 +++ ...80211-Add-wiphy_delayed_work_pending.patch | 83 ++++++++++ ...nvert-color-collision-detection-to-w.patch | 148 ++++++++++++++++++ 6 files changed, 403 insertions(+) create mode 100644 package/kernel/mac80211/patches/subsys/361-wifi-mac80211-fix-vif-addr-when-switching-from-monit.patch create mode 100644 package/kernel/mac80211/patches/subsys/362-wifi-mac80211-fix-incorrect-timing-to-initialize-sta.patch create mode 100644 package/kernel/mac80211/patches/subsys/363-wifi-mac80211-ieee80211_i-Fix-memory-corruption-bug-.patch create mode 100644 package/kernel/mac80211/patches/subsys/364-mac80211-fix-user-power-when-emulating-chanctx.patch create mode 100644 package/kernel/mac80211/patches/subsys/365-wifi-cfg80211-Add-wiphy_delayed_work_pending.patch create mode 100644 package/kernel/mac80211/patches/subsys/366-wifi-mac80211-Convert-color-collision-detection-to-w.patch diff --git a/package/kernel/mac80211/patches/subsys/361-wifi-mac80211-fix-vif-addr-when-switching-from-monit.patch b/package/kernel/mac80211/patches/subsys/361-wifi-mac80211-fix-vif-addr-when-switching-from-monit.patch new file mode 100644 index 0000000000..f4cfc95aa3 --- /dev/null +++ b/package/kernel/mac80211/patches/subsys/361-wifi-mac80211-fix-vif-addr-when-switching-from-monit.patch @@ -0,0 +1,63 @@ +From: Felix Fietkau +Date: Fri, 15 Nov 2024 12:28:43 +0100 +Subject: [PATCH] wifi: mac80211: fix vif addr when switching from monitor + to station + +Since adding support for opting out of virtual monitor support, a zero vif +addr was used to indicate passive vs active monitor to the driver. +This would break the vif->addr when changing the netdev mac address before +switching the interface from monitor to sta mode. +Fix the regression by adding a separate flag to indicate whether vif->addr +is valid. + +Reported-by: syzbot+9ea265d998de25ac6a46@syzkaller.appspotmail.com +Fixes: 9d40f7e32774 ("wifi: mac80211: add flag to opt out of virtual monitor support") +Signed-off-by: Felix Fietkau +--- + +--- a/include/net/mac80211.h ++++ b/include/net/mac80211.h +@@ -1972,6 +1972,8 @@ enum ieee80211_neg_ttlm_res { + * @neg_ttlm: negotiated TID to link mapping info. + * see &struct ieee80211_neg_ttlm. + * @addr: address of this interface ++ * @addr_valid: indicates if the address is actively used. Set to false for ++ * passive monitor interfaces, true in all other cases. + * @p2p: indicates whether this AP or STA interface is a p2p + * interface, i.e. a GO or p2p-sta respectively + * @netdev_features: tx netdev features supported by the hardware for this +@@ -2011,6 +2013,7 @@ struct ieee80211_vif { + u16 valid_links, active_links, dormant_links, suspended_links; + struct ieee80211_neg_ttlm neg_ttlm; + u8 addr[ETH_ALEN] __aligned(2); ++ bool addr_valid; + bool p2p; + + u8 cab_queue; +--- a/net/mac80211/iface.c ++++ b/net/mac80211/iface.c +@@ -279,13 +279,8 @@ static int _ieee80211_change_mac(struct + ret = eth_mac_addr(sdata->dev, sa); + + if (ret == 0) { +- if (check_dup) { +- memcpy(sdata->vif.addr, sa->sa_data, ETH_ALEN); +- ether_addr_copy(sdata->vif.bss_conf.addr, sdata->vif.addr); +- } else { +- memset(sdata->vif.addr, 0, ETH_ALEN); +- memset(sdata->vif.bss_conf.addr, 0, ETH_ALEN); +- } ++ memcpy(sdata->vif.addr, sa->sa_data, ETH_ALEN); ++ ether_addr_copy(sdata->vif.bss_conf.addr, sdata->vif.addr); + } + + /* Regardless of eth_mac_addr() return we still want to add the +@@ -1324,6 +1319,8 @@ int ieee80211_do_open(struct wireless_de + } + } + ++ sdata->vif.addr_valid = sdata->vif.type != NL80211_IFTYPE_MONITOR || ++ (sdata->u.mntr.flags & MONITOR_FLAG_ACTIVE); + switch (sdata->vif.type) { + case NL80211_IFTYPE_AP_VLAN: + /* no need to tell driver, but set carrier and chanctx */ diff --git a/package/kernel/mac80211/patches/subsys/362-wifi-mac80211-fix-incorrect-timing-to-initialize-sta.patch b/package/kernel/mac80211/patches/subsys/362-wifi-mac80211-fix-incorrect-timing-to-initialize-sta.patch new file mode 100644 index 0000000000..94e51afd85 --- /dev/null +++ b/package/kernel/mac80211/patches/subsys/362-wifi-mac80211-fix-incorrect-timing-to-initialize-sta.patch @@ -0,0 +1,32 @@ +From: Benjamin Lin +Date: Mon, 18 Nov 2024 16:07:22 +0800 +Subject: [PATCH] wifi: mac80211: fix incorrect timing to initialize + station NSS capability + +Station's spatial streaming capability should be initialized before +handling VHT OMN, because the handling requires the capability information. + +Fixes: a8bca3e9371d ("wifi: mac80211: track capability/opmode NSS separately") +Signed-off-by: Benjamin Lin +--- + +--- a/net/mac80211/cfg.c ++++ b/net/mac80211/cfg.c +@@ -1914,6 +1914,8 @@ static int sta_link_apply_parameters(str + params->eht_capa_len, + link_sta); + ++ ieee80211_sta_init_nss(link_sta); ++ + if (params->opmode_notif_used) { + /* returned value is only needed for rc update, but the + * rc isn't initialized here yet, so ignore it +@@ -1923,8 +1925,6 @@ static int sta_link_apply_parameters(str + sband->band); + } + +- ieee80211_sta_init_nss(link_sta); +- + return 0; + } + diff --git a/package/kernel/mac80211/patches/subsys/363-wifi-mac80211-ieee80211_i-Fix-memory-corruption-bug-.patch b/package/kernel/mac80211/patches/subsys/363-wifi-mac80211-ieee80211_i-Fix-memory-corruption-bug-.patch new file mode 100644 index 0000000000..dcdb89cd4a --- /dev/null +++ b/package/kernel/mac80211/patches/subsys/363-wifi-mac80211-ieee80211_i-Fix-memory-corruption-bug-.patch @@ -0,0 +1,53 @@ +From: "Gustavo A. R. Silva" +Date: Fri, 25 Oct 2024 16:05:50 -0600 +Subject: [PATCH] wifi: mac80211: ieee80211_i: Fix memory corruption bug in + struct ieee80211_chanctx + +Move the `struct ieee80211_chanctx_conf conf` to the end of +`struct ieee80211_chanctx` and fix a memory corruption bug +triggered e.g. in `hwsim_set_chanctx_magic()`: `radar_detected` +is being overwritten when `cp->magic = HWSIM_CHANCTX_MAGIC;` +See the function call sequence below: + +drv_add_chanctx(... struct ieee80211_chanctx *ctx) -> + local->ops->add_chanctx(&local->hw, &ctx->conf) -> + mac80211_hwsim_add_chanctx(... struct ieee80211_chanctx_conf *ctx) -> + hwsim_set_chanctx_magic(ctx) + +This also happens in a number of other drivers. + +Also, add a code comment to try to prevent people from introducing +new members after `struct ieee80211_chanctx_conf conf`. Notice that +`struct ieee80211_chanctx_conf` is a flexible structure --a structure +that contains a flexible-array member, so it should always be at +the end of any other containing structures. + +This change also fixes 50 of the following warnings: + +net/mac80211/ieee80211_i.h:895:39: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end] + +-Wflex-array-member-not-at-end was introduced in GCC-14, and we are +getting ready to enable it, globally. + +Fixes: bca8bc0399ac ("wifi: mac80211: handle ieee80211_radar_detected() for MLO") +Signed-off-by: Gustavo A. R. Silva +Link: https://patch.msgid.link/ZxwWPrncTeSi1UTq@kspp +[also refer to other drivers in commit message] +Signed-off-by: Johannes Berg +--- + +--- a/net/mac80211/ieee80211_i.h ++++ b/net/mac80211/ieee80211_i.h +@@ -894,9 +894,10 @@ struct ieee80211_chanctx { + /* temporary data for search algorithm etc. */ + struct ieee80211_chan_req req; + +- struct ieee80211_chanctx_conf conf; +- + bool radar_detected; ++ ++ /* MUST be last - ends in a flexible-array member. */ ++ struct ieee80211_chanctx_conf conf; + }; + + struct mac80211_qos_map { diff --git a/package/kernel/mac80211/patches/subsys/364-mac80211-fix-user-power-when-emulating-chanctx.patch b/package/kernel/mac80211/patches/subsys/364-mac80211-fix-user-power-when-emulating-chanctx.patch new file mode 100644 index 0000000000..15db2c54e4 --- /dev/null +++ b/package/kernel/mac80211/patches/subsys/364-mac80211-fix-user-power-when-emulating-chanctx.patch @@ -0,0 +1,24 @@ +From: Ben Greear +Date: Thu, 10 Oct 2024 13:39:54 -0700 +Subject: [PATCH] mac80211: fix user-power when emulating chanctx + +ieee80211_calc_hw_conf_chan was ignoring the configured +user_txpower. If it is set, use it to potentially decrease +txpower as requested. + +Signed-off-by: Ben Greear +Link: https://patch.msgid.link/20241010203954.1219686-1-greearb@candelatech.com +Signed-off-by: Johannes Berg +--- + +--- a/net/mac80211/main.c ++++ b/net/mac80211/main.c +@@ -167,6 +167,8 @@ static u32 ieee80211_calc_hw_conf_chan(s + } + + power = ieee80211_chandef_max_power(&chandef); ++ if (local->user_power_level != IEEE80211_UNSET_POWER_LEVEL) ++ power = min(local->user_power_level, power); + + rcu_read_lock(); + list_for_each_entry_rcu(sdata, &local->interfaces, list) { diff --git a/package/kernel/mac80211/patches/subsys/365-wifi-cfg80211-Add-wiphy_delayed_work_pending.patch b/package/kernel/mac80211/patches/subsys/365-wifi-cfg80211-Add-wiphy_delayed_work_pending.patch new file mode 100644 index 0000000000..981cc2433b --- /dev/null +++ b/package/kernel/mac80211/patches/subsys/365-wifi-cfg80211-Add-wiphy_delayed_work_pending.patch @@ -0,0 +1,83 @@ +From: Remi Pommarel +Date: Tue, 24 Sep 2024 21:28:04 +0200 +Subject: [PATCH] wifi: cfg80211: Add wiphy_delayed_work_pending() + +Add wiphy_delayed_work_pending() to check if any delayed work timer is +pending, that can be used to be sure that wiphy_delayed_work_queue() +won't postpone an already pending delayed work. + +Signed-off-by: Remi Pommarel +Link: https://patch.msgid.link/20240924192805.13859-2-repk@triplefau.lt +[fix return value kernel-doc] +Signed-off-by: Johannes Berg +--- + +--- a/include/net/cfg80211.h ++++ b/include/net/cfg80211.h +@@ -6141,6 +6141,50 @@ void wiphy_delayed_work_flush(struct wip + struct wiphy_delayed_work *dwork); + + /** ++ * wiphy_delayed_work_pending - Find out whether a wiphy delayable ++ * work item is currently pending. ++ * ++ * @wiphy: the wiphy, for debug purposes ++ * @dwork: the delayed work in question ++ * ++ * Return: true if timer is pending, false otherwise ++ * ++ * How wiphy_delayed_work_queue() works is by setting a timer which ++ * when it expires calls wiphy_work_queue() to queue the wiphy work. ++ * Because wiphy_delayed_work_queue() uses mod_timer(), if it is ++ * called twice and the second call happens before the first call ++ * deadline, the work will rescheduled for the second deadline and ++ * won't run before that. ++ * ++ * wiphy_delayed_work_pending() can be used to detect if calling ++ * wiphy_work_delayed_work_queue() would start a new work schedule ++ * or delayed a previous one. As seen below it cannot be used to ++ * detect precisely if the work has finished to execute nor if it ++ * is currently executing. ++ * ++ * CPU0 CPU1 ++ * wiphy_delayed_work_queue(wk) ++ * mod_timer(wk->timer) ++ * wiphy_delayed_work_pending(wk) -> true ++ * ++ * [...] ++ * expire_timers(wk->timer) ++ * detach_timer(wk->timer) ++ * wiphy_delayed_work_pending(wk) -> false ++ * wk->timer->function() | ++ * wiphy_work_queue(wk) | delayed work pending ++ * list_add_tail() | returns false but ++ * queue_work(cfg80211_wiphy_work) | wk->func() has not ++ * | been run yet ++ * [...] | ++ * cfg80211_wiphy_work() | ++ * wk->func() V ++ * ++ */ ++bool wiphy_delayed_work_pending(struct wiphy *wiphy, ++ struct wiphy_delayed_work *dwork); ++ ++/** + * enum ieee80211_ap_reg_power - regulatory power for an Access Point + * + * @IEEE80211_REG_UNSET_AP: Access Point has no regulatory power mode +--- a/net/wireless/core.c ++++ b/net/wireless/core.c +@@ -1735,6 +1735,13 @@ void wiphy_delayed_work_flush(struct wip + } + EXPORT_SYMBOL_GPL(wiphy_delayed_work_flush); + ++bool wiphy_delayed_work_pending(struct wiphy *wiphy, ++ struct wiphy_delayed_work *dwork) ++{ ++ return timer_pending(&dwork->timer); ++} ++EXPORT_SYMBOL_GPL(wiphy_delayed_work_pending); ++ + static int __init cfg80211_init(void) + { + int err; diff --git a/package/kernel/mac80211/patches/subsys/366-wifi-mac80211-Convert-color-collision-detection-to-w.patch b/package/kernel/mac80211/patches/subsys/366-wifi-mac80211-Convert-color-collision-detection-to-w.patch new file mode 100644 index 0000000000..ae72441c46 --- /dev/null +++ b/package/kernel/mac80211/patches/subsys/366-wifi-mac80211-Convert-color-collision-detection-to-w.patch @@ -0,0 +1,148 @@ +From: Remi Pommarel +Date: Tue, 24 Sep 2024 21:28:05 +0200 +Subject: [PATCH] wifi: mac80211: Convert color collision detection to wiphy + work + +Call to ieee80211_color_collision_detection_work() needs wiphy lock to +be held (see lockdep assert in cfg80211_bss_color_notify()). Not locking +wiphy causes the following lockdep error: + + WARNING: CPU: 2 PID: 42 at net/wireless/nl80211.c:19505 cfg80211_bss_color_notify+0x1a4/0x25c + Modules linked in: + CPU: 2 PID: 42 Comm: kworker/u8:3 Tainted: G W 6.4.0-02327-g36c6cb260481 #1048 + Hardware name: + Workqueue: phy1 ieee80211_color_collision_detection_work + pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) + pc : cfg80211_bss_color_notify+0x1a4/0x25c + lr : cfg80211_bss_color_notify+0x1a0/0x25c + sp : ffff000002947d00 + x29: ffff000002947d00 x28: ffff800008e1a000 x27: ffff000002bd4705 + x26: ffff00000d034000 x25: ffff80000903cf40 x24: 0000000000000000 + x23: ffff00000cb70720 x22: 0000000000800000 x21: ffff800008dfb008 + x20: 000000000000008d x19: ffff00000d035fa8 x18: 0000000000000010 + x17: 0000000000000001 x16: 000003564b1ce96a x15: 000d69696d057970 + x14: 000000000000003b x13: 0000000000000001 x12: 0000000000040000 + x11: 0000000000000001 x10: ffff80000978f9c0 x9 : ffff0000028d3174 + x8 : ffff800008e30000 x7 : 0000000000000000 x6 : 0000000000000028 + x5 : 000000000002f498 x4 : ffff00000d034a80 x3 : 0000000000800000 + x2 : ffff800016143000 x1 : 0000000000000000 x0 : 0000000000000000 + Call trace: + cfg80211_bss_color_notify+0x1a4/0x25c + ieee80211_color_collision_detection_work+0x20/0x118 + process_one_work+0x294/0x554 + worker_thread+0x70/0x440 + kthread+0xf4/0xf8 + ret_from_fork+0x10/0x20 + irq event stamp: 77372 + hardirqs last enabled at (77371): [] _raw_spin_unlock_irq+0x2c/0x4c + hardirqs last disabled at (77372): [] el1_dbg+0x20/0x48 + softirqs last enabled at (77350): [] batadv_send_outstanding_bcast_packet+0xb8/0x120 + softirqs last disabled at (77348): [] batadv_send_outstanding_bcast_packet+0x80/0x120 + +The wiphy lock cannot be taken directly from color collision detection +delayed work (ieee80211_color_collision_detection_work()) because this +work is cancel_delayed_work_sync() under this wiphy lock causing a +potential deadlock( see [0] for details). + +To fix that ieee80211_color_collision_detection_work() could be +converted to a wiphy work and cancel_delayed_work_sync() can be simply +replaced by wiphy_delayed_work_cancel() serving the same purpose under +wiphy lock. + +This could potentially fix [1]. + +[0]: https://lore.kernel.org/linux-wireless/D4A40Q44OAY2.W3SIF6UEPBUN@freebox.fr/ +[1]: https://lore.kernel.org/lkml/000000000000612f290618eee3e5@google.com/ + +Reported-by: Nicolas Escande +Signed-off-by: Remi Pommarel +Link: https://patch.msgid.link/20240924192805.13859-3-repk@triplefau.lt +Signed-off-by: Johannes Berg +--- + +--- a/net/mac80211/cfg.c ++++ b/net/mac80211/cfg.c +@@ -4836,12 +4836,12 @@ void ieee80211_color_change_finalize_wor + ieee80211_color_change_finalize(link); + } + +-void ieee80211_color_collision_detection_work(struct work_struct *work) ++void ieee80211_color_collision_detection_work(struct wiphy *wiphy, ++ struct wiphy_work *work) + { +- struct delayed_work *delayed_work = to_delayed_work(work); + struct ieee80211_link_data *link = +- container_of(delayed_work, struct ieee80211_link_data, +- color_collision_detect_work); ++ container_of(work, struct ieee80211_link_data, ++ color_collision_detect_work.work); + struct ieee80211_sub_if_data *sdata = link->sdata; + + cfg80211_obss_color_collision_notify(sdata->dev, link->color_bitmap, +@@ -4894,7 +4894,8 @@ ieee80211_obss_color_collision_notify(st + return; + } + +- if (delayed_work_pending(&link->color_collision_detect_work)) { ++ if (wiphy_delayed_work_pending(sdata->local->hw.wiphy, ++ &link->color_collision_detect_work)) { + rcu_read_unlock(); + return; + } +@@ -4903,9 +4904,9 @@ ieee80211_obss_color_collision_notify(st + /* queue the color collision detection event every 500 ms in order to + * avoid sending too much netlink messages to userspace. + */ +- ieee80211_queue_delayed_work(&sdata->local->hw, +- &link->color_collision_detect_work, +- msecs_to_jiffies(500)); ++ wiphy_delayed_work_queue(sdata->local->hw.wiphy, ++ &link->color_collision_detect_work, ++ msecs_to_jiffies(500)); + + rcu_read_unlock(); + } +--- a/net/mac80211/ieee80211_i.h ++++ b/net/mac80211/ieee80211_i.h +@@ -1056,7 +1056,7 @@ struct ieee80211_link_data { + } csa; + + struct wiphy_work color_change_finalize_work; +- struct delayed_work color_collision_detect_work; ++ struct wiphy_delayed_work color_collision_detect_work; + u64 color_bitmap; + + /* context reservation -- protected with wiphy mutex */ +@@ -2010,7 +2010,8 @@ int ieee80211_channel_switch(struct wiph + /* color change handling */ + void ieee80211_color_change_finalize_work(struct wiphy *wiphy, + struct wiphy_work *work); +-void ieee80211_color_collision_detection_work(struct work_struct *work); ++void ieee80211_color_collision_detection_work(struct wiphy *wiphy, ++ struct wiphy_work *work); + + /* interface handling */ + #define MAC80211_SUPPORTED_FEATURES_TX (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | \ +--- a/net/mac80211/link.c ++++ b/net/mac80211/link.c +@@ -41,8 +41,8 @@ void ieee80211_link_init(struct ieee8021 + ieee80211_csa_finalize_work); + wiphy_work_init(&link->color_change_finalize_work, + ieee80211_color_change_finalize_work); +- INIT_DELAYED_WORK(&link->color_collision_detect_work, +- ieee80211_color_collision_detection_work); ++ wiphy_delayed_work_init(&link->color_collision_detect_work, ++ ieee80211_color_collision_detection_work); + INIT_LIST_HEAD(&link->assigned_chanctx_list); + INIT_LIST_HEAD(&link->reserved_chanctx_list); + wiphy_delayed_work_init(&link->dfs_cac_timer_work, +@@ -72,7 +72,8 @@ void ieee80211_link_stop(struct ieee8021 + if (link->sdata->vif.type == NL80211_IFTYPE_STATION) + ieee80211_mgd_stop_link(link); + +- cancel_delayed_work_sync(&link->color_collision_detect_work); ++ wiphy_delayed_work_cancel(link->sdata->local->hw.wiphy, ++ &link->color_collision_detect_work); + wiphy_work_cancel(link->sdata->local->hw.wiphy, + &link->color_change_finalize_work); + wiphy_work_cancel(link->sdata->local->hw.wiphy, From a5d23e3aee9bd616044c3eadfe2dbcad5d18b163 Mon Sep 17 00:00:00 2001 From: Christian Marangi Date: Mon, 18 Nov 2024 15:01:07 +0100 Subject: [PATCH 02/15] airoha: an7581: sync patch with upstream version and tag them Sync patch with upstream version and tag them. Minor changes done to Pinctrl patch to support older kernel. Patch automatically refreshed with make target/linux/refresh. Signed-off-by: Christian Marangi --- ...-support-for-Airoha-EN7851-watchdog.patch} | 15 ++++--- ...-REG_PCIE-_-MEM-MEM_MASK-configurat.patch} | 6 ++- ...-clock_register-in-hw_init-callback.patch} | 6 ++- ...lk-en7523-introduce-chip_scu-regmap.patch} | 6 ++- ...estimation-of-fixed-rate-for-EN7581.patch} | 6 ++- ...n7581_reset_register-in-en7581_clk_.patch} | 6 ++- ...523-map-io-region-in-a-single-block.patch} | 6 ++- ...l-airoha-Add-support-for-EN7581-SoC.patch} | 42 +++++++++---------- 8 files changed, 52 insertions(+), 41 deletions(-) rename target/linux/airoha/patches-6.6/{103-watchdog-Add-support-for-Airoha-EN7851-watchdog.patch => 032-v6.13-watchdog-Add-support-for-Airoha-EN7851-watchdog.patch} (94%) rename target/linux/airoha/patches-6.6/{106-01-clk-en7523-remove-REG_PCIE-_-MEM-MEM_MASK-configurat.patch => 033-01-v6.13-clk-en7523-remove-REG_PCIE-_-MEM-MEM_MASK-configurat.patch} (89%) rename target/linux/airoha/patches-6.6/{106-02-clk-en7523-move-clock_register-in-hw_init-callback.patch => 033-02-v6.13-clk-en7523-move-clock_register-in-hw_init-callback.patch} (94%) rename target/linux/airoha/patches-6.6/{106-03-clk-en7523-introduce-chip_scu-regmap.patch => 033-03-v6.13-clk-en7523-introduce-chip_scu-regmap.patch} (95%) rename target/linux/airoha/patches-6.6/{106-04-clk-en7523-fix-estimation-of-fixed-rate-for-EN7581.patch => 033-04-v6.13-clk-en7523-fix-estimation-of-fixed-rate-for-EN7581.patch} (94%) rename target/linux/airoha/patches-6.6/{106-05-clk-en7523-move-en7581_reset_register-in-en7581_clk_.patch => 033-05-v6.13-clk-en7523-move-en7581_reset_register-in-en7581_clk_.patch} (95%) rename target/linux/airoha/patches-6.6/{106-06-clk-en7523-map-io-region-in-a-single-block.patch => 033-06-v6.13-clk-en7523-map-io-region-in-a-single-block.patch} (91%) rename target/linux/airoha/patches-6.6/{107-pinctrl-airoha-Add-support-for-EN7581-SoC.patch => 034-v6.13-pinctrl-airoha-Add-support-for-EN7581-SoC.patch} (99%) diff --git a/target/linux/airoha/patches-6.6/103-watchdog-Add-support-for-Airoha-EN7851-watchdog.patch b/target/linux/airoha/patches-6.6/032-v6.13-watchdog-Add-support-for-Airoha-EN7851-watchdog.patch similarity index 94% rename from target/linux/airoha/patches-6.6/103-watchdog-Add-support-for-Airoha-EN7851-watchdog.patch rename to target/linux/airoha/patches-6.6/032-v6.13-watchdog-Add-support-for-Airoha-EN7851-watchdog.patch index e58ee54609..02dbadff4e 100644 --- a/target/linux/airoha/patches-6.6/103-watchdog-Add-support-for-Airoha-EN7851-watchdog.patch +++ b/target/linux/airoha/patches-6.6/032-v6.13-watchdog-Add-support-for-Airoha-EN7851-watchdog.patch @@ -1,19 +1,18 @@ -From 4019d58ca5b249e4cf79169cc0c6a4ff5275c155 Mon Sep 17 00:00:00 2001 +From 3cf67f3769b8227ca75ca7102180a2e270ee01aa Mon Sep 17 00:00:00 2001 From: Christian Marangi -Date: Fri, 5 Jul 2024 19:12:12 +0200 -Subject: [PATCH v2 2/2] watchdog: Add support for Airoha EN7851 watchdog +Date: Fri, 11 Oct 2024 12:43:53 +0200 +Subject: [PATCH] watchdog: Add support for Airoha EN7851 watchdog Add support for Airoha EN7851 watchdog. This is a very basic watchdog with no pretimeout support, max timeout is 28 seconds and it ticks based on half the SoC BUS clock. Signed-off-by: Christian Marangi +Reviewed-by: Guenter Roeck +Link: https://lore.kernel.org/r/20241011104411.28659-2-ansuelsmth@gmail.com +Signed-off-by: Guenter Roeck +Signed-off-by: Wim Van Sebroeck --- -Changes v2: -- Drop clock-frequency implementation -- Add missing bitfield.h header -- Attach BUS clock - drivers/watchdog/Kconfig | 8 ++ drivers/watchdog/Makefile | 1 + drivers/watchdog/airoha_wdt.c | 216 ++++++++++++++++++++++++++++++++++ diff --git a/target/linux/airoha/patches-6.6/106-01-clk-en7523-remove-REG_PCIE-_-MEM-MEM_MASK-configurat.patch b/target/linux/airoha/patches-6.6/033-01-v6.13-clk-en7523-remove-REG_PCIE-_-MEM-MEM_MASK-configurat.patch similarity index 89% rename from target/linux/airoha/patches-6.6/106-01-clk-en7523-remove-REG_PCIE-_-MEM-MEM_MASK-configurat.patch rename to target/linux/airoha/patches-6.6/033-01-v6.13-clk-en7523-remove-REG_PCIE-_-MEM-MEM_MASK-configurat.patch index d2e0c6d541..59aefbb66e 100644 --- a/target/linux/airoha/patches-6.6/106-01-clk-en7523-remove-REG_PCIE-_-MEM-MEM_MASK-configurat.patch +++ b/target/linux/airoha/patches-6.6/033-01-v6.13-clk-en7523-remove-REG_PCIE-_-MEM-MEM_MASK-configurat.patch @@ -1,6 +1,6 @@ -From 64e497f372dfca3e6be9fe05a0f9b874ea8604d2 Mon Sep 17 00:00:00 2001 +From c31d1cdd7bff1d2c13d435bb9d0c76bfaa332097 Mon Sep 17 00:00:00 2001 From: Lorenzo Bianconi -Date: Tue, 3 Sep 2024 23:39:46 +0200 +Date: Tue, 12 Nov 2024 01:08:49 +0100 Subject: [PATCH 1/6] clk: en7523: remove REG_PCIE*_{MEM,MEM_MASK} configuration @@ -12,6 +12,8 @@ This patch does not introduce any backward incompatibility since the dts for EN7581 SoC is not upstream yet. Signed-off-by: Lorenzo Bianconi +Link: https://lore.kernel.org/r/20241112-clk-en7581-syscon-v2-2-8ada5e394ae4@kernel.org +Signed-off-by: Stephen Boyd --- drivers/clk/clk-en7523.c | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/target/linux/airoha/patches-6.6/106-02-clk-en7523-move-clock_register-in-hw_init-callback.patch b/target/linux/airoha/patches-6.6/033-02-v6.13-clk-en7523-move-clock_register-in-hw_init-callback.patch similarity index 94% rename from target/linux/airoha/patches-6.6/106-02-clk-en7523-move-clock_register-in-hw_init-callback.patch rename to target/linux/airoha/patches-6.6/033-02-v6.13-clk-en7523-move-clock_register-in-hw_init-callback.patch index 44bfc4404b..f4cfaa2bf9 100644 --- a/target/linux/airoha/patches-6.6/106-02-clk-en7523-move-clock_register-in-hw_init-callback.patch +++ b/target/linux/airoha/patches-6.6/033-02-v6.13-clk-en7523-move-clock_register-in-hw_init-callback.patch @@ -1,6 +1,6 @@ -From 0dd8a6df58a4a8cf1f341249e7358b3bb51f52ad Mon Sep 17 00:00:00 2001 +From b8bdfc666bc5f58caf46e67b615132fccbaca3d4 Mon Sep 17 00:00:00 2001 From: Lorenzo Bianconi -Date: Tue, 3 Sep 2024 23:39:47 +0200 +Date: Tue, 12 Nov 2024 01:08:50 +0100 Subject: [PATCH 2/6] clk: en7523: move clock_register in hw_init callback Move en7523_register_clocks routine in hw_init callback. @@ -11,6 +11,8 @@ EN7523 and EN7581 SoCs in order to access chip-scu IO region miscellaneous registers needed by multiple devices (clock, pinctrl ..). Signed-off-by: Lorenzo Bianconi +Link: https://lore.kernel.org/r/20241112-clk-en7581-syscon-v2-3-8ada5e394ae4@kernel.org +Signed-off-by: Stephen Boyd --- drivers/clk/clk-en7523.c | 82 ++++++++++++++++++++++++---------------- 1 file changed, 50 insertions(+), 32 deletions(-) diff --git a/target/linux/airoha/patches-6.6/106-03-clk-en7523-introduce-chip_scu-regmap.patch b/target/linux/airoha/patches-6.6/033-03-v6.13-clk-en7523-introduce-chip_scu-regmap.patch similarity index 95% rename from target/linux/airoha/patches-6.6/106-03-clk-en7523-introduce-chip_scu-regmap.patch rename to target/linux/airoha/patches-6.6/033-03-v6.13-clk-en7523-introduce-chip_scu-regmap.patch index 4f8211c564..6c34ca2fa5 100644 --- a/target/linux/airoha/patches-6.6/106-03-clk-en7523-introduce-chip_scu-regmap.patch +++ b/target/linux/airoha/patches-6.6/033-03-v6.13-clk-en7523-introduce-chip_scu-regmap.patch @@ -1,6 +1,6 @@ -From f849bcb746abeaafa63b4f02f1d8bb22703fc645 Mon Sep 17 00:00:00 2001 +From f72fc22038dd544fa4d39c06e8c81c09c0041ed4 Mon Sep 17 00:00:00 2001 From: Lorenzo Bianconi -Date: Tue, 3 Sep 2024 23:39:48 +0200 +Date: Tue, 12 Nov 2024 01:08:51 +0100 Subject: [PATCH 3/6] clk: en7523: introduce chip_scu regmap Introduce chip_scu regmap pointer since EN7581 SoC will access chip-scu @@ -9,6 +9,8 @@ for EN7581 SoC. This patch does not introduce any backward incompatibility since the dts for EN7581 SoC is not upstream yet. Signed-off-by: Lorenzo Bianconi +Link: https://lore.kernel.org/r/20241112-clk-en7581-syscon-v2-4-8ada5e394ae4@kernel.org +Signed-off-by: Stephen Boyd --- drivers/clk/clk-en7523.c | 81 ++++++++++++++++++++++++++++++---------- 1 file changed, 61 insertions(+), 20 deletions(-) diff --git a/target/linux/airoha/patches-6.6/106-04-clk-en7523-fix-estimation-of-fixed-rate-for-EN7581.patch b/target/linux/airoha/patches-6.6/033-04-v6.13-clk-en7523-fix-estimation-of-fixed-rate-for-EN7581.patch similarity index 94% rename from target/linux/airoha/patches-6.6/106-04-clk-en7523-fix-estimation-of-fixed-rate-for-EN7581.patch rename to target/linux/airoha/patches-6.6/033-04-v6.13-clk-en7523-fix-estimation-of-fixed-rate-for-EN7581.patch index c311375a8b..79c9ab2ee1 100644 --- a/target/linux/airoha/patches-6.6/106-04-clk-en7523-fix-estimation-of-fixed-rate-for-EN7581.patch +++ b/target/linux/airoha/patches-6.6/033-04-v6.13-clk-en7523-fix-estimation-of-fixed-rate-for-EN7581.patch @@ -1,6 +1,6 @@ -From b9ea4918216ca0c2511446c531d3f8163ac1466d Mon Sep 17 00:00:00 2001 +From f98eded9e9ab048c88ff59c5523e703a6ced5523 Mon Sep 17 00:00:00 2001 From: Lorenzo Bianconi -Date: Tue, 3 Sep 2024 23:39:49 +0200 +Date: Tue, 12 Nov 2024 01:08:52 +0100 Subject: [PATCH 4/6] clk: en7523: fix estimation of fixed rate for EN7581 Introduce en7581_base_clks array in order to define per-SoC fixed-rate @@ -9,6 +9,8 @@ clocks Fixes: 66bc47326ce2 ("clk: en7523: Add EN7581 support") Signed-off-by: Lorenzo Bianconi +Link: https://lore.kernel.org/r/20241112-clk-en7581-syscon-v2-5-8ada5e394ae4@kernel.org +Signed-off-by: Stephen Boyd --- drivers/clk/clk-en7523.c | 105 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 103 insertions(+), 2 deletions(-) diff --git a/target/linux/airoha/patches-6.6/106-05-clk-en7523-move-en7581_reset_register-in-en7581_clk_.patch b/target/linux/airoha/patches-6.6/033-05-v6.13-clk-en7523-move-en7581_reset_register-in-en7581_clk_.patch similarity index 95% rename from target/linux/airoha/patches-6.6/106-05-clk-en7523-move-en7581_reset_register-in-en7581_clk_.patch rename to target/linux/airoha/patches-6.6/033-05-v6.13-clk-en7523-move-en7581_reset_register-in-en7581_clk_.patch index 3869a58a83..36b9d9f3dc 100644 --- a/target/linux/airoha/patches-6.6/106-05-clk-en7523-move-en7581_reset_register-in-en7581_clk_.patch +++ b/target/linux/airoha/patches-6.6/033-05-v6.13-clk-en7523-move-en7581_reset_register-in-en7581_clk_.patch @@ -1,6 +1,6 @@ -From 2c5b1a5b68973947a6919d9c951f9b3e0d84f347 Mon Sep 17 00:00:00 2001 +From 82e6bf912d5846646892becea659b39d178d79e3 Mon Sep 17 00:00:00 2001 From: Lorenzo Bianconi -Date: Tue, 3 Sep 2024 23:39:50 +0200 +Date: Tue, 12 Nov 2024 01:08:53 +0100 Subject: [PATCH 5/6] clk: en7523: move en7581_reset_register() in en7581_clk_hw_init() @@ -9,6 +9,8 @@ feature is supported just by EN7581 SoC. Get rid of reset struct in en_clk_soc_data data struct. Signed-off-by: Lorenzo Bianconi +Link: https://lore.kernel.org/r/20241112-clk-en7581-syscon-v2-6-8ada5e394ae4@kernel.org +Signed-off-by: Stephen Boyd --- drivers/clk/clk-en7523.c | 93 ++++++++++++++-------------------------- 1 file changed, 33 insertions(+), 60 deletions(-) diff --git a/target/linux/airoha/patches-6.6/106-06-clk-en7523-map-io-region-in-a-single-block.patch b/target/linux/airoha/patches-6.6/033-06-v6.13-clk-en7523-map-io-region-in-a-single-block.patch similarity index 91% rename from target/linux/airoha/patches-6.6/106-06-clk-en7523-map-io-region-in-a-single-block.patch rename to target/linux/airoha/patches-6.6/033-06-v6.13-clk-en7523-map-io-region-in-a-single-block.patch index db04d602f3..dec7b81e5b 100644 --- a/target/linux/airoha/patches-6.6/106-06-clk-en7523-map-io-region-in-a-single-block.patch +++ b/target/linux/airoha/patches-6.6/033-06-v6.13-clk-en7523-map-io-region-in-a-single-block.patch @@ -1,6 +1,6 @@ -From 665a59f4836c3d7813a9d8bfb9680d93adb4626e Mon Sep 17 00:00:00 2001 +From a9eaf305017a5ebe73ab34e85bd5414055a88f29 Mon Sep 17 00:00:00 2001 From: Lorenzo Bianconi -Date: Tue, 3 Sep 2024 23:39:51 +0200 +Date: Tue, 12 Nov 2024 01:08:54 +0100 Subject: [PATCH 6/6] clk: en7523: map io region in a single block Map all clock-controller memory region in a single block. @@ -8,6 +8,8 @@ This patch does not introduce any backward incompatibility since the dts for EN7581 SoC is not upstream yet. Signed-off-by: Lorenzo Bianconi +Link: https://lore.kernel.org/r/20241112-clk-en7581-syscon-v2-7-8ada5e394ae4@kernel.org +Signed-off-by: Stephen Boyd --- drivers/clk/clk-en7523.c | 32 +++++++++++++------------------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/target/linux/airoha/patches-6.6/107-pinctrl-airoha-Add-support-for-EN7581-SoC.patch b/target/linux/airoha/patches-6.6/034-v6.13-pinctrl-airoha-Add-support-for-EN7581-SoC.patch similarity index 99% rename from target/linux/airoha/patches-6.6/107-pinctrl-airoha-Add-support-for-EN7581-SoC.patch rename to target/linux/airoha/patches-6.6/034-v6.13-pinctrl-airoha-Add-support-for-EN7581-SoC.patch index 8e299512c3..2e36a2540f 100644 --- a/target/linux/airoha/patches-6.6/107-pinctrl-airoha-Add-support-for-EN7581-SoC.patch +++ b/target/linux/airoha/patches-6.6/034-v6.13-pinctrl-airoha-Add-support-for-EN7581-SoC.patch @@ -1,7 +1,7 @@ -From 21cb14f3e6d12d666a9ec0fd7cc01d722b04e514 Mon Sep 17 00:00:00 2001 +From 1c8ace2d0725c1c8d5012f8a56c5fb31805aad27 Mon Sep 17 00:00:00 2001 From: Lorenzo Bianconi -Date: Wed, 16 Oct 2024 12:07:33 +0200 -Subject: [PATCH 1/2] pinctrl: airoha: Add support for EN7581 SoC +Date: Wed, 23 Oct 2024 01:20:05 +0200 +Subject: [PATCH] pinctrl: airoha: Add support for EN7581 SoC Introduce pinctrl driver for EN7581 SoC. Current EN7581 pinctrl driver supports the following functionalities: @@ -15,8 +15,10 @@ Tested-by: Benjamin Larsson Co-developed-by: Benjamin Larsson Signed-off-by: Benjamin Larsson Reviewed-by: Linus Walleij -Signed-off-by: Lorenzo Bianconi Reviewed-by: AngeloGioacchino Del Regno +Signed-off-by: Lorenzo Bianconi +Link: https://lore.kernel.org/20241023-en7581-pinctrl-v9-5-afb0cbcab0ec@kernel.org +Signed-off-by: Linus Walleij --- MAINTAINERS | 7 + drivers/pinctrl/mediatek/Kconfig | 17 +- @@ -25,24 +27,22 @@ Reviewed-by: AngeloGioacchino Del Regno -# +L: linux-mediatek@lists.infradead.org (moderated for non-subscribers) -# +S: Maintained -# +F: Documentation/devicetree/bindings/pinctrl/airoha,en7581-pinctrl.yaml -# +F: drivers/pinctrl/mediatek/pinctrl-airoha.c -# + -# PIN CONTROLLER - AMD -# M: Basavaraj Natikar -# M: Shyam Sundar S K ++PIN CONTROLLER - AIROHA ++M: Lorenzo Bianconi ++L: linux-mediatek@lists.infradead.org (moderated for non-subscribers) ++S: Maintained ++F: Documentation/devicetree/bindings/pinctrl/airoha,en7581-pinctrl.yaml ++F: drivers/pinctrl/mediatek/pinctrl-airoha.c ++ + PIN CONTROLLER - AMD + M: Basavaraj Natikar + M: Shyam Sundar S K --- a/drivers/pinctrl/mediatek/Kconfig +++ b/drivers/pinctrl/mediatek/Kconfig @@ -1,6 +1,6 @@ From 7e287b563aa1043a1af54d5e2b0bd96326371732 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sat, 16 Nov 2024 15:29:24 +0000 Subject: [PATCH 03/15] mtd-utils: add ubihealthd to nand-utils Add ubihealthd to the nand-utils package, auto-create UCI config for each UBI device and launch the daemon on boot. The default time interval between scrubbing a random PED is 120 seconds which means that a fully used 128 MiB flash chip gets scrubbed in about a day and a half. The interval can be adjusted in UCI using the 'interval' option. Suggested-by: Rodrigo Balerdi Signed-off-by: Daniel Golle Link: https://github.com/openwrt/openwrt/pull/16973 Signed-off-by: Christian Marangi --- package/utils/mtd-utils/Makefile | 12 +++++++-- .../utils/mtd-utils/files/ubihealthd.defaults | 18 +++++++++++++ package/utils/mtd-utils/files/ubihealthd.init | 27 +++++++++++++++++++ 3 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 package/utils/mtd-utils/files/ubihealthd.defaults create mode 100644 package/utils/mtd-utils/files/ubihealthd.init diff --git a/package/utils/mtd-utils/Makefile b/package/utils/mtd-utils/Makefile index 046572e83b..0dc8831251 100644 --- a/package/utils/mtd-utils/Makefile +++ b/package/utils/mtd-utils/Makefile @@ -65,12 +65,20 @@ CONFIGURE_ARGS += \ --without-lzo \ --without-zlib +define Package/ubi-utils/conffiles +/etc/config/ubihealthd +endef + define Package/ubi-utils/install $(INSTALL_DIR) $(1)/usr/sbin $(INSTALL_BIN) \ - $(PKG_INSTALL_DIR)/usr/sbin/{ubiattach,ubicrc32,ubiblock,ubidetach,ubiformat,ubimkvol} $(1)/usr/sbin/ + $(PKG_INSTALL_DIR)/usr/sbin/{ubiattach,ubicrc32,ubiblock,ubidetach,ubiformat,ubihealthd} $(1)/usr/sbin/ $(INSTALL_BIN) \ - $(PKG_INSTALL_DIR)/usr/sbin/{ubinfo,ubinize,ubirename,ubirmvol,ubirsvol,ubiupdatevol} $(1)/usr/sbin/ + $(PKG_INSTALL_DIR)/usr/sbin/{ubimkvol,ubinfo,ubinize,ubirename,ubirmvol,ubirsvol,ubiupdatevol} $(1)/usr/sbin/ + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/ubihealthd.init $(1)/etc/init.d/ubihealthd + $(INSTALL_DIR) $(1)/etc/uci-defaults + $(INSTALL_DATA) ./files/ubihealthd.defaults $(1)/etc/uci-defaults/ubihealthd endef define Package/nand-utils/install diff --git a/package/utils/mtd-utils/files/ubihealthd.defaults b/package/utils/mtd-utils/files/ubihealthd.defaults new file mode 100644 index 0000000000..5222961bd4 --- /dev/null +++ b/package/utils/mtd-utils/files/ubihealthd.defaults @@ -0,0 +1,18 @@ +#!/bin/sh + +[ -e "/etc/config/ubihealthd" ] && exit 0 +[ ! -e "/sys/class/ubi" ] && exit 0 + +touch "/etc/config/ubihealthd" + +for ubidev in /sys/class/ubi/*/total_eraseblocks; do + ubidev="${ubidev%/*}" + ubidev="${ubidev##*/}" + uci batch < Date: Mon, 18 Nov 2024 17:15:54 +0100 Subject: [PATCH 04/15] omnia-eeprom: depend only on subtarget Now that omnia-eeprom is marked nonshared building the cortex-a9 mvebu subtarget will fail with: ERROR: unable to select packages: omnia-eeprom (no such package): required by: world[omnia-eeprom] This is because omnia-eeprom depends on TARGET_mvebu_cortexa9_DEVICE_cznic_turris-omnia which will not be satisfied in buildbots since CONFIG_TARGET_ALL_PROFILES and CONFIG_TARGET_PER_DEVICE_ROOTFS are set in which case CONFIG_TARGET_mvebu_cortexa9_DEVICE_cznic_turris-omnia is not set. So, lets simply depend on the mvebu/cortex-a9 subtarget. Fixes: 371e7bef4046 ("omnia-eeprom: Mark it nonshared") Link: https://github.com/openwrt/openwrt/pull/17007 Signed-off-by: Robert Marko --- package/utils/omnia-eeprom/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/utils/omnia-eeprom/Makefile b/package/utils/omnia-eeprom/Makefile index f9e48b28b9..9418e93f44 100644 --- a/package/utils/omnia-eeprom/Makefile +++ b/package/utils/omnia-eeprom/Makefile @@ -29,7 +29,7 @@ define Package/omnia-eeprom CATEGORY:=Utilities URL:=https://gitlab.nic.cz/turris/omnia-eeprom TITLE:=CZ.NIC Turris Omnia EEPROM accessing utility - DEPENDS:=@TARGET_mvebu_cortexa9_DEVICE_cznic_turris-omnia +kmod-eeprom-at24 + DEPENDS:=@TARGET_mvebu_cortexa9 +kmod-eeprom-at24 endef define Package/omnia-eeprom/description From e6d483cd521a5b86191c544b1ed535fe2ff8ee39 Mon Sep 17 00:00:00 2001 From: David Bauer Date: Sun, 17 Nov 2024 13:23:09 +0100 Subject: [PATCH 05/15] net: phy: broadcom: update dependency condition The broadcom PHY driver only has to depend upon PTP_1588_CLOCK_OPTIONAL if NETWORK_PHY_TIMESTAMPING is enabled. The PTP functionality is stubbed in this case. Reflect this circumstance in the dependence condition. This allows to build the driver as a built-in module even if PTP is built as a module. This is required to include the broadcom PHY module regardless of the built-setting of the PTP subsystem. On ath79 (and probably more) targets with Broadcom PHY, Gigabit operation is currently broken as the PHY driver is only built as a module in case all kernel-packages are built. Due to this circumstance, affected devices fall back to using the generic PHY driver. Signed-off-by: David Bauer --- ...broadcom-update-dependency-condition.patch | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 target/linux/generic/pending-6.6/741-net-phy-broadcom-update-dependency-condition.patch diff --git a/target/linux/generic/pending-6.6/741-net-phy-broadcom-update-dependency-condition.patch b/target/linux/generic/pending-6.6/741-net-phy-broadcom-update-dependency-condition.patch new file mode 100644 index 0000000000..80b69920e9 --- /dev/null +++ b/target/linux/generic/pending-6.6/741-net-phy-broadcom-update-dependency-condition.patch @@ -0,0 +1,35 @@ +From 1be3688b3eaa7ea2d9e19bd29ae6a6a51c121a0b Mon Sep 17 00:00:00 2001 +From: David Bauer +Date: Sat, 16 Nov 2024 22:36:15 +0100 +Subject: [PATCH] net: phy: broadcom: update dependency condition + +The broadcom PHY driver only has to depend upon PTP_1588_CLOCK_OPTIONAL +if NETWORK_PHY_TIMESTAMPING is enabled. The PTP functionality is stubbed +in this case. + +Reflect this circumstance in the dependence condition. This allows to +build the driver as a built-in module even if PTP is built as a module. + +This is required to include the broadcom PHY module regardless of the +built-setting of the PTP subsystem. On ath79 (and probably more) +targets with Broadcom PHY, Gigabit operation is currently broken as the +PHY driver is only built as a module in case all kernel-packages are +built. Due to this circumstance, affected devices fall back to using the +generic PHY driver. + +Signed-off-by: David Bauer +--- + drivers/net/phy/Kconfig | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/net/phy/Kconfig ++++ b/drivers/net/phy/Kconfig +@@ -113,7 +113,7 @@ config BROADCOM_PHY + tristate "Broadcom 54XX PHYs" + select BCM_NET_PHYLIB + select BCM_NET_PHYPTP if NETWORK_PHY_TIMESTAMPING +- depends on PTP_1588_CLOCK_OPTIONAL ++ depends on NETWORK_PHY_TIMESTAMPING=n || PTP_1588_CLOCK_OPTIONAL + help + Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464, + BCM5481, BCM54810 and BCM5482 PHYs. From b0312c10818f36bc6e61a518bb528d2809562796 Mon Sep 17 00:00:00 2001 From: He Ping Date: Tue, 19 Nov 2024 10:41:42 +0800 Subject: [PATCH 06/15] odhcp6c: update to Git HEAD (2024-09-25) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit b6ae9ffaeb0e odhcp6c: allow to request specific ipv6 prefix Signed-off-by: He Ping Link: https://github.com/openwrt/openwrt/pull/17013 Signed-off-by: Petr Štetiar [hash, commit] --- package/network/ipv6/odhcp6c/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/package/network/ipv6/odhcp6c/Makefile b/package/network/ipv6/odhcp6c/Makefile index 894f388945..c16ecfa083 100644 --- a/package/network/ipv6/odhcp6c/Makefile +++ b/package/network/ipv6/odhcp6c/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=odhcp6c -PKG_RELEASE:=20 +PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcp6c.git -PKG_SOURCE_DATE:=2023-05-12 -PKG_SOURCE_VERSION:=bcd283632ac13391aac3ebdd074d1fd832d76fa3 -PKG_MIRROR_HASH:=0c18c578045f9251bd86a5b8fb0518b69c519e83f69907bf76583a2985482508 +PKG_SOURCE_DATE:=2024-09-25 +PKG_SOURCE_VERSION:=b6ae9ffaeb0e18e9fa3d5be62faa8d3c9f340a58 +PKG_MIRROR_HASH:=25499b6a0d403815e6b04869a02d2d5a32582348bff2bc2626559d297425a908 PKG_MAINTAINER:=Hans Dedecker PKG_LICENSE:=GPL-2.0 From dea839773c27430031c2a59c3d37ebdfef3937b9 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 18 Nov 2024 19:55:57 +0100 Subject: [PATCH 07/15] include/package-pack: add default 'provider_priority' for APK packages Currently, trying to use APK to install a package that has a dependency on a virtual package that needs to be resolved via 'provides' it will fail if package does not have 'DEFAULT_VARIANT:=1' like: apk add usbutils ERROR: unable to select packages: libudev (virtual): note: please select one of the 'provided by' packages explicitly provided by: libudev-zero required by: usbutils-017-r1[libudev] Issue is that we dont set 'provider_priority' that APK uses to break ties when choosing a virtual package to satisfy a dependency and thus despite only one package providing the dependency it will still end up with a tie and just error out. So, lets simply fix this by providing a default value for 'provider_priority' when 'DEFAULT_VARIANT' is not set and then APK will be able to resolve dependencies. Fixes: #16976 Link: https://github.com/openwrt/openwrt/pull/17008 Signed-off-by: Robert Marko --- include/package-pack.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/package-pack.mk b/include/package-pack.mk index 830b39f8d7..e9892f9ca6 100644 --- a/include/package-pack.mk +++ b/include/package-pack.mk @@ -359,7 +359,7 @@ else ) \ ), \ $$(prov) )" \ - $(if $(DEFAULT_VARIANT),--info "provider-priority:100") \ + $(if $(DEFAULT_VARIANT),--info "provider-priority:100",$(if $(PROVIDES),--info "provider-priority:1")) \ --script "post-install:$$(ADIR_$(1))/post-install" \ --script "pre-deinstall:$$(ADIR_$(1))/pre-deinstall" \ --info "depends:$$(foreach depends,$$(subst $$(comma),$$(space),$$(subst $$(space),,$$(subst $$(paren_right),,$$(subst $$(paren_left),,$$(Package/$(1)/DEPENDS))))),$$(depends))" \ From 8ec35a2a1533ccff8a4b0e6f4f0a0954d1bee6a6 Mon Sep 17 00:00:00 2001 From: Rodrigo Balerdi Date: Thu, 14 Nov 2024 17:37:32 -0300 Subject: [PATCH 08/15] ipq806x: tr4400v2: fix dtc warnings by deleting stock partitions The original set of stock partitions was kept in the TR4400 v2 port, with the same partition numbers but their names prefixed with 'stock_'. This allowed scripts (installation, back to stock, etc) to run on both stock and OpenWrt firmware. But this triggers warnings in the device tree compiler, as partitions of the old and new schemes overlap. This commit fixes the dtc warnings by deleting the stock partitions, also renumbering some of the remaining MTD partitions in the process. Additionally, the 'fw_env' partition is set to read-only. These changes can break existing scripts as well as user configurations that utilize the 'extra' partition. Users wanting to run old scripts can do so by reverting to the 23.05 series releases. Signed-off-by: Rodrigo Balerdi Link: https://github.com/openwrt/openwrt/pull/16958 Signed-off-by: Robert Marko --- .../boot/dts/qcom/qcom-ipq8065-tr4400-v2.dts | 30 ++----------------- 1 file changed, 3 insertions(+), 27 deletions(-) diff --git a/target/linux/ipq806x/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq8065-tr4400-v2.dts b/target/linux/ipq806x/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq8065-tr4400-v2.dts index 8410721b72..5d86d80047 100644 --- a/target/linux/ipq806x/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq8065-tr4400-v2.dts +++ b/target/linux/ipq806x/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq8065-tr4400-v2.dts @@ -204,8 +204,8 @@ }; }; }; - stock_partition@1340000 { - label = "stock_rootfs"; + partition@1340000 { + label = "extra"; reg = <0x1340000 0x4000000>; }; partition@5340000 { @@ -253,30 +253,10 @@ reg = <0x5f00000 0x0500000>; read-only; }; - stock_partition@6400000 { - label = "stock_rootfs_1"; - reg = <0x6400000 0x4000000>; - }; - stock_partition@a400000 { - label = "stock_fw_env"; - reg = <0xa400000 0x0100000>; - }; - stock_partition@a500000 { - label = "stock_config"; - reg = <0xa500000 0x0800000>; - }; - stock_partition@ad00000 { - label = "stock_PKI"; - reg = <0xad00000 0x0200000>; - }; - stock_partition@af00000 { - label = "stock_scfgmgr"; - reg = <0xaf00000 0x0100000>; - }; - partition@6400000 { label = "fw_env"; reg = <0x6400000 0x0100000>; + read-only; nvmem-layout { compatible = "fixed-layout"; @@ -304,10 +284,6 @@ label = "ubi"; reg = <0x6500000 0x9b00000>; }; - partition@1340000 { - label = "extra"; - reg = <0x1340000 0x4000000>; - }; }; }; }; From 0d0a5eb4b590f6f1f50040a56a35179886b40e62 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Tue, 19 Nov 2024 13:12:28 +0100 Subject: [PATCH 09/15] include/package-pack: translate PKGARCH for APK We have a lot of script-only packages that are universal for all arch-s and those set PKGARCH:=all to indicate it. Unfortunately, APK expects architecture to be set to "noarch" instead to indicate that its universal so instead of having to update all packages that set PKGARCH:=all and thus break OPKG lets simply translate "all" to "noarch" when generating the APK package. This will be required as soon we update APK to include [1] as it will start enforcing package architecture checks. [1] https://gitlab.alpinelinux.org/alpine/apk-tools/-/commit/c1a3e69f24e235fc78f4dddb1f85fdf281464446 Suggested-by: Jonas Gorski Link: https://github.com/openwrt/openwrt/pull/17015 Signed-off-by: Robert Marko --- include/package-pack.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/package-pack.mk b/include/package-pack.mk index e9892f9ca6..3ac7a036f9 100644 --- a/include/package-pack.mk +++ b/include/package-pack.mk @@ -344,7 +344,7 @@ else --info "name:$(1)$$(ABIV_$(1))" \ --info "version:$(VERSION)" \ --info "description:$$(call description_escape,$$(strip $$(Package/$(1)/description)))" \ - --info "arch:$(PKGARCH)" \ + $(if $(findstring all,$(PKGARCH)),--info "arch:noarch",--info "arch:$(PKGARCH)") \ --info "license:$(LICENSE)" \ --info "origin:$(SOURCE)" \ --info "url:$(URL)" \ From 1c308bad5445df91d901d8389bfe31c888d0e8c9 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Tue, 19 Nov 2024 14:36:17 +0100 Subject: [PATCH 10/15] imagebuilder: fix APK architecture setting Currently, when "apk add --initdb" is called it will populate the /etc/apk/arch file with the architecture of the host instead of the target package architecture and this will then make it impossible for new packages to be installed on the device as the target architecture will not match after APK is updated to include [1]. So, lets use override the architecture by passing the target package one by using the "--arch" argument to "apk add". [1] https://gitlab.alpinelinux.org/alpine/apk-tools/-/commit/c1a3e69f24e235fc78f4dddb1f85fdf281464446 Fixes: #16953 Link: https://github.com/openwrt/openwrt/pull/17015 Signed-off-by: Robert Marko --- target/imagebuilder/files/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/target/imagebuilder/files/Makefile b/target/imagebuilder/files/Makefile index d1502d40c1..2c6e26e4ee 100644 --- a/target/imagebuilder/files/Makefile +++ b/target/imagebuilder/files/Makefile @@ -200,7 +200,7 @@ ifeq ($(CONFIG_USE_APK),) $(OPKG) update >&2 || true; \ fi else - $(APK) add --initdb + $(APK) add --arch $(ARCH_PACKAGES) --initdb if [ -d "$(PACKAGE_DIR)" ] && ( \ [ ! -f "$(PACKAGE_DIR)/packages.adb" ] || \ [ "`find $(PACKAGE_DIR) -cnewer $(PACKAGE_DIR)/packages.adb`" ] ); then \ @@ -227,7 +227,7 @@ ifeq ($(CONFIG_USE_APK),) $(OPKG) install $(wildcard $(PACKAGE_DIR)/kernel_*.ipk) $(OPKG) install $(BUILD_PACKAGES) else - $(APK) add --no-scripts $(BUILD_PACKAGES) + $(APK) add --arch $(ARCH_PACKAGES) --no-scripts $(BUILD_PACKAGES) endif prepare_rootfs: FORCE From 6756929b75984d5da259c65a6da35095c9969162 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Tue, 19 Nov 2024 13:48:06 +0100 Subject: [PATCH 11/15] apk: update to git e3464d096708b270138653ef93db59134bb24813 (2024-11-13) Allows us to drop the description backport. Changes: e3464d0 db: make repository description an atom instead of allocation 417a93c pkg: truncate apkv3 description to 256 bytes d26b65d db, audit: remove support for files without embedded checksum 64ff8c7 db: allow files starting with a dot in the root directory of apk3 packages 89e4bf1 db, fs: do not extract devices in --usermode 4050f9e db: fix hardlink handling: root directory and v3 checksums ade0be3 db, extract: handle file/directory extraction errors more consistently a4837ae package: don't call make_device_tree when APK_NO_CHROOT is set 1e04115 package: respect libexecdir instead of hard-coding /usr/libexec 76970a9 package: move the location of executable package scripts 19b1df7 blob: refactor apk_blob_for_each_segment into apk_blob_foreach_word e38d5b5 test: add missing alpine tests makefile fcd4def test: move vertest to cmocka based unit testing infrastructure 8a13ed9 test: fix solver.sh for parallel use 5add6fc (tag: v3.0.0_pre4) apk-tools-3.0.0_pre4 5dd91e3 db: consider --force-no-chroot when determining /dev/fd availability d86afde db: print message when a file is written to .apk-new a5aeb3d test: unify makefile and meson tests a236fdd pkg: use memfd_create only if target root has dev/fd working 563d364 tests: minor updates to root tests 08b4d21 tests: move solver test data to separate directory c259642 tests: rework solver tests to not require apk-test binary d2aaf13 commit: sort matched dependencies on error analysis 98d7196 db: fix permissions of arch file b231eac db: simplify add_repos_from_file 2a3dbfc db: add and use apk_db_parse_file helper to parse files line by line c1a3e69 db: validate package arch against compatible arches Link: https://github.com/openwrt/openwrt/pull/17015 Signed-off-by: Robert Marko --- package/system/apk/Makefile | 8 ++-- ...ncate-apkv3-description-to-256-bytes.patch | 45 ------------------- 2 files changed, 4 insertions(+), 49 deletions(-) delete mode 100644 package/system/apk/patches/0020-pkg-truncate-apkv3-description-to-256-bytes.patch diff --git a/package/system/apk/Makefile b/package/system/apk/Makefile index fbb9ef85ee..693c008df9 100644 --- a/package/system/apk/Makefile +++ b/package/system/apk/Makefile @@ -1,13 +1,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=apk -PKG_RELEASE:=2 +PKG_RELEASE:=1 PKG_SOURCE_URL=https://gitlab.alpinelinux.org/alpine/apk-tools.git PKG_SOURCE_PROTO:=git -PKG_SOURCE_DATE:=2024-11-08 -PKG_SOURCE_VERSION:=d9c24813d983df9524fa7a2b78fc3132c159a20f -PKG_MIRROR_HASH:=3d1a79c08ef8c8b9404f9287d9acda6468b8b1c2a99dd384287f522ed3b1a047 +PKG_SOURCE_DATE:=2024-11-13 +PKG_SOURCE_VERSION:=e3464d096708b270138653ef93db59134bb24813 +PKG_MIRROR_HASH:=cc633e5c294c9d92391fba5537dfe2f12f82011b55d282beb0d5d7ceba212962 PKG_VERSION=3.0.0_pre$(subst -,,$(PKG_SOURCE_DATE)) diff --git a/package/system/apk/patches/0020-pkg-truncate-apkv3-description-to-256-bytes.patch b/package/system/apk/patches/0020-pkg-truncate-apkv3-description-to-256-bytes.patch deleted file mode 100644 index 62cdd9d0c9..0000000000 --- a/package/system/apk/patches/0020-pkg-truncate-apkv3-description-to-256-bytes.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 417a93ceae540444fdbd3f76d1dadf0e15621fdc Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Timo=20Ter=C3=A4s?= -Date: Wed, 13 Nov 2024 09:40:21 +0200 -Subject: [PATCH] pkg: truncate apkv3 description to 256 bytes - -The code to read/write installeddb does not really handle long -description well. Until the database is converted to apkv3 format, -truncate the apkv3 descriptions to allow existing code to work. - -APKv3 index and packages still contain the original long description -unmodified, so no package rebuild will be needed. - -fixes #11038 - -Upstream-Status: Backport [https://gitlab.alpinelinux.org/alpine/apk-tools/-/commit/417a93ceae540444fdbd3f76d1dadf0e15621fdc] ---- - src/apk_blob.h | 5 +++++ - src/package.c | 2 +- - 2 files changed, 6 insertions(+), 1 deletion(-) - ---- a/src/apk_blob.h -+++ b/src/apk_blob.h -@@ -48,6 +48,11 @@ static inline apk_blob_t apk_blob_trim(a - return b; - } - -+static inline apk_blob_t apk_blob_truncate(apk_blob_t blob, int maxlen) -+{ -+ return APK_BLOB_PTR_LEN(blob.ptr, min(blob.len, maxlen)); -+} -+ - char *apk_blob_cstr(apk_blob_t str); - apk_blob_t apk_blob_dup(apk_blob_t blob); - int apk_blob_split(apk_blob_t blob, apk_blob_t split, apk_blob_t *l, apk_blob_t *r); ---- a/src/package.c -+++ b/src/package.c -@@ -577,7 +577,7 @@ void apk_pkgtmpl_from_adb(struct apk_dat - - pkg->name = apk_db_get_name(db, adb_ro_blob(pkginfo, ADBI_PI_NAME)); - pkg->version = apk_atomize_dup(&db->atoms, adb_ro_blob(pkginfo, ADBI_PI_VERSION)); -- pkg->description = apk_atomize_dup0(&db->atoms, adb_ro_blob(pkginfo, ADBI_PI_DESCRIPTION)); -+ pkg->description = apk_atomize_dup0(&db->atoms, apk_blob_truncate(adb_ro_blob(pkginfo, ADBI_PI_DESCRIPTION), 512)); - pkg->url = apk_atomize_dup(&db->atoms, adb_ro_blob(pkginfo, ADBI_PI_URL)); - pkg->license = apk_atomize_dup(&db->atoms, adb_ro_blob(pkginfo, ADBI_PI_LICENSE)); - pkg->arch = apk_atomize_dup(&db->atoms, adb_ro_blob(pkginfo, ADBI_PI_ARCH)); From 890d47b60a221328bbf05518eedc35ac5bd922f1 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Wed, 16 Oct 2024 15:17:14 -0700 Subject: [PATCH 12/15] mpc85xx: run make kernel_oldconfig Adjusts the default config to modern kernels. Signed-off-by: Rosen Penev Link: https://github.com/openwrt/openwrt/pull/16847 Signed-off-by: Robert Marko --- target/linux/mpc85xx/config-6.6 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/target/linux/mpc85xx/config-6.6 b/target/linux/mpc85xx/config-6.6 index 132917bf2b..30a551e55e 100644 --- a/target/linux/mpc85xx/config-6.6 +++ b/target/linux/mpc85xx/config-6.6 @@ -40,6 +40,7 @@ CONFIG_COMPAT_32BIT_TIME=y # CONFIG_CORENET_GENERIC is not set # CONFIG_CPM2 is not set CONFIG_CPU_BIG_ENDIAN=y +CONFIG_CPU_MITIGATIONS=y # CONFIG_CRYPTO_AES_PPC_SPE is not set CONFIG_CRYPTO_AUTHENC=y CONFIG_CRYPTO_HW=y @@ -71,6 +72,7 @@ CONFIG_EDAC_SUPPORT=y CONFIG_EXCLUSIVE_SYSTEM_RAM=y # CONFIG_FIREBOX_T10 is not set CONFIG_FIXED_PHY=y +CONFIG_FORCE_NR_CPUS=y CONFIG_FSL_EMB_PERFMON=y # CONFIG_FSL_FMAN is not set CONFIG_FSL_LBC=y @@ -84,7 +86,6 @@ CONFIG_FUNCTION_ALIGNMENT=0 CONFIG_FWNODE_MDIO=y CONFIG_FW_LOADER_PAGED_BUF=y CONFIG_FW_LOADER_SYSFS=y -CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y CONFIG_GENERIC_ALLOCATOR=y CONFIG_GENERIC_ATOMIC64=y CONFIG_GENERIC_BUG=y From e9dd6da91661612d2330c2b633f3dd55b93218f8 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Wed, 16 Oct 2024 15:42:56 -0700 Subject: [PATCH 13/15] mpc85xx: p1010: add missing symbols Since kernel_oldconfig doesn't work properly with it, I ran that first and then moved all the config symbols to config-6.6 and found the differences. Signed-off-by: Rosen Penev Link: https://github.com/openwrt/openwrt/pull/16847 Signed-off-by: Robert Marko --- target/linux/mpc85xx/p1010/config-default | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/target/linux/mpc85xx/p1010/config-default b/target/linux/mpc85xx/p1010/config-default index 5a17e38f5c..22801b9c2b 100644 --- a/target/linux/mpc85xx/p1010/config-default +++ b/target/linux/mpc85xx/p1010/config-default @@ -1,11 +1,19 @@ CONFIG_BR200_WP=y CONFIG_CMDLINE_OVERRIDE=y +CONFIG_CRC16=y +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_ZSTD=y +CONFIG_DEFAULT_UIMAGE=y CONFIG_FIREBOX_T10=y # CONFIG_FSL_CORENET_CF is not set CONFIG_FSL_IFC=y CONFIG_GPIO_74X164=y +CONFIG_GRO_CELLS=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y CONFIG_MEMORY=y -CONFIG_MTD_CFI=y CONFIG_MTD_NAND_FSL_IFC=y CONFIG_MTD_PHYSMAP=y CONFIG_MTD_SPLIT_TPLINK_FW=y @@ -14,6 +22,7 @@ CONFIG_MTD_UBI=y CONFIG_MTD_UBI_BEB_LIMIT=20 CONFIG_MTD_UBI_BLOCK=y CONFIG_MTD_UBI_WL_THRESHOLD=4096 +CONFIG_NEED_DMA_MAP_STATE=y CONFIG_NET_DEVLINK=y CONFIG_NET_DSA=y CONFIG_NET_DSA_QCA8K=y @@ -27,7 +36,16 @@ CONFIG_REALTEK_PHY=y CONFIG_RED_15W_REV1=y CONFIG_REGMAP=y CONFIG_REGULATOR=y +CONFIG_SGL_ALLOC=y +CONFIG_SPI_BITBANG=y CONFIG_SPI_GPIO=y +CONFIG_SWIOTLB=y CONFIG_TL_WDR4900_V1=y CONFIG_UBIFS_FS=y CONFIG_WS_AP3715I=y +CONFIG_XXHASH=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_ZLIB_INFLATE=y +CONFIG_ZSTD_COMMON=y +CONFIG_ZSTD_COMPRESS=y +CONFIG_ZSTD_DECOMPRESS=y From bec8edb6d61eb74e8d7578749560cbb5040f307a Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Thu, 17 Oct 2024 16:09:17 -0700 Subject: [PATCH 14/15] mpc85xx: p1020: add missing symbols Since kernel_oldconfig doesn't work properly with it, I ran that first and then moved all the config symbols to config-6.6 and found the differences. Signed-off-by: Rosen Penev Link: https://github.com/openwrt/openwrt/pull/16847 Signed-off-by: Robert Marko --- target/linux/mpc85xx/p1020/config-default | 29 +++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/target/linux/mpc85xx/p1020/config-default b/target/linux/mpc85xx/p1020/config-default index 66710a9ace..6169791007 100644 --- a/target/linux/mpc85xx/p1020/config-default +++ b/target/linux/mpc85xx/p1020/config-default @@ -1,24 +1,31 @@ -CONFIG_ARCH_HAS_TICK_BROADCAST=y CONFIG_AT803X_PHY=y CONFIG_B53=y CONFIG_B53_MDIO_DRIVER=y CONFIG_BCM_NET_PHYLIB=y CONFIG_BROADCOM_PHY=y CONFIG_CMDLINE_OVERRIDE=y +CONFIG_CONTEXT_TRACKING=y +CONFIG_CONTEXT_TRACKING_IDLE=y CONFIG_CPU_RMAP=y +CONFIG_CRC16=y +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_ZSTD=y +CONFIG_DEFAULT_UIMAGE=y CONFIG_EEPROM_LEGACY=y -# CONFIG_FSL_CORENET_CF is not set CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y CONFIG_GENERIC_TBSYNC=y CONFIG_GPIO_74X164=y # CONFIG_GPIO_MAX77620 is not set CONFIG_GRO_CELLS=y -CONFIG_HAVE_RCU_TABLE_FREE=y CONFIG_HIVEAP_330=y CONFIG_I2C_CHARDEV=y CONFIG_LEDS_LP5521=y CONFIG_LEDS_LP55XX_COMMON=y CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y # CONFIG_MAX77620_THERMAL is not set # CONFIG_MAX77620_WATCHDOG is not set CONFIG_MFD_CORE=y @@ -46,16 +53,30 @@ CONFIG_NET_SWITCHDEV=y CONFIG_NR_CPUS=2 CONFIG_PADATA=y CONFIG_PANDA=y +CONFIG_PHYLINK=y +CONFIG_PPC_ZIMAGE_LA3000000=y +CONFIG_QCOM_NET_PHYLIB=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=y CONFIG_REGMAP_IRQ=y CONFIG_REGULATOR=y CONFIG_RFS_ACCEL=y CONFIG_RPS=y -# CONFIG_RTC_DRV_MAX77686 is not set CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_SGL_ALLOC=y CONFIG_SMP=y +CONFIG_SOCK_RX_QUEUE_MAPPING=y +CONFIG_SPI_BITBANG=y CONFIG_SPI_GPIO=y CONFIG_TREE_RCU=y +CONFIG_TREE_SRCU=y CONFIG_UBIFS_FS=y CONFIG_WS_AP3710I=y CONFIG_WS_AP3825I=y CONFIG_XPS=y +CONFIG_XXHASH=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_ZLIB_INFLATE=y +CONFIG_ZSTD_COMMON=y +CONFIG_ZSTD_COMPRESS=y +CONFIG_ZSTD_DECOMPRESS=y From 22664498ebdd47aad9b15f62edbcaadd851fd62c Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Thu, 17 Oct 2024 16:14:07 -0700 Subject: [PATCH 15/15] mpc85xx: p2020: add missing symbols Since kernel_oldconfig doesn't work properly with it, I ran that first and then moved all the config symbols to config-6.6 and found the differences. Signed-off-by: Rosen Penev Link: https://github.com/openwrt/openwrt/pull/16847 Signed-off-by: Robert Marko --- target/linux/mpc85xx/p2020/config-default | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/target/linux/mpc85xx/p2020/config-default b/target/linux/mpc85xx/p2020/config-default index ff8c8cb939..bfdb48959a 100644 --- a/target/linux/mpc85xx/p2020/config-default +++ b/target/linux/mpc85xx/p2020/config-default @@ -1,16 +1,16 @@ CONFIG_BLK_DEV_NVME=y +CONFIG_CONTEXT_TRACKING=y +CONFIG_CONTEXT_TRACKING_IDLE=y CONFIG_CPU_RMAP=y CONFIG_DEFAULT_UIMAGE=y CONFIG_FSL_ULI1575=y CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y CONFIG_GENERIC_IRQ_MIGRATION=y CONFIG_GENERIC_MSI_IRQ=y -CONFIG_GENERIC_MSI_IRQ_DOMAIN=y CONFIG_GENERIC_TBSYNC=y CONFIG_IRQ_DOMAIN_HIERARCHY=y CONFIG_LOCK_SPIN_ON_OWNER=y CONFIG_MAX63XX_WATCHDOG=y -CONFIG_MDIO_DEVRES=y CONFIG_MPC85xx_RDB=y CONFIG_MTD_CFI=y CONFIG_MTD_NAND_FSL_ELBC=y @@ -36,6 +36,7 @@ CONFIG_RPS=y CONFIG_RTC_DRV_DS1307=y CONFIG_RWSEM_SPIN_ON_OWNER=y CONFIG_SMP=y +CONFIG_SOCK_RX_QUEUE_MAPPING=y CONFIG_SWIOTLB=y CONFIG_TARGET_CPU="8540" CONFIG_TARGET_CPU_BOOL=y