aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* ramips: tidy up image MakefileSungbo Eo2020-05-081-109/+87
| | | | | | | - sort recipes alphabetically - simplify subtarget include directives Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* ramips: simplify palmbus/{i2c,spi} in device DTS filesSungbo Eo2020-05-087-89/+76
| | | | | | | | | As the node is already defined and labeled in SoC DTSI file, we can refer to it outside of root node and reduce redundancy. While at it, remove unused pcf8563 label. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* ramips: use hex notation for *-mtd-eeprom propertySungbo Eo2020-05-08160-160/+160
| | | | | | | Change "0" to "0x0" for consistency. This is an extension of commit 34abfb6e91d1 ("ramips: convert mediatek,mtd-eeprom from decimal to hex notation"). Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* generic: fix patching error on kernel 5.4Koen Vandeputte2020-05-081-9/+11
| | | | | | | | | | | | | | | | | | Fixes a build error seen when applying the kernel patches. Applying patch generic/435-mtd-add-routerbootpart-parser-config.patch patching file drivers/mtd/parsers/Kconfig Hunk #1 FAILED at 160. 1 out of 1 hunk FAILED -- rejects in file drivers/mtd/parsers/Kconfig patching file drivers/mtd/parsers/Makefile Hunk #1 FAILED at 10. 1 out of 1 hunk FAILED -- rejects in file drivers/mtd/parsers/Makefile This was missed as 5.4 is currently set as testing kernel while the main kernel being used is 4.19 Fixes: 2976e423dc6e ("generic: routerboot partition build bits") Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ramips/mt7621: mikrotik: don't use mtd-mac-address in DTSThibaut VARÈNE2020-05-084-25/+4
| | | | | | | | | | | | | As evidenced here[1] the device MAC address can be stored at a random offset in the hard_config partition. Rely on sysfs to update the MAC address correctly. Adjust config so that WAN is base MAC and LAN is base MAC +1 to better match label and vendor OS. [1] https://github.com/openwrt/openwrt/pull/2850#issuecomment-610809021 Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ath79/mikrotik: load caldata via sysfs loaderThibaut VARÈNE2020-05-082-4/+6
| | | | | | | | | | | | | This commit takes advantages of base-files 220 which introduces routines to perform caldata loading directly via the kernel sysfs loader helper. This has the benefits of not wasting flash space to store caldata. Memory footprint is reduced to the bare minimum: for devices that don't need MAC patching, the caldata is loaded directly, for devices that do need MAC patching, the caldata is extracted to /tmp, patched and then loaded. Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ar71xx/mikrotik: ath10k: use new sysfs driverThibaut VARÈNE2020-05-081-2/+2
| | | | | | Fetch ath10k calibration data from new mikrotik sysfs driver Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ath79/mikrotik: use standard caldata functionsThibaut VARÈNE2020-05-084-33/+10
| | | | | | | With the implementation of a sysfs interface to access WLAN data, this target no longer needs a special wrapper to extract caldata. Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ath79/mikrotik: don't use mtd-mac-address in DTSThibaut VARÈNE2020-05-083-5/+9
| | | | | | | | | | | | | | | | | | As evidenced here[1] the device MAC address can be stored at a random offset in the hard_config partition. Rely on sysfs to update the MAC address correctly. To match sticker and vendor OS behavior, WAN MAC is set to the device base MAC and LAN MAC is incremented from that. Note: this will trigger a harmless kernel message during boot: ag71xx 19000000.eth: invalid MAC address, using random address There is no clean workaround to prevent this message from being emitted. [1] https://github.com/openwrt/openwrt/pull/2850#issuecomment-610809021 Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* generic: platform/mikrotik: support LZOR encodingThibaut VARÈNE2020-05-081-1/+261
| | | | | | | | Some newer MikroTik RouterBOARD devices use a new encoding scheme for their WLAN calibration data. This patch provides support for decoding this new scheme. Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ramips/mt7621: enable mikrotik platform driverThibaut VARÈNE2020-05-081-0/+2
| | | | Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ar71xx/mikrotik: enable mikrotik platform driverThibaut VARÈNE2020-05-081-0/+2
| | | | Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ath79/mikrotik: enable mikrotik platform driverThibaut VARÈNE2020-05-081-0/+2
| | | | Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* generic: mikrotik platform build bitsThibaut VARÈNE2020-05-086-0/+110
| | | | Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* generic: routerboot sysfs platform driverThibaut VARÈNE2020-05-085-0/+717
| | | | | | | | | | | | | | | | | | | | | | | | | This driver exposes the data encoded in the "hard_config" flash segment of MikroTik RouterBOARDs devices. It presents the data in a sysfs folder named "hard_config". The WLAN calibration data is available on demand via the 'wlan_data' sysfs file in that folder. This driver permanently allocates a chunk of RAM as large as the "hard_config" MTD partition (typically 4KB), although it is technically possible to operate entirely from the MTD device without using a local buffer (except when requesting WLAN calibration data), at the cost of a performance penalty. This driver does not reuse any of the existing code previously found in routerboot.c. This driver has been successfully tested on BE (ath79) and LE (ipq40xx and ramips) hardware. Tested-by: Roger Pueyo Centelles <roger.pueyo@guifi.net> Tested-by: Baptiste Jonglez <git@bitsofnetworks.org> Tested-by: Tobias Schramm <t.schramm@manjaro.org> Tested-by: Christopher Hill <ch6574@gmail.com> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ramips: mikrotik: use routerbootpart partitionsThibaut VARÈNE2020-05-083-24/+12
| | | | | | | Enable routerbootpart partitions on MikroTik devices. Tested-by: Tobias Schramm <t.schramm@manjaro.org> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ramips/mt7621: enable CONFIG_MTD_ROUTERBOOT_PARTSThibaut VARÈNE2020-05-081-0/+1
| | | | Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ath79/mikrotik: use routerbootpart partitionsThibaut VARÈNE2020-05-082-23/+12
| | | | | | | Enable routerbootpart partitions on MikroTik devices. Tested-by: Roger Pueyo Centelles <roger.pueyo@guifi.net> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ath79/mikrotik: enable CONFIG_MTD_ROUTERBOOT_PARTSThibaut VARÈNE2020-05-081-0/+1
| | | | Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* generic: routerboot partition build bitsThibaut VARÈNE2020-05-086-0/+125
| | | | Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* generic: routerbootpart MTD parser for RouterBootThibaut VARÈNE2020-05-081-0/+365
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This driver provides an OF MTD parser to properly assign the RouterBoot partitions on the flash. This parser builds from the "fixed-partitions" one (see ofpart.c), but it can handle dynamic partitions as found on routerboot devices. The parent node must contain the following: compatible = "mikrotik,routerboot-partitions"; #address-cells = <1>; #size-cells = <1>; Children routerbootpart DTS nodes are defined as follows: For fixed partitions node-name@unit-address { reg = <prop-encoded-array>; label = <string>; read-only; lock; }; All properties but reg are optional. For dynamic partitions: node-name { size = <prop-encoded-array>; label = <string>; read-only; lock; }; size property is mandatory unless the next partition is a fixed one or a "well-known" one (matched from the strings defined below) in which case it can be omitted or set to 0; other properties are optional. By default dynamic partitions are appended after the preceding one, except for "well-known" ones which are automatically located on flash. Well-known partitions (matched via label or node-name): - "hard_config" - "soft_config" - "dtb_config" This parser requires the DTS to list partitions in ascending order as expected on the MTD device. This parser has been successfully tested on BE (ath79) and LE (ipq40xx and ramips) hardware. Tested-by: Baptiste Jonglez <git@bitsofnetworks.org> Tested-by: Roger Pueyo Centelles <roger.pueyo@guifi.net> Tested-by: Tobias Schramm <t.schramm@manjaro.org> Tested-by: Christopher Hill <ch6574@gmail.com> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* kernel: add missing symbol to 5.4 configStijn Tintel2020-05-081-0/+1
| | | | | | This symbol is exposed if KERNEL_PROVE_LOCKING is enabled. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* samba36: RemoveRosen Penev2020-05-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Samba 3.6 is completely unsupported, in addition to having tons of patches It also causes kernel panics on some platforms when sendfile is enabled. Example: https://github.com/gnubee-git/GnuBee_Docs/issues/45 I have reproduced on ramips as well as mvebu in the past. Samba 4 is an alternative available in the packages repo. cifsd is a lightweight alternative available in the packages repo. It is also a faster alternative to both Samba versions (lower CPU usage). It was renamed to ksmbd. To summarize, here are the alternatives: - ksmbd + luci-app-cifsd - samba4 + luci-app-samba4 Signed-off-by: Rosen Penev <rosenp@gmail.com> [drop samba36-server from GEMINI_NAS_PACKAGES, ksmbd rename + summary] Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* layerscape: define only one package for ls-dplYangbo Lu2020-05-071-3/+3
| | | | | | | | | We do not have to define package for each board, and consider variant's installing. It is easier to maintain ls-dpl with only one package installing all 4 files as intermediate files. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* layerscape: define only one package for ls-mcYangbo Lu2020-05-071-3/+3
| | | | | | | | | We do not have to define package for each board, and consider variant's installing. It is easier to maintain ls-mc with only one package installing all two images as intermediate files. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* layerscape: define only one package for fman-ucodeYangbo Lu2020-05-071-5/+5
| | | | | | | | | We do not have to define package for each board, and consider variant's installing. It is easier to maintain fman-ucode with only one package installing all two binaries as intermediate files. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* layerscape: define only one package for ls-rcwYangbo Lu2020-05-071-1/+1
| | | | | | | | | | We do not have to define package for each board, and consider variant's building/installing. It is easier to maintain ls-rcw with only one package installing all boards RCW binaries as intermediate files, each of which is just about hundreds of bytes. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* layerscape: switch to kernel 5.4Yangbo Lu2020-05-071-1/+1
| | | | | | Switch to kernel 5.4 in Makefile. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* layerscape: disable UEFI runtime support in config-5.4Yangbo Lu2020-05-072-41/+0
| | | | | | | Disable CONFIG_EFI (UEFI runtime support) in config-5.4, while is not required. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* layerscape: re-enable IFC NAND/NOR controllers in config-5.4Yangbo Lu2020-05-072-0/+12
| | | | | | | | The Freescale IFC NAND/NOR controllers options were disabled in default in previous running make kernel_oldconfig. So re-enable them. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* layerscape: refresh kernel 5.4 configYangbo Lu2020-05-072-137/+200
| | | | | | By running make kernel_oldconfig and selecting relevant options. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* layerscape: copy kernel config from 4.14 to 5.4Yangbo Lu2020-05-072-0/+1762
| | | | | | Just copy kernel config from 4.14 to 5.4. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* layerscape: add patches-5.4Yangbo Lu2020-05-07916-0/+353650
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add patches for linux-5.4. The patches are from NXP LSDK-20.04 release which was tagged LSDK-20.04-V5.4. https://source.codeaurora.org/external/qoriq/qoriq-components/linux/ For boards LS1021A-IOT, and Traverse-LS1043 which are not involved in LSDK, port the dts patches from 4.14. The patches are sorted into the following categories: 301-arch-xxxx 302-dts-xxxx 303-core-xxxx 701-net-xxxx 801-audio-xxxx 802-can-xxxx 803-clock-xxxx 804-crypto-xxxx 805-display-xxxx 806-dma-xxxx 807-gpio-xxxx 808-i2c-xxxx 809-jailhouse-xxxx 810-keys-xxxx 811-kvm-xxxx 812-pcie-xxxx 813-pm-xxxx 814-qe-xxxx 815-sata-xxxx 816-sdhc-xxxx 817-spi-xxxx 818-thermal-xxxx 819-uart-xxxx 820-usb-xxxx 821-vfio-xxxx Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* kernel: bump 5.4 to 5.4.39Petr Štetiar2020-05-074-23/+20
| | | | | | | | | Refreshed patches. Run tested: qemu-x86-64 Build tested: x86/64, imx6, sunxi/a53, layerscape/armv7+armv8_64b Signed-off-by: Petr Štetiar <ynezz@true.cz>
* generic: ar8216: fix unknown packet flooding for ar8229/ar8236Chuanhong Guo2020-05-062-7/+16
| | | | | | | | | | | | ar8229 and ar8236 don't allow unknown unicast/multicast frames and broadcast frames to be flooded to cpu port. This isn't desired behavior for swconfig as we treat it as a standalone switch. Current code doesn't enable unicast frame flooding for ar8229 and uses wrong setup for ar8236. This commit fixes both of them by enabling port 0 flooding for all unknown frames. Fixes: FS#2848 Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* sunxi: remove unneeded shebang for preinit filesAdrian Schmutzler2020-05-052-3/+0
| | | | | | | preinit files are sourced and they have no execute bit set, so remove their shebang. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* sunxi: tidy up cases in base-filesAdrian Schmutzler2020-05-052-9/+9
| | | | | | | This removes unnecessary quotes in cases and applies alphabetic order to members. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: bump 5.4 to 5.4.38Petr Štetiar2020-05-046-12/+12
| | | | | | | | | Refreshed patches. Run tested: qemu-x86-64, apalis Build tested: x86/64, ipq40xx, ath79, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* mediatek: fix image buildingJohn Crispin2020-05-044-24/+8
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: update patchesJohn Crispin2020-05-043-19/+125
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* bcm27xx: backup /boot/cmdline.txt and restore earlyStijn Tintel2020-05-032-1/+2
| | | | | | | | | | | | If you want to use the Raspberry Pi UART, "console=serial0,115200" needs to be removed from the kernel cmdline. This is done by editing /boot/cmdline.txt. However, this file is not currently backed up during sysupgrade, so this effectively breaks HATs that require the use of the UART every sysupgrade. Backup this file during sysupgrade, and restore it before rebooting. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: bump 5.4 to 5.4.36Petr Štetiar2020-04-3020-155/+49
| | | | | | | | | | | | | | | Refreshed patches, removed upstreamed patch: generic/hack: 551-loop-Better-discard-support-for-block-devices.patch Added generic config symbol `ARM64_ERRATUM_1542419` due to Fixes: f2791551cedb ("arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419"). Run tested: qemu-x86-64, apalis, nbg6617 Build tested: x86/64, imx6, ipq40xx, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: fix dts of Teltonika RUT9xx devicesDaniel Golle2020-04-292-2/+2
| | | | | | The previous commits were missing a semicolon. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath79: add support for Teltonika RUT955 H7V3C0Daniel Golle2020-04-295-1/+219
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This board was previously supported in ar71xx as 'RUT9XX'. The difference between that and the other RUT955 board already supported in ath79 is that instead of the SPI shift registers driving the LEDs and digital outputs that model got an I2C GPIO expander instead. To support LEDs during early boot and interrupt-driven digital inputs, I2C support as well as support for PCA953x has to be built-in and cannot be kernel modules, hence select those symbols for ath79/generic. Specification: - 550/400/200 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 16 MB of FLASH (SPI NOR) - 4x 10/100 Mbps Ethernet, with passive PoE support on LAN1 - 2T2R 2,4 GHz (AR9344) - built-in 4G/3G module (example: Quectel EC-25EU) - internal microSD slot (spi-mmc, buggy and disabled for now) - RS232 on D-Sub9 port (Cypress ACM via USB, /dev/ttyACM0) - RS422/RS485 (AR934x high speed UART, /dev/ttyATH1) - analog 0-24V input (MCP3221) - various digital inputs and outputs incl. a relay - 11x LED (4 are driven by AR9344, 7 by PCA9539) - 2x miniSIM slot (can be swapped via GPIO) - 2x RP-SMA/F (Wi-Fi), 3x SMA/F (2x WWAN, GPS) - 1x button (reset) - DC jack for main power input (9-30 V) - debugging UART available on PCB edge connector Serial console (/dev/ttyS0) pinout: - RX: pin1 (square) on top side of the main PCB (AR9344 is on top) - TX: pin1 (square) on bottom side Flash instruction: Vendor firmware is based on OpenWrt CC release. Use the "factory" image directly in GUI (make sure to uncheck "keep settings") or in U-Boot web based recovery. To avoid any problems, make sure to first update vendor firmware to latest version - "factory" image was successfully tested on device running "RUT9XX_R_00.06.051" firmware and U-Boot "3.0.1". Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath79: split Teltonika RUT955 to support other RUT9xx modelsDaniel Golle2020-04-292-171/+198
| | | | | | | | | Split device-tree of Teltonika RUT955 into a generic RUT9xx part and a part specific to that version of RUT955 already supported. Also harmonize GPIO and LED names with what is used by the vendor firmware and assign RS485 DTR signal. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kirkwood: disable image for Linksys EA3500 (Audi)Adrian Schmutzler2020-04-291-0/+1
| | | | | | | | | | | Due to the switch to DSA, the kernel image has become too big (2641k) for the kernel partition (2624k) on this device: WARNING: Image file [...]/linux-kirkwood/linksys_audi-uImage is too big Disable the device until this is fixed, so buildbots can continue their work. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add SUPPORTED_DEVICES based on ar71xx for some devicesAdrian Schmutzler2020-04-282-0/+13
| | | | | | | | | This adds some still-missing board names for old TP-Link devices to ath79 SUPPORTED_DEVICES. Fixes: FS#3017 Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* Revert "ramips: explicitly disable built-in switch for lan-only devices"Adrian Schmutzler2020-04-282-4/+0
| | | | | | | | | This reverts commit a1693bf626f8cd00363b0b98642b682522dfcf75. The rt288x and rt3883 devices in question don't have switches. Only keep the merged case for rt305x. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kirkwood: remove support for kernel 4.19Adrian Schmutzler2020-04-2817-1759/+0
| | | | | | | | | | kirkwood has moved to DSA on 5.4, which will make kernel 4.14 and 4.19 support broken on the affected devices. Support on kernel 5.4 seems to have been running fine for almost 2 months on multiple devices, while support for 4.19 has never left testing state. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Pawel Dembicki <paweldembicki@gmail.com>
* kirkwood: remove support for kernel 4.14Adrian Schmutzler2020-04-2818-1818/+0
| | | | | | | | | | kirkwood has moved to DSA on 5.4, which will make kernel 4.14 and 4.19 support broken on the affected devices. Support on kernel 5.4 seems to have been running fine for almost 2 months on multiple devices. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Pawel Dembicki <paweldembicki@gmail.com>