aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* ramips: mt7621: fix 5GHz WiFi LED on ZBT WG3526Andreas Ziegler2018-12-291-0/+4
| | | | | | This fixes the 5GHz WiFi LED which was previously not working. Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
* ath79: fix Archer A7 v5 5GHz MAC adressDavid Bauer2018-12-291-1/+1
| | | | | | | | Currently all Archer A7 v5 have the same (incorrect) MAC address. The address is currently derived from eth1 which is not present on the QCA9563. Use eth0 to get the correct MAC address. Signed-off-by: David Bauer <mail@david-bauer.net>
* ramips: add support for CreativeBox v1Weijie Gao2018-12-284-0/+187
| | | | | | | | | | | | | | | | | | | | | | | | Hardware: SoC: MT7621 DRAM: 512MB DDR3 Flash: 32MB SPI-NOR WiFi 2.4GHz: MT7603 @ PCIe0 WiFi 5.8GHz: MT7612 @ PCIe1 SATA: ASM1061 @ PCIe2 Interfaces: GBE RJ45 x5 USB3.0 x1 eSATA (with USB2.0) x1 SATA x1 UART x1 I2C x1 JTAG x1 Flash instructions: Through factory bootloader or firmware web interface Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* ramips: add SPDX license identifier into some dts,dtsiNOGUCHI Hiroshi2018-12-283-0/+3
| | | | | | Acked-by: Mathias Kresin <dev@kresin.me> Acked-by: INAGAKI Hiroshi <musashino.open@gmail.com> Signed-off-by: NOGUCHI Hiroshi <drvlabo@gmail.com>
* apm821xx: switch MyBook Live's recovery images to multi-fileChristian Lamparter2018-12-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch converts the MyBook Live's recovery image to utilize the multi-image method which integrates the device-tree binary directly into the image. The new initramfs can be loaded through the MyBook Live's U-boot in the following way: => setenv ipaddr 192.168.1.1 => setenv serverip 192.168.1.2 => sata init; run addtty; tftp $kernel_addr_r wd_mybooklive-initramfs.bin; bootm Waiting for PHY auto negotiation to complete... done ENET Speed is 1000 Mbps - FULL duplex connection (EMAC0) Using ppc_4xx_eth0 device TFTP from server 192.168.1.2; our IP address is 192.168.1.1 Filename 'wd_mybooklive-initramfs.bin'. Load address: 0x1000000 Loading: ################################################ [...] done [...] Booting kernel from Legacy Image at 01000000 ... Image Name: initramfs Image Type: PowerPC Linux Multi-File Image (gzip compressed) [...] Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: 4.14: switch to upstream dw-dma-hport patchChristian Lamparter2018-12-273-25/+166
| | | | | | | | | | This patch fixes the build regression on 4.14 build due to dt-bindings/dma/dw-dmac.h MIA. apm82181.dtsi:24:10: fatal error: dt-bindings/dma/dw-dmac.h: No such file or directory Fixes: 32141c183a28 ("apm821xx: add linux 4.19 apm821xx patches") Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* brcm47xx: add support for the kernel 4.19Rafał Miłecki2018-12-2721-0/+2354
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One patch that wasn't ported due to a lot of conflict is: 901-Revert-bcma-switch-GPIO-portions-to-use-GPIOLIB_IRQC.patch Hopefully a correct/real fix will get developed before we switch brcm47xx to the 4.14. This IS NOT ready for switching/trying/using 4.19 yet due to some DMA regression affecting bgmac: [ 0.945472] bgmac_bcma bcma0:2: Found PHY addr: 25 [ 0.954565] libphy: bcma_mdio mii bus: probed [ 0.959486] ------------[ cut here ]------------ [ 0.964387] WARNING: CPU: 0 PID: 1 at ./include/linux/dma-mapping.h:516 bgmac_enet_probe+0x1b4/0x5c4 [ 0.973751] Modules linked in: [ 0.976913] CPU: 0 PID: 1 Comm: swapper Not tainted 4.19.9 #0 [ 0.982750] Stack : 804a0000 804597c4 00000000 00000000 80458fd8 8381bc2c 838282d4 80481a47 [ 0.991367] 8042e3ec 00000001 804d38f0 00000204 83980000 00000065 8381bbe0 6f55b24f [ 0.999975] 00000000 00000000 80520000 00002018 00000000 00000075 00000007 00000000 [ 1.008583] 00000000 80480000 000ee811 00000000 00000000 00000000 80432c00 80248db8 [ 1.017196] 00000009 00000204 83980000 803ad7b0 00000000 801feeec 00000000 804d0000 [ 1.025804] ... [ 1.028325] Call Trace: [ 1.030875] [<8000aef8>] show_stack+0x58/0x100 [ 1.035513] [<8001f8b4>] __warn+0xe4/0x118 [ 1.039708] [<8001f9a4>] warn_slowpath_null+0x48/0x64 [ 1.044935] [<80248db8>] bgmac_enet_probe+0x1b4/0x5c4 [ 1.050101] [<802498e0>] bgmac_probe+0x558/0x590 [ 1.054906] [<80252fd0>] bcma_device_probe+0x38/0x70 [ 1.060017] [<8020e1e8>] really_probe+0x170/0x2e8 [ 1.064891] [<8020e714>] __driver_attach+0xa4/0xec [ 1.069784] [<8020c1e0>] bus_for_each_dev+0x58/0xb0 [ 1.074833] [<8020d590>] bus_add_driver+0xf8/0x218 [ 1.079731] [<8020ef24>] driver_register+0xcc/0x11c [ 1.084804] [<804b54cc>] bgmac_init+0x1c/0x44 [ 1.089258] [<8000121c>] do_one_initcall+0x7c/0x1a0 [ 1.094343] [<804a1d34>] kernel_init_freeable+0x150/0x218 [ 1.099886] [<803a082c>] kernel_init+0x10/0x104 [ 1.104583] [<80005878>] ret_from_kernel_thread+0x14/0x1c [ 1.110107] ---[ end trace f441c0d873d1fb5b ]--- [ 1.114914] bgmac_bcma bcma0:2: Allocation of TX ring 0x200 failed [ 1.121215] bgmac_bcma bcma0:2: Unable to alloc memory for DMA [ 1.127626] bgmac_bcma: probe of bcma0:2 failed with error -12 [ 1.133838] bgmac_bcma: Broadcom 47xx GBit MAC driver loaded Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ath79: ubnt-bullet-m-xw: Remove eth1 disabled nodePetr Štetiar2018-12-271-4/+0
| | | | | | It's redundant as eth1 is disabled by default in ath79.dtsi. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: ubnt-bullet-m-xw: Move eth0 mtd-mac-address to the common includePetr Štetiar2018-12-272-2/+4
| | | | | | | It's same for Bullet and Nanostation so far, so let's hope it's going to be the same for other boards sharing the same platform. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: ubnt-bullet-m-xw: Remove pll-data property from eth0 nodePetr Štetiar2018-12-271-1/+0
| | | | | | | | | | | | | | | | | | It's not necessary as it's already defined in ar934x.dtsi to: pll-data = <0x16000000 0x00000101 0x00001616>; And in ar71xx it's currently set to the same values: #define AR934X_PLL_VAL_1000 0x16000000 #define AR934X_PLL_VAL_100 0x00000101 #define AR934X_PLL_VAL_10 0x00001616 And dumping the value from the airOS v6.1.7 has the same value: AR934X_PLL_ETH_XMII_CONTROL_REG 0x1805002C 0x101 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: ubnt-xw: Add LED aliases for diag and status LED supportPetr Štetiar2018-12-271-1/+8
| | | | | | | | Currently there is no LED signalization for various system states implemented in diag.sh, so this patch adds support for it. Tested-by: Joe Ayers <ae6xe@arrl.net> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* apm821xx: add linux 4.19 apm821xx patchesChristian Lamparter2018-12-2713-2/+1640
| | | | | | | | | | This patch updates the apm821xx target to use the 4.19 kernel. 4.19 ships with all the crypto4xx driver patches. Furthermore, the DW-DMA fix for the SATA controller has been backported from 4.20 and integrated. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* kernel: 4.19: fix usbport led trigger regressionChristian Lamparter2018-12-271-0/+84
| | | | | | | | | | | | | |In the patch "usb: simplify usbport trigger" together with |"leds: triggers: add device attribute support" caused an |regression for the usbport trigger. it will no longer |enumerate any "ports" (i.e the sysfs directory stays empty) |if the usb host drivers are fully initialized before the |usbport trigger was loaded. <https://marc.info/?l=linux-usb&m=154577101631079> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx: convert to device-tree based USB LED triggerChristian Lamparter2018-12-275-2/+108
| | | | | | | | Thanks to the ledtrig-usb.c the USB LED trigger can be setup in the device-tree definition for the Asus RT-AC58U and ZyXEL NBG6617. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx: fix warning triggered by bad interrupt definitionChristian Lamparter2018-12-272-4/+4
| | | | | | | | | | | | | | | | | | | | | | | This patch fixes a kernel warning that got triggered by 4.19 because of a bad/missing interrupt level definition in the DTS. | WARNING: CPU: 2 PID: 1996 at drivers/irqchip/irq-gic.c:1016 | CPU: 2 PID: 1996 Comm: kmodloader Not tainted 4.19.9 #0 | Hardware name: Generic DT based system | [<c0317884>] (warn_slowpath_null) from [<c04f9cd0>] | [<c04f9cd0>] (gic_irq_domain_translate) from [<c035af30>] | [<c035af30>] (irq_create_fwspec_mapping) from [<c035b1e0>] | [<c035b1e0>] (irq_create_of_mapping) from [<c0614eec>] | [<c0614eec>] (of_irq_get) from [<c0614f3c>] | [<c0614f3c>] (of_irq_to_resource) from [<c0614ff0>] | [<c0614ff0>] (of_irq_to_resource_table) from [<c0610e08>] | [<c0610e08>] (of_device_alloc) from [<c0610ea0>] | [<c0610ea0>] (of_platform_device_create_pdata) | [<c061120c>] (of_platform_bus_create) | [<c06113c4>] (of_platform_populate) | [<bf4c06b4>] (dwc3_qcom_probe [dwc3_qcom]) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx: kmod-usb-dwc3-of-simple vs kmod-usb-dwc3-qcomChristian Lamparter2018-12-271-0/+1
| | | | | | | | | | | | | | | | | | | | | Robert Marko <robimarko@gmail.com> noted in "ipq40xx: Use kmod-usb-dwc3-qcom by default": | Since 4.18 we cant use DWC3 OF Simple anymore so we | have to use kmod-usb-dwc3-qcom. This patch adds a TODO right next to the KERNEL_PATCHVER so it will be picked up when moving to 4.19. I would also like to point out: All users/devs that are compiling their own images from source and have a existing 4.14 config and want to switch to 4.19: Please drop kmod-usb-dwc3-of-simple and add kmod-usb-dwc3-qcom module package. Otherwise, the USB port on your router will no longer work. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx: MR33: device-tree updateChristian Lamparter2018-12-271-29/+31
| | | | | | | | | | | | | | - 4.19 no longer refuses to initialize the mdio bus if a phy is not connected. - fix partition unit-address - restrict partition offset and size to 32-bit integers. - add note to warn people not to mess with the ubi partition size. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx/ipq806x: 4.19: fix qcom-nandc panic on bootChristian Lamparter2018-12-271-0/+83
| | | | | | | This patch fixes the crash that occures on rawnand device. <https://patchwork.ozlabs.org/patch/1017933/> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx: remove qcom,ipq4019 on all devicesChristian Lamparter2018-12-2714-14/+14
| | | | | | | | | | Upstream commit: 80483c3abf8 ("ARM: qcom: Cleanup/Remove unnecessary board file") removed all the platform device compatibles stating that: "This patch removes the unnecessary board file. The generic machine definition is sufficient for the Qualcomm platforms." Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx: rt-ac58u: fix device-tree snafuChristian Lamparter2018-12-271-22/+27
| | | | | | | | | | | | | | | | | | | - make the device userspace integration (WIFI,MAC,sysupgrade) work again by renaming the ubi to UBI_DEV as a temporary measure. In the future, once 4.14 support is dropped, this can all be refactored again. *sigh* - use the wifi0 and wifi1 labels - follow Device-Tree Release v0.2 2.2.2 Generic Names Recommendation - fix duplicated partition node-names - remove qcom,ipq4019 platform compatible. it's no longer needed (and wrong because the chip is a qcom,ipq4018). Fixes: 4c67f3ad78d ("ipq40xx: Adapt 4.19 DTS for upstream SPI-NAND driver") Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx: 4.19: Enable pseudo random number generatorRobert Marko2018-12-2714-1/+53
| | | | | | | | IPQ40xx series has a HW pseudo random number generator built in. It already has a node in the upstream ipq4019.dtsi so we just need to enable it. Its driver has been rewritten to use crypto API so we dont have char interface like under 4.14 kernel. Signed-off-by: Robert Marko <robimarko@gmail.com>
* ipq40xx: files-4.19: Clear some DTC warningsRobert Marko2018-12-276-16/+0
| | | | | | | | | | DTC was throwing warnings like this: image-qcom-ipq4018-jalapeno.dtb: Warning (avoid_unnecessary_addr_size): /soc/spi@78b5000/m25p80@0: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property image-qcom-ipq4018-jalapeno.dtb: Warning (avoid_unnecessary_addr_size): /soc/spi@78b5000/spi-nand@1: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property So lets fix this for our downstream boards. Signed-off-by: Robert Marko <robimarko@gmail.com>
* ipq40xx: Use upstream SPI-NAND driver instead of MT29FRobert Marko2018-12-273-6/+6
| | | | | | | | | | | | Since 4.19 upstream kernel provides generic SPI-NAND framework and vendor specific drivers. Since only users of MT29F are 2 boards with Winbond W25N01GV SPI-NAND for which support has been backported from 4.20 we can drop the ever stuck in staging MT29F driver and instead use the upstream driver. Signed-off-by: Robert Marko <robimarko@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [squashed]
* ipq40xx: Use kmod-usb-dwc3-qcom by defaultRobert Marko2018-12-271-1/+1
| | | | | | | Since 4.18 we cant use DWC3 OF Simple anymore so we have to use kmod-usb-dwc3-qcom. Signed-off-by: Robert Marko <robimarko@gmail.com>
* ipq40xx: Add 4.19 kernel configRobert Marko2018-12-271-0/+507
| | | | | | This adds the neccessary 4.19 kernel config. Signed-off-by: Robert Marko <robimarko@gmail.com>
* ipq40xx: Add patches for 4.19Robert Marko2018-12-2726-0/+9289
| | | | | | | | | | | | | | | | This adds the necessary patches for 4.19 kernel. Upstreamed patches were dropped, backported upstreamed patches from 4.20. Drop Winbond ID patch since that NAND IC was upstreamed to use SPI-NAND framework and support for it was backported from 4.20. Rework ESSEDMA patches to compile under 4.19 due to timer changes, Clément Péron did the hard work and his changes were taken from the initial 4.19 PR. MR33 changes had to be manually refreshed to apply. Refresh other patches to apply. Signed-off-by: Robert Marko <robimarko@gmail.com> Remove
* ipq40xx: Add files for 4.19Robert Marko2018-12-2716-0/+3613
| | | | | | This copies over files from 4.14 Signed-off-by: Robert Marko <robimarko@gmail.com>
* ath79: add support for devolo WiFi pro 1750cDavid Bauer2018-12-274-1/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- CPU: Qualcomm Atheros QCA9558 RAM: 128M DDR2 FLASH: 16MiB ETH: 1x Atheros AR8035 (PoE in) WiFi2: QCA9558 3T3R WiFi5: QCA9880 3T3R BTN: 1x Reset LED: 1x LED blue 1x LED red BEEP: 1x GPIO attached piezo beeper UART: 3.3V GND TX RX (115200-N-8) (3.3V is square pad) Header is located next to reset-button There is also a Micro-B USB-port present but this only seems to be a dummy as the circuit next to it is not present (at least in my unit). It is also not mentioned in the devolo manual. Installation ------------ Make sure you set a password for the root user as prompted on first setup! 1. Upload OpenWRT sysupgrade image via SSH to the device. Use /tmp as the destination folder on the device. User is root, password the one set in the web interface. 2. Install OpenWRT with > sysupgrade -n -F /tmp/<openwrt-image-name> Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: add support for devolo WiFi pro 1200eDavid Bauer2018-12-276-0/+214
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- CPU: Qualcomm Atheros QCA9558 RAM: 128M DDR2 FLASH: 16MiB ETH: 1x Atheros AR8035 (PoE in) 1x Atheros AR8033 WiFi2: QCA9558 2T2R WiFi5: QCA9880 2T2R BTN: 1x Reset LED: 1x LED blue 1x LED red BEEP: 1x GPIO attached piezo beeper UART: 3.3V GND TX RX (115200-N-8) (3.3V is square pad) Header is located next to reset-button Installation ------------ Make sure you set a password for the root user as prompted on first setup! 1. Upload OpenWRT sysupgrade image via SSH to the device. Use /tmp as the destination folder on the device. User is root, password the one set in the web interface. 2. Install OpenWRT with > sysupgrade -n -F /tmp/<openwrt-image-name> Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: add support for TP-Link Archer C7 v5TOCK Chiu2018-12-275-1/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for TP-Link Archer C7 v5, leveraging most effort from commit ea9baee and 1e4ee63. Archer C7 v5 is identical to Archer A7 v5 but with a different flash layout. Specification: - QCA9563 SoC (750 MHz) - 128 MiB of RAM (DDR2) - 16 MiB of flash (SPI) - 5x 1 Gbps Ethernet (1x WAN + 4x LAN) - 2.4GHz (bgn) SoC internal + 5GHz (ac) QCA9880 - 10x LED, 2x button - UART header on PCB Flash instructions: 1. Upload openwrt-ath79-generic-tplink_archer-c7-v5-squashfs-factory.bin via web interface. Flash instructions using TFTP recovery: 1. Plug PC to one of the LAN ports 2. Set PC to fixed IP address 192.168.0.66 3. Rename the factory image to ArcherC7v5_tp_recovery.bin and place it in TFTP root directory 4. Turn on the router with the reset button pressed for about 15 secs 5. Release the button and wait about 150 secs to complete flashing Signed-off-by: TOCK Chiu <tock.chiu@gmail.com>
* brcm2708: Add feature flag rootfs-partDaniel F. Dickinson2018-12-271-1/+1
| | | | | | | | | Even with squashfs brcm2708 requires ROOTFS_PART_SIZE because the overlay exists as a loopback device on the space not used by squashfs in the root partition. Also for ext4 (the other fs option) ROOTFS_PART_SIZE is required, so use feature flag rootfs-part to enable it. Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
* apm821xx: sata: set rootfs-part feature flagChristian Lamparter2018-12-271-1/+1
| | | | | | | | The rootfs-part feature flag ensures that CONFIG_ROOTFS_PART_SIZE symbol will be present at all times. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* bcm53xx: update 4.19 configRafał Miłecki2018-12-271-20/+20
| | | | | | | There were 3 new symbols possible to choose: ARCH_BCM_HR2, PCI_V3_SEMI and PHY_BCM_SR_PCIE. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: add support for the kernel 4.19Rafał Miłecki2018-12-2722-0/+2097
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: backport DTS changes queued for the 4.21Rafał Miłecki2018-12-279-8/+180
| | | | | | It just replaces some downstream patches & adds relicensing work. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: rename dts backport patches changing their prefixesRafał Miłecki2018-12-2716-0/+0
| | | | | | | Start 03x with 030 instead of 035. It's a trivial change that adds more place for further backports in the 03x space. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: Fix KERNEL_STACKPROTECTOR on kernel 4.19Hauke Mehrtens2018-12-261-4/+2
| | | | | | | | | | | | The configuration option was renamed with kernel 4.19 from CONFIG_CC_STACKPROTECTOR to CONFIG_STACKPROTECTOR adapt the code to set both options. CONFIG_STACKPROTECTOR now sets the regular stack protector and CONFIG_STACKPROTECTOR_STRONG activates the additional protection of more functions. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Add compiler options to generic configurationHauke Mehrtens2018-12-261-0/+6
| | | | | | | | With kernel 4.19 new configuration options for the compiler were added. These are automatically selected and set, instead of having them in each target configuration, put them into the generic configuration. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Deactivate CONFIG_COMPAT_BRKHauke Mehrtens2018-12-268-8/+0
| | | | | | | | | CONFIG_COMPAT_BRK disables the heap randomization which is only needed for very old and ancient user space applications, I am not aware that we run any of these, just deactivate this option for these targets to allow heap randomization. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* bcm53xx: update pinctrl driver & use its new DT bindingRafał Miłecki2018-12-252-0/+130
| | | | | | | Driver has been updated upstream to support more precise DT binding and avoid mapping conflicts between pinctrl and USB 2.0 PHY. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: MIPS: math-emu Write-protect delay slot emulation pagesKevin Darbyshire-Bryant2018-12-243-0/+357
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backport https://git.kernel.org/pub/scm/linux/kernel/git/mips/linux.git/commit/?id=adcc81f148d733b7e8e641300c5590a2cdc13bf3 "Mapping the delay slot emulation page as both writeable & executable presents a security risk, in that if an exploit can write to & jump into the page then it can be used as an easy way to execute arbitrary code. Prevent this by mapping the page read-only for userland, and using access_process_vm() with the FOLL_FORCE flag to write to it from mips_dsemul(). This will likely be less efficient due to copy_to_user_page() performing cache maintenance on a whole page, rather than a single line as in the previous use of flush_cache_sigtramp(). However this delay slot emulation code ought not to be running in any performance critical paths anyway so this isn't really a problem, and we can probably do better in copy_to_user_page() anyway in future. A major advantage of this approach is that the fix is small & simple to backport to stable kernels. Reported-by: Andy Lutomirski <luto@kernel.org> Signed-off-by: Paul Burton <paul.burton@mips.com> Fixes: 432c6bacbd0c ("MIPS: Use per-mm page to execute branch delay slot instructions")" Without patch: cat /proc/self/maps 00400000-0047a000 r-xp 00000000 1f:03 1823 /bin/busybox 00489000-0048a000 r-xp 00079000 1f:03 1823 /bin/busybox 0048a000-0048b000 rwxp 0007a000 1f:03 1823 /bin/busybox 77ec8000-77eed000 r-xp 00000000 1f:03 2296 /lib/libgcc_s.so.1 77eed000-77eee000 rwxp 00015000 1f:03 2296 /lib/libgcc_s.so.1 77eee000-77f81000 r-xp 00000000 1f:03 2470 /lib/libc.so 77f90000-77f92000 rwxp 00092000 1f:03 2470 /lib/libc.so 77f92000-77f94000 rwxp 00000000 00:00 0 7f946000-7f967000 rw-p 00000000 00:00 0 [stack] 7fefb000-7fefc000 rwxp 00000000 00:00 0 7ffac000-7ffad000 r--p 00000000 00:00 0 [vvar] 7ffad000-7ffae000 r-xp 00000000 00:00 0 [vdso] Patch applied: cat /proc/self/maps 00400000-0047a000 r-xp 00000000 1f:03 1825 /bin/busybox 00489000-0048a000 r-xp 00079000 1f:03 1825 /bin/busybox 0048a000-0048b000 rwxp 0007a000 1f:03 1825 /bin/busybox 77ed0000-77ef5000 r-xp 00000000 1f:03 2298 /lib/libgcc_s.so.1 77ef5000-77ef6000 rwxp 00015000 1f:03 2298 /lib/libgcc_s.so.1 77ef6000-77f89000 r-xp 00000000 1f:03 2474 /lib/libc.so 77f98000-77f9a000 rwxp 00092000 1f:03 2474 /lib/libc.so 77f9a000-77f9c000 rwxp 00000000 00:00 0 7fbed000-7fc0e000 rw-p 00000000 00:00 0 [stack] 7fefb000-7fefc000 r-xp 00000000 00:00 0 7fff6000-7fff7000 r--p 00000000 00:00 0 [vvar] 7fff7000-7fff8000 r-xp 00000000 00:00 0 [vdso] Note lack of write permission to 7fefb000-7fefc000 Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* ath79: fix pinmux reg size for QCA955xChristian Lamparter2018-12-241-1/+1
| | | | | | | | The range of pinmux reg property "<0x1804002c 0x40>" for QCA955x SoC does not includes GPIO_FUNCTION register. Reported-by: INAGAKI Hiroshi <musashino.open@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath79: add support for NEC Aterm WG800HPINAGAKI Hiroshi2018-12-245-0/+227
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NEC Aterm WG800HP is a 2.4/5 GHz band 11ac router, based on Qualcomm Atheros QCA9563. Specification: - Qualcomm Atheros QCA9563 - 64 MB of RAM (DDR2) - 8 MB of Flash (SPI-NOR) - 2.4/5 GHz wifi - 2.4 GHz: 2T2R (SoC internal) - 5 GHz: 1T1R (QCA9887) - 4x 10/100/1000 Mbps Ethernet - 8x LEDs, 3x keys (2x buttons, 1x slide-switch) - UART through-hole on PCB (J2) - Vcc, GND, NC, TX, RX from SoC side - 115200n8 Flash instruction using factory image: 1. Connect the computer to the LAN port on WG800HP 2. Connect power cable to WG800HP and turn on it 3. Access to "http://192.168.10.1/" and open firmware update page ("ファームウェア更新") 4. Select the OpenWrt factory image and click update ("更新") button 5. Wait ~150 seconds to complete flashing Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* build: move xor-image into image-commandsINAGAKI Hiroshi2018-12-241-5/+0
| | | | | | | | I moved xor-image into image-commands.mk to use it in ath79 target. It required for NEC WG800HP. Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* ath79: fix pinmux reg value for QCA956xINAGAKI Hiroshi2018-12-241-1/+1
| | | | | | | | | | | | | The range of pinmux reg property "<0x1804002c 0x40>" for QCA956x SoC does not includes GPIO_FUNCTION register. If the device uses "&jtag_disable_pins", this causes the following errors: [ 1.982937] pinctrl-single 1804002c.pinmux: mux offset out of range: 0x40 (0x40) [ 1.990622] pinctrl-single 1804002c.pinmux: could not add functions for pinmux_jtag_disable_pins 64x Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* kernel: Add missing symbols to 4.19Christian Lamparter2018-12-241-0/+1
| | | | | | Tested with apm82181 and ipq40xx minimal image versions. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* kernel: bump 4.14 to 4.14.90Kevin Darbyshire-Bryant2018-12-249-61/+12
| | | | | | | | | | | | | | Refresh all patches Remove upstream patch: backport-4.14/424-v4.20-net-dsa-fix-88e6060-roaming.patch Minor tweak to generic/hack-4.14/902-debloat_proc.patch to cleanly apply after upstream changes. Tested-on: ath79 Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* ipq40xx: NBG6617: add usb-ledtrig-usbport to DEVICE_PACKAGESChristian Lamparter2018-12-221-1/+1
| | | | | | | | The ZyXEL NBG6617 USB LED was not working with the default images. It turned out that kmod-usb-ledtrig-usbport was missing from the default installation. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: switch MX60(W)'s recovery images to multi-image methodChristian Lamparter2018-12-221-25/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the past, the MX60(W)'s recovery images always had problems with the size restriction and never really worked without manual intervention. But starting with 4.19, the MX60(W)'s kernel image outgrew the allocated space for sysupgrade images as well. Hence This patch reworks the initramfs, which allows the device to ease up on the impossible tight kernel size requirements for the sysupgrade creation and packaging. And as a result, the now orphaned special ramdisk setup is removed in the process. This new initramfs can be loaded through the MX60(W) U-boot in the following way: => setenv bootargs console=ttyS0,$baudrate => tftpboot $meraki_loadaddr meraki_mx60-initramfs-kernel.bin [...] Load address: 0x800000 Loading: ################################################ [...] done [...] => bootm $fileaddr \## Booting kernel from Legacy Image at 00800000 ... ... Updated Flashing instructions for new installations which integrates the new recovery method. Users of existing installations that only want to sysupgrade don't need to update their existing u-boot env. => setenv owrt_load1 ubi read \${meraki_loadaddr} kernel => setenv owrt_load2 ubi read \${meraki_loadaddr} recovery => setenv lede_bootkernel bootm \${meraki_loadaddr_kernel} - \${meraki_loadaddr_fdt} => setenv owrt_bootkernel bootm \${meraki_loadaddr} => setenv owrt_bootargs setenv bootargs console=ttyS0,\${baudrate} rootfstype=squashfs mtdoops.mtddev=oops => setenv owrt_boot run meraki_ubi owrt_bootargs\; run owrt_load1 meraki_checkpart lede_bootkernel\; run owrt_load2 owrt_bootkernel => setenv bootcmd run owrt_boot => saveenv For more information and the latest flashing guide: please visit the OpenWrt Wiki Page for the MR60: <https://openwrt.org/toh/meraki/mx60#flashing> Signed-off-by: Chris Blake <chrisrblake93@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx: disable kernel-padding for DNI imageDavid Bauer2018-12-201-3/+2
| | | | | | | | | | This commit removes the fixed kernel size-padding for the Netgear DNI image creation as it is not necessary for a working image. The fake rootfs still needs to be padded to the blocksize. Tested-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: David Bauer <mail@david-bauer.net>