summaryrefslogtreecommitdiffstats
path: root/target
Commit message (Collapse)AuthorAgeFilesLines
* ralink: mt76x8: fix compilation warning in esw driverChristian Marangi2023-05-121-2/+1
| | | | | | | | | | | | | | | | | | | | | | | Fix compilation warning for debug string in esw driver: drivers/net/ethernet/ralink/esw_rt3050.c:1535:9: note: in expansion of macro 'dev_info' 1535 | dev_info(&pdev->dev, "mediatek esw at 0x%08lx, irq %d initialized\n", | ^~~~~~~~ drivers/net/ethernet/ralink/esw_rt3050.c:1535:53: note: format string is defined here 1535 | dev_info(&pdev->dev, "mediatek esw at 0x%08lx, irq %d initialized\n", | ~~~~^ | | | long unsigned int | %08p cc1: all warnings being treated as errors Fix unused variable causing compilation warning: drivers/net/ethernet/ralink/esw_rt3050.c: In function 'esw_interrupt': drivers/net/ethernet/ralink/esw_rt3050.c:769:13: error: unused variable 'i' [-Werror=unused-variable] 769 | int i; | ^ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ramips: mtk-mcc: move cmd_buf for dbg under ifdefChristian Marangi2023-05-121-2/+3
| | | | | | | | | | Move cmd_buf for dbg under ifdef to fix compilation warning: drivers/mmc/host/mtk-mmc/dbg.c:51:13: error: 'cmd_buf' defined but not used [-Werror=unused-variable] 51 | static char cmd_buf[256]; | ^~~~~~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ralink: mt7620: fix compilation warning for device_reset in i2s driverChristian Marangi2023-05-121-2/+6
| | | | | | | | | | | | | Fix compilation warning for device_reset in i2s driver. Fix compilation warning: sound/soc/ralink/ralink-i2s.c: In function 'ralink_i2s_probe': sound/soc/ralink/ralink-i2s.c:885:9: error: ignoring return value of 'device_reset' declared with attribute 'warn_unused_result' [-Werror=unused-result] 885 | device_reset(&pdev->dev); | ^~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errorralink: mt7620: fix compilation warning for device_reset in i2s driver Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* oxnas: 5.15: fix mangle bootargs patch compilation warningChristian Marangi2023-05-121-6/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix mangle bootargs patch compilation warning due to defined but not used functions. Fix compilation warning: arch/arm/boot/compressed/atags_to_fdt.c:63:17: error: 'get_cell_size' defined but not used [-Werror=unused-function] 63 | static uint32_t get_cell_size(const void *fdt) | ^~~~~~~~~~~~~ arch/arm/boot/compressed/atags_to_fdt.c:43:12: error: 'setprop_cell' defined but not used [-Werror=unused-function] 43 | static int setprop_cell(void *fdt, const char *node_path, | ^~~~~~~~~~~~ arch/arm/boot/compressed/atags_to_fdt.c:25:12: error: 'setprop' defined but not used [-Werror=unused-function] 25 | static int setprop(void *fdt, const char *node_path, const char *property, | ^~~~~~~ arch/arm/boot/compressed/atags_to_fdt.c: In function 'atags_to_fdt': arch/arm/boot/compressed/atags_to_fdt.c:207:18: error: unused variable 'memsize' [-Werror=unused-variable] 207 | int ret, memsize; | ^~~~~~~ arch/arm/boot/compressed/atags_to_fdt.c:206:13: error: unused variable 'memcount' [-Werror=unused-variable] 206 | int memcount = 0; | ^~~~~~~~ arch/arm/boot/compressed/atags_to_fdt.c:205:16: error: unused variable 'mem_reg_property' [-Werror=unused-variable] 205 | __be32 mem_reg_property[2 * 2 * NR_BANKS]; | ^~~~~~~~~~~~~~~~ arch/arm/boot/compressed/atags_to_fdt.c: At top level: arch/arm/boot/compressed/atags_to_fdt.c:174:13: error: 'hex_str' defined but not used [-Werror=unused-function] 174 | static void hex_str(char *out, uint32_t value) | ^~~~~~~ cc1: all warnings being treated as errors Also make some variable const to fix compilation warning: arch/arm/boot/compressed/atags_to_fdt.c: In function 'append_rootblock': arch/arm/boot/compressed/atags_to_fdt.c:91:13: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] 91 | ptr = str - 1; | ^ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ramips: 5.15: handle return from device_reset in I2C driverChristian Marangi2023-05-121-2/+7
| | | | | | | | | | | | | | Handle return from device reset in I2C driver. Don't fail on device_reset error but print a warning. Fix compilation warning: sound/soc/ralink/ralink-i2s.c: In function 'ralink_i2s_probe': sound/soc/ralink/ralink-i2s.c:885:9: error: ignoring return value of 'device_reset' declared with attribute 'warn_unused_result' [-Werror=unused-result] 885 | device_reset(&pdev->dev); | ^~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ramips: mt7620: handle request_irq fail in gsw ethernet driverChristian Marangi2023-05-121-2/+7
| | | | | | | | | | | | | | Handle return from request_irq in gsw ethernet driver. Fix compilation warning: drivers/net/ethernet/ralink/gsw_mt7620.c: In function 'mtk_gsw_init': drivers/net/ethernet/ralink/gsw_mt7620.c:236:17: error: ignoring return value of 'request_irq' declared with attribute 'warn_unused_result' [-Werror=unused-result] 236 | request_irq(gsw->irq, gsw_interrupt_mt7620, 0, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 237 | "gsw", priv); | ~~~~~~~~~~~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* bcm47xx: 5.15: fix compilation warning for yenta socket patchiChristian Marangi2023-05-121-15/+17
| | | | | | | | | | | | | | | | | | | | | Rework the patch to completely disable yenta_probe_irq function. The generated mask is zero by lack due to the fact that probe_irq_mask use a val never initialized. Correctly rework the ifdef to make the function always return 0. Fix compilation warning: drivers/pcmcia/yenta_socket.c:926:13: error: unused variable 'i' [-Werror=unused-variable] 926 | int i; | ^ drivers/pcmcia/yenta_socket.c:954:16: error: 'val' is used uninitialized [-Werror=uninitialized] 954 | mask = probe_irq_mask(val) & 0xffff; | ^~~~~~~~~~~~~~~~~~~ drivers/pcmcia/yenta_socket.c:927:23: note: 'val' was declared here 927 | unsigned long val; | ^~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* lantiq: fix compilation warning in lantiq_etop_initAleksander Jan Bajkowski2023-05-121-1/+1
| | | | | | | | | | | | | | | | | | | | | Commit c5cc3d96109a ("lantiq: Change the data-type of mac address in ETOP driver") changed the type of the mac variable. Since then, the priv->mac check always evaluates as true, so this check can be removed. This fix compilation warning: drivers/net/ethernet/lantiq_etop.c: In function 'ltq_etop_init': drivers/net/ethernet/lantiq_etop.c:775:13: warning: the comparison will always evaluate as 'true' for the address of 'mac' will never be NULL [-Waddress] 775 | if (priv->mac && !is_valid_ether_addr(mac.sa_data)) | ^~~~ drivers/net/ethernet/lantiq_etop.c:157:23: note: 'mac' declared here 157 | unsigned char mac[6]; | cc1: all warnings being treated as errors Fixes: c5cc3d96109a ("lantiq: Change the data-type of mac address in ETOP driver") Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl> [ fix wrong fixes tag format ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* lantiq: lzma-loader: fix mismatched function declarationAleksander Jan Bajkowski2023-05-121-1/+1
| | | | | | | | | | | | | | | This fix compilation warning: printf.c:14:13: warning: type of 'board_putc' does not match original declaration [-Wlto-type-mismatch] 14 | extern void board_putc(int ch); | ^ board-lantiq.c:24:6: note: type mismatch in parameter 1 24 | void board_putc(char c) | ^ board-lantiq.c:24:6: note: type 'char' should match type 'int' board-lantiq.c:24:6: note: 'board_putc' was previously declared here Fixes: a328b6831c0f ("lantiq: bring back okli loader") Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* kernel: psb6970: drop unused variable in psb6970_config_initAleksander Jan Bajkowski2023-05-121-1/+0
| | | | | | | | | | | | | | | Drop unused variable in psb6970_config_init. This variable should have been dropped in 0806f8fc80e6 ("lantiq: add Linux 5.10 support as testing kernel"). This fix compilation warning: drivers/net/phy/psb6970.c: In function 'psb6970_config_init': drivers/net/phy/psb6970.c:310:28: warning: unused variable 'dev' [-Wunused-variable] 310 | struct net_device *dev = pdev->attached_dev; | cc1: all warnings being treated as errors Fixes: 0806f8fc80e6 ("lantiq: add Linux 5.10 support as testing kernel") Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* lantiq: fix compilation warning in cfi_mtdset_0001Aleksander Jan Bajkowski2023-05-121-0/+62
| | | | | | | | | | | | | | Some write buffer functions are not used when FORCE_WORD_WRITE is set to 1. So the compile warning messages are output if FORCE_WORD_WRITE is 1. To resolve this disable the write buffer functions if FORCE_WORD_WRITE is 1. This fix compilation warning: drivers/mtd/chips/cfi_cmdset_0001.c:307:13: warning: 'fixup_use_write_buffers' defined but not used [-Wunused-function] 307 | static void fixup_use_write_buffers(struct mtd_info *mtd) | ^~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* generic: 5.15: backport bcm63xx wdt patch fixing fallthrough warningChristian Marangi2023-05-121-0/+33
| | | | | | | | | | | | | | Backport patch present upstream fixing error for bcm63xx: drivers/watchdog/bcm63xx_wdt.c: In function 'bcm63xx_wdt_ioctl': drivers/watchdog/bcm63xx_wdt.c:208:17: error: this statement may fall through [-Werror=implicit-fallthrough=] 208 | bcm63xx_wdt_pet(); | ^~~~~~~~~~~~~~~~~ drivers/watchdog/bcm63xx_wdt.c:210:9: note: here 210 | case WDIOC_GETTIMEOUT: | ^~~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* generic: 5.15: add pending patch fixing binfmt compilation warningChristian Marangi2023-05-121-0/+94
| | | | | | | | | | | | Add pending patch fixing binfmt compilation warning on some arch. This fix compilation warning: fs/binfmt_elf.c: In function 'parse_elf_properties.isra': fs/binfmt_elf.c:821:1: error: the frame size of 1040 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] 821 | } | ^ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* bcm4908: 5.15: fix compilation error for BCM4908 pinmux patchChristian Marangi2023-05-121-41/+41
| | | | | | | | | | | | | | | Fix compilation warning: drivers/pinctrl/bcm/pinctrl-bcm4908.c: In function 'bcm4908_pinctrl_probe': drivers/pinctrl/bcm/pinctrl-bcm4908.c:541:53: error: passing argument 3 of 'pinmux_generic_add_function' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] 541 | function->groups, | ~~~~~~~~^~~~~~~~ In file included from drivers/pinctrl/bcm/pinctrl-bcm4908.c:16: drivers/pinctrl/bcm/../pinmux.h:153:46: note: expected 'const char **' but argument is of type 'const char * const*' 153 | const char **groups, | ~~~~~~~~~~~~~^~~~~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* generic: 5.15: add pending patch fixing compilation warning in jffs2Christian Marangi2023-05-121-0/+121
| | | | | | | | | | | | | | | | | Current gcc set a limit for each stack and complain if this limit is not followed. JFSS2 in build_xattr function currently exceed the limit by allocating a massive array of struct of 128 elements. Introduce a pending patch that allocate this temp array dynamically fixing the compilation warning: fs/jffs2/xattr.c: In function 'jffs2_build_xattr_subsystem': fs/jffs2/xattr.c:887:1: error: the frame size of 1088 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] 887 | } | ^ Affecting many target that require jffs2 support. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ath79: 5.15: drop unused res variable from pci ar724x OF convert patchChristian Marangi2023-05-122-5/+13
| | | | | | | | | | | | | Drop unused res variable from pci ar724x OF convert patch fixing compilation warning: arch/mips/pci/pci-ar724x.c: In function 'ar724x_pci_probe': arch/mips/pci/pci-ar724x.c:387:26: error: unused variable 'res' [-Werror=unused-variable] 387 | struct resource *res; | ^~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ipq40xx: add PSGMII PHY mode to phylink_get_linkmodes()Robert Marko2023-05-121-4/+12
| | | | | | | | | | | | | | | Upstream commit ("net: phylink: add generic validate implementation") was backported, however PSGMII PHY mode patch for ipq40xx was not updated to add PSGMII to phylink_get_linkmodes() so the following warning would be printed during kernel compilation: drivers/net/phy/phylink.c: In function 'phylink_get_linkmodes': drivers/net/phy/phylink.c:360:9: error: enumeration value 'PHY_INTERFACE_MODE_PSGMII' not handled in switch [-Werror=switch] 360 | switch (interface) { | ^~~~~~ Resolve the warning by adding the PSGMII mode to phylink_get_linkmodes(). Signed-off-by: Robert Marko <robimarko@gmail.com>
* ramips: 5.15: handle error from device_reset in SPI ralink driverChristian Marangi2023-05-121-3/+8
| | | | | | | | | | | | | Handle error from device reset in SPI ralink driver fixing compilation warning: drivers/spi/spi-rt2880.c: In function 'rt2880_spi_probe': drivers/spi/spi-rt2880.c:474:17: error: ignoring return value of 'device_reset' declared with attribute 'warn_unused_result' [-Werror=unused-result] 474 | device_reset(&pdev->dev); | ^~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ath79: 5.15: drop unused res variable from pci ar71xx OF convert patchChristian Marangi2023-05-123-7/+11
| | | | | | | | | | | | | Drop unused res variable from pci ar71xx OF convert patch fixing compilation warning: arch/mips/pci/pci-ar71xx.c: In function 'ar71xx_pci_probe': arch/mips/pci/pci-ar71xx.c:287:26: error: unused variable 'res' [-Werror=unused-variable] 287 | struct resource *res; | ^~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ipq806x: 5.15: fix compilation warning from mangle bootargs patchChristian Marangi2023-05-121-10/+80
| | | | | | | Fix compilation warning from mangle bootargs patch. Now that we flag warning as error these cause compilation error. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* generic: 5.15: enable Werror by default for kernel compileChristian Marangi2023-05-121-1/+1
| | | | | | | | From 5.15 and up linux kernel introduced CONFIG_WERROR to flag any warning as error. To improve code quality, enable this by default to catch any warning and fix it. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* Revert "ath79: add empty squashfs-lzma filesystem"Daniel Golle2023-05-122-3/+0
| | | | | | | | | | This reverts commit 91e3419a33f3f0baa2fb25680f5c9a7b2240102b. Now that squashfs3-lzma generates reproducible output we can drop the empty binary. Having a binary file in the tree is not nice and we actually also use squashfs3-lzma for devices which expect the kernel to be loaded from a squashfs3... Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: apply stock configuration for WAN-LEDDavid Bauer2023-05-111-1/+1
| | | | | | | Apply the same LED configuration used by the vendor-firmware for the GPY211 controlled WAN LED in OpenWrt. Signed-off-by: David Bauer <mail@david-bauer.net>
* mediatek: configure TUF-AX4200 LAN LEDsDavid Bauer2023-05-111-0/+61
| | | | | | | | | | As we can now configure the switch LED configuration, write the switch LED configuration values from the vendor firmware to the switch-IC. Previously, the switch-LEDs did not show any acitvity or link-status whatsoever. Signed-off-by: David Bauer <mail@david-bauer.net>
* generic: add hack for MT753x LED configurationDavid Bauer2023-05-111-0/+66
| | | | | | | | | | | This adds a small hack similar to the one used for ar8xxx switches to read a reg:value map for configuring the LED configuration registers. This allows OpenWrt to write device-specific LED action as well as blink configurations. It is unlikely to be accepted upstream, as upstream plans on integrating their own framework for handling these LEDs. Signed-off-by: David Bauer <mail@david-bauer.net>
* generic: mt7530: enable PHY configuration using OFDavid Bauer2023-05-111-0/+43
| | | | | | | | | | The MT753x switches provide a switch-internal MDIO bus for the embedded PHYs. Register a OF sub-node on the switch OF-node for this internal MDIO bus. This allows to configure the embedded PHYs using device-tree. Signed-off-by: David Bauer <mail@david-bauer.net>
* generic: enable CONFIG_ARM_CRYPTO for 32bit arm targetsLu jicong2023-05-1017-0/+17
| | | | | | | Fix following error when building 32bit arm targets with kmod-crypto-sha512 ERROR: module '/home/user/openwrt/build_dir/target-arm_xscale_musl_eabi/linux-kirkwood_generic/linux-5.15.109/arch/arm/crypto/sha512-arm.ko' is missing. Signed-off-by: Lu jicong <jiconglu58@gmail.com>
* generic: refresh 5.15 kernel configLu jicong2023-05-1013-25/+9
| | | | | | prepare for enabling CONFIG_ARM_CRYPTO on these targets Signed-off-by: Lu jicong <jiconglu58@gmail.com>
* ramips: add support for Linksys RE7000Christoph Krapp2023-05-093-0/+164
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware specification: - SoC: MediaTek MT7621AT (880 MHz) - Flash: 16 MB (Macronix MX25L12835FM2I-10G) - RAM: 128 MB (Nanya NT5CC64M16GP-DI) - WLAN 2.4 GHz: 2x2 MediaTek MT7603EN - WLAN 5 GHz: 2x2 MediaTek MT7615N - Ethernet: 1x 10/100/1000 Mbps - LED: Power, Wifi, WPS - Button: Reset, WPS - UART: 1:VCC, 2:GND, 3:TX, 4:RX (from LAN port) Serial console @ 57600,8n1 Flash instructions: Connect to serial console and start up the device. As the bootloader got locked you need to type in a password to unlock U-Boot access. When you see the following output on the console: relocate_code Pointer at: 87f1c000 type in the super secure password: 1234567890 Then select TFTP boot from RAM by selecting option 1 in the boot menu. As Linksys decided to leave out a basic TFTP configuration you need to set server- & client ip as well as the image filename the device will search for. You need to use the initramfs openwrt image for the TFTP boot process. Once openwrt has booted up, upload the sysupgrade image via scp and run sysupgrade as normal. Signed-off-by: Christoph Krapp <achterin@gmail.com>
* rockchip: disable UHS speed for ROC-RK3328-CCTianling Shen2023-05-091-0/+10
| | | | | | | | | | | The previously stated speed of sdr-104 in is too high for the hardware to reliably communicate with some fast SD cards. Rockchip boards have a common bug when operating uhs speed, which will hang the system during a soft reboot. To be on the safe side, lower the speed to workaround. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: enable rk805 pinctrl driverTianling Shen2023-05-091-1/+2
| | | | | | | This is required for ROC-RK3328-CC to light up the LED-s which are connected to rk805's gpio. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: add Firefly ROC-RK3328-CC supportTianling Shen2023-05-093-8/+30
| | | | | | | | | | | | | | | | | | | | | | Hardware -------- RockChip RK3328 ARM64 (4 cores) 4GB DDR4 RAM 1x 1000 Base-T 2 LEDs (POWER / USER) HDMI 2.0 3.5mm TRRS AV jack Micro-SD slot eMMC slot 1x USB 3.0 Port 2x USB 2.0 Port Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card using dd. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* sdk: do not exclude all doc directoriesMichael Pratt2023-05-091-1/+2
| | | | | | | | | | | | | Some packages which are using local gnulib source are expecting files to exist in the directory: staging_dir/host/share/gnulib/doc so delete the other doc directories directly instead of excluding all of them. Fixes: d167adbc4 ("gettext-full: bootstrap to local gnulib source") Signed-off-by: Michael Pratt <mcpratt@pm.me>
* ath79: add empty squashfs-lzma filesystemPaul Spooren2023-05-082-0/+3
| | | | | | | | | | | | | | | | | The filesystem is currently created on every build to trick the boot loader of some FRITZ! devices into accepting the image. Sadly the resulting squashfs-lzma filesystem is not reproducible. To fix this, create a squashfs filesystem once and include it into the repository. Creation happend as shown below rm -rf empty_dir mkdir empty_dir ./staging_dir/host/bin/mksquashfs-lzma \ empty_dir/ empty-squashfs-lzma \ -noappend -root-owned -be -nopad -b 65536 -fixed-time 0 Signed-off-by: Paul Spooren <mail@aparcar.org>
* ramips: fix dts file name for SNR-CPE-ME1Maximilian Weinmann2023-05-081-0/+0
| | | | | | | | | Rename file mt7621_snr_snr-spe-me-1.dts Fixes: #12562 Fixes: ecdb248 ("ramips: add support for SNR-CPE-ME1") Tested-by: Rafał Miłecki <rafal@milecki.pl> Signed-off-by: Maximilian Weinmann <x1@disroot.org>
* realtek: remove redundant is_lagmember checksJan Hoffmann2023-05-072-26/+4
| | | | | | | | | | | | | All callers of the rtl83xx_mc_group_* functions already do the same check, so these aren't needed. For rtl83xx_mc_group_alloc, this branch also incorrectly returned 0 instead of a negative value. If the branch wasn't effectively dead code anyway, this could potentially have caused bugs, as 0 is a valid multicast group entry index. Fixes: cde31976e375 ("realtek: Add support for Layer 2 Multicast") Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: remove store_mcgroups/load_mcgroupsJan Hoffmann2023-05-074-58/+0
| | | | | | | | | | | | | | | | | | | The current implementation only works when store and load are called for the same port without any other calls in between. This is because the store function only saves a single port number instead of a portmask for each group. It also doesn't take into account that the allocation of multicast group entries might change between store/load calls. As a result, the multicast port mask table gets corrupted. This also includes the reserved entry for unknown multicast, which gets corrupted even when no other mdb entries have been added. Remove the code for storing/loading multicast groups entirely, as the original commit message doesn't offer a convincing reason why this would be necessary in the first place. Fixes: 724e4af530cd ("realtek: Store and Restore MC memberships for port enable/disable") Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: don't add CPU port to multicast portmasksJan Hoffmann2023-05-072-10/+4
| | | | | | | | | | | | | There shouldn't be any reason to forward all multicast to the CPU. The original commit message also doesn't provide a reason for this seemingly unrelated change. The current implementation of the delete method is also broken, as it entirely removes any entry when the portmask contains only the CPU port, even if it was explicitly created. Fixes: 724e4af530cd ("realtek: Store and Restore MC memberships for port enable/disable") Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: actually remove port from multicast portmaskJan Hoffmann2023-05-072-0/+2
| | | | | Fixes: 724e4af530cd ("realtek: Store and Restore MC memberships for port enable/disable") Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: don't treat first multicast portmask entry as reservedJan Hoffmann2023-05-072-2/+0
| | | | | | | | | | | | | | There doesn't appear to be a reason to do this, as only the last entry is actually reserved for unknown multicast. This also fixes two issues: - As the increment happened after the bounds check, the value of the actually reserved last entry could be overwritten. - On deletion of entries, a corresponding decrement was missing, causing the wrong entry to be marked as free. Fixes: cde31976e375 ("realtek: Add support for Layer 2 Multicast") Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: fix writing/deletion of CAM entriesJan Hoffmann2023-05-072-8/+8
| | | | | | | Actually use the index returned by rtl83xx_find_l2_cam_entry. Fixes: cde31976e375 ("realtek: Add support for Layer 2 Multicast") Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: handle changed flags in VLAN configurationJan Hoffmann2023-05-072-37/+43
| | | | | | | | | | | The port_vlan_add method may be called while a port is already a member of that VLAN, so it needs to be able to handle changed flags. Fix it to properly handle when the PVID or UNTAGGED flag was previously set, but now no longer is. To reduce duplication, move PVID configuration to a separate function. Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: fix standalone ports in presence of static fdb entriesJan Hoffmann2023-05-078-0/+100
| | | | | | | | | | | | | | | | | | | | The registers L2_PORT_STATIC_MV_ACT seem to specify the action to take when the source address of a packet exists as a static fdb entry on another port. By default the configured action is to drop such packets. For standalone ports, this behaviour is undesired, as all traffic should be forwarded to the CPU. So change the action to forward on standalone ports. A situation where this issue can occur is when a non-offloaded bond interface is part of a bridge. In that case, the CPU port will have fdb entries for devices connected to the bond interface, which are managed by the assisted learning feature. For now, this is only implemented for RTL838x/RTL839x, as the available set of registers differs for the other devices. Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: initialize port masks to match the default stateJan Hoffmann2023-05-072-24/+22
| | | | | | | | | | | | | All ports are disabled by default, so configure the port isolation masks and the pm field accordingly in the setup function. When port_enable is called for a port, the isolation masks will be set up so that traffic can flow between the port and the CPU. While at it, change the code to also use the traffic_set method in rtl83xx_setup, instead of writing to the RTL838x_PORT_ISO_CTRL(i) registers directly. Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: properly update port masks when port leaves bridgeJan Hoffmann2023-05-072-10/+10
| | | | | | | | | | | | | | | | | Correctly update the isolation mask of the port being configured. The port_bitmap variable should contain all other bridge members and needs to be actually removed from the isolation mask instead of added to it. Also actually remove the port being configured from the pm field of the other ports, so that any other ports that are currently disabled will be configured correctly when they are enabled. Fixes: df8e6be59a1f ("rtl838x: add new architecture") [fixed updating pm field of other ports] Fixes: 2b88563ee5aa ("realtek: update the tree to the latest refactored version") [reintroduced incorrect pm field update] Fixes: 27029277f98d ("realtek: add switch driver support for the RTL93XX based switches") Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* layerscape: Add support for Felix DSA switchWojciech Dubowik2023-05-071-0/+5
| | | | | | It's present on LS1028ARDB reference board from NXP. Signed-off-by: Wojciech Dubowik <Wojciech.Dubowik@protonmail.ch>
* layerscape: Add ls1028ardb supportWojciech Dubowik2023-05-075-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for NXP LS1028ARDB reference board. It's a dual core Coretex-A53 board with 4G RAM and 5 Eternet ports (4 ports are connected to MSCC Felix switch). The original layout of NXP board has been kept but firmware images are adapted to be more sysupgrade friendly. At the moment NOR and SD boots are supported. NOR flash instructions: * make sd card with sdboot image * boot * write firmware image to spi flash $ mtd write /tmp/openwrt-layerscape-armv8_64b-fsl_ls1028a-rdb- squashfs-firmware.bin /dev/mtd0 * change jumper to NOR boot and reset V3: * Added board specific network defaults for lan/wan v2: * Added INA220 curent monitor, PCF2129 RTC clock and NXP SA56004ED temperature sensor to default packages * removed compat fixups for thist board Signed-off-by: Wojciech Dubowik <Wojciech.Dubowik@protonmail.ch>
* ramips: add support for SNR-CPE-ME1Maximilian Weinmann2023-05-073-0/+227
| | | | | | | | | | | | | | | | | | | | | | | | | | | | SNR-CPE-ME1 is a wireless WiFi 5 router manufactured by SNR/NAG company. Specification: - SoC : MediaTek MT7621A - RAM : DDR3 256 MiB - Flash : SPI-NOR 16 MiB (GD25Q128CSIG) - WLAN : 2.4 GHz (MediaTek MT7603EN) 5 GHz (MediaTek MT7610EN) - Ethernet : 10/100/1000 Mbps x5 - Switch : MediaTek MT7530 (in SoC) - USB : 3.0 x1 - UART : through-hole on PCB - [J4] 3.3V, RX, TX, GND (57600n8) - Power : 12 VDC, 2 A Flash instruction via TFTP: 1. Boot SNR-CPE-ME1 to recovery mode (hold the reset button while power on) 2. Send firmware via TFTP client: TFTP Server address: 192.168.1.1 TFTP Client address: 192.168.1.131 3. Wait ~120 seconds to complete flashing 4. Do sysupgrade using web-interface Signed-off-by: Maximilian Weinmann <x1@disroot.org>
* ath79: add support for ZTE MF282Andreas Böhler2023-05-063-0/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ZTE MF282 is a LTE router used (exclusively?) by the network operator "3". Specifications ============== SoC: QCA9563 (775MHz) RAM: 128MiB Flash: 8MiB SPI-NOR + 128MiB SPI-NAND LAN: 1x GBit LAN LTE: ZTE MF270 (Cat4), detected as P685M WiFi: QCA9880ac + QCA9560bgn MAC addresses ============= LAN: from config WiFi 1: from config WiFi 2: +1 Installation ============ TFTP installation using UART is preferred. Disassemble the device and connect serial. Put the initramfs image as openwrt.bin to your TFTP server and configure a static IP of 192.168.1.100. Load the initramfs image by typing: setenv serverip 192.168.1.100 setenv ipaddr 192.168.1.1 tftpboot 0x82000000 openwrt.bin bootm 0x82000000 From this intiramfs boot you can take a backup of the currently installed partitions as no vendor firmware is available for download. Once booted, transfer the sysupgrade image and run sysupgrade. LTE Modem ========= The LTE modem is probably the same as in the MF283+, all instructions apply. Configuring the connection using modemmanager works properly, the modem provides three serial ports and a QMI CDC ethernet interface. Signed-off-by: Andreas Böhler <dev@aboehler.at>
* ath79: refactor ZTE MF28x dts filesAndreas Böhler2023-05-063-329/+233
| | | | | | | Move common dts entries of ZTE MF281 and ZTE MF286 to a common .dtsi file to reduce redundancies. Signed-off-by: Andreas Böhler <dev@aboehler.at>