8f782ed07d
890ae4d717f1 wifi: mt76: mt76x02: fix MT76x0 external LNA gain handling fcc2f3d82bc9 wifi: mt76: fix lock dependency problem for wed_lock 77cc14596202 wifi: mt76: mt792x: move mt7921_skb_add_usb_sdio_hdr in mt792x module bc85355885d1 wifi: mt76: mt792x: move some common usb code in mt792x module c27f01c4c834 wifi: mt76: mt7996: get tx_retries and tx_failed from txfree 30aba4c18307 wifi: mt76: mt7996: Add mcu commands for getting sta tx statistic 119bebff244b wifi: mt76: mt7996: enable PPDU-TxS to host a4005e0e83e7 wifi: mt76: mt7996: remove periodic MPDU TXS request d6cc20bf5913 wifi: mt76: reduce spin_lock_bh held up in mt76_dma_rx_cleanup 5d94251d641c wifi: mt76: mt7921: move connac nic capability handling to mt7921 266341b5019d wifi: mt76: mt7921: enable set txpower for UNII-4 581449ac5274 wifi: mt76: mt7921: add 6GHz power type support for clc 9bfd669e9477 wifi: mt76: mt7921: get regulatory information from the clc event 4a0f839da0f1 wifi: mt76: mt7921: update the channel usage when the regd domain changed f4df423d3d56 wifi: mt76: add ability to explicitly forbid LED registration with DT 54d369e79972 wifi: mt76: mt7921: support 5.9/6GHz channel config in acpi b39b6cba220f wifi: mt76: mt7996: fix uninitialized variable in parsing txfree 77194e652885 wifi: mt76: fix typo in mt76_get_of_eeprom_from_nvmem function c37738fc9097 wifi: mt76: limit support of precal loading for mt7915 to MTD only d6e8aa634a19 wifi: mt76: make mt76_get_of_eeprom static again d1c671a90eba wifi: mt76: permit to use alternative cell name to eeprom NVMEM load 5539001fe4e3 wifi: mt76: permit to load precal from NVMEM cell for mt7915 48d413380685 wifi: mt76: Remove unnecessary (void*) conversions ea2814289147 wifi: mt76: mmio: move mt76_mmio_wed_{init,release}_rx_buf in common code 9fb0277d7ee8 wifi: mt76: move mt76_mmio_wed_offload_{enable,disable} in common code 4b47145ecf44 wifi: mt76: move mt76_net_setup_tc in common code d798d5d6f770 wifi: mt76: introduce mt76_queue_is_wed_tx_free utility routine 48b0cedbf83f wifi: mt76: introduce wed pointer in mt76_queue c550204e347d wifi: mt76: increase MT_QFLAG_WED_TYPE size 2e7f30f22cfd wifi: mt76: mt7996: add wed tx support ec8765a02fc8 wifi: mt76: dma: introduce __mt76_dma_queue_reset utility routine a469aaac9784 wifi: mt76: mt7996: use u16 for val field in mt7996_mcu_set_rro signature abca260a15c4 wifi: mt76: mt7996: add wed rx support be2e74c0c495 wifi: mt76: move wed reset common code in mt76 module 7f17e164fbb4 wifi: mt76: mt7996: add wed reset support 0f89bf58efda wifi: mt76: mt7996: add wed rro delete session garbage collector a58b75f863ca wifi: mt76: mt7915: fallback to non-wed mode if platform_get_resource fails in mt7915_mmio_wed_init() 36d2ddd94eeb wifi: mt76: mt7996: add support for variants with auxiliary RX path cec7720c9341 wifi: mt76: mt7996: add TX statistics for EHT mode in debugfs 9852093062e8 wifi: mt76: connac: add thermal protection support for mt7996 955540a4df74 wifi: mt76: mt7996: add thermal sensor device support af41374a3b8e wifi: mt76: connac: add beacon duplicate TX mode support for mt7996 3c98d7b7fa23 wifi: mt76: mt7996: fix the size of struct bss_rate_tlv ee2169c00539 wifi: mt76: mt7996: adjust WFDMA settings to improve performance 0aead5de68a7 wifi: mt76: connac: set fixed_bw bit in TX descriptor for fixed rate frames ab5580ff5a4f wifi: mt76: mt7996: handle IEEE80211_RC_SMPS_CHANGED eed234afed7e wifi: mt76: mt7996: align the format of fixed rate command d9a855285b95 wifi: mt76: mt7996: fix rate usage of inband discovery frames 47799aefe263 wifi: mt76: change txpower init to per-phy 264e1ecfe1b4 wifi: mt76: mt7996: add txpower setting support c7b243b127eb wifi: mt76: use chainmask for power delta calculation 05f433900a02 wifi: mt76: mt7996: switch to mcu command for TX GI report ae963198e605 wifi: mt76: mt7996: fix alignment of sta info event d0d2e03591d6 wifi: mt76: mt7996: rework ampdu params setting e87f4efc7638 wifi: mt76: connac: add beacon protection support for mt7996 0dfcc53a8e5d wifi: mt76: connac: fix EHT phy mode check 30c54a53bf8b wifi: mt76: mt7915: fix EEPROM offset of TSSI flag on MT7981 17297c97b737 wifi: mt76: mt7915: also MT7981 is 3T3R but nss2 on 5 GHz band eeb48c081034 wifi: mt76: mt7996: fix mt7996_mcu_all_sta_info_event struct packing b74ad922659c wifi: mt76: mt7996: introduce mt7996_band_valid() 51cb541c1e53 wifi: mt76: connac: add firmware support for mt7992 c0eda4d96ec8 wifi: mt76: mt7996: add DMA support for mt7992 f12471968a53 wifi: mt76: mt7996: rework register offsets for mt7992 8d11dae73eb8 wifi: mt76: mt7996: support mt7992 eeprom loading 6c2b2c37abd7 wifi: mt76: mt7996: adjust interface num and wtbl size for mt7992 df1d3b3c67e5 wifi: mt76: connac: add new definition of tx descriptor f997e759cea5 wifi: mt76: mt7996: add PCI IDs for mt7992 94e3632e4e93 wifi: mt76: mt7925: remove iftype from mt7925_init_eht_caps signature 9c7b98c03173 net: ethernet: mtk_wed: rename mtk_rxbm_desc in mtk_wed_bm_desc 4423b4eb69fb wifi: mt76: mt7996: fix endianness in mt7996_mcu_wed_rro_event b97d899a7907 wifi: mt76: mt7921: fix kernel panic by accessing invalid 6GHz channel info 9ef06028d4fe wifi: mt76: mt7921s: fix workqueue problem causes STA association fail 95c14207d2a9 wifi: mt76: mt7996: set DMA mask to 36 bits for boards with more than 4GB of RAM dbea5151412b wifi: mt76: mt7921: reduce the size of MCU firmware download Rx queue a84a355d2e0a wifi: mt76: mt7921: fix country count limitation for CLC c498f27ad075 wifi: mt76: mt7921: fix CLC command timeout when suspend/resume 3098d968abe4 wifi: mt76: mt7921: fix wrong 6Ghz power type 7730fc91dd15 wifi: mt76: fix shift overflow warnings on 32 bit systems f559adf1849c wifi: mt76: fix crash with WED rx support enabled Signed-off-by: Felix Fietkau <nbd@nbd.name> |
||
---|---|---|
.devcontainer/ci-env | ||
.github | ||
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 MacOSX 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 -a
to obtain all the latest package definitions defined in feeds.conf / feeds.conf.default -
Run
./scripts/feeds install -a
to install symlinks for all obtained packages into package/feeds/ -
Run
make menuconfig
to select your preferred configuration for the toolchain, target system & firmware packages. -
Run
make
to 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
#openwrt
on oftc.net.
Developer Community
- Bug Reports: Report bugs in OpenWrt
- Dev Mailing List: Send patches
- Dev Chat: Channel
#openwrt-devel
on oftc.net.
License
OpenWrt is licensed under GPL-2.0