aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* apm821xx: convert to device-tree board detectionChristian Lamparter2017-12-2110-81/+41
| | | | | | | | | | | | | This patch converts all apm821xx devices to the device-tree board-detection method. All instances of the legacy boardnames (mbl,mr24,...) are converted to "vendor,device" identifier. The custom board-detection code in apm821xx.sh is removed as it no longer serves any purpose. Signed-off-by: Mathias Kresin <dev@kresin.me> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: enable metadata for packagingChristian Lamparter2017-12-213-93/+10
| | | | | | | | | | This patch enables metadata-supported image verification for all apm821xx supported devices. Since this method comes with a built-in image verification tool (fwtool), the previous image checks can be removed. Signed-off-by: Mathias Kresin <dev@kresin.me> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: align device names with vendor_device formatChristian Lamparter2017-12-211-10/+10
| | | | | | | | | | Currently, the device name handle does not include the manufacturer. This can make it hard do differentiate between products from different vendors that have the same product name. As the handle is used to derive the image name. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: dts: rename devices dts files to include the manufacturerChristian Lamparter2017-12-216-5/+5
| | | | | | | | | | | This patch rename all the DT source files in order to match upstream's "manufacturer-device.dts" format. Please note that the DEVICE_DTB isn't changed. This is because the u-boot of the MyBook Live defines the fdt_file variable to be "apollo3g/apollo3g.dtb". Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: add product names to the dt compatible for MerakiChristian Lamparter2017-12-212-2/+2
| | | | | | | | | | Meraki choose to use their product's codename as the main compatible string. Mathias Kresin commented that this is a poor choice as this will confuse the users and devs once the device-tree compatible is used for board-detection and possible the image name. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: dts: append SoC compatible to DTSChristian Lamparter2017-12-214-2/+4
| | | | | | | | | | | | | | | | | | | | | This patch appends the "apm,bluestone" or "amcc,apollo3g" machine compatible string to the current device tree source. Please note that unlike other archs the PPC DT code does not regard the machine's compatible string as a priority list. This is explained in the kernel's usage-model.txt as follows: "PowerPC uses a slightly different scheme where it calls the .probe() hook from each machine_desc, and the first one returning TRUE is used. However, this approach does not take into account the priority of the compatible list, and probably should be avoided for new architecture support." For this reason, the "apm,bluestone" compatible string can't be added to the WNDR4700. As otherwise the target specific pci fix-up code will get ignored and this causes the ath9k WIFI to not get initialized. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: replace DEVICE_{PROFILE|NAME} with BOARD_NAMEChristian Lamparter2017-12-211-10/+6
| | | | | | | | | | | | | | | | | | | | | This patch sets the BOARD_NAME variable on each affected apm821xx device. The existing DEVICE_PROFILE and DEVICE_NAME assignments are deprecated as they no longer serve any purpose. The BOARD_NAME variable is used by the sysupgrade-tar method to specifiy a directory overwrite for the sysupgrade-$dir directory in the generated tar file. Keeping the original boardname in this context will be necessary for targets that utilize the sysupgrade-tar method. Otherwise, sysupgrade on an previous installation will not recognize the newly generated images. This step is necessary since an upcoming patch realigns the existing shortname for a device with a proper "manufacturer_device" identifier. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: replace whitespace with tabsChristian Lamparter2017-12-211-1/+1
| | | | Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: explicitly build the rootfs.img.gz targetChristian Lamparter2017-12-211-2/+2
| | | | | | | | | | | | | | | The commit 87b668765e1 ("image: when using the new image build code, gzip ext4 images by default") forced that all targets that select the ext4 as the root filesystem to always compress the generated rootfs. This is fine, but this method doesn't not allow to append the metadata on a per-target base. Therefore this patch changes the rootfs image production rule to generate the gzip step manually. This way the metadata can be appended at a later date. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ramips: fix devicetree compat stringsMathias Kresin2017-12-215-5/+5
| | | | | | | | | | | | "PandoraBox" is not the name of the manufacturer, it's a firmware made by the manufacturer actually. Their official English name is "D-Team". PBR-M1 is the only one they use "PandoraBox" as a brand name. Their other products are using "Newifi" as their trademark (including Y1 and Y1S which used to be OEM products for Lenovo). Signed-off-by: Chuanhong Guo <gch981213@gmail.com> Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for newifi d2Jackson Ming Hu2017-12-216-0/+177
| | | | | | | | | | | | | | | | | | | | | | | | | | | Previously Newifi D2 could only use PandoraBox M1's firmware. It works fine, but LED GPIO is different. As a result, a separated DTS file for this device should be implemented. Hardware spec: * CPU: MTK MT7621A * RAM: 512MB * ROM: 32MB SPI Flash * WiFi: MTK MT7603+MT7612 * Button: 2 buttons (reset, wps) * LED: 3 single-color LEDs (USB, WiFi 2.4GHz, WiFi 5GHz) & 2 dual-color LEDs (Power, Internet) * Ethernet: 5 ports, 4 LAN + 1 WAN Installation method: Same as Newifi D1, users may need to request unlock code from the device manufacturer. Otherwise, a SPI flash programmer may be necessary to get the firmware flashed. After the device is unlocked, press and hold reset button before power cable plugs in. Then go to http://192.168.1.1 to upload and flash the firmware package. Signed-off-by: Jackson Ming Hu <huming2207@gmail.com>
* ramips: add support for Vonets VAR11N-300Andrew Crawley2017-12-215-1/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The VAR11N-300 is a tiny wireless-N device with a hardwired Ethernet cable, one extra Ethernet port, and an internal antenna, based on the MediaTek MT7620n chipset. Specs: - MT7620n WiSoC @ 600MHz - 32 MB SDRAM - 4 MB SPI flash - 2T2R 2.4GHz WiFi-N - 1 attached 10/100 Ethernet cable (LAN) - 1 10/100 Ethernet port (WAN) - 1 attached USB / barrel 5vdc power cable - 5 LEDs (see notes below) - 1 reset button - 1 UART (3 pads on board) Installation: The stock firmware does not support uploading new firmware directly, only checking the manufacturer's site for updates. This process may be possible to spoof, but the update check uses some kind of homebrew encryption that I didn't investigate. Instead, you can install via a backdoor: 1. Set up a TFTP server to serve the firmware binary (lede-ramips-mt7620-var11n-300-squashfs-sysupgrade.bin) 2. Factory reset the device by holding the reset button for a few seconds. 3. Open the web interface (default IP: 192.168.253.254) 4. Log in with the "super admin" credentials: username `vonets`, password `vonets26642519`. 5. On the "Operative Status" page, click the text "System Uptime", then quickly click the uptime value. 6. If successful, an alert dialog will appear reading "Ated start", and the device will now accept telnet connections. If the alert does not appear, repeat step 5 until it works (the timing is a bit tricky). 7. Telnet to the device using credentials "admin / admin" 8. Retrieve the firmware binary from the tftp server: `tftp -l lede.bin -r lede-ramips-mt7620-var11n-300-squashfs-sysupgrade.bin -g <tftp-server-ip>` 9. Write the firmware to flash: `mtd_write write lede.bin /dev/mtd4` 10. Reboot Tested: - LAN / WAN ethernet - WiFi - LAN / WAN / status LED GPIOs (see notes below) - Reset button - Sysupgrade Notes: LEDs: The board has 5 LEDs - two green LEDs for LAN / WAN activity, one blue LED for WiFi, and a pair of "status" LEDs connected to the same GPIO (the blue LED lights when the GPIO is low, and the green when it's high). I was unable to determine how to operate the WiFi LED, as it does not appear to be controlled by a GPIO directly. Recovery: The default U-boot installation will only boot from flash due to a missing environment block. I generated a valid 4KB env block using U-boot's `fw_setenv` tool and wrote it to flash at 0x30000 using an external programmer. After this, it was possible to enter the U-boot commandline interface and download a new image via TFTP (`tftpboot 81b00000 <image-filename>`), but while I could boot this image sucessfully (`bootm`), writing it to flash (`cp.linux`) just corrupted the flash chip. The sysupgrade file can be written to flash at 0x50000 using an external programmer. Signed-off-by: Andrew Crawley <acrawley@gmail.com>
* ramips: add helper variable for boardnameMathias Kresin2017-12-212-224/+226
| | | | | | | | | | | | | Add a helper variable which contains the boardname separated from the vendor name. It allows to switch to a device tree compatible string based boardname, by keeping the $board:colour:function syntax in scripts handling/adding config for LEDs. Boards not using the device tree compatible string as based boardname are unaffected by the change, since none of them uses a comma in the boardname. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: sync image filename with boardnameMathias Kresin2017-12-213-4/+9
| | | | | | | | | | | | | Use <manufacturer>_<modelname> as image name for board using the devicetree compat string as boardname. Replace the underline of the device define, to keep the SUPPORTED_DEVICES in sync with a devicetree compat string based boardname. Override the default SUPPORTED_DEVICES for board which are having an userspace boardname with an underline. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: fallback to generic board detectMathias Kresin2017-12-214-15/+7
| | | | | | | Fallback to the generic board detection if no case for the current board exists. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: drop LinkIt Smart 7688 Duo userspace supportMathias Kresin2017-12-215-14/+3
| | | | | | | | | | The LinkIt Smart 7688/LinkIt Smart 7688 Duo are identical beside the extra ATmega32U4 - accessible via UART - on the the Duo. Since all relevant hardware is identical, drop the Duo special handling in userspace. Signed-off-by: Mathias Kresin <dev@kresin.me>
* uboot-layerscape-armv8_32b: fix package downloadHauke Mehrtens2017-12-201-2/+2
| | | | | | | | | | | | | | | | In commit 2b1ec44dbd3cd3 ("layerscape: add ls1012afrdm device support") The git revision and the mirror hash for this package was updated to a version which includes ls1012afrdm-uboot.bin, but the file name at dl/uboot-layerscape-armv8_32b-2017.09.tar.xz staid the same. This way most user did not download the new version but used the old file. Convert this package to the normal git clone parameters by using PKG_SOURCE_DATE instated of PKG_VERSION, now the file name in dl also contains the git hash and should change every time the git hash is updated. This should fix a problem spotted by build bot. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: kmod-crypto-hw-talitos: fix dependenciesHauke Mehrtens2017-12-201-1/+1
| | | | | | | | | | | With the updated to kernel 4.9.70 in commit f704b643b9cab ("kernel: Update kernel 4.9 to 4.9.70"), the talitos.ko kernel module got a new dependency to kmod-crypto-des in this upstream commit: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=552f74cbd6ec806ab5ce45336a26cae1e015dbe2 This fixes a build problem found by built bot. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Update kernel 4.9 to 4.9.70Hauke Mehrtens2017-12-1931-264/+174
| | | | | | Runtime tested on lantiq. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* libiconv-full: fix compile-time linking error GCC7Jake Staehle2017-12-191-1/+1
| | | | | | | | | | | | | | | LEDE Flyspray Task 1091: Fix libiconv-full 'undefined reference' compile linker error using GCC7 Musl Tested with targets x86 (i386 and x86_64) Addition of CFLAGS "std=gnu89" fixes the linker issues, credit to harrylwc Issue found with 'minidlna' package, which depends on 'libiconv-full' Error in compile log: ../lib/.libs/libiconv.so: undefined reference to `aliases_lookup' ../lib/.libs/libiconv.so: undefined reference to `aliases2_lookup' collect2: error: ld returned 1 exit status Makefile:64: recipe for target 'iconv_no_i18n' failed Signed-off-by: Jake Staehle <jacob@staehle.us>
* ramips: fix polarity in gpio-export nodeMathias Kresin2017-12-1811-16/+11
| | | | | | | | If we need to set the initial output value to GPIOF_OUT_INIT_HIGH (1) to enable something, the pin is ACTIVE_HIGH. The same applies to GPIOF_OUT_INIT_LOW (0) and ACTIVE_LOW. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ar71xx: fix lan ports on ens202extMarty E. Plummer2017-12-181-0/+1
| | | | | | | | | In the stock firmware both eth0 and eth1 are set to br-lan, add this behavior to our images. Fixes: FS#1084 Signed-off-by: Marty E. Plummer <hanetzer@protonmail.com>
* brcm63xx: fix Sercomm AD1018 status ledJonas Gorski2017-12-171-1/+1
| | | | | | | | The status led part was missed when changing the board name to *-nor. Fixes: e12c72bb52eb ("brcm63xx: Add Sercomm AD1018 support") Reported-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com> Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* mt76: update to the latest version, reverts MAC address changes causing ↵Felix Fietkau2017-12-171-3/+3
| | | | | | | | | | | | | | | | | | | performance regressions cf4a5ce mt76: fix memcpy to potential null pointer on failed allocation ca5ca8c mt76x2: fix possible NULL pointer dereferencing in mt76x2_ampdu_action() 2d4b8f5 mt76x2: mac: fix possible NULL pointer dereferencing in mt76x2_mac_write_txwi() 4ca8bba mt76x2: eeprom: fix typo in mt76x2_get_power_info_5g() 00f7e60 mt7603: fix configuration for HT40 31e9bdb mt7603: main: fix possible NULL pointer dereferencing in mt7603_ampdu_action() bf90dd2 mt7603: mcu: fix potential NULL pointer dereferencing on failed allocation 860b185 Revert "mt76x2: init: disable APCLI by default" bcd576e Revert "mt76x2: drop wiphy->addresses" bdc6f2f Revert "mt76x2: clean up MAC/BSSID address initialization" d242650 Revert "mt76x2: remove MAC address limitation for multi-vif setups" 68b0cf1 mt76x2: add functions for setting extended MAC address registers Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: sync image filename with boardnameMathias Kresin2017-12-163-232/+274
| | | | | | | | | | | | | Use <manufacturer>_<modelname> as image name. Use the BOARD_NAME variable to ensure that the former used boardname is still used as the subdirectory name for the sysupgrade-tar image, to not break sysupgrade from earlier versions. While at it, normalise the image filenames by using only lower case characters and bin as file extension for sysupgrade images. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: drop unused variable from image build codeMathias Kresin2017-12-161-3/+0
| | | | | | | Remove the DEVICE_PROFILE variable. The variable isn't used at all. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: use the generic board detectMathias Kresin2017-12-161-19/+0
| | | | | | | Drop the target specific detection function in favour of the generic one provided by base-files. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: add missing model namesMathias Kresin2017-12-161-0/+1
| | | | Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: remove the former board name from device tree modelMathias Kresin2017-12-1660-60/+60
| | | | | | | Remove the former used board name from the device model property and use the model name as it is. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: use the compatible string as board nameMathias Kresin2017-12-1610-72/+136
| | | | | | | | | | | Use the first compatible string as board name in userspace. Add the new board name as well as the former used board name to the image metadata to keep compatibilty with already deployed installations. Don't add the former used boardname for boards which exists only in master or evaluation boards. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: drop SoC name from eval boards compatible stringMathias Kresin2017-12-1611-11/+11
| | | | | | Keep it in the same format as used for the other eval boards. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: add compatible strings to dts filesMathias Kresin2017-12-1653-0/+59
| | | | | | The compatible string is mandetory for devicetree source file. Signed-off-by: Mathias Kresin <dev@kresin.me>
* x86: Add support for kernel 4.14Hauke Mehrtens2017-12-169-16/+710
| | | | | | | | This adds basic support for kernel 4.14, this was tested in qemu only. The subtarget configuration was refresh with kernel 4.14 and the options needed to make it compile on kernel 4.9 were added manually. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: include: remove last .0 from kernel versions againHauke Mehrtens2017-12-161-1/+1
| | | | | | | | Kernel 4.14 has the version number 4.14 and not 4.14.0. This was different in some older Linux kernel versions, This change makes it possible to use kernel 4.14 without any minor version. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: add missing dependencies to kmod-crypto-acompressHauke Mehrtens2017-12-161-0/+2
| | | | | | | kmod-lib-lzo and kmod-lib-lz4 depend in kernel 4.14 on kmod-crypto-acompress, add this missing dependency. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: kmod-rtc-ds1307: add dependency to regmapHauke Mehrtens2017-12-161-1/+1
| | | | | | | In kernel 4.14 kmod-rtc-ds1307 depends on regmap-i2c, add this missing dependency. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: kmod-iio-bmp280: allow compile with kernel 4.14Hauke Mehrtens2017-12-161-1/+1
| | | | | | This package also compiles with kernel 4.14. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: kmod-zram: deactivate CONFIG_ZRAM_WRITEBACK for kernel 4.14Hauke Mehrtens2017-12-161-0/+1
| | | | | | | This new option was introduced in kernel 4.14 and should be deactivated by default. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* xtables-addons: fix compile with kernel 4.14Hauke Mehrtens2017-12-161-0/+9
| | | | | | This fixes a compile problems seen with kernel 4.14. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: kmod-fbcon: deactivate for kernel 4.14Hauke Mehrtens2017-12-161-1/+1
| | | | | | | | CONFIG_FRAMEBUFFER_CONSOLE does not activate new modules any more in kernel 4.14, but CONFIG_FRAMEBUFFER_CONSOLE is now a boolean option which change the kmod-fb package. kmod-fbcon should be split up. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: kmod-sound-core: handle moved snd-seq-device.koHauke Mehrtens2017-12-161-1/+2
| | | | | | The snd-seq-device.ko kernel module was moved with kernel 4.13. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: kmod-mmc: handle moved mmc_block.koHauke Mehrtens2017-12-161-1/+2
| | | | | | mmc_block.ko was moved with kernel 4.10. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: kmod-rxrpc: handle renamed kernel moduleHauke Mehrtens2017-12-161-2/+3
| | | | | | | The kernel module was renamed with kernel 4.11, handle that in the package definition. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: deactivate some new network featuresHauke Mehrtens2017-12-161-2/+6
| | | | | | | | | | | This deactivates the following options which were introduced between kernel 4.9 and 4.14 in some kernel packages: CONFIG_INET_ESP_OFFLOAD CONFIG_INET6_ESP_OFFLOAD CONFIG_LWTUNNEL_BPF CONFIG_NET_9P_XEN Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: unset CONFIG_CIFS_SMB311 in kmod-fs-cifsHauke Mehrtens2017-12-161-1/+2
| | | | | | Do not activate the experimental feature CONFIG_CIFS_SMB311. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: add kmod-crypto-ecdhHauke Mehrtens2017-12-164-1/+76
| | | | | | | | | | In kernel 4.14 kmod-bluetooth depends on kmod-crypto-ecdh, add kmod-crypto-ecdh to LEDE. Both packages also depend on the kmod-crypto-kpp package. To build this we have to fix the dependency of CRYPTO_ECDH which has a typo. This patch is already accepted upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: add kmod-crypto-rsaHauke Mehrtens2017-12-161-2/+20
| | | | | | | | In kernel 4.14 kmod-crypto-hw-ccp depends on kmod-crypto-rsa, add it. kmod-crypto-rsa also packages the ASN1 parser and some other code which is currently only used by this module. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: add kmod-crypto-acompressHauke Mehrtens2017-12-161-1/+13
| | | | | | In kernel 4.14 kmod-crypto-deflate depends on kmod-crypto-acompress. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: add kmod-lib-zstdHauke Mehrtens2017-12-162-1/+23
| | | | | | | In kernel 4.14 kmod-fs-btrfs depends on the zstd compression libraries, add it to the package system. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: add kmod-daxHauke Mehrtens2017-12-161-1/+12
| | | | | | | In kernel 4.14 kmod-dm depends on kmod-dax. Add DAX: "Direct access to differentiated memory" to LEDE. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>