_______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- This is the buildsystem for the OpenWrt Linux distribution. To build your own firmware you need a Linux, BSD or MacOSX system (case sensitive filesystem required). Cygwin is unsupported because of the lack of a case sensitive file system. You need gcc, binutils, bzip2, flex, python3.5+, perl, make, find, grep, diff, unzip, gawk, getopt, subversion, libz-dev and libc headers installed. 1. Run "./scripts/feeds update -a" to obtain all the latest package definitions defined in feeds.conf / feeds.conf.default 2. Run "./scripts/feeds install -a" to install symlinks for all obtained packages into package/feeds/ 3. Run "make menuconfig" to select your preferred configuration for the toolchain, target system & firmware packages. 4. Run "make" to build your firmware. This will download all sources, build the cross-compile toolchain and then cross-compile the Linux kernel & all chosen applications for your target system. Sunshine! Your OpenWrt Community http://www.openwrt.org
Mirror of https://git.lede-project.org/?p=source.git Please send your PRs against this tree. They will be merged via staging trees and appear in this tree once the staging trees get merged back into source.git
This is the buildsystem for the LEDE Linux distribution. Please use "make menuconfig" to choose your preferred configuration for the toolchain and firmware. You need to have installed gcc, binutils, bzip2, flex, python, perl, make, find,Category: C/C++ / Miscellaneous |
Watchers: 196 |
Star: 1.6k |
Fork: 1.9k |
Last update: Aug 4, 2022 |
Adds support for the Turris Omnia and builds an image in its native 'medkit' format. This is a rootfs tar, initial flash is via built-in recovery which formats the internal eMMC storage as btrfs and extracts the image. sysupgrade is not currently implemented. It is planned to use the same 'medkit' image with metadata for sysupgrade.
armada-385-turris-omnia.dts was added to the mainline kernel after 4.9. It has been backported as-is and patched separately so that the dts file may be removed for later kernels.
Notable hardware support omissions are support for switching between SFP cage and copper PHY, and RGB LED control.
Specifications:
- Marvell Armada 385 1.6GHz dual-core ARMv7 CPU
- 1GB DDR3 RAM
- 8GB eMMC Flash
- 5x Gigabit LAN via Marvell 88E6176 Switch (2x RGMII CPU ports)
- 1x switchable RJ45 (88E1514 PHY) / SFP SGMII WAN
- 2x USB 3.0
- 12x dimmable RGB LEDs controlled by independent microcontroller
- 3x Mini PCIe slots
- Compex WLE200N2 Mini PCIe AR9287 2x2 802.11b/g/n (2.4GHz)
- Compex WLE900VX Mini PCIe QCA9880 3x3 802.11ac (2.4 / 5GHz)
Flash instructions: (in a state of flux depending on image approach taken)
Specifications :
- Chispet : Qualcomm Atheros QCA953x
- 32 MB of RAM
- 4 MB of FLASH
- 1x 10/100Mbps Ethernet
- 1x switch with 4x 10/100Mbps port
- 2.4GHz wifi
- 2 Antennas on PCB
- UART pads on JP2 header
Flash instructions:
The dni image can be flashed over tftp using uboot firmware recovery mode via UART or Ethernet. Via UART, interupt the boot sequence by pressing any key, then use the 'fw_recovery' command to start the tftp server. Via ethernet, turn off the router, then power it on while pressing the reset button. When the status led starts blinking the tftp server has started. Maintain the reset button pressed until the flash has started. The recovery tftp server listens on 192.168.1.1, port 69.
Alternatively you can boot the initramfs without flashing the device
via the UART interface.
Start a tftp server listening on 192.168.1.10.
Use the 'tftpboot ' command to load the initramfs uImage.
Then use the 'bootm' command to start it.
Signed-off-by: Raphael Catolino [email protected]
Tested and working:
- Flashing from original webui using the factory images (it generates one for original firmware 1.1.4.168206 an another for 1.1.4.169978, newer US Firmwares are not supported due to signing)
- Sysupgrading from within OpenWrt.
- wifi 2.4GHz and 5GHz.
- wired lan
- usb storage
Pending:
- patch wifi iface mac address
This text is used by GitHub to remind important things to people posting PRs through the GitHub's web interface. See here for more information https://github.com/blog/2111-issue-and-pull-request-templates
Loosely inspired by OpenWRT package feed's own pull request template https://github.com/openwrt/packages/blob/master/.github/pull_request_template
Signed-off-by: Alberto Bursi [email protected]
In current state there's huge regression on ipq806x target that causes the device to transmit broken/malformed frames that are not corrected/detected by error control mechanisms and other less severe issues. https://bugs.lede-project.org/index.php?do=details&task_id=1197
This finally had been narrowed down to patch 0071-pcie-qcom-fixes.patch
Meanwhile QSDK contains a handful of commits that add support for ipq806x to upstream qcom pcie driver https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/log/drivers/pci/host/pcie-qcom.c?h=eggplant Unfortunately qca developers do not bother to push it upstream.
Using those commits instead of lede 0071 patch fixes mentioned issue and probably many others as it seems that corrupted data has been originating within pcie misconfiguration.
Fixes: FS#1197 and probably others Confirmed by at least 1 more user (besides me). https://forum.lede-project.org/t/netgear-r7800-exploration-ipq8065-qca9984/285/571 Need more testers to confirm that it's not just a coincidence.
According to QSDK and OEM tarballs (checked c2600, r7500v2, r7800) 2nd pci slot (pci1, 2,4 GHz card)) on ap148 based boards should operate in gen1 mode.
In previous commit we've added the support for this option, so enable it in DT for affected devices.
QSDK ref: https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?h=release/endive_preview_cc&id=f3b07fe309027c52fc163149500cedddd707c506
Add an opensource Qualcomm Shortcut FE driver.
The driver consists of:
- sfe (core modules): shortcut-fe (ipv4) and shortcut-fe-ipv6 - modules that actually do the offloading
- shortcut-fe-cm - simple shortcut-fe connection manager - a module that creates offloading rules and passes to sfe
- fast-classifier - advanced connection manager - a module that creates offloading rules and passes to sfe. Comparing to sfe-cm has additional checks, connection statistics and creates an offloading rule only when a connection hits 128 packets flowed (can be adjusted through /sys/fast_classifier/offload_at_pkts)
- userspace-fast-classifier - a fast-classifier user-space tool to manually add connections one want to offload Both sfe-cm and fast-classifier get information about connections through netfilter. And after some checks it creates an offloading rule that is passed to sfe. After that sfe marks a connection as fast-forwarded and routes the flow.
Kernel parses this mark and bypasses its network stack taps for a specific connection in favor of sfe.
There are 3 patches added with this commit: 950 - adds a hook into network stack, sets no tcp window check to 0 (according to sfe readme). 951 - because fast-classifier also supports bridge offloading (echo 1 > /sys/fast_classifier/skip_to_bridge_ingress) and offloaded connections do not naturally update bridge statistics, fast-classifier will do that. 952 - allow multiple listeners for conntrack events, it is requied for netlink and sfe coexistance (for example)
All these patches are filled with ifdefs so the sfe code path is engaged only when these modules are compiled. It allows to keep kernel code untouched in case of no sfe compiled in.
Because sfe-cm and fast-classifier are competing modules, It's recommended to keep loaded only one of them. If both are loaded then in a race condition sfe-cm always comes first.
The driver is a merger of https://source.codeaurora.org/quic/qsdk/oss/lklm/shortcut-fe/log/?h=release/endive_cc with https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-3.18/drivers/net/ethernet/qualcomm/sfe/
I've also added missing function to update udp statistics by fast-classifier and some more small fixes.
Patches are taken from QSDK and that chromeos-3.18 repo and a bit adjusted.
Thanks for your contribution to OpenWrt!
To help keep the codebase consistent and readable, and to help people review your contribution, we ask you to follow the rules you find in the wiki at this link https://openwrt.org/submitting-patches
Please remove this message before posting the pull request.
Added correct file for wnr2000v5.c