aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* net: ar8216: prevent device duplication in ar8xxx_dev_listPavel Kubelun2016-12-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/fd7b89dd464a4afffa04ff2e17c771dfe95668cf%5E%21/#F0 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: prevent device duplication in ar8xxx_dev_list If probe is called twice, once for PHY0 and a second time for PHY4, the same switch device will be added twice to ar8xxx_dev_list, while supposedly this list should have one element per hardware switch present in the system. While no negative impact have been observed, it does happen if a platform instanciates these two PHYs from device-tree, as an example. Change-Id: Iddcbdf7d4adacb0af01975b73f8e56b4582e894e Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/234790 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org>
* net: ar8216: hold ar8xxx_dev_list_lock during use_count--Pavel Kubelun2016-12-011-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c3fd96a7b87da23979d8569ce45447f8419ca303%5E%21/#F0 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: hold ar8xxx_dev_list_lock during use_count-- It is possible for the remove() callback to run twice in parallel, which could result into --use_count returning only 1 in both cases and the rest of the unregistration path to never be reached. This case has never been observed in practice, but we will fix preventively to make the code more robust. BUG=chrome-os-partner:33096 TEST=none Change-Id: If09abe27fdb2037f514f8674418bafaab3cbdef6 Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/232870 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org>
* net: ar8327: replace sprintf() by scnprintf()Pavel Kubelun2016-12-011-2/+1
| | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/fd0c41c7b9327ce003f44df38ce42556fb177b17%5E%21/#F0 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: replace sprintf() by scnprintf() BUG=chrome-os-partner:33096 TEST=none Change-Id: Ib82035c9f2769a86d3e90f9573a09e5700ff5676 Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/232829 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org>
* net: ar8327: remove unnecessary spinlocksPavel Kubelun2016-12-011-4/+0
| | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/541c15f8dd02ddce07e0a462a0c2572d8398bccc%5E%21/#F0 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: remove unnecessary spinlocks BUG=chrome-os-partner:33096 TEST=none Change-Id: Ia1b51258504501863fd3298717cc923a1baf34ca Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/232828 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org>
* net: ar8216: sync mib_work cancellationPavel Kubelun2016-12-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c05af20272059e149e2da2e1fa1fbd90c03ec979 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: sync mib_work cancellation ar8xxx_mib_stop() is called from ar8xxx_phy_remove(), so we want to make sure the work doesn't run after priv is freed / the device ceases to exist. BUG=chrome-os-partner:33096 TEST=none Change-Id: Iafb44ce93a87433adc4576e5fea5fda58d1f43a9 Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/232827 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org> Reviewed-by: Grant Grundler <grundler@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org>
* ipq806x: refactor rpm clock controller patchesPavel Kubelun2016-12-018-87/+250
| | | | | | | | | | | | RPM clock controller driver had made its way upstream and previous approach of directly redoing a driver to support ipq806x is a no go anymore. Thus reverting mentioned patches to upstream state and renaming in correct patch numbering accordance. To make the driver work on ipq806x boards we introduce a custom patch. Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
* tools: cmake: import another upstream commit for OpenSSL backwards compatibilityJo-Philipp Wich2016-12-012-1/+191
| | | | Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* kernel: add missing config symbolsFelix Fietkau2016-12-011-0/+2
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* tools: cmake: import upstream patch for OpenSSL 1.1.x compatibilityJo-Philipp Wich2016-12-011-0/+379
| | | | Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* xtables-addons: add CONFIG_NF_CONNTRACK_MARK=y to all kmod-* packagesFelix Fietkau2016-12-011-2/+2
| | | | | | | Not all kmod packages depends on kmod-ipt-compat-xtables, but this kernel config option is required for building the whole package Signed-off-by: Felix Fietkau <nbd@nbd.name>
* e2fsprogs: avoid picking up incompatible libcom_err.soJo-Philipp Wich2016-11-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | Commit 2728512 ("e2fsprogs: List all libraries explicitly") forced the e2fsprogs build system to link libcom_err.so in various places. Unfortunately, the krb5 package also ships a libcom_err.so with a totally different ABI and puts it into the global staging directory which causes e2fsprogs to pick up this wrong library, leading to the following failure: LD blkid ../lib/libext2fs.so: undefined reference to `_et_list' collect2: error: ld returned 1 exit status Makefile:504: recipe for target 'blkid' failed Change the SYSLIBS specification to explicitely link libcom_err.so.0.0 which in order to work around the problem. In the long run, the libcom_err clash between e2fsprogs and krb5 needs to be solved properly. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* mkimage: fix openssl 1.1.x compat fix with libresslFelix Fietkau2016-11-301-1/+1
| | | | | | | libressl sets OPENSSL_VERSION_NUMBER to 0x20000000L, which breaks API checks based on it. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* tools: mkimage: fix build with OpenSSL 1.1.x (FS#182)Jo-Philipp Wich2016-11-301-0/+97
| | | | | | | | The OpenSSL 1.1.x version series undergone some major API changes which made the RSA structure opaque and deprecated a number of methods, so add some conditional compat code to make the u-boot source build again. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* rtc-rv5c386a: fix include path for bcm47xx_nvram.hFelix Fietkau2016-11-301-1/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* docs: remove all refrences in Makefiles/scriptsMathias Kresin2016-11-304-9/+2
| | | | | | | | | | The SDK Makefile still trys to copy the docs folder which was removed with 882f4d2d63272abce8c1966983aa10178e2e971f. This causes an SDK build error. All other removals are just cleanup. Signed-off-by: Mathias Kresin <dev@kresin.me>
* base-files: add a wrapper for init scripts in profileAlberto Bursi2016-11-291-0/+9
| | | | | | | | | | | "service" is a simple wrapper that will allow to call init.d scripts current method: # /etc/init.d/network reload with the wrapper: # service network reload If the wrapper is called without arguments or with a wrong init script name, it will print an error and list the content of /etc/init.d/ folder Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
* kernel: bump to 4.4.35Kevin Darbyshire-Bryant2016-11-2949-308/+191
| | | | | | | | | | | Refresh patches on all 4.4 supported platforms. 077-0005-bgmac-stop-clearing-DMA-receive-control-register-rig.patch removed as now upstream. Compile & run tested: ar71xx - Archer C7 v2 Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* docs: deleting docs because they are obsoleteAlberto Bursi2016-11-2915-2515/+0
| | | | | | | | the docs in /docs folder are pretty much obsolete and in a not very friendly format (latex, that requires to be compiled), leaving them there only causes confusion. LEDE documentation's place is the wiki, or the site. Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
* lantiq: drop obsolete patchMathias Kresin2016-11-291-31/+0
| | | | | | | | | | | | ifxhcd never had roothub support but since kernel 3.x it was expected that a roothub always exists. The patched fixed a null pointer deref in the usb subsystem because of the missing roothub. Since ifxhcd is gone, this whole patch isn't required any longer. Signed-off-by: Mathias Kresin <dev@kresin.me>
* uboot-lantiq: Add BT Home Hub 5A supportMathias Kresin2016-11-292-0/+352
| | | | | | | | | | | | | | | | | | Based on the submission to the uboot-lantiq repo by Martin Blumenstingl. Use the ddr_settings.h from the GPL tarball. The NAND boot optimized one (with memory tuning enabled) doesn't work for the UART boot image. Use the same mtd layout as the stock u-boot. Add add UBI support. Use the leds to indicate boot status like it is done with the stock u-boot. Switch on the red power led if kernel image can't be loaded. Otherwise switch the green led on. Make only the ramboot u-boot available. Only this image is required for the first installation of LEDE. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: use BT HomeHub 5 Type A OEM partition layoutMathias Kresin2016-11-294-35/+36
| | | | | | | | | | | | | | | | | | | | This way the on nand bad block table is preserved and used. Add support for nand OOB ECC checksums as well. It should fix all reported ubi errors, which were all related to bad nand blocks and a purged on nand bad block table. The existing ubi partition will be reused, which eliminates the need to touch the caldata during initial install. The BT u-boot has support for loading a kernel from an ubi volume. It isn't necessary any longer to replace the BT u-boot with a custom compiled one to use LEDE. It is required to restore the BT Firmware and install LEDE from scratch to switch to the new partition layout. An image for restoring the BT firmware and installing LEDE is provided at https://github.com/mkresin/lede/releases. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: backport kernel patch to pass of node to nand_dt_initMathias Kresin2016-11-292-2/+27
| | | | | | | | | | | | | | | | | | | Backport upstream commit a61ae81a1907af1987ad4c77300508327bc48b23. The actually purpose of the patch was to do some cleanup. As a side effect of this cleanup, the device node is now passed to nand_dt_init. This allows to use the common nand device tree properties - nand-bus-width - nand-on-flash-bbt - nand-ecc-mode - nand-ecc-step-size - nand-ecc-strength for the plat_nand driver. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: drop ath9k device tree binding & ath9k pci fixupMathias Kresin2016-11-291-304/+7
| | | | | | | | | | Due to the addition of the bindings to the ath9k driver, this code isn't used any longer. The fixup is now done by the owloader. Rename the ath_eep.c file to ath5k_eep.c to indicate that this files includes ath5k related code only. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: use ath9k device tree bindings binding/owl-loaderMartin Blumenstingl2016-11-2914-141/+305
| | | | | | | | | | | | | | | | | This moves the extraction of the eeprom/calibration data to a hotplug firmware script. Additionally it modifies all .dts to configure ath9k directly from within the .dts. The owl-loader approach enables support on devices with exotic eeprom data locations (such as unaligned positions on the flash or data inside an UBI volume). Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> [add ath9k caldata mac address patcher] [fixes DGN3500 wifi mac] [fixes BTHOMEHUBV3A wifi mac] [set invalid mac for BTHOMEHUB2B, FRITZ3370, FRITZ7320 & FRITZ7360SL to restore previous random mac behavior] Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: mac80211: disable ath9k bands via device treeMartin Blumenstingl2016-11-291-0/+32
| | | | | | | | | | | | | These properties allow overriding the settings from the EEPROM which indicate whether a band is enabled or not. Setting this property is only needed when the RF circuit does not support the 2.4GHz or 5GHz band while it is enabled nevertheless in the EEPROM. These patches will be replaced with a future upstream version which will introduces an ieee80211 device tree property to disable bands. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* kernel: mac80211: add pending ath9k EEPROM swapping patchesMartin Blumenstingl2016-11-297-0/+1730
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two types of swapping the EEPROM data in the ath9k driver. Before this series one type of swapping could not be used without the other. The first type of swapping looks at the "magic bytes" at the start of the EEPROM data and performs swab16 on the EEPROM contents if needed. The second type of swapping is EEPROM format specific and swaps specific fields within the EEPROM itself (swab16, swab32 - depends on the EEPROM format). With this series the second part now looks at the EEPMISC register inside the EEPROM, which uses a bit to indicate if the EEPROM data is Big Endian (this is also done by the FreeBSD kernel). This has a nice advantage: currently there are some out-of-tree hacks (in OpenWrt and LEDE) where the EEPROM has a Big Endian header on a Big Endian system (= no swab16 is performed) but the EEPROM itself indicates that it's data is Little Endian. Until now the out-of-tree code simply did a swab16 before passing the data to ath9k, so ath9k first did the swab16 - this also enabled the format specific swapping. These out-of-tree hacks are still working with the new logic, but it is recommended to remove them. This implementation is based on a discussion with Arnd Bergmann who raised concerns about the robustness and portability of the swapping logic in the original OF support patch review, see [0]. After a second round of patches (= v1 of this series) neither Arnd Bergmann nor I were really happy with the complexity of the EEPROM swapping logic. Based on a discussion (see [1] and [2]) we decided that ath9k should use a defined format (specifying the endianness of the data - I went with __le16 and __le32) when accessing the EEPROM fields. A benefit of this is that we enable the EEPMISC based swapping logic by default, just like the FreeBSD driver, see [3]. On the devices which I have tested (see below) ath9k now works without having to specify the "endian_check" field in ath9k_platform_data (or a similar logic which could provide this via devicetree) as ath9k now detects the endianness automatically. Only EEPROMs which are mangled by some out-of-tree code still need the endian_check flag (or one can simply remove that mangling from the out-of-tree code). [0] http://www.spinics.net/lists/linux-wireless/msg152634.html [1] https://marc.info/?l=linux-wireless&m=147250597503174&w=2 [2] https://marc.info/?l=linux-wireless&m=147254388611344&w=2 [3] https://github.com/freebsd/freebsd/blob/50719b56d9ce8d7d4beb53b16e9edb2e9a4a7a18/sys/dev/ath/ath_hal/ah_eeprom_9287.c#L351 Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* kernel: mac80211: backport ath9k device tree support patchesMartin Blumenstingl2016-11-293-0/+194
| | | | | | | | | | | | | These patches add support for configuring ath9k based devices via devicetree. This was tested on PCI(e) based devices. This should work for AHB based devices as well (adding more AHB specific properties may still be needed) as soon as the ath79 platform is ready to populate the ath9k wmac via devicetree. This patchset was accepted upstream, more information can be found on the linux-wireless list: https://www.spinics.net/lists/linux-wireless/msg155474.html Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* ar71xx: fix syntax error in /lib/ar71xx.shMatthias Schiffer2016-11-291-4/+4
| | | | | | | | Remove all comments in ubnt_xm_board_detect(), as it's not possible to add comments to specific lines of the case construct anyways. Fixes: 9a5801e7 "ar71xx: add model detection for UBNT Rocket Ti" Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* ar71xx: add model detection for UBNT Rocket TiMatthias Schiffer2016-11-291-1/+2
| | | | | Based-on-patch-by: Neal Oakey <neal.oakey@bingo-ev.de> Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* kernel: have kmod-ipsec depend on kmod-crypto-echainivStijn Tintel2016-11-291-1/+4
| | | | | | | | | The ESP algorithms in CBC mode require echainiv, so have kmod-ipsec depend on kmod-crypto-echainiv. See upstream commit 32b6170ca59ccf07d0e394561e54b2cd9726038c. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* brcm47xx: fix initramfs image build errorFelix Fietkau2016-11-291-0/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* brcm47xx: merge cpu cache workaround patches into one, ensure they get ↵Felix Fietkau2016-11-292-177/+115
| | | | | | compiled out on mips74k Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ar71xx: remove squashfs-64k rootfs image from bin directory, the generic one ↵Felix Fietkau2016-11-291-1/+0
| | | | | | is enough Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ar71xx: remove split kernel/rootfs images where the sysupgrade image can be ↵Felix Fietkau2016-11-291-17/+1
| | | | | | written to flash directly Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ar71xx: remove 2MB flash variant of WP543Felix Fietkau2016-11-292-7/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ar71xx: remove legacy devices that cannot be supported due to kernel ↵Felix Fietkau2016-11-292-38/+0
| | | | | | partition size limits Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ar71xx: remove legacy gzip imagesFelix Fietkau2016-11-291-6/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ar71xx: remove obsolete jffs2 image building codeFelix Fietkau2016-11-292-27/+7
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* iw: drop TX power patch that is part of upstream version nowRafał Miłecki2016-11-291-30/+0
| | | | | | | | | | | | | | | | Applying it again was resulting in duplicated TX info like: Interface wlan0 ifindex 6 wdev 0x1 addr 00:23:6a:a3:7d:00 ssid LEDE2 type AP wiphy 0 channel 11 (2462 MHz), width: 20 MHz, center1: 2462 MHz txpower 31.00 dBm txpower 31.00 dBm Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: use upstream accepted bcm47xxpart parsing fixRafał Miłecki2016-11-281-0/+3
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: use upstream accepted fix for ARM core abortsRafał Miłecki2016-11-282-42/+75
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* firmware-utils: replace md5 code with Alexander Peslyak's implementationRafał Miłecki2016-11-282-337/+306
| | | | | | | | | | | | | | | | | | | Our current implementation is pretty old and uses some pre-standard/old ANSI C style that triggers warnings like: warning: call to function 'MD5_Init' without a real prototype [-Wunprototyped-calls] This is caused by declarations specified in a following way: src/md5.h:60:6: note: 'MD5_Init' was declared here void MD5_Init (); Having these warnings makes it harded to notice real problems. We could try hiding them but it makes more sense to just use a cleaner code. Another tiny gain from this switch is slightly reduced binary size, on x86_64 tplink-safeloader's size 48104 became 48003. The new code is public domain, uses "heavily cut-down BSD license". Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* lantiq: add Falcon supportHauke Mehrtens2016-11-2720-1/+1494
| | | | | | | | | | | | This adds support for the Intel Falcon SoC for GPON. Support for the Falcon SoC was removed in commit c8218363951 svn rev: 40392 from OpenWrt, this commit adds it again. This patch adds a new subtarget for the Falcon SoC, but it still misses all the drivers needed to control the GPON part. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: add swconfig to the default packagesMathias Kresin2016-11-273-46/+28
| | | | | | | | | | | | The DEVICE_PACKAGES are not included in the initramfs image in case TARGET_PER_DEVICE_ROOTFS is set. This might produces initramfs images with a not working network configuration because of a missing swconfig. Workaround the issues by adding the essential swconfig package to the default packages selection and deselect swconfig for boards not having swconfig included before via device packages. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ltq-hcd: drop packageMathias Kresin2016-11-2717-21402/+0
| | | | | | | Since ffd7c155008bff4b08197dfd710d7a1386313f98 it isn't used anymore on any supported target. Signed-off-by: Mathias Kresin <dev@kresin.me>
* gpio-button-hotplug: add more buttonsMathias Kresin2016-11-271-15/+24
| | | | | | The keycodes are used by some boards. Signed-off-by: Mathias Kresin <dev@kresin.me>
* treewide: fix button keys codes used in dtsMathias Kresin2016-11-2722-26/+27
| | | | | | Use keycodes that matches the intended use case based on the label. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add size checks/append metadata where missingMathias Kresin2016-11-273-30/+22
| | | | Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: fix Airlink AR670W factory imageMathias Kresin2016-11-272-8/+7
| | | | | | | Move the mkwrgimg build step to the makefile. It will be required by other boards as well. Signed-off-by: Mathias Kresin <dev@kresin.me>
* mvebu: fix typo in image metadata supportMathias Kresin2016-11-271-2/+2
| | | | Signed-off-by: Mathias Kresin <dev@kresin.me>