This reverts commit 8f9cd1af0f.
That commit was meant to add a single EXPORT_SYMBOL_GPL() but it
actually also added few .of_match_table-s. One commit should handle one
thing and should not introduce unrelated changes.
Regarding actual changes:
1. EXPORT_SYMBOL_GPL is not required as we don't build swconfig drivers
as modules.
2. PHY drivers must not have .of_match_table. That is allowed for MDIO
drivers. This could work for some time (although is didn't for me on
bcm53xx) but does not with kernel 5.10. It causes a soft lockup and
upstream developers confirmed it's an unsupported design.
Link: https://lore.kernel.org/netdev/2b1dc053-8c9a-e3e4-b450-eecdfca3fe16@gmail.com/t/#mf80e472f35ee23f7a75cbf5b1e101a17ab3a64a3
Cc: Tobias Schramm <tobleminer@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This has testing support for 7 months. Time to switch.
TL-WDR4900 is disabled due to kernel size limitation.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Three missing symbols were found during mpc85xx/p2020 compilation.
While at it, CONFIG_FSL_ENETC_MDIO is moved to generic config
for consistency.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
[move CONFIG_FSL_ENETC_MDIO, remove redundant definitions, adjust
commit message/title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
With the upgrade to kernel 5.10 per default the old version is no
longer required to be in tree.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
When KERNEL_PERF_EVENTS is enabled in OpenWrt, or PERF_EVENTS in the
kernel config, the RPI_AXIPERF is exposed. Add it to the subtarget
kernel configs to avoid build failures.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
When building an image for the bcm27xx target, some combinations of
config options will fail to build due the SND_SOC_AD193X_I2C and
SND_SOC_AD193X_SPI kernel config symbols being missing.
The problem only occurs on bcm27xx as the target contains a patch that
modifies the Kconfig file containing the symbols; in the vanilla kernel,
there is no string after the tristate keyword so the symbol is not
exposed.
The _I2C symbol depends on I2C, which is enabled in the kernel configs
of all bcm27xx subtargets.
The _SPI symbol depends on SPI_MASTER, which is exposed by either
kmod-mmc-spi, kmod-spi-bitbang, kmod-spi-dev, kmod-spi-bcm2835 or
kmod-spi-bcm2835-aux.
Both symbols are defined in the sound/soc/codecs directory, which is
only included when SND_SOC is enabled, so this problem doesn't occur
when kmod-sound-soc-core is not enabled. As the
kmod-sound-soc-bcm2835-i2s package disables the SND_SOC_AD193X_SPI
symbol, it also doesn't occur when kmod-sound-soc-bcm2835-i2s is
enabled.
As there are several possible config combinations that do exhibit this
problem, it is best to solve it by adding the missing symbols to the
subtarget kernel configs. By doing this we can remove them from the
kmod-sound-soc-bcm2835-i2s package.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Switch port order was reversed due to reading the internal labling
(which mismatches the one on the case).
Signed-off-by: David Bauer <mail@david-bauer.net>
The cortex53 subtarget was missing multiple config options and the other
targets just defined some options which are not needed.
Fixes: 83672f506d ("sunxi: add testing Linux 5.10")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
The kernel 5.4 configuration activated SATA Port Multiplier support, add
it to kernel 5.10 too.
Fixes: 83672f506d ("sunxi: add testing Linux 5.10")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SATA_PMP option is no longer exposed when no SATA host driver is enabled
since upstream linux commit bd322af15ce9 ("ata: make SATA_PMP option
selectable only if any SATA host driver is enabled").
Commit 1bb3f593ee ("kirkwood: update config for kernel 5.10") manually
added CONFIG_SATA_PMP=y to config file, but the config will disappear for
every kernel_oldconfig refresh.
To prevent this, a small hack is added, which selects SATA_HOST
automatically when SATA_PMP is enabled. This patch can be dropped if
SATA_MV is ever re-added into kernel config file.
Tested-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[Move patch to generic/hack-5.10]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
These instructions are repeated for a few devices now, let's move
them to shared definition so we do not repeat ourselves too often.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
The bootloader can leave the GPIO expander in a state which doesn't have
output drivers enabled so GPIOs will properly work for input but output
operations will have no effect.
To avoid disrupting the boot in case the bootloader left direction and
data registers in an inconsistent state (e.g. pulling SoC's reset to 0)
reconfigure everything as input.
Reviewed-by: Sander Vanheule <sander@svanheule.net>
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Globalscale MOCHAbin is a Armada 7040 based development board.
Specifications:
* Armada 7040 Quad core ARMv8 Cortex A-72 @ 1.4GHz
* 2 / 4 / 8 GB of DDR4 DRAM
* 16 GB eMMC
* 4MB SPI-NOR (Bootloader)
* 1x M.2-2280 B-key socket (for SSD expansion, SATA3 only)
* 1x M.2-2250 B-key socket (for modems, USB2.0 and I2C only)
* 1x Mini-PCIe 3.0 (x1, USB2.0 and I2C)
* 1x SATA 7+15 socket (SATA3)
* 1x 16-pin (2×8) MikroBus Connector
* 1x SIM card slot (Connected to the mini-PCIe and both M.2 slots)
* 2x USB3.0 Type-A ports via SMSC USB5434B hub
* Cortex 2x5 JTAG
* microUSB port for UART (PL2303GL/PL2303SA onboard)
* 1x 10G SFP+
* 1x 1G SFP (Connected to 88E1512 PHY)
* 1x 1G RJ45 with PoE PD (Connected to 88E1512 PHY)
* 4x 1G RJ45 ports via Topaz 88E6141 switch
* RTC with battery holder (SoC provided, requires CR2032 battery)
* 1x 12V DC IN
* 1x Power switch
* 1x 12V fan header (3-pin, power only)
* 1x mini-PCIe LED header (2x0.1" pins)
* 1x M.2-2280 LED header (2x0.1" pins)
* 6x Bootstrap jumpers
* 1x Power LED (Green)
* 3x Tri-color RGB LEDs (Controllable)
* 1x Microchip ATECC608B secure element
Note that 1G SFP and 1G WAN cannot be used at the same time as they are in
parallel connected to the same PHY.
Installation:
Copy dtb from build_dir to bin/ and run tftpserver there:
$ cp ./build_dir/target-aarch64_cortex-a72_musl/linux-mvebu_cortexa72/image-armada-7040-mochabin.dtb bin/targets/mvebu/cortexa72/
$ in.tftpd -L -s bin/targets/mvebu/cortexa72/
Connect to the device UART via microUSB port and power on the device.
Power on the device and hit any key to stop the autoboot.
Set serverip (host IP) and ipaddr (any free IP address on the same subnet), e.g:
$ setenv serverip 192.168.1.10 # Host
$ setenv ipaddr 192.168.1.15 # Device
Set the ethernet device (Example for the 1G WAN):
$ setenv ethact mvpp2-2
Ping server to confirm network is working:
$ ping $serverip
Using mvpp2-2 device
host 192.168.1.15 is alive
Tftpboot the firmware:
$ tftpboot $kernel_addr_r openwrt-mvebu-cortexa72-globalscale_mochabin-initramfs-kernel.bin
$ tftpboot $fdt_addr_r image-armada-7040-mochabin.dtb
Boot the image:
$ booti $kernel_addr_r - $fdt_addr_r
Once the initramfs is booted, transfer openwrt-mvebu-cortexa72-globalscale_mochabin-squashfs-sdcard.img.gz
to /tmp dir on the device.
Gunzip and dd the image:
$ gunzip /tmp/openwrt-mvebu-cortexa72-globalscale_mochabin-squashfs-sdcard.img.gz
$ dd if=/tmp/openwrt-mvebu-cortexa72-globalscale_mochabin-squashfs-sdcard.img of=/dev/mmcblk0 && sync
Reboot the device.
Hit any key to stop the autoboot.
Reset U-boot env and set the bootcmd:
$ env default -a
$ setenv bootcmd 'load mmc 0 ${loadaddr} boot.scr && source ${loadaddr}'
Optionally I would advise to edit the console env variable to remove earlycon as that
causes the kernel to never use the driver for the serial console.
Earlycon should be used only for debugging before the kernel can configure the console
and will otherwise cause various issues with the console.
$ setenv console 'console=ttyS0,115200'
Save and reset
$ saveenv
$ reset
OpenWrt should boot from eMMC now.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
When trying to add support for another device with Micron NAND chips,
it was discovered that the default setting in the kernel source does
not work with Micron Chips, since the device trees setting is
overwritten and hard coded by the kernel xway_nand driver. This was
the original reason for this PR.
A kernel patch sets the default ECC mode to soft without overwriting
the device tree settings and the device tree for devices using it
are updated with new parameters because the old ones are deprecated
by torvalds/linux@533af69.
A patch for kernel 5.4 is provided to support the new settings
because kernel 5.4 does not support it.
Signed-off-by: Daniel Kestrel <kestrel1974@t-online.de>
This backports a fix proposed for upstream kernel to fix overwriting
the NAND ECC engine in device tree.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
All subtargets only provide files and patches for Linux 5.10 by now
so there is little use for the old Linux 5.4 stuff. Remove it.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Armvirt is a development and testing platform and should therefore use
the latest OpenWrt Kernel by default.
Tested via qemu.
Acked-by: Rosen Penev <rosenp@gmail.com>
Acked-by: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Paul Spooren <mail@aparcar.org>
Malta is a development and testing platform and should therefore use the
latest OpenWrt Kernel by default.
Acked-by: Rosen Penev <rosenp@gmail.com>
Acked-by: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Paul Spooren <mail@aparcar.org>
Add common features 'gpio', 'nand', 'pci', 'pcie', 'squashfs' and 'usb'
for all mediatek targets, add 'display' and 'usbgadget' for MT7623.
Sort features alphabetically while at it.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
User reported that R64 doesn't provide power to the mPCIe slot in case
the PCIe port is disabled as it is when selecting the SATA
configuration. As users may still want to use USB-connected mPCIe
modules in CN8 slot.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Netgear Nighthawk AC2100 is another name of the Netgear R6700v2.
Signed-off-by: Dale Hui <strokes-races0b@icloud.com>
[adjust commit message/title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
With the various variants of Netgear R**** devices, make it more
obvious which image should be used for the R7200.
Signed-off-by: Dale Hui <strokes-races0b@icloud.com>
[provide proper commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This patch adds "KERNEL_TESTING_PATCHVER:=5.10" to the Makefile in
realtek target to allow using Kernel 5.10 for testing.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
On the devices with PoE support, the secondary UART (uart1) on the SoC
is used to communicate between the SoC and controller.
Enable the secondary UART on the following devices:
- D-Link DGS-1210-10P
- Netgear GS110TPP v1
- Netgear GS310TP v1
- ZyXEL GS1900-8HP v1/v2
- ZyXEL GS1900-10HP
- ZyXEL GS1900-24HP v2
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
The new backported GPIO driver supports interrupt, so use gpio-keys
instead of gpio-keys-polled for keys connected to the internal GPIO
controller.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
this patch includes the following changes:
- adjust mapping for the new driver
- GPIO 24 -> GPIO 0
- GPIO 47 -> GPIO 0 (+ disabling system LED)
- disable pins in the invalid range
(out of the range 0-31 of the new driver)
- are these pins on the external RTL8231 (&gpio1)?
- GPIO 67 (-> GPIO 3 on &gpio1?)
- GPIO 94 (-> GPIO 30 on &gpio1?)
- drop "indirect-access-bus-id" property from gpio0 node in device dts
files
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
dsa_to_port function in 5.10 returns dsa_port from the port list in
dsa_switch_tree, but the tree is built when the switch is registered
by dsa_register_switch and it's null in rtl83xx_mdio_probe.
So, we need to use dsa_to_port after the registration of the switch.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
This patch adds a pinctrl-single pinmux node to allow disabling system
LED and enabling GPIO 0 (old driver: GPIO 24).
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
this patch fixes the following errors when compiling:
- dsa_switch_alloc is removed[1]
- a parameter "enum dsa_tag_protocol mprot" is added to dsa_tag_protocol
in dsa_switch_ops (include/net/dsa.h)
- several paramters are added to "phylink_mac_link_up" in dsa_switch_ops
(include/net/dsa.h)
added:
- int speed
- int duplex
- bool tx_pause
- bool rx_pause
- a parameter "struct switchdev_trans *trans" is added to
port_vlan_filtering in dsa_switch_ops (include/net/dsa.h)
[1]: https://lore.kernel.org/lkml/20191020031941.3805884-17-vivien.didelot@gmail.com/
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
this patch fixes the following errors when compiling:
- "unsigned int txqueue" is added as an additional parameter of
ndo_tx_timeout in net_device_ops (include/linux/netdevice.h)
- "mac_link_state" in phylink_mac_ops (include/linux/phylink.h)
is renamed to "mac_pcs_get_state" and changed the return value
to void from int
- several parameters are added to "mac_link_up" in phylink_mac_ops
(include/linux/phylink.h) and the order of the parameters is
changed
added:
- int speed
- int duplex
- bool tx_pause
- bool rx_pause
- a parameter "phy_interface_t *interface" is added to of_get_phy_mode
(drivers/of/of_net.c) and returns the state instead of phy mode
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>