Skip to content
Snippets Groups Projects
Commit 8a9629e8 authored by Piotr Kubik's avatar Piotr Kubik Committed by Andreas Gnau
Browse files

Uplift targets to openwrt v23.05.4

parent 27df14ff
Branches
No related tags found
1 merge request!1311Uplift targets to openwrt v23.05.4
...@@ -612,6 +612,11 @@ CONFIG_SERIAL_MVEBU_CONSOLE=y ...@@ -612,6 +612,11 @@ CONFIG_SERIAL_MVEBU_CONSOLE=y
CONFIG_SERIAL_MVEBU_UART=y CONFIG_SERIAL_MVEBU_UART=y
CONFIG_SERIAL_SAMSUNG=y CONFIG_SERIAL_SAMSUNG=y
CONFIG_SERIAL_SAMSUNG_CONSOLE=y CONFIG_SERIAL_SAMSUNG_CONSOLE=y
CONFIG_SERIAL_SH_SCI=y
CONFIG_SERIAL_SH_SCI_CONSOLE=y
CONFIG_SERIAL_SH_SCI_DMA=y
CONFIG_SERIAL_SH_SCI_EARLYCON=y
CONFIG_SERIAL_SH_SCI_NR_UARTS=18
# CONFIG_SMC91X is not set # CONFIG_SMC91X is not set
# CONFIG_SND_SOC_RCAR is not set # CONFIG_SND_SOC_RCAR is not set
# CONFIG_SND_SOC_RZ is not set # CONFIG_SND_SOC_RZ is not set
......
...@@ -7,3 +7,4 @@ hvc0::askfirst:/usr/libexec/login.sh ...@@ -7,3 +7,4 @@ hvc0::askfirst:/usr/libexec/login.sh
ttymxc0::askfirst:/usr/libexec/login.sh ttymxc0::askfirst:/usr/libexec/login.sh
ttymxc1::askfirst:/usr/libexec/login.sh ttymxc1::askfirst:/usr/libexec/login.sh
ttymxc2::askfirst:/usr/libexec/login.sh ttymxc2::askfirst:/usr/libexec/login.sh
ttySC0::askfirst:/usr/libexec/login.sh
...@@ -99,6 +99,9 @@ CONFIG_DMA_REMAP=y ...@@ -99,6 +99,9 @@ CONFIG_DMA_REMAP=y
CONFIG_DMI=y CONFIG_DMI=y
CONFIG_DMIID=y CONFIG_DMIID=y
CONFIG_DMI_SYSFS=y CONFIG_DMI_SYSFS=y
CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
CONFIG_DTC=y CONFIG_DTC=y
CONFIG_EDAC_SUPPORT=y CONFIG_EDAC_SUPPORT=y
CONFIG_EFI=y CONFIG_EFI=y
......
...@@ -112,7 +112,8 @@ define Device/generic ...@@ -112,7 +112,8 @@ define Device/generic
kmod-fsl-enetc-net kmod-dwmac-imx kmod-fsl-fec kmod-thunderx-net \ kmod-fsl-enetc-net kmod-dwmac-imx kmod-fsl-fec kmod-thunderx-net \
kmod-dwmac-rockchip kmod-dwmac-sun8i kmod-phy-aquantia kmod-phy-broadcom \ kmod-dwmac-rockchip kmod-dwmac-sun8i kmod-phy-aquantia kmod-phy-broadcom \
kmod-phy-marvell kmod-phy-marvell-10g kmod-sfp kmod-atlantic \ kmod-phy-marvell kmod-phy-marvell-10g kmod-sfp kmod-atlantic \
kmod-bcmgenet kmod-octeontx2-net kmod-bcmgenet kmod-octeontx2-net kmod-renesas-net-avb \
kmod-phy-realtek kmod-phy-smsc
endef endef
TARGET_DEVICES += generic TARGET_DEVICES += generic
......
...@@ -314,6 +314,21 @@ define KernelPackage/octeontx2-net ...@@ -314,6 +314,21 @@ define KernelPackage/octeontx2-net
endef endef
$(eval $(call KernelPackage,octeontx2-net)) $(eval $(call KernelPackage,octeontx2-net))
define KernelPackage/renesas-net-avb
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Renesas network drivers
DEPENDS:=@(TARGET_armsr_armv8) +kmod-phylink +kmod-mii +kmod-ptp +kmod-libphy +kmod-mdio-gpio
KCONFIG:=CONFIG_RAVB
FILES=$(LINUX_DIR)/drivers/net/ethernet/renesas/ravb.ko
AUTOLOAD:=$(call AutoProbe,ravb)
endef
define KernelPackage/renesas-net-avb/description
Support Renesas RZ platform Ethernet module
endef
$(eval $(call KernelPackage,renesas-net-avb))
define KernelPackage/wdt-sp805 define KernelPackage/wdt-sp805
SUBMENU:=$(OTHER_MENU) SUBMENU:=$(OTHER_MENU)
TITLE:=ARM SP805 Watchdog TITLE:=ARM SP805 Watchdog
......
...@@ -58,6 +58,7 @@ CONFIG_CPU_IBRS_ENTRY=y ...@@ -58,6 +58,7 @@ CONFIG_CPU_IBRS_ENTRY=y
# CONFIG_SLS is not set # CONFIG_SLS is not set
CONFIG_CPU_IDLE=y CONFIG_CPU_IDLE=y
CONFIG_CPU_IDLE_GOV_LADDER=y CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_CPU_MITIGATIONS=y
CONFIG_CPU_SUP_AMD=y CONFIG_CPU_SUP_AMD=y
CONFIG_CPU_SUP_CENTAUR=y CONFIG_CPU_SUP_CENTAUR=y
CONFIG_CPU_SUP_CYRIX_32=y CONFIG_CPU_SUP_CYRIX_32=y
...@@ -224,6 +225,8 @@ CONFIG_MICROCODE_AMD=y ...@@ -224,6 +225,8 @@ CONFIG_MICROCODE_AMD=y
CONFIG_MICROCODE_INTEL=y CONFIG_MICROCODE_INTEL=y
CONFIG_MICROCODE_LATE_LOADING=y CONFIG_MICROCODE_LATE_LOADING=y
CONFIG_MIGRATION=y CONFIG_MIGRATION=y
CONFIG_MITIGATION_RFDS=y
CONFIG_MITIGATION_SPECTRE_BHI=y
# CONFIG_MK6 is not set # CONFIG_MK6 is not set
# CONFIG_MK7 is not set # CONFIG_MK7 is not set
# CONFIG_MK8 is not set # CONFIG_MK8 is not set
...@@ -327,7 +330,6 @@ CONFIG_SG_POOL=y ...@@ -327,7 +330,6 @@ CONFIG_SG_POOL=y
# CONFIG_SMSC_SCH311X_WDT is not set # CONFIG_SMSC_SCH311X_WDT is not set
CONFIG_SPARSEMEM_STATIC=y CONFIG_SPARSEMEM_STATIC=y
CONFIG_SPARSE_IRQ=y CONFIG_SPARSE_IRQ=y
CONFIG_SPECULATION_MITIGATIONS=y
CONFIG_SRCU=y CONFIG_SRCU=y
# CONFIG_STATIC_CALL_SELFTEST is not set # CONFIG_STATIC_CALL_SELFTEST is not set
CONFIG_SYSCTL_EXCEPTION_TRACE=y CONFIG_SYSCTL_EXCEPTION_TRACE=y
......
From 859bd2e0c0052967536f3f902716f204d5a978b1 Mon Sep 17 00:00:00 2001
From: Jonas Gorski <jonas.gorski@gmail.com>
Date: Fri, 8 Sep 2023 22:48:33 +0200
Subject: [PATCH] hwrng: geode: fix accessing registers
When the membase and pci_dev pointer were moved to a new struct in priv,
the actual membase users were left untouched, and they started reading
out arbitrary memory behind the struct instead of registers. This
unfortunately turned the RNG into a constant number generator, depending
on the content of what was at that offset.
To fix this, update geode_rng_data_{read,present}() to also get the
membase via amd_geode_priv, and properly read from the right addresses
again.
Fixes: 9f6ec8dc574e ("hwrng: geode - Fix PCI device refcount leak")
Reported-by: Timur I. Davletshin <timur.davletshin@gmail.com>
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217882
Tested-by: Timur I. Davletshin <timur.davletshin@gmail.com>
Suggested-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
---
drivers/char/hw_random/geode-rng.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
--- a/drivers/char/hw_random/geode-rng.c
+++ b/drivers/char/hw_random/geode-rng.c
@@ -58,7 +58,8 @@ struct amd_geode_priv {
static int geode_rng_data_read(struct hwrng *rng, u32 *data)
{
- void __iomem *mem = (void __iomem *)rng->priv;
+ struct amd_geode_priv *priv = (struct amd_geode_priv *)rng->priv;
+ void __iomem *mem = priv->membase;
*data = readl(mem + GEODE_RNG_DATA_REG);
@@ -67,7 +68,8 @@ static int geode_rng_data_read(struct hw
static int geode_rng_data_present(struct hwrng *rng, int wait)
{
- void __iomem *mem = (void __iomem *)rng->priv;
+ struct amd_geode_priv *priv = (struct amd_geode_priv *)rng->priv;
+ void __iomem *mem = priv->membase;
int data, i;
for (i = 0; i < 20; i++) {
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment