aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ipq806x/image/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* ipq806x: replace ${} with $()Sungbo Eo2020-03-111-4/+4
| | | | | | ${} and $() are exactly the same. Follow the convention of using $(). Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* ipq806x: build DEVICE_DTS based on SOC and device nameAdrian Schmutzler2019-12-271-11/+16
| | | | | | | | | | | | | | | | | | | | This patch uses the SOC variable to calculate DTS names automatically based on the SOC and the device definition node name. This reduces redundancy and (by having to choose DTS name appropriately) will unify the naming of a device in different places (image/Makefile, DTS name, compatible, image name). This is supposed to make life easier for developers and reviewers. Since the kernel uses a "soc-device.dts" scheme for this target, we use this for the derivation of DEVICE_DTS, too, leaving the DTS names unchanged for this target. Note that for some devices the kernel itself uses inconsistent names (DTS naming scheme vs. compatible), leaving us with a manual overwrite of DEVICE_DTS for those cases. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: split up DEVICE_TITLEMoritz Warning2019-08-021-15/+36
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* ipq806x: add support for Buffalo WXR-2533DHPINAGAKI Hiroshi2019-01-011-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Buffalo WXR-2533DHP is a 2.4/5 GHz band 11ac router, based on Qualcomm IPQ8064. The U-Boot on WXR-2533DHP employs a complicated dual firmware protection scheme against corruptions of the kernel and rootfs images. See the notes in buffalo.sh for details. specifications: - Qualcomm IPQ8064 (384 - 1,400 MHz, 2C2T) - 512 MB of RAM (DDR3) - 256 MB of Flash (NAND) - 4T4R 2.4/5 GHz Wlan (QCA9980) - 5x 10/100/1000 Mbps Ethernet - 10x LEDs, 8x keys (6x buttons, 2x slide-switches) - 2x USB 3.0 Type-A - 12VDC/4A AC Adapter - UART through-hole on PCB - J3: Vcc, GND, TX, RX from USB port side - 115200n8 Boot instructions for the initramfs image: 1. Prepare the TFTP server with the initramfs image renamed to "wxr2300dhp-initramfs.uImage" and IP address "192.168.11.10". 2. Press the "AOSS" button while powering on the WXR-2533DHP. 3. Wait until the "Wireless" LED flashes before releasing the AOSS button. The WXR-2533DHP will grab the image from TFTP server and will boot it. Flashing instructions: To persistently write the firmware, flash an openwrt sysupgrade image from inside the initramfs, for example transfer via `scp <sysupgrade> root@192.168.1.1:/tmp` and flash on the device with `sysupgrade -n /tmp/<sysupgrade>`. Then wait ~120 seconds to let it finish the flashing process. Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded message]
* ipq806x: drop kernel/ rootfs partition images for the ZyXEL NBG6817Stefan Lippers-Hollmann2018-12-171-3/+1
| | | | | | | | | | | | | Since commit 8e9a59a6b924469c0061d4bd945ae0c6dbfdecfe (build: add mkrasimage) a proper factory image can be provided for the ZyXEL NBG6817, which can be flashed from the OEM firmware or used for tftp based push-button recovery, therefore the previously used partition images for mmcblk0p5-rootfs.bin and mmcblk0p4-kernel.bin are no longer required (and using them properly has always been slightly difficult and risky) and can now be dropped from the image generation code. Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* ipq806x: Add support for IPQ8064 AP161 boardRam Chandra Jangir2018-11-261-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specification: - SoC: Qualcomm Atheros IPQ8064 ARM-v7 Dual Core SMP CPU - RAM: 512MB DDR3 System Memory - NOR Flash: 32MB SPI NOR - NAND Flash: 256MB NAND - Ethernet: 5 x 1G via QCA8337N - USB: 2 x USB 3.0 SuperSpeed - PCIe: 3x Mini PCIe 2.0 Slots Three PCIE2.0 connectors can connect two or three radio cards such as the CUS260 for 2.4 GHz WLAN and the CUS239 for 802.11ac WLAN How to flash via u-boot console: tftpboot 0x44000000 openwrt-ipq806x-qcom_ipq8064-ap161-squashfs-nand-factory.bin nand erase 0x1340000 0x4000000 nand write 0x44000000 0x1340000 $filesize setenv bootargs ‘console=ttyMSM0,115200 ubi.mtd=ubi root=/dev/ubiblock0_1’ saveenv bootm Further upgrades via sysupgrade. Tested on IPQ8064 AP161 Board: 1) NAND boot 2) Tested USB and PCIe interfaces 3) WDOG test 4) cpu frequency scaling 5) ethernet, 2G and 5G WiFi 6) ubi sysupgrade Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
* mac80211: make ath10k-ct the default ath10kJohn Crispin2018-09-261-12/+12
| | | | | | | | We select ath10k-ct by default, but it is still possible to build the upstream version. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: John Crispin <john@phrozen.org>
* build: add mkrasimageDavid Bauer2018-08-281-1/+5
| | | | | | | | | | | | | | | The current make-ras.sh image generation script for the ZyXEL NBG6617 has portability issues with bash. Because of this, factory images are currently not built correctly by the OpenWRT buildbots. This commit replaces the make-ras.sh by C-written mkrasimage. The new mkrasimage is also compatible with other ZyXEL devices using the ras image-format. This is not tested with the NBG6616 but it correctly builds the header for ZyXEL factory image. Signed-off-by: David Bauer <mail@david-bauer.net>
* ipq806x: add support for NEC Aterm WG2600HPINAGAKI Hiroshi2018-06-191-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NEC Aterm WG2600HP is a 2.4/5 GHz band 11ac router, based on Qualcomm IPQ8064. Specification: - IPQ8064 (384 - 1,400 MHz) - 512 MB of RAM - 32 MB of Flash (SPI) - 4T4R 2.4/5 GHz - 5x 10/100/1000 Mbps Ethernet - 12x LEDs, 4x keys - 1x USB 3.0 Type-A - UART header on PCB - RX, TX, NC, GND, Vcc from power connector side - baudrate: 115200 bps Flash instruction using initramfs image: 1. Connect serial cable to UART header 2. Connect power cable and turn on the router 3. When the "Press the [f] key and hit [enter] to enter failsafe mode" message is displayed on the console, press the "f" key and Enter key sequentially to enter the failsafe mode 4. create fw_env.config file with following contents on failsafe mode: /dev/mtd9 0x0 0x10000 0x10000 5. Execute following commands to add and change the environment variables of U-Boot fw_setenv ipaddr "192.168.0.1" fw_setenv serverip "192.168.0.2" fw_setenv autostart "yes" fw_setenv bootcmd "tftpboot 0x44000000 wg2600hp-initramfs.bin; bootipq" 6. Set the IP address of the computer to 192.168.0.2, connect to the LAN port of WG2600HP, and start the TFTP server on the computer 7. Rename OpenWrt initramfs image for WG2600HP to "wg2600hp-initramfs.bin" and place it in the TFTP directory 8. Remove power cable from WG2600HP, reconnect it and restart WG2600HP 9. WG2600HP downloads initramfs image from TFTP server on the computer, loads it and boot with initramfs image 10. On the initramfs image, execute "mtd erase firmware" to erase stock firmware and execute sysupgrade with the sysupgrade image 11. Wait ~180 seconds to complete flashing Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* ipq806x: define KERNEL_SIZE in KB instead of byte for the image generationStefan Lippers-Hollmann2018-05-221-5/+5
| | | | Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* ipq806x: increase kernel partition size for the Netgear Nighthawk X4 R7500v2Stefan Lippers-Hollmann2018-05-221-1/+1
| | | | | | | | | | | | | | | | | | Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the 2 MB reserved for the kernel partition by the OEM firmware anymore. This patch increases the kernel partition from 2 MB to 4 MB, at the expense of the rootfs, for all supported kernels. WARNING: This breaks sysupgrade! Flashing a firmware containing this changed partitioning from an older image with 2 MB reserved for the kernel partion requires the tftp recovery procedure, thereby losing all settings. This change follows the functional example of the Netgear r7800, but has not been runtime tested on a Netgear Nighthawk X4 R7500v2. Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* ipq806x: increase kernel partition size for the Netgear Nighthawk X4 R7500Stefan Lippers-Hollmann2018-05-221-1/+1
| | | | | | | | | | | | | | | | | | | Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the 2 MB reserved for the kernel partition by the OEM firmware anymore. This patch increases the kernel partition from 2 MB to 4 MB, at the expense of the rootfs, for all supported kernels. WARNING: This breaks sysupgrade! Flashing a firmware containing this changed partitioning from an older image with 2 MB reserved for the kernel partion requires the tftp recovery procedure, thereby losing all settings. This change follows the functional example of the Netgear r7800, but has not been runtime tested on a Netgear Nighthawk X4 R7500 Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> Cc: Jonas Gorski <jonas.gorski@gmail.com>
* ipq806x: increase kernel partition size for the Netgear Nighthawk X4 D7800Stefan Lippers-Hollmann2018-05-221-1/+1
| | | | | | | | | | | | | | | | | | | Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the 2 MB reserved for the kernel partition by the OEM firmware anymore. This patch increases the kernel partition from 2 MB to 4 MB, at the expense of the rootfs, for all supported kernels. WARNING: This breaks sysupgrade! Flashing a firmware containing this changed partitioning from an older image with 2 MB reserved for the kernel partion requires the tftp recovery procedure, thereby losing all settings. This change follows the functional example of the Netgear r7800, but has not been runtime tested on a Netgear Nighthawk X4 D7800. Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> Cc: Tathagata Das <tathagata@alumnux.com>
* ipq806x: increase kernel partition size for the TP-Link Archer VR2600vStefan Lippers-Hollmann2018-05-221-1/+1
| | | | | | | | | | | | | | | | | | The default image does not fit 2 MB anymore, expand kernel partition to 3 MB. Upgrading should work transparently via sysupgrade in both directions. Another option would be to merge "kernel" and "rootfs" into a single "firmware" partition using MTD_SPLIT_TPLINK_FW, but just changing the sizes of the existing partitioning has been deemed safer in the absence of an actual runtime test on an affected device; the maximum for rootfs changes from 10.4 MB to 9.4 MB. This change follows the example for the TP-Link Archer C2600, but has not been runtime tested on a TP-Link Archer VR2600v. Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> Cc: Sebastian Quilitz <zeraphim@x-pantion.de>
* ipq806x: increase kernel partition size for the Netgear r7800Stefan Lippers-Hollmann2018-05-221-1/+1
| | | | | | | | | | | | | | | | | | | Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the 2 MB reserved for the kernel partition by the OEM firmware anymore. This patch increases the kernel partition from 2 MB to 4 MB, at the expense of the rootfs, for all supported kernels. WARNING: This breaks sysupgrade! Flashing a firmware containing this changed partitioning from an older image with 2 MB reserved for the kernel partion requires the tftp recovery procedure, thereby losing all settings. This patch is based on a corresponding change by Pavel Kubelun <be.dissent@gmail.com> and has been tested by Michael Yartys <michael.yartys@protonmail.com> Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* build: consolidate fake uImage header build commandsMathias Kresin2018-04-201-3/+3
| | | | | | | | | | | Merge the two existing functions and use a parameter for the type header field. It updates the syntax of the former mpc85xx fake ramdisk header command to be compatible with mkimage from u-boot 2018.03 and fixes the build error spotted by the build bot. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ipq806x: add support for Compex WPQ864Christian Mehlis2018-03-151-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware highlights: - SoC: Qualcomm Atheros IPQ8064/5 ARM Dual Core CPU - RAM: (512MB or 1GB) DDR3 System Memory - Storage: 32MB NOR (Cypress S25FL256S1) 256MB NAND (Micron MT29F2G08ABBEAH4) - Ethernet: 5 x 1G via QCA8337N - USB: 1 x USB 2.0/3.0 + 1 x USB 2.0 on mini PCIe3 socket - PCIe: 3x mini PCIe (third mini PCIE3 is PCIe/USB shared) - SIM Card Slot: 2 x Slot - Buttons: Reset Button - LEDs: 18x, 8x GPIO controllable - Buzzer The correct amount of RAM will be passed by the bootloader. In contrast to the documentation provided by Compex, the third PCIe doesn't use GPIO16 for PERST. Instead, GPIO3 is shared and used as PERST for PCIe0 and PCIe2. So far, no one was able to get USB 3.0 working with the 1GB RAM version, while it works fine for my 512MB version. Since USB 3.0 doesn't work with the Compex firmware for the 1G variant either, it could be a hardware issue with these boards. OpenWrt will be installed to the NAND flash. Make sure to have a full working image on the NOR flash. It will be the backup in case anything goes wrong. It has been observed that an image loaded via tftpboot might have bitflips. Hence the extra step to create a crc32 checksum to allow to compare the checksum with the one from the source file prior to flashing. In all cases it is necessary to set the following u-boot parameter to an empty (whitespace) value, to ensure that the chosen bootargs of the dts isn't overwritten or set to bogus - not working - values: (IPQ) # set bootargs " " (IPQ) # set fsbootargs " " (IPQ) # saveenv The sysupgrade image can be installed directly on flash using u-boot (put jumper in JP13 (leave JP9 open) to boot from nand): (IPQ) # set serverip 192.168.1.20 (IPQ) # set ipaddr 192.168.1.1 (IPQ) # tftpboot 0x42000000 openwrt-ipq806x-compex_wpq864-squashfs-nand-factory.bin (IPQ) # crc32 0x42000000 $filesize (IPQ) # nand erase 0x1340000 0x4000000 (IPQ) # nand write 0x42000000 0x1340000 $filesize The initramfs image can be started using: (IPQ) # set fdt_high 0x48000000 (IPQ) # tftpboot 0x44000000 openwrt-ipq806x-compex_wpq864-initramfs-fit-uImage.itb (IPQ) # bootm 0x44000000 Signed-off-by: Christian Mehlis <christian@m3hlis.de> Signed-off-by: Mathias Kresin <dev@kresin.me>
* ipq806x: drop ipq40xx supportJohn Crispin2018-03-141-75/+0
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* ipq806x: add support for GL.iNet GL-B1300Dongming Han2018-02-141-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for GL.iNet GL-B1300 Specification: - SOC: IPQ4028 / QCA Dakota - RAM: 256 MiB - FLASH: 32 MiB - ETH: Qualcomm Atheros QCA8075 Gigabit Switch (2 x LAN, 1 x WAN) - USB: 1 x 3.0 (via Synopsys DesignWare DWC3 controller in the SoC) - WLAN1: Qualcomm Atheros QCA4028 2.4GHz 802.11bgn 2:2x2 - WLAN2: Qualcomm Atheros QCA4028 5GHz 802.11a/n/ac 2:2x2 - INPUT: one reset and one WPS button - LEDS: 3 leds: Power, WIFI(only for 2.4G currently), and one reserved - UART: 1 x UART on PCB (3.3V, TX, RX, GND) - 115200 8N1 Installation: Method 1: - use serial port to stop uboot - uboot command: run lf Method 2: - push down reset button and power on - wait until three leds constantly on then release - upgrade by uboot web at http://192.168.1.1 Note: - the sysupgrade image need to be renamed to lede-gl-b1300.bin in both method. - the sysupgrade image can be automatically downloaded if tftp server at 192.168.1.2 have that file. - the wifi led will be flashing when writing image. Signed-off-by: Dongming Han <handongming@gl-inet.com>
* ipq-wifi: drop OpenMesh A42 board-2.binSven Eckelmann2018-02-111-1/+1
| | | | | | | | | | | The BDFs for OpenMesh A42 were upstreamed [1] to the ath10k-firmware repository and are now part of ath10k-firmware 2018-01-26. The ipq-wifi-openmesh_a42 package can now be dropped because OpenWrt already ships the QCA4019 board-2.bin from this version. [1] https://wireless.wiki.kernel.org/en/users/drivers/ath10k/boardfiles Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
* ipq806x: remove dependency on non-existent kmodChristian Lamparter2018-01-181-1/+1
| | | | | | | | During the integration of the ipq40xx target, the phy drivers were included into the ipq806x's target kernel config. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq-wifi: align AVM FRITZ!Box 4040's board-2.bin packageChristian Lamparter2018-01-181-1/+1
| | | | | | | This patch renames the AVM FRITZ!Box 4040's board-2.bin file and package to match the 'vendor_product' format. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq806x: drop ubifs supportMathias Kresin2018-01-151-9/+0
| | | | | | | | Ubifs is disabled for all boards except the evaluation boards and the Fritz!Box 4040 anyway. According the author, the ubifs support for the Fritz!Box 4040 wasn't enabled on purpose. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ipq806x: drop legacy image leftoversMathias Kresin2018-01-151-24/+0
| | | | | | | Remove leftover code used for legacy images. There are no relevant binary differences for the images after removing the legacy leftovers. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ipq806x: unset filesystem specific build command by defaultMathias Kresin2018-01-151-0/+1
| | | | | | | | | | | | | Initialise the filesystem specific build command. Otherwise it will be unintended inherit to following images and will cause a wrong image format. The issue is around for ages but was only recently triggered due to the added support for the Openmesh a42. Fixes: FS#1276 Signed-off-by: Mathias Kresin <dev@kresin.me>
* ipq806x: remove unnecessary filesystem specific buildMathias Kresin2018-01-151-1/+1
| | | | | | The Openmesh factory image doesn't need a squashfs specific build command. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ipq806x: use bin file extension for sysupgrade-tar imagesMathias Kresin2018-01-151-8/+8
| | | | | | | Use the file extension bin for sysupgrade-tar images to unify the file extension across the target/tree. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ipq806x: add support for OpenMesh A42Sven Eckelmann2018-01-131-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * QCA IPQ401x * 256 MB of RAM * 32 MB of SPI NOR flash (s25fl256s1) - 2x 15 MB available; but one of the 15 MB regions is the recovery image * 2T2R 2.4 GHz - QCA4019 hw1.0 (SoC) - requires special BDF in QCA4019/hw1.0/board-2.bin with bus=ahb,bmi-chip-id=0,bmi-board-id=16,variant=OM-A42 * 2T2R 5 GHz - QCA4019 hw1.0 (SoC) - requires special BDF in QCA4019/hw1.0/board-2.bin with bus=ahb,bmi-chip-id=0,bmi-board-id=17,variant=OM-A42 * multi-color LED (controlled via red/green/blue GPIOs) * 1x button (reset; kmod-input-gpio-keys compatible) * external watchdog - triggered GPIO * 1x USB (xHCI) * TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX) * 2x gigabit ethernet * powered only via POE - 802.3af POE on Ethernet 1 - 18-24v passive POE (mode B) on Ethernet 2 The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be used to transfer the factory image to the u-boot when the device boots up. Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
* ipq806x: Sort occurrences of boardame alphabeticallyLuis Araneda2018-01-131-107/+107
| | | | | | | This restores the alphabetical sort that was present before the renaming of boardname. Signed-off-by: Luis Araneda <luaraneda@gmail.com>
* ipq806x: convert to dt-based board-detectionLuis Araneda2018-01-131-1/+11
| | | | | | | | | | | | | | | | | Use the generic board detection method: - Board name: First compatible string from the device tree - Board model: Model property from the device tree Change occurrences of board name in userspace by the compatible string, and removed target specific board detection script Replace the definition of SUPPORTED_DEVICES in Device/Default to extract the dt compatible string from each device definition. Additionally, for devices supported by lede-17.01, append the value of BOARD_NAME to SUPPORTED_DEVICES in the device definition. Signed-off-by: Luis Araneda <luaraneda@gmail.com>
* ipq806x: sync image filename with dt compatible stringLuis Araneda2018-01-131-28/+28
| | | | | | | Use <manufacturer>_<modelname> as image name for board using the devicetree compat string as boardname. Signed-off-by: Luis Araneda <luaraneda@gmail.com>
* treewide: add only one device when appending to TARGET_DEVICESLuis Araneda2017-12-121-3/+14
| | | | | | | | | This will avoid some conflicts when doing a git rebase or merge, specially when adding support to a new device. Signed-off-by: Luis Araneda <luaraneda@gmail.com> [drop brcm47xx changes which rename the images] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ipq806x: ipq4019: add ap-dk01.1-c1 board supportRoman Yeryomin2017-10-301-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AP-DK01.1-C1 is QCA dev board with: - ipq4018 quad core ARM @716.8MHz, 2x2 dual (11n+11ac) radio - 256MB RAM - 32MB SPI flash - QCA8075 multiport ethernet phy (WAN port, 4x LAN ports) First installation via u-boot: sf probe sf erase 0x180000 0x1a00000 tftpboot 0x84000000 lede-ipq806x-AP-DK01.1-C1-squashfs-sysupgrade.bin sf write 0x84000000 0x180000 $filesize Further upgrades via sysupgrade. Changes: - add partitions - set memory size to 256MB - add reserved memory mapping - add correct compatible string - add image generation - extract pre-cal data from ART partition Compile and run tested. Wirespeed NAT can be achieved with spreading rx interrupts over different cores. Wifi speed is ~550Mbps @5GHz in open air. Note: AP-DK01.1-C1 is fully compatible with AP-DK01.2-C1, which has ipq4028 instead of ipq4018 on board. Changes since v2: - based on dts(i) rework/cleanup submitted: http://lists.infradead.org/pipermail/lede-dev/2017-October/009596.html - precise reserved memory mapping - more precise description - compatible string Signed-off-by: Roman Yeryomin <roman@advem.lv>
* ipq806x: nbg6817: add kmod-fs-ext4 to device packagesStefan Lippers-Hollmann2017-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | The ZyXEL NBG6817 uses an eMMC flash for the rootfs, which is split into the readonly squashfs and ext4 for the overlay. This adds the required package to the device packages to allow mounting the overlay by default. /dev/root on /rom type squashfs (ro,relatime) proc on /proc type proc (rw,nosuid,nodev,noexec,noatime) sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,noatime) tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime) /dev/loop0 on /overlay type ext4 (rw,noatime,data=ordered) overlayfs:/overlay on / type overlay (rw,noatime,lowerdir=/,upperdir=/overlay/upper,workdir=/overlay/work) tmpfs on /dev type tmpfs (rw,nosuid,relatime,size=512k,mode=755) devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,mode=600,ptmxmode=000) debugfs on /sys/kernel/debug type debugfs (rw,noatime) mountd(pid1040) on /tmp/run/blockd type autofs (rw,relatime,fd=7,pgrp=1,timeout=30,minproto=5,maxproto=5,indirect) Before this commit, the ext4 based overlayfs could not be mounted, which left only the tmpfs based/ volatile emergency overlay in place. Fixes: https://forum.lede-project.org/t/zyxel-nbg6817-flashing-from-oem/768 Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* treewide: do not use IMG_PREFIX in Image/PrepareJonas Gorski2017-10-261-2/+2
| | | | | | | | | | | | | | IMG_PREFIX can be modified in ImageBuilder by passing EXTRA_IMAGE_NAME on command line, but Image/Prepare is not run in ImageBuilder. This causes missing files when IMG_PREFIX is used for target file names in Image/Prepare, then as source file names in Image/BuildKernel or Image/Build. Fix this by using a fixed output file name in Image/Prepare, and copy to the expected file name in Image/BuildKernel instead, which is run by ImageBuilder. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* ipq806x: Enable AP148 fit image(.itb) generationRam Chandra Jangir2017-07-061-0/+1
| | | | | | | This change enables .itb image generation for AP148, It will help us to boot and test AP148 with NOR flash. Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
* build: rename TPLINK_BOARD_NAME to TPLINK_BOARD_IDPiotr Dymacz2017-06-291-3/+3
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ipq806x: Enable ubi image for ipq40xx AP-DK04.1-C1 boardRam Chandra Jangir2017-06-071-1/+14
| | | | | | | | | | | | | | This change add IPQ40xx AP-DK04.1-C1 board image support, enables ubi image for IPQ40xx AP-DK04.1-C1 board and also add sysupgrage support for AP-DK04.1-C1 and generates a sysupgrade.tar image. Testing: *Tested on IPQ40xx AP-DK04.1-C1: a. NAND boot b. ubi sysupgrade Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
* firmware: rework fritz-tools packageMathias Kresin2017-04-081-1/+1
| | | | | | | | | | | | | | | | Split the fritz-tools into subpackages. fritz_tffs_read is usefull for all Fritz boards where fritz-cal_extract is only required for the Fritz 4040 at the moment. Rename the tffs related binary to the more catchy name fritz_tffs and move the whole package to utilities since the package doesn't really provide a firmware file. Make the fritz-tools available for all targets and build them shared. The tffs is used by avm on lantiq and ar71xx as well. Tested-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: Mathias Kresin <dev@kresin.me>
* treewide: select ath10k firmware explicitMathias Kresin2017-03-241-1/+1
| | | | | | Do not rely on the default firmware selected by ath10k. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ipq806x: fix Netgear X4 R7500 ath10k firmware selectionThomas Reifferscheid2017-03-241-1/+1
| | | | | | | Netgear X4 R7500 comes with a QCA988X. Select a firmware that matches the ath10k chipset Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
* ipq806x: add ipq4019 fritz4040 supportChristian Lamparter2017-03-221-3/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for AVM FRITZ!Box 4040. hardware highlights: SOC: IPQ4018 / QCA Dakota CPU: Quad-Core ARMv7 Processor rev 5 (v7l) Cortex-A7 DRAM: 256 MiB Nanya NT5CC128M16IP FLASH: 32 MiB MXIC MX25L25635FMI ETH: Qualcomm Atheros QCA8075 Gigabit Switch (4 x LAN, 1 x WAN) USB: 1 x 3.0 (via Synopsys DesignWare DWC3 controller in the SoC) 1 x 2.0 (via Synopsys DesignWare DWC3 controller in the SoC) WLAN1: Qualcomm Atheros QCA4018 2.4GHz 802.11bgn 2:2x2 WLAN2: Qualcomm Atheros QCA4018 5GHz 802.11a/n/ac 2:2x2 INPUT: one WLAN and one WPS button LEDS: Power, WAN/Internet, WIFI, INFO (red and amber) and LAN. Serial: WARNING: The serial port needs a TTL/RS-232 v3.3 level converter! The Serial setting is 115200-8-N-1. The SoC's serial port is right next to the MXIC FLASH chip. The board has a unpopulated 1x4 0.1" header for it. Use a multimeter to figure out the pinout! This board currently needs an additional u-boot image in order to boot properly. Booting with EVA isn't possible ATM. Install Procedure: 0. It's highly recommended to connect to the serial port. The serial settings are listed above. 1. install a u-boot image for AVM Fritz!Box 4040 (see <https://github.com/chunkeey/FritzBox-4040-UBOOT/releases> and <https://github.com/chunkeey/FritzBox-4040-UBOOT/blob/master/upload-to-f4040.sh>) 2. upload the initramfs.itb image via tftp (u-boot listens to 192.168.1.1 - use binary transfer mode!) 3. connect to the FB4040 and use sysupgrade sysupgrade.bin to install the image. Works: - Switch and Ethernet (99%) - Buttons (WLAN, WPS) - FLASH (1 x 32MiB NOR Chip) - WLAN2G and WLAN5G - CPUFREQ scaling - PRNG - serial - Crypto Accelerator - sysupgrade (Read the flash instructions to avoid bricking) - full LEDE Install (Read the flash instructions to avoid bricking) - LEDs (Power, WAN, Info (red and amber), LAN) The LEDs are connected to the QCA8075 LED ports. The AR40xx driver contains a gpio-controller to handle these special "GPIOs". - USB Both 3.0 and 2.0 ports - many packages from other ARMv7 boards (This does include the RaspberryPi Model 2!) - ... Not planned: - WAN<->LAN short-cut - Qualcomm Secure Execution Environment - ... Signed-off-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: John Crispin <john@phrozen.org>
* ipq806x: sanitize Dni image generationThomas Reifferscheid2017-02-261-4/+3
| | | | | | | | | The more straight forward approach for generating the pure and unpadded kernel file which then can be used for initramfs straight. Build options for factory.img and sysupgrade.tar are handeled seperately. Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
* ipq806x: fix fakerootfs positionThomas Reifferscheid2017-02-211-2/+2
| | | | | | | | | | | | The fakeroot header is expected by the netgear bootloader in the last 64 bytes of the last block used by the uImage. With the current linux-4.9 uImage being more than 128k smaller than the linux-4.4 uImage the bootloader was unable to locate the rootfs ih_magic and was refusing to load and start the kernel. Fixes: FS#542 Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
* build: centralize fakeroot codeJoseph C. Lehner2017-02-041-8/+3
| | | | | | | | | | | | | This patch moves the fakeroot code required by some devices to `image-commands.mk`. Create the fakeroot on the fly by using the undocumented -s (skip copy) parameter of mkimage. Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com> [remove unused NETGEAR_KERNEL_MAGIC, remove workarounds to have a dummy rootfs for mkimage] Signed-off-by: Mathias Kresin <dev@kresin.me>
* build: move append-file to image-commands.mkJoseph C. Lehner2017-01-271-4/+0
| | | | | | | Move it append-file to image-commands.mk so that it can used by other targets as well. Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
* ipq806x: add support for TP-Link Archer VR2600vSebastian Quilitz2016-11-241-1/+18
| | | | | | | | | | | | | | | | | | This router is similar to the C2600. Ethernet on WAN + LAN, switch, sysupgrade, LEDs, buttons and WiFi on 2G + 5G do work. The xDSL modem and the POTS/DECT interface are not supported yet. It is not possible to flash LEDE via the TP-Link webinterface. The image need to be signed. The first 0x200 bytes of the image is the TP-Link header including the signature. The signature is not validated by the bootloader. The LEDE image is zeroed in this area. To install LEDE it is necessary to solder a four pin header to JP2. Connect a serial interface to this header and interrupt the autostart of kernel. Transfer the sysupgrade image via TFTP and write it to the serial flash at 0x320000. Signed-off-by: Sebastian Quilitz <zeraphim@x-pantion.de>
* ipq806x: append metadata to imagesFelix Fietkau2016-11-191-6/+5
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ipq806x: fix zyxel image build errorFelix Fietkau2016-11-041-1/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ipq806x/nbg6817: add support for ZyXEL NBG6817André Valentin2016-10-261-1/+24
| | | | | | | | | | | | | | | | | CPU: 2x1.8GHz ARM, RAM: 512MiB Storage: 4MiB serial Flash, 3.9GiB MMC NIC: 2x1GBit/s, Switch with 5 external and 2 internal ports WiFi: Dualband, ath10k 2.4GHz, 5GHz MU-MIMO For installation copy xx-mmcblk0p4-kernel.bin and xx-mmcblk0p5-rootfs-full.bin to device. Then run: cat xx-mmcblk0p4-kernel.bin > /dev/mmc0blk0p4 cat xx-mmcblk0p5-rootfs-full.bin > /dev/mmc0blk0p5 reboot -f For debugging serial console is easily visible on board, no soldering needed. Signed-off-by: André Valentin <avalentin@marcant.net>