OpenWRT

openwrt.org
OpenWRT Icon

Plenty of scope for customization and a ton of supported addons. Stateful firewall, NAT, and dynamically-configured port forwarding protocols (UPnP, NAT-PMP + upnpd, etc), Load balancing, IP tunneling, IPv4 & IPv6 support.

Open Source

OpenWRT Privacy Policy

Privacy Policy Summary

  • There is a date of the last update of the terms
  • The service can delete your account without prior notice and without a reason

Documents

Domains Covered by Policy

  • openwrt.org
  • forum.openwrt.org

About the Data

This data is kindly provided by tosdr.org. Read full report at: #1603

OpenWRT Source Code

Author

openwrt

Description

This repository is a mirror of https://git.openwrt.org/openwrt/openwrt.git It is for reference only and is not active for check-ins. We will continue to accept Pull Requests here. They will be merged via staging trees then into openwrt.git.

Homepage

License

NOASSERTION

Created

09 Nov 15

Last Updated

18 May 24

Latest version

v23.05.3

Primary Language

C

Size

242,325 KB

Stars

18,481

Forks

9,792

Watchers

18,481

Language Usage

Language Usage

Star History

Star History

Recent Commits

  • Paul Spooren (17 May 24)

    base-files: correctly split install-key function for APK The function incorrectly tried to APK keys even if there were none. Correctly separate it into its own `ifdef` section. Signed-off-by: Paul Spooren <[email protected]> Link: https://github.com/openwrt/openwrt/pull/15519 Signed-off-by: Christian Marangi <[email protected]>

  • Paul Spooren (17 May 24)

    apk: disable helptext for host build The host build would need Lua to compile which currently adds a race condition. Instead of tracking that down just disable helptext for the host build. Signed-off-by: Paul Spooren <[email protected]>

  • Paul Spooren (03 May 24)

    base-files: add compatibility for APK and OPKG Both package managers work slightly different, i.e. stores files at different places. Modify the `functions.sh` file to cover those. Signed-off-by: Paul Spooren <[email protected]>

  • Paul Spooren (03 May 24)

    base-files: add update_alternatives function The APK package manager does not support handling of package alternatives itself, so implement it via a simple shell script. Signed-off-by: Paul Spooren <[email protected]>

  • Paul Spooren (14 May 24)

    build: add APK package build capabilities A new option called `USE_APK` is added which generated APK packages (.apk) instead of OPKG packages (.ipk). Some features like fstools `snapshot` command are not yet ported Signed-off-by: Paul Spooren <[email protected]>

  • Paul Spooren (03 May 24)

    gitignore: ignore local APK keys Those keys should never be added to the git repository. Signed-off-by: Paul Spooren <[email protected]>

  • Paul Spooren (17 May 24)

    apk: add missing PROVIDES Add PROVIDES:=apk to the Makefile so we can default to install `apk` by default as a dependency. Signed-off-by: Paul Spooren <[email protected]>

  • Paul Spooren (03 May 24)

    rpcd: fix package dependency for APK Version dependencies must not contain spaces to be compatible with both OPKG and APK. Signed-off-by: Paul Spooren <[email protected]>

  • Tomasz Maciej Nowak (15 May 24)

    uboot-tegra: bump version to 2024.04 Since swig is mentioned as build dependency and buildbots have it installed we can safely bump version. Signed-off-by: Tomasz Maciej Nowak <[email protected]>

  • Tomasz Maciej Nowak (15 May 24)

    tegra: trimslice: enable USB HID driver Without serial or network access the only option for initial configuration, is a attached display with USB keyboard, but the keyboard driver needs to be installed first. So enable keyboard driver by default to avoid this issue. Signed-off-by: Tomasz Maciej Nowak <[email protected]>

  • Tomasz Maciej Nowak (15 May 24)

    tegra: trimslice: enable GPIO LEDs driver LEDs are on all the time since boot, until there's driver to claim them. Signed-off-by: Tomasz Maciej Nowak <[email protected]>

  • Tomasz Maciej Nowak (15 May 24)

    tegra: drop console specifiers from kernel commad line Because recent changes to procd, last "console" argument was used as primary argument and causing no terminal to be spawned on serial interface. So drop the hardcoded consoles in boot script, since dts has already an alias specified, which lets procd decide where to spawn the terminal. Signed-off-by: Tomasz Maciej Nowak <[email protected]>

  • Tomasz Maciej Nowak (15 May 24)

    tegra: pad rootfs to recreate overlay after upgrade The old overlay remained after upgrades and would cause failure on first boot after upgrade, in which no new overlay could be created while old one was unusable. Signed-off-by: Tomasz Maciej Nowak <[email protected]>

  • Paweł Owoc (26 Feb 24)

    qualcommax: ipq807x: add support for Linksys MX8500 Hardware specification: ======== SoC: Qualcomm IPQ8072A Flash: 512MB (Fidelix FMND4G08S3J-ID) RAM: 1GB (2x Kingston DDR3L D2516ECMDXGJD) Ethernet: 1x 10/100/1000/2500/5000Mbps (Marvell AQR114C) Ethernet: 4x 10/100/1000Mbps (Qualcomm QCA8075) WiFi1: 6GHz ax 4x4 (Qualcomm QCN9024 + Skyworks SKY85784-11) - channels 33-229 WiFi2: 5GHz ax 4x4 (Qualcomm QCN5054 + Skyworks SKY85755-11) - channels 36-177 WiFi3: 2.4GHz ax 4x4 (Qualcomm QCN5024 + Skyworks SKY8340-11) IoT: Bluetooth 5, Zigbee and Thread (NXP K32W041) LED: 1x RGB status (NXP PCA9633) USB: 1x USB 3.0 Button: WPS, Reset Flash instructions: ======== 1. Manually upgrade firmware using openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin image. More details can be found here: https://www.linksys.com/support-article?articleNum=47547 After first boot check actual partition: - fw_printenv -n boot_part and install firmware on second partition using command in case of 2: - mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin kernel and in case of 1: - mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin alt_kernel 2. Installation using serial connection from OEM firmware (default login: root, password: admin): - fw_printenv -n boot_part In case of 2: - flash_erase /dev/mtd21 0 0 - nandwrite -p /dev/mtd21 openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin or in case of 1: - flash_erase /dev/mtd23 0 0 - nandwrite -p /dev/mtd23 openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin After first boot install firmware on second partition: - mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin kernel or: - mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin alt_kernel 3. Installation from initramfs image using USB drive: Put the initramfs image on the USB drive: - dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx8500-initramfs-uImage.itb of=/dev/sda Stop u-boot and run: - usb start && usbboot $loadaddr 0 && bootm $loadaddr Write firmware to the flash from initramfs: - mtd -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin kernel and: - mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin alt_kernel 4. Back to the OEM firmware: - mtd -e kernel -n write FW_MX8500_1.0.11.208937_prod.img kernel and: - mtd -r -e alt_kernel -n write FW_MX8500_1.0.11.208937_prod.img alt_kernel 5. USB recovery: Put the initramfs image on the USB: - dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx8500-initramfs-uImage.itb of=/dev/sda Set u-boot env: - fw_setenv bootusb 'usb start && usbboot $loadaddr 0 && bootm $loadaddr' - fw_setenv bootcmd 'run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi' AQR firmware: ======== 1. Firmware loading: To properly load the firmware and initialize AQR PHY, we must use the u-boot aq_load_fw function. To do this, you need to modify u-boot env: With USB recovery: - fw_setenv bootcmd 'aq_load_fw; run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi' and without: - fw_setenv bootcmd 'aq_load_fw; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi' 2. Firmware updating: Newer firmware (AQR-G4_v5.6.5-AQR_WNC_SAQA-L2_GT_ID45287_VER24005.cld) is available in the latest OEM firmware. To load this firmware via u-boot, we need to add the MBN header and update 0:ethphyfw partition. For MBN header we can use script from this repository: https://github.com/testuser7/aqr_mbn_tool - python aqr_mbn_tool.py AQR-G4_v5.6.5-AQR_WNC_SAQA-L2_GT_ID45287_VER24005.cld To update partition we need to install kmod-mtd-rw package first: - insmod mtd-rw.ko i_want_a_brick=1 - mtd -e /dev/mtd26 -n write aqr_fw.mbn /dev/mtd26 Signed-off-by: Paweł Owoc <[email protected]> Link: https://github.com/openwrt/openwrt/pull/14883 Signed-off-by: Robert Marko <[email protected]>

  • Paweł Owoc (13 Mar 24)

    qualcommax: ipq807x: define common Linksys MX device Define common Linksys MX device for MX4200v1/v2 and MX5300. Signed-off-by: Paweł Owoc <[email protected]> Link: https://github.com/openwrt/openwrt/pull/14883 Signed-off-by: Robert Marko <[email protected]>

  • Paweł Owoc (13 Mar 24)

    qca-ssdk: add patch to support AQR114C-B0 PHY Add support for AQR114C-B0 PHY. Signed-off-by: Paweł Owoc <[email protected]> Link: https://github.com/openwrt/openwrt/pull/14883 Signed-off-by: Robert Marko <[email protected]>

  • Paweł Owoc (13 Mar 24)

    generic: 6.6: add patch to support AQR114C PHY ID Add support for AQR114C PHY ID. Signed-off-by: Paweł Owoc <[email protected]> Link: https://github.com/openwrt/openwrt/pull/14883 Signed-off-by: Robert Marko <[email protected]>

  • Paweł Owoc (13 Mar 24)

    qualcommax: ipq807x: Remove unused gpio from QPIC pins Remove gpio16 from the default NAND pinctrl configuration as its unused and only needed for LCD. Signed-off-by: Paweł Owoc <[email protected]> Link: https://github.com/openwrt/openwrt/pull/14883 Signed-off-by: Robert Marko <[email protected]>

  • Robert Marko (16 May 24)

    ipq806x: mr42/mr52: fix PCIe ports All three PCIe ports are reported non working on Meraki MR42/MR52 boards since kernel 6.1 with the issue of PCIe PHY link never coming up thus no WLAN cards are available on the boards. After debugging it seems that PCIe worked on 5.15 and older purely by accident as device DTS was using /delete-property/ perst-gpios; in each of the 3 PCIe nodes but there was no "perst-gpios" property in the SoC DTSI as it was still using the older "perst-gpio" property so it was not getting removed from the device DTS. However, in kernel 6.1 commit ("ARM: dts: qcom-*: replace deprecated perst-gpio with perst-gpios") updated all Qualcomm DTS-es to use the newer "perst-gpios" and thus once ipq806x moved to 6.1 PCIe stopped working as now that property was being dropped from the device DTS. So, since the removal of PERST pins seems to have been wrong from the start lets drop the property removal from MR42/MR52. Fixes: #15408 Link: https://github.com/openwrt/openwrt/pull/15509 Signed-off-by: Robert Marko <[email protected]>

  • Robert Marko (15 May 24)

    generic: 6.6: remove kernel export stripping patch Our kernel export stripping has been broken on 6.6 from the start since upstream kernel really reworked stuff in ("kbuild: generate KSYMTAB entries by modpost") and other commits as well. So, until this is either fixed or reworked lets drop the patch as it doesnt make sense to carry it knowing its broken and it can always be easily restored. Link: https://github.com/openwrt/openwrt/pull/15498 Signed-off-by: Robert Marko <[email protected]>

  • Robert Marko (15 May 24)

    config: build: dont allow STRIP_KERNEL_EXPORTS on kernel 6.6 STRIP_KERNEL_EXPORTS is currently not working on kernel 6.6 as there have been major changes in the upstream kernel. I have looked at it, and I dont think we can adapt the current patch to work so until this is fixed lets prevent STRIP_KERNEL_EXPORTS from being selected on 6.6. Link: https://github.com/openwrt/openwrt/pull/15498 Signed-off-by: Robert Marko <[email protected]>

  • Hauke Mehrtens (09 May 24)

    ramips: Fix use mac-base for TP-Link TL-MR6400 v4 and v5 Use mac-base for mac-base TP-Link TL-MR6400 v4 and v5 Signed-off-by: Hauke Mehrtens <[email protected]>

  • Hauke Mehrtens (09 May 24)

    ramips: Fix wmac dts definition for TP-Link TL-MR6400 v4 and v5 This code assumed that the mt7628an_tplink_8m.dtsi file defines mediatek,mtd-eeprom for the wmac and sets status to okay. The mediatek,mtd-eeprom definition was removed in commit e93f41adee3e ("ramips: convert MT7628 EEPROM to NVMEM format") but the dts for these two devices was not adapted to include the eeprom position on its own. The status = "okay" property was removed in 0a1d15642fa6 ("ramips: mt7628: use nvmem-layout"), but the property was not added to these dts files. Without this change wifi does not work for these devices. Fixes: e93f41adee3e ("ramips: convert MT7628 EEPROM to NVMEM format") Fixes: 0a1d15642fa6 ("ramips: mt7628: use nvmem-layout") Signed-off-by: Hauke Mehrtens <[email protected]>

  • David Adriao (10 May 24)

    mac80211: Add support for RTL8723BE This adds support for the RTL8723BE PCIe Wi-Fi Adapter by adding backports drivers Signed-off-by: David Adriao <[email protected]> [Do not remove rtl8xxxu and add dependency to rtl8723be-firmware] Signed-off-by: Hauke Mehrtens <[email protected]>

  • Martin Schiller (06 May 24)

    lantiq: add patch to fix the reset gpio handling in the pci driver Linux kernel commit 90c2d2eb7ab5 ("MIPS: pci: lantiq: switch to using gpiod API") not only switched to the gpiod API, but also inverted / changed the polarity of the GPIO. According to the PCI specification, the RST# pin is an active-low signal. However, most of the device trees that have been widely used for a long time (mainly in the openWrt project) define this GPIO as active-high and the old driver code inverted the signal internally. Apparently there are actually boards where the reset gpio must be operated inverted. For this reason, we cannot use the GPIOD_OUT_LOW/HIGH flag for initialization. Instead, we must explicitly set the gpio to value 1 in order to take into account any "GPIO_ACTIVE_LOW" flag that may have been set. In order to remain compatible with all these existing device trees, we should therefore keep the logic as it was before the commit. Signed-off-by: Martin Schiller <[email protected]>

  • Martin Schiller (16 Apr 24)

    lantiq: ltq-adsl-mei: use platform_get_irq to get irqs This is required for linux-6.1 compatibility. IRQs are not automatically mapped from HW to virtual IRQ numbers when the IRQ domain is registered. This happens when the IRQ number is read from the device tree based on the IRQ domain from the device tree now. In kernel 5.15 it was done when the IRQ domain was registered. Signed-off-by: Martin Schiller <[email protected]>

  • Martin Schiller (16 Apr 24)

    lantiq: dts: add missing irqs to mei node on AmazonSE, Danube and AR9 This adds to missing DyingGasp and USB OC interrupts to the mei node. Signed-off-by: Martin Schiller <[email protected]>

  • Martin Schiller (15 Apr 24)

    lantiq: ltq-vmmc: get irqs from kernel-in-tree vmmc driver Let's get the IRQs from the kernel-in-tree vmmc driver like it is already done for the cp1 base addr. Signed-off-by: Martin Schiller <[email protected]>

  • Martin Schiller (15 Apr 24)

    lantiq: vmmc kernel-in-tree driver: use platform_get_irq to get irqs This is required for linux-6.1 compatibility. IRQs are not automatically mapped from HW to virtual IRQ numbers when the IRQ domain is registered. This happens when the IRQ number is read from the device tree based on the IRQ domain from the device tree now. In kernel 5.15 it was done when the IRQ domain was registered. Signed-off-by: Martin Schiller <[email protected]>

  • Martin Schiller (12 Apr 24)

    lantiq: ltq-vmmc: fix write beyond size of field This fixes the write beyond size of field compile warning/error. Signed-off-by: Martin Schiller <[email protected]>

OpenWRT Website

Website

[OpenWrt Wiki] Welcome to the OpenWrt Project

Redirects

Does not redirect

Security Checks

All 66 security checks passed

Server Details

  • IP Address 64.226.122.113
  • Hostname wiki-03.infra.openwrt.org
  • Location Frankfurt am Main, Hessen, Germany, EU
  • ISP DigitalOcean LLC
  • ASN AS14061

Associated Countries

  • US
  • DE

Saftey Score

Website marked as safe

100%

Blacklist Check

openwrt.org was found on 0 blacklists

  • ThreatLog
  • OpenPhish
  • PhishTank
  • Phishing.Database
  • PhishStats
  • URLhaus
  • RPiList Not Serious
  • AntiSocial Blacklist
  • PhishFeed
  • NABP Not Recommended Sites
  • Spam404
  • CRDF
  • Artists Against 419
  • CERT Polska
  • PetScams
  • Suspicious Hosting IP
  • Phishunt
  • CoinBlockerLists
  • MetaMask EthPhishing
  • EtherScamDB
  • EtherAddressLookup
  • ViriBack C2 Tracker
  • Bambenek Consulting
  • Badbitcoin
  • SecureReload Phishing List
  • Fake Website Buster
  • TweetFeed
  • CryptoScamDB
  • StopGunScams
  • ThreatFox
  • PhishFort

Website Preview

OpenWRT Reviews

More Router Firmware

  • Easy and powerful user interface. Great access control, bandwidth monitoring and quality of service. IPTables is built-in for firewall, and there's great VPN support as well as additional plug-and-play and wake-on-lan features.

About the Data: OpenWRT

API

You can access OpenWRT's data programmatically via our API. Simply make a GET request to:

https://api.awesome-privacy.xyz/networking/router-firmware/openwrt

The REST API is free, no-auth and CORS-enabled. To learn more, view the Swagger Docs or read the API Usage Guide.

About the Data

Beyond the user-submitted YAML you see above, we also augment each listing with additional data dynamically fetched from several sources. To learn more about where the rest of data included in this page comes from, and how it is computed, see the About the Data section of our About page.

Share OpenWRT

Help your friends compare Router Firmware, and pick privacy-respecting software and services.
Share OpenWRT and Awesome Privacy with your network!

View Router Firmware (2)