f473d66ab595 wifi: mt76: mt7996: fix crash in mt7996_tx_prepare_skb 7d17569dae17 wifi: mt76: mt7996: grab mt76 mutex in mt7996_mac_sta_event() 2650a7b63d9e wifi: mt76: mt7996: move mt7996_update_beacons under mt76 mutex 5f29f4ca68ea wifi: mt76: Move mt76_abort_scan out of mt76_reset_device() b01325c2d9a4 wifi: mt76: mt7996: skip deflink accounting for offchannel links 3cdafc1b1320 wifi: mt76: mt7996: skip ieee80211_iter_keys() on scanning link remove e2a5529fa153 wifi: mt76: mt7996: Add missing locking in mt7996_mac_sta_rc_work() 3c232526a0cd wifi: cfg80211/mac80211: Add support to get radio index 12c099c526a3 wifi: mt76: mt7996: extend CSA and CCA support for MLO 85c39fb2447c wifi: mt76: mt7996: fix the behavior of radar detection 3b11a2351769 wifi: mt76: mt7996: set specific BSSINFO and STAREC commands after channel switch cbafe36e86ee wifi: mt76: mt7996: abort CCA when CSA is starting acc24cb925d2 wifi: mt76: mt7996: offload radar threshold initialization febe6e372be8 wifi: mt76: mt7996: add duplicated WTBL command 9fa302a6832a wifi: mt76: mt7996: fix iface combination for different chipsets eeb6c8d05275 wifi: mt76: mt7925: fix AMPDU state handling in mt7925_tx_check_aggr 82c085f95abc wifi: mt76: mt76x02: wake queues after reconfig 7b76bbba591a wifi: mt76: mt7925: introduce CSA support in non-MLO mode 081a70280692 wifi: mt76: mt7996: Fix spelling mistake "retriving" -> "retrieving" 21cb56560766 wifi: mt76: mt7996: Set mtxq->wcid just for primary link be3d1224cc47 wifi: mt76: mt7996: Reset mtxq->idx if primary link is removed in mt7996_vif_link_remove() 66fea566f1c8 wifi: mt76: mt7996: Switch to the secondary link if the default one is removed c2b1d3ec94aa wifi: mt76: mt7996: Clear wcid pointer in mt7996_mac_sta_deinit_link() 11f24adb143a wifi: mt76: mt7996: Reset ampdu_state state in case of failure in mt7996_tx_check_aggr() 1b9739997207 wifi: mt76: mt7921: Reset ampdu_state state in case of failure in mt76_connac2_tx_check_aggr() 2e0a0f36ccf4 wifi: mt76: mt7925: Fix incorrect MLO mode in firmware control 85f5a3473bb8 wifi: mt76: mt792x: Fix a potential deadlock in high-load situations d9b9807a3d6a wifi: mt76: mt7615: fix use_cts_prot support 8ae9ae4225bf wifi: mt76: mt7915: fix use_cts_prot support 51a3b8c35d04 wifi: mt76: mt7996: add support for ERP CTS & HT protection cfbbb8e66a79 treewide, timers: Rename from_timer() to timer_container_of() f3dd8161204f mt76: mt7615: Fix memory leak in mt7615_mcu_wtbl_sta_add() e9d08e12bde1 treewide: Switch/rename to timer_delete[_sync]() f8684c6fb506 wifi: mt76: mt792x: fix wifi init fail by setting MCU_RUNNING after CLC load 3b4870dcc531 wifi: mt76: mt7925: fix potential deadlock in mt7925_roc_abort_sync d67da44b59e7 wifi: mt76: fix list corruption in mt76_wcid_cleanup ffdbdcd3966a wifi: mt76: set page_pool napi pointer for mmio devices 7dd72bbd6f51 wifi: mt76: Fix memory leak destroying device e992ff8842b3 wifi: mt76: mt7996: Fix NPU stop procedure 86a0bf3441ca wifi: mt76: npu: Add missing rx_token_size initialization 5c67ef508817 wifi: mt76: always enable RRO queues for non-MT7992 chipset 8e94d3266b45 wifi: mt76: mt7996: Fix BAND2 tx queues initialization when NPU is enabled bc5529c1239e wifi: mt76: mt7996: Fix wdma_idx for MT7996 device if NPU is enabled 853eafe8591f wifi: mt76: mt7996: Add mt7992_npu_txrx_offload_init routine cdb32a658b92 wifi: mt76: mt7996: Rename mt7996_npu_rxd_init() in mt7992_npu_rxd_init() 01575edfc36d wifi: mt76: mt7996: Add NPU support for MT7990 chipset d7a79fcece87 wifi: mt76: mt7996: Integrate NPU in RRO session management 9e10bcac8160 wifi: mt76: mt7996: Integrate MT7990 init configuration for NPU 8a02211445d0 wifi: mt76: mt7996: Integrate MT7990 dma configuration for NPU 56334c1c9bfd wifi: mt76: mt7996: Add __mt7996_npu_hw_init routine d78bce0a1515 wifi: mt76: mt7996: Move RRO dma start in a dedicated routine 9ccd49d45530 wifi: mt76: Do not reset idx for NPU tx queues during reset 2bc891cc94e0 wifi: mt76: mt7996: Do not schedule RRO and TxFree queues during reset for NPU e826923c533a wifi: mt76: mt7996: Store DMA mapped buffer addresses in mt7996_npu_hw_init() bd9fb7ac9790 wifi: mt76: Enable NPU support for MT7996 devices c825e8c80a40 wifi: mt76: Remove blank line after mt792x firmware version dmesg efbbfd5af082 wifi: mt76: mt7925: drop puncturing handling from BSS change path f5b57ffab5f8 wifi: mt76: mt7925: Skip scan process during suspend. 7ab500f7db73 wifi: mt76: Fix memory leak after mt76_connac_mcu_alloc_sta_req() 4b0df538fb35 wifi: mt76: mt7925: fix tx power setting failure after chip reset 7595227241fc wifi: mt76: mt7921: fix ROC abort flow interruption in mt7921_roc_work ee961ff91ec1 wifi: mt76: mt7921: fix potential deadlock in mt7921_roc_abort_sync db0460d6630a wifi: mt76: fix deadlock in remain-on-channel 07ae843cd42d wifi: mt76: mt7996: reset device after MCU message timeout a5930632e109 wifi: mt76: mt7996: increase txq memory limit to 32 MiB 2596285c6a10 wifi: mt76: fix multi-radio on-channel scanning 86abd922a489 wifi: mt76: support upgrading passive scans to active 093280ae5dcd wifi: mt76: fix backoff fields and max_power calculation b2fe7f146352 wifi: mt76: mt7921: Replace deprecated PCI function Signed-off-by: Felix Fietkau <nbd@nbd.name> |
||
|---|---|---|
| .devcontainer/ci-env | ||
| .github | ||
| .vscode | ||
| config | ||
| include | ||
| LICENSES | ||
| package | ||
| scripts | ||
| target | ||
| toolchain | ||
| tools | ||
| .gitattributes | ||
| .gitignore | ||
| BSDmakefile | ||
| Config.in | ||
| COPYING | ||
| feeds.conf.default | ||
| Makefile | ||
| README.md | ||
| rules.mk | ||
OpenWrt Project is a Linux operating system targeting embedded devices. Instead of trying to create a single, static firmware, OpenWrt provides a fully writable filesystem with package management. This frees you from the application selection and configuration provided by the vendor and allows you to customize the device through the use of packages to suit any application. For developers, OpenWrt is the framework to build an application without having to build a complete firmware around it; for users this means the ability for full customization, to use the device in ways never envisioned.
Sunshine!
Download
Built firmware images are available for many architectures and come with a package selection to be used as WiFi home router. To quickly find a factory image usable to migrate from a vendor stock firmware to OpenWrt, try the Firmware Selector.
If your device is supported, please follow the Info link to see install instructions or consult the support resources listed below.
An advanced user may require additional or specific package. (Toolchain, SDK, ...) For everything else than simple firmware download, try the wiki download page:
Development
To build your own firmware you need a GNU/Linux, BSD or macOS system (case sensitive filesystem required). Cygwin is unsupported because of the lack of a case sensitive file system.
Requirements
You need the following tools to compile OpenWrt, the package names vary between distributions. A complete list with distribution specific packages is found in the Build System Setup documentation.
binutils bzip2 diff find flex gawk gcc-6+ getopt grep install libc-dev libz-dev
make4.1+ perl python3.7+ rsync subversion unzip which
Quickstart
-
Run
./scripts/feeds update -ato obtain all the latest package definitions defined in feeds.conf / feeds.conf.default -
Run
./scripts/feeds install -ato install symlinks for all obtained packages into package/feeds/ -
Run
make menuconfigto select your preferred configuration for the toolchain, target system & firmware packages. -
Run
maketo build your firmware. This will download all sources, build the cross-compile toolchain and then cross-compile the GNU/Linux kernel & all chosen applications for your target system.
Related Repositories
The main repository uses multiple sub-repositories to manage packages of
different categories. All packages are installed via the OpenWrt package
manager called opkg. If you're looking to develop the web interface or port
packages to OpenWrt, please find the fitting repository below.
-
LuCI Web Interface: Modern and modular interface to control the device via a web browser.
-
OpenWrt Packages: Community repository of ported packages.
-
OpenWrt Routing: Packages specifically focused on (mesh) routing.
-
OpenWrt Video: Packages specifically focused on display servers and clients (Xorg and Wayland).
Support Information
For a list of supported devices see the OpenWrt Hardware Database
Documentation
Support Community
- Forum: For usage, projects, discussions and hardware advise.
- Support Chat: Channel
#openwrton oftc.net.
Developer Community
- Bug Reports: Report bugs in OpenWrt
- Dev Mailing List: Send patches
- Dev Chat: Channel
#openwrt-develon oftc.net.
License
OpenWrt is licensed under GPL-2.0
