Commit Graph

45164 Commits (e1f588e446c7ceb696b644b37aeab9b3476e2a57)
 

Author SHA1 Message Date
David Bauer 27f3f493de gpio-button-hotplug: unify polled and interrupt code
This patch unifies the polled and interrupt-driven gpio_keys code
paths as well implements consistent handling of the debounce
interval set for the GPIO buttons and switches.

Hotplug events will only be fired if

1. The input changes its state and remains stable for the duration
   of the debounce interval (default is 5 ms).

2. In the initial stable (no state-change for duration of the
   debounce interval) state once the driver module gets loaded.

   Switch type inputs will always report their stable state.
   Unpressed buttons will not trigger an event for the initial
   stable state. Whereas pressed buttons will trigger an event.
   This is consistent with upstream's gpio-key driver that uses
   the input subsystem (and dont use autorepeat).

Prior to this patch, this was handled inconsistently for interrupt-based
an polled gpio-keys. Hence this patch unifies the shared logic into the
gpio_keys_handle_button() function and modify both implementations to
handle the initial state properly.

The changes described in 2. ) . can have an impact on the
failsafe trigger. Up until now, the script checked for button
state changes. On the down side, this allowed to trigger the
failsafe by releasing a held button at the right time. On the
plus side, the button's polarity setting didn't matter.

Now, the failsafe will only engage when a button was pressed
at the right moment (same as before), but now it can
theoretically also trigger when the button was pressed the
whole time the kernel booted and well into the fast-blinking
preinit phase. However, the chances that this can happen are
really small. This is because the gpio-button module is usually
up and ready even before the preinit state is entered. So, the
initial pressed button event gets lost and most devices behave
as before.

Bisectors: If this patch causes a device to permanently go into
failsafe or experience weird behavior due to inputs, please
check the following:
 - the GPIO polarity setting for the button
 - the software-debounce value

Run-tested for 'gpio-keys' and 'gpio-keys-polled' on

 - devolo WiFi pro 1200e
 - devolo WiFi pro 1750c
 - devolo WiFi pro 1750x
 - Netgear WNDR4700
 - Meraki MR24
 - RT-AC58U

Signed-off-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [further
cleanups, simplification and unification]
5 years ago
Álvaro Fernández Rojas f781582828 brcm2708: Add Raspberry Pi 4 support
- Support added to bcm2709 subtarget (32 bit).
- 64 bit kernel still requires many hacks on RPi 4B.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
5 years ago
Álvaro Fernández Rojas 9e8932c17f brcm2708: switch to linux-firmware SDIO NVRAM
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
5 years ago
Álvaro Fernández Rojas aa00ac44d9 linux-firmware: add RPi SDIO NVRAM packages
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
5 years ago
Álvaro Fernández Rojas 6c3e7d5ea0 brcm2708-gpu-fw: add support for Raspberry Pi 4
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
5 years ago
Álvaro Fernández Rojas 4295485719 brcm2708: add linux 4.19 support
Boot tested on Raspberry Pi B+ (BCM2708) and Raspberry Pi 2 (BCM2709)

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
5 years ago
Felix Fietkau f1875e902d mt76: revert an accidental leftover debug change
Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years ago
Hans Dedecker 9a72e7f601 procd: update to latest git HEAD
31f0765 procd: check strchr() result before using it

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years ago
Felix Fietkau ba5878f056 mt76: update to the latest version
8fc3e6e mt76: mt7615: fix using VHT STBC rates
b21b991 mt76: mt7615: fix PS buffering of action frames
3d43dd8 mt76: mt7615: fix invalid fallback rates
0ce4682 mt76: mt7603: fix invalid fallback rates
3b08966 Revert "mt76: usb: use full intermediate buffer in mt76u_copy"
48800e7 Revert "mt76: usb: remove unneeded {put,get}_unaligned"
439354d Revert "mt76: usb: fix endian in mt76u_copy"
8c1da93 mt76: usb: fix endian in mt76u_copy
307be50 mt76: usb: remove unneeded {put,get}_unaligned
5d29829 mt76: mt76x02: use params->ssn value directly
f74d117 mt76: mt7603: use params->ssn value directly
649f2e8 mt76: mt7615: use params->ssn value directly
b647180 mt76: mt7615: unlock dfs bands

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years ago
Hauke Mehrtens e05310b9b8 mac80211: Do not build b43legacy on BRCM47xx mips74 subtarget
b43legacy needs ssb support and we do not compile the mips74 subtarget
of the brcm47xx target with SSB support. This causes a build failure in
the mac80211 package and only some of the kernel modules are being
created.

I am not aware of any device with a BRCM47xx mips74 CPU which uses a
b43legacy compatible device.

Fixes: FS#2334
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years ago
David Bauer 14e0e4f138 ramips: add support for ASUS RT-AC57U
SoC:   MediaTek MT7621AT
RAM:   128M (Winbond W631GG6KB-15)
FLASH: 16MB (Spansion S25FL128SA)
WiFi:  MediaTek MT7603EN bgn 2SS
WiFi:  MediaTek MT7612EN nac 2SS
BTN:   Reset - WPS
LED:    - Power
        - LAN {1-4}
        - WAN
        - WiFi 2.4 GHz
        - WiFi 5 GHz
        - USB
UART:  UART is present next to the Power LED.
       TX - RX - GND - 3V3 / 57600-8N1
       3V3 is the nearest one to the Power LED.

Installation
------------
Via TFTP:
1. Set your computers IP-Address to 192.168.1.75.
2. Power up the Router with the Reset button pressed.
3. Release the Reset button after 5 seconds.
4. Upload OpenWRT sysupgrade image via TFTP:
 > tftp -4 -v -m binary 192.168.1.1 -c put <IMAGE>

Via SSH:
Note: User/password for SSH is identical with the one used in the
Web-interface.
1. Complete the initial setup wizard.
2. Activate SSH under "Administration" -> "System".
3. Transfer the OpenWrt sysupgrade image via scp:
 > scp owrt.bin admin@192.168.1.1:/tmp
4. Connect via SSH to the router.
 > ssh admin@192.168.1.1
5. Write the OpenWrt image to flash.
 > mtd-write -i /tmp/owrt.bin -d linux
6. Reboot the router
 > reboot

Signed-off-by: David Bauer <mail@david-bauer.net>
5 years ago
Colby Whitney c52ca08d40 lua5.3: build shared library
Update the lua5.3 package to build a shared object just like the old lua
package. Ported / recreated the same patch number as the other lua
package. Built and tested library / interpreter on BCM5301X.

Signed-off-by: Colby Whitney <colby.whitney@luxul.com>
5 years ago
Chuanhong Guo 53daa51cf2 ramips: fix mqmaker witi case in fixup-mac-address
This commit fixes a forgotten case in previous commit.

Fixes: 087e14ab59 ("ramips: mt7621: merge two variants of MQmaker WiTi together")
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
5 years ago
Rafał Miłecki f7edd94a65 base-files: move stage2 upgrade to separated file
do_upgrade_stage2() isn't really any common code. It isn't used anywhere
except for /sbin/sysupgrade that passes it to the stage2.

Moving its code to separated file also simplifies COMMAND variable.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years ago
Chuanhong Guo 087e14ab59 ramips: mt7621: merge two variants of MQmaker WiTi together
Since we can auto-detect memory now, we don't need 2 dts for two
memory variants.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
5 years ago
Chuanhong Guo a2c19f1d2f ramips: dts: drop memory nodes
mt7621 and mt7628 now have the ability to detect memory size
automatically.
Drop memory nodes and let kernel determine memory size.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
5 years ago
Chuanhong Guo 6d91ddf517 ramips: mt7621: add support for memory detection
mt7621 has the following memory map:
0x0-0x1c000000: lower 448m memory
0x1c000000-0x2000000: peripheral registers
0x20000000-0x2400000: higher 64m memory

detect_memory_region in arch/mips/kernel/setup.c only add the first
memory region and isn't suitable for 512m memory detection because
it may accidentally read the memory area for peripheral registers.

This commit adds memory detection capability for mt7621:
1. add the highmem area when 512m is detected.
2. guard memcmp from accessing peripheral registers:
     This only happens when some weird user decided to change
     kernel load address to 256m or higher address. Since this
     is a quite unusual case, we just skip 512m testing and return
     256m as memory size.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
5 years ago
Daniel Golle 98d04dc4cf ramips: fix bogus MTK_SOC (typo)
Belkin F7C027 is clearly Rt5350 SoC, as shown on internal
photographs filed for FCC approval[1].

[1]: https://fcc.io/K7S/F7C027

Fixes commit 3b0264eddb
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
5 years ago
Adrian Schmutzler 447deed52a ramips: Sort all subtarget Makefiles
This patch applies sorting to the definitions as whole blocks.

Sorting has been performed fully automatic, line count differences
originate from double empty lines removed.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 5d50155f14 ramips: Reapply sorting to board.d files
This patch is cosmetical:
It only applies sorting based on device names, whereas renames
already took place in earlier patches.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler b4588c8538 kernel/om-watchdog: Apply device renames from ramips
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 1096d1b697 uboot-envtools: Apply ramips device renames
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler e8d2d97498 ramips: Remove base-files/lib/ramips.sh
Having converted the target to use device compatible, ramips.sh
is obsolete now.

The only remaining entry for the mt7688 evaluation board seems to
be orphaned.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 3b0264eddb ramips/rt305x: Name DTS files based on scheme
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 6a104ac772 ramips/rt288x,rt3883: Name DTS files based on scheme
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler b97a99256f ramips/mt76x8: Name DTS files based on scheme
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 7196ca1d49 ramips/mt7621: Name DTS files based on scheme
As introduced with ath79, DTS files for ramips will now be labelled
soc_vendor_device.dts(i). With this change, DTS files can be
selected automatically without further manual links.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 48047b3a5c ramips/mt7620: Name DTS files based on scheme
As introduced with ath79, DTS files for ramips will now be labelled
soc_vendor_device.dts(i). With this change, DTS files can be
selected automatically without further manual links.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 402138d12d ramips: Derive DTS name from device name in Makefile
This will automatically derive the DTS name as in ath79 and thus
makes specifying DTS for every device obsolete.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>

---

This patch only introduces the mechanism and is then followed by
commits with renames and Makefile adjustments per subtarget.

Eventually, those can be all squashed into a single commit or left
as they are to enhance overview.
5 years ago
Adrian Schmutzler 7dd3a234be ramips/rt305x: Synchronize Makefiles with DTS compatible
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 83efa8329b ramips/rt288x,rt3883: Synchronize Makefiles with DTS compatible
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler c2334ad60d ramips/mt76x8: Synchronize Makefiles with DTS compatible
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 2f2a319f82 ramips/mt7621: Synchronize Makefiles with DTS compatible
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 9f99000165 ramips/mt7620: Synchronize Makefiles with DTS compatible
This will "rename" devices in Makefiles to the pattern used in
DTS compatible. This will systematize naming of devices
enormously.

As device names are used to for default SUPPORTED_DEVICES entries,
we need to adjust the source for /tmp/sysinfo/board_name, too.
So remove relevant entries from base-files/lib/ramips.sh and
use device compatible for that.

Despite that, base-files are updated, too.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler d93969a13a ramips: Improve compatible for TP-Link Archer devices
Include "Archer" in compatible as it is part of the device name.

Update Makefile device names where necessary to match compatible.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Chen Minqiang dcb5cf85c8 ath79: fix missing DEVICE_VENDOR for some devices
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
5 years ago
Daniel Golle c2b1baf767 ramips: add missing DEVICE_VENDOR
Fixes commit ee66fe4ea9
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
5 years ago
Luis Araneda 472dbaba81 sunxi: convert to multi-variable device title
Use data from the linux-sunxi community wiki to
fill-in missing device information

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
5 years ago
Luis Araneda 87552e5400 ipq40xx: convert to multi-variable device title
Additionally, fix some vendor and board names

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
5 years ago
Moritz Warning 5850487473 kirkwood: split up DEVICE_TITLE
DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT

Signed-off-by: Moritz Warning <moritzwarning@web.de>
5 years ago
Moritz Warning c82a861d90 ath25: split up DEVICE_TITLE
DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT

Signed-off-by: Moritz Warning <moritzwarning@web.de>
5 years ago
Daniel Golle 08e0db3e98 oxnas: convert DEVICE_TITLE to new variables
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
5 years ago
Fredrik Olofsson 7d96c301d6 kernel: cherry pick patch removing __linux__ check
This is already included in newer upstream. Needed to build BPF programs
using the MIPS kernel include files.

Without this patch, clang fails with "#error Use a Linux compiler or
give up." in sgidefs.h when building BPF programs.

Signed-off-by: Fredrik Olofsson <fredrik.olofsson@anyfinetworks.com>
5 years ago
John Crispin 9e57b62783 include/package.mk: Add support for src-checkout/ folder
This feature is similar to the SRC_TREE_OVERRIDE. However instead of having
to manually create a symlink inside the package folder, the buildsystem
will check if $(TOP_DIR)/src-checkout/$(PKG_NAME)/.git is present and use
this instead.

Signed-off-by: John Crispin <john@phrozen.org>
5 years ago
Adrian Schmutzler 1174b94bc9 ath79: Fix whitespace errors in 11-ath10k-caldata
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 6ed3349308 base-files: Fix path check in get_mac_binary
Logic was inverted when changing from string check to file check.
Fix it.

Fixes: 8592602d0a ("base-files: Really check path in get_mac_binary")
Reported-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Adrian Schmutzler 9ef53b93cb rb532: Fix missing DEVICE_TITLE
This fixes the collection of target info during build, where the
device title for rb532/nand is just empty:
tmp/.config-target.in:44925:warning: leading whitespace ignored
tmp/.config-target.in:123738:warning: leading whitespace ignored
tmp/.config-target.in:123786:warning: leading whitespace ignored

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years ago
Koen Vandeputte fa2435903f kernel: bump 4.19 to 4.19.57
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years ago
Koen Vandeputte 0051fff171 kernel: bump 4.14 to 4.14.132
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years ago
Kevin Darbyshire-Bryant b31f9190c3 netsupport: move out sch_cake from kmod-sched
Fix file installation clash between kmod-sched & kmod-sched-cake as both
try to install sch_cake.ko

Remove cake from kmod-sched package as cake is supposed to be the
optional qdisc.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
5 years ago