Tag: lede
-
在 TP-Link wdr4300 對 OpenWrt/LEDE 的 ath9k driver 打 patch
1. 目標 透過 OpenWrt/LEDE 的 quilt 將 ath9k 打上 patch,把 ath9k/xmit.c、ath9k/recv.c、net/mac80211/tx.c 特定的 function static 修飾字消除,以利 ftrace / perf 能夠順利取得 symbol 進行追蹤。 2. 方法 a. 找出 ath9k 在 OpenWrt/LEDE 正確的 package b. 使用 quilt 對 ath9k 以及 mac80211 打 patch c. 重新編譯後替換 ath9k.ko / 或重新刷機 3. 實做 a. 找出 ath9k 在 OpenWrt/LEDE 正確的 package 一般來說,kernel code 應該是在…
-
Perf tracing wireless driver on LEDE/OpenWRT
1. Config LEDE/OpenWRT with CONFIG_PACKAGE_perf=y CONFIG_KERNEL_PERF_EVENTS=y 2. Add dynamic probe with external modules $ perf probe -a -m /lib/modules/4.9.109/ath9k.ko ‘ath_tx*’ $ perf probe -a -m /lib/modules/4.9.109/ath9k.ko ‘ath9k_wake_tx_queue’ $ perf probe -a -m /lib/modules/4.9.109/mac80211.ko ‘fq_*’ $ perf probe -a -m /lib/modules/4.9.109/mac80211.ko ‘ieee80211_tx*’ 3. Perf Recording # Sample CPU stack traces, only with “probe:” events, by ping,…
-
LEDE/OpenWrt C2600 ath10k firmware crashed
When using flent to test rrul_50_up, LEDE/OpenWrt C2600 will crash like this: [ 664.801738] ath10k_pci 0000:01:00.0: firmware crashed! (guid cf7a9dbc-bfbb-4513-9272-51c025a1b28f) [ 664.801788] ath10k_pci 0000:01:00.0: qca99x0 hw2.0 target 0x01000000 chip_id 0x003b01ff sub 168c:0002 [ 664.809597] ath10k_pci 0000:01:00.0: kconfig debug 1 debugfs 1 tracing 1 dfs 1 testmode 1 [ 664.821109] ath10k_pci 0000:01:00.0: firmware ver 10.4.1.00030-1 api…
-
Develop process in Linux ath10k driver with LEDE
ath repo: https://bitbucket.org/mlouielu/ath LEDE repo: https://github.com/lede-project/source, commit: 99be4170cb27e ath repo: git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git, commit: e72acb704e94 Modify ATH10k Most of the time ath repo’s ath10k source code will surpass LEDE’s ath10k source code, you will need to know this and change the code when building got conflict. The step I use is: Change code for ath10k driver git…
-
Building LEDE / OpenWrt for TP-Link C2600 with ftrace enable
Summary: Using Linux kernel ftrace to trace down kernel problems is essential in different ways, this post is to summarize how to build a LEDE / OpenWrt image for C2600 with ftrace enable (CONFIG_FUNCTION_TRACER, CONFIG_DYNAMIC_FTRACE, CONFIG_FUNCTION_GRAPH_TRACER, CONFIG_FUNCTION_PROFILER). 0x1 Prepare LEDE source code Make sure you get LEDE source code from GitHub mirror or their git. You can take a…
-
Build LEDE for TP-Link Archer C2600 from source
LEDE Project 是一個基於 OpenWrt 的 Linux 作業系統。她能夠取代由供應商提供的無線路由器或是其他非網路裝置的韌體。 本篇文章將會紀錄如何從 source code 編譯起 LEDE 給予 TP-Link Archer C2600 使用。 0x1 取得原始碼 我們可以從 LEDE Project 的 git 或是 GitHub mirror 取得原始碼: $ git clone https://github.com/lede-project/source lede $ cd lede $ ls bin BSDmakefile build_dir config Config.in dl feeds feeds.conf.default include key-build key-build.pub LICENSE Makefile package README rules.mk scripts staging_dir target…