4554ee652caf mt76: mt7921: fix warning Using plain integer as NULL pointer a3f1d6ccf3ca mt76: mt7921: add missing bh-disable around rx napi schedule 9aeca2a5ce47 mt76: mt7921: get rid of mt7921_mcu_exit fee8a5911c76 mt76: connac: move shared fw structures in connac module db4d784ae7ba mt76: mt7921: move fw toggle in mt7921_load_firmware 16ab6bf49556 mt76: connac: move mt76_connac2_load_ram in connac module 29fd748801c6 mt76: connac: move mt76_connac2_load_patch in connac module 051c68d18214 mt76: mt7663: rely on mt76_connac2_fw_trailer d6ae3505ac6c mt76: enable the VHT extended NSS BW feature 488a5ccc9762 mt76: mt7921: rely on mt76_dev in mt7921_mac_write_txwi signature 934029bb93e2 mt76: mt7915: rely on mt76_dev in mt7915_mac_write_txwi signature ecefae4c7d72 mt76: connac: move mac connac2 defs in mt76_connac2_mac.h b5eecc841df8 mt76: connac: move connac2_mac_write_txwi in mt76_connac module 012e619a07b9 mt76: connac: move mt76_connac2_mac_add_txs_skb in connac module 1b492be795ea mt76: mt7921: not support beacon offload disable command f1f46d3b4b19 mt76: mt7921: fix command timeout in AP stop period cae61112ef1d mt76: connac: move HE radiotap parsing in connac module 487674062643 mt76: connac: move mt76_connac2_reverse_frag0_hdr_trans in mt76-connac module 649bdc4983c4 mt76: connac: move mt76_connac2_mac_fill_rx_rate in connac module cb75aaa39252 mt76: mt7921s: remove unnecessary goto in mt7921s_mcu_drv_pmctrl e0eaf66eaebb mt76: mt7615: do not update pm stats in case of error f8d125b4ea30 mt76: mt7921: do not update pm states in case of error 6329a834907e mt76: mt7921s: fix possible sdio deadlock in command fail 8a04f1b04662 mt76: mt7921: fix aggregation subframes setting to HE max e52283439094 mt76: mt7915: disable UL MU-MIMO for mt7915 fd3958970e3d mt76: mt7921: enlarge maximum VHT MPDU length to 11454 18df38fe77f7 mt76: mt7915: get rid of unnecessary new line in mt7915_mac_write_txwi 149e95f5d7a6 mt76: connac: move mt76_connac_fw_txp in common module 899d192e8a79 mt76: move mt7615_txp_ptr in mt76_connac module 7184f0a6f6a5 mt76: connac: move mt76_connac_tx_free in shared code c42d45278fa5 mt76: connac: move mt76_connac_tx_complete_skb in shared code 0993f4ef96f8 mt76: connac: move mt76_connac_write_hw_txp in shared code 467960fab791 mt76: connac: move mt7615_txp_skb_unmap in common code 2e758064b085 mt76: mt7915: rely on mt76_connac_tx_free 2065a7901671 mt76: move mcu_txd/mcu_rxd structures in shared code 576c1b7c472b mt76: move mt76_connac2_mcu_fill_message in mt76_connac module 7275f7758090 mt76: mt7915: fix incorrect testmode ipg on band 1 caused by wmm_idx Signed-off-by: Felix Fietkau <nbd@nbd.name>
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!
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.6+ 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