release 5.10.0-112.0.0

This commit is contained in:
yafen 2022-08-17 23:29:03 +08:00
parent 8c9a912404
commit b35ad6243e
2 changed files with 44 additions and 77 deletions

View File

@ -1,7 +1,7 @@
From 340fc2609d9a9d4135fb092e2e4679a76d81e68b Mon Sep 17 00:00:00 2001
From c1d6aa23673d4e317f836e581899a58d84c16ffb Mon Sep 17 00:00:00 2001
From: yafen <yafen@iscas.ac.cn>
Date: Wed, 20 Jul 2022 19:42:35 +0800
Subject: [PATCH] apply RPi patch of 5.10.95(openEuler 5.10.0-106.0.0)
Date: Wed, 10 Aug 2022 20:53:16 +0800
Subject: [PATCH] apply RPi patch of 5.10.95(openEuler 5.10.0-109.0.0)
---
.../admin-guide/media/bcm2835-isp.rst | 127 +
@ -491,7 +491,7 @@ Subject: [PATCH] apply RPi patch of 5.10.95(openEuler 5.10.0-106.0.0)
drivers/gpu/drm/omapdrm/omap_crtc.c | 22 +-
drivers/gpu/drm/panel/panel-ilitek-ili9881c.c | 253 +-
.../gpu/drm/panel/panel-jdi-lt070me05000.c | 18 +-
.../drm/panel/panel-raspberrypi-touchscreen.c | 49 +-
.../drm/panel/panel-raspberrypi-touchscreen.c | 36 +-
drivers/gpu/drm/panel/panel-simple.c | 106 +-
drivers/gpu/drm/qxl/qxl_display.c | 6 +-
drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 22 +-
@ -899,7 +899,7 @@ Subject: [PATCH] apply RPi patch of 5.10.95(openEuler 5.10.0-106.0.0)
sound/soc/soc-core.c | 14 +-
sound/usb/quirks-table.h | 9 +
sound/usb/quirks.c | 6 +
895 files changed, 175502 insertions(+), 4850 deletions(-)
895 files changed, 175492 insertions(+), 4847 deletions(-)
create mode 100644 Documentation/admin-guide/media/bcm2835-isp.rst
create mode 100644 Documentation/devicetree/bindings/clock/raspberrypi,firmware-clocks.yaml
create mode 100644 Documentation/devicetree/bindings/hwmon/rpi-poe-fan.txt
@ -4152,7 +4152,7 @@ index 4a05a105a9e6..ba3a5b599362 100644
pixfmt-nv16m
pixfmt-nv24
diff --git a/MAINTAINERS b/MAINTAINERS
index 466b1c599848..1946b937e054 100644
index 9908e5442110..df1f27dcaf3d 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3417,6 +3417,29 @@ N: bcm113*
@ -4200,7 +4200,7 @@ index 466b1c599848..1946b937e054 100644
DRM DRIVER FOR GRAIN MEDIA GM12U320 PROJECTORS
M: Hans de Goede <hdegoede@redhat.com>
S: Maintained
@@ -16408,6 +16439,23 @@ S: Maintained
@@ -16410,6 +16441,23 @@ S: Maintained
T: git git://linuxtv.org/media_tree.git
F: drivers/media/i2c/imx355.c
@ -42414,7 +42414,7 @@ index 106f83a5ea6d..b483e5713039 100644
static unsigned long noinline
__clear_user_memset(void __user *addr, unsigned long n)
diff --git a/arch/arm/mach-bcm/Kconfig b/arch/arm/mach-bcm/Kconfig
index ae790908fc74..822125c5707a 100644
index 9b594ae98153..a77c495f8378 100644
--- a/arch/arm/mach-bcm/Kconfig
+++ b/arch/arm/mach-bcm/Kconfig
@@ -161,9 +161,12 @@ config ARCH_BCM2835
@ -52287,7 +52287,7 @@ index 000000000000..89f5d6b353ab
+MODULE_AUTHOR("Dave Stevenson <dave.stevenson@raspberrypi.com>");
+MODULE_DESCRIPTION("PWM GPIO driver");
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index d18078748200..3cd19e0cc0f5 100644
index 59d8affad343..2ab00355b37b 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -51,6 +51,8 @@
@ -57369,7 +57369,7 @@ index 733010b5e4f5..7fb4d98e166d 100644
return ret;
}
diff --git a/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c b/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c
index bbdd086be7f5..3f0c11fa60a5 100644
index 4b92c6341490..3f0c11fa60a5 100644
--- a/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c
+++ b/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c
@@ -219,7 +219,35 @@ static struct rpi_touchscreen *panel_to_ts(struct drm_panel *panel)
@ -57409,21 +57409,8 @@ index bbdd086be7f5..3f0c11fa60a5 100644
}
static void rpi_touchscreen_i2c_write(struct rpi_touchscreen *ts,
@@ -229,7 +257,7 @@ static void rpi_touchscreen_i2c_write(struct rpi_touchscreen *ts,
ret = i2c_smbus_write_byte_data(ts->i2c, reg, val);
if (ret)
- dev_err(&ts->dsi->dev, "I2C write failed: %d\n", ret);
+ dev_err(&ts->i2c->dev, "I2C write failed: %d\n", ret);
}
static int rpi_touchscreen_write(struct rpi_touchscreen *ts, u16 reg, u32 val)
@@ -265,15 +293,17 @@ static int rpi_touchscreen_noop(struct drm_panel *panel)
return 0;
}
-static int rpi_touchscreen_enable(struct drm_panel *panel)
+static int rpi_touchscreen_prepare(struct drm_panel *panel)
@@ -268,12 +296,14 @@ static int rpi_touchscreen_noop(struct drm_panel *panel)
static int rpi_touchscreen_prepare(struct drm_panel *panel)
{
struct rpi_touchscreen *ts = panel_to_ts(panel);
- int i;
@ -57439,29 +57426,6 @@ index bbdd086be7f5..3f0c11fa60a5 100644
break;
}
@@ -295,6 +325,13 @@ static int rpi_touchscreen_enable(struct drm_panel *panel)
rpi_touchscreen_write(ts, DSI_STARTDSI, 0x01);
msleep(100);
+ return 0;
+}
+
+static int rpi_touchscreen_enable(struct drm_panel *panel)
+{
+ struct rpi_touchscreen *ts = panel_to_ts(panel);
+
/* Turn on the backlight. */
rpi_touchscreen_i2c_write(ts, REG_PWM, 255);
@@ -349,7 +386,7 @@ static int rpi_touchscreen_get_modes(struct drm_panel *panel,
static const struct drm_panel_funcs rpi_touchscreen_funcs = {
.disable = rpi_touchscreen_disable,
.unprepare = rpi_touchscreen_noop,
- .prepare = rpi_touchscreen_noop,
+ .prepare = rpi_touchscreen_prepare,
.enable = rpi_touchscreen_enable,
.get_modes = rpi_touchscreen_get_modes,
};
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 959dcbd8a29c..ec34380ebc5a 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
@ -59579,7 +59543,7 @@ index 9809c3a856c6..dd34de6e677b 100644
void vc4_hvs_unmask_underrun(struct drm_device *dev, int channel);
void vc4_hvs_mask_underrun(struct drm_device *dev, int channel);
diff --git a/drivers/gpu/drm/vc4/vc4_dsi.c b/drivers/gpu/drm/vc4/vc4_dsi.c
index eaf276978ee7..1c6939c9c232 100644
index ad84b56f4091..6e50e1d2eac8 100644
--- a/drivers/gpu/drm/vc4/vc4_dsi.c
+++ b/drivers/gpu/drm/vc4/vc4_dsi.c
@@ -181,8 +181,50 @@
@ -59718,7 +59682,7 @@ index eaf276978ee7..1c6939c9c232 100644
/* Now that we've picked a PLL divider, calculate back to its
@@ -837,7 +891,7 @@ static void vc4_dsi_encoder_enable(struct drm_encoder *encoder)
ret = pm_runtime_get_sync(dev);
ret = pm_runtime_resume_and_get(dev);
if (ret) {
- DRM_ERROR("Failed to runtime PM enable on DSI%d\n", dsi->port);
+ DRM_ERROR("Failed to runtime PM enable on DSI%d\n", dsi->variant->port);
@ -90558,7 +90522,7 @@ index d42e86cdff12..0533339d7979 100644
sdhci_dumpregs(host);
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index 5de37c33a737..0420b61443d3 100644
index b341b823fdbf..594ff3862569 100644
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -67,6 +67,9 @@
@ -90571,7 +90535,7 @@ index 5de37c33a737..0420b61443d3 100644
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
{
@@ -2432,6 +2435,11 @@ static void reset_umac(struct bcmgenet_priv *priv)
@@ -2439,6 +2442,11 @@ static void reset_umac(struct bcmgenet_priv *priv)
bcmgenet_rbuf_ctrl_set(priv, 0);
udelay(10);
@ -90583,7 +90547,7 @@ index 5de37c33a737..0420b61443d3 100644
/* issue soft reset and disable MAC while updating its registers */
bcmgenet_umac_writel(priv, CMD_SW_RESET, UMAC_CMD);
udelay(2);
@@ -2601,7 +2609,7 @@ static void bcmgenet_init_tx_ring(struct bcmgenet_priv *priv,
@@ -2608,7 +2616,7 @@ static void bcmgenet_init_tx_ring(struct bcmgenet_priv *priv,
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_PROD_INDEX);
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_CONS_INDEX);
@ -90592,7 +90556,7 @@ index 5de37c33a737..0420b61443d3 100644
/* Disable rate control for now */
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
TDMA_FLOW_PERIOD);
@@ -3242,7 +3250,7 @@ static void bcmgenet_get_hw_addr(struct bcmgenet_priv *priv,
@@ -3249,7 +3257,7 @@ static void bcmgenet_get_hw_addr(struct bcmgenet_priv *priv,
}
/* Returns a reusable dma control register value */
@ -90601,7 +90565,7 @@ index 5de37c33a737..0420b61443d3 100644
{
unsigned int i;
u32 reg;
@@ -3267,6 +3275,14 @@ static u32 bcmgenet_dma_disable(struct bcmgenet_priv *priv)
@@ -3274,6 +3282,14 @@ static u32 bcmgenet_dma_disable(struct bcmgenet_priv *priv)
udelay(10);
bcmgenet_umac_writel(priv, 0, UMAC_TX_FLUSH);
@ -90616,7 +90580,7 @@ index 5de37c33a737..0420b61443d3 100644
return dma_ctrl;
}
@@ -3330,8 +3346,8 @@ static int bcmgenet_open(struct net_device *dev)
@@ -3337,8 +3353,8 @@ static int bcmgenet_open(struct net_device *dev)
bcmgenet_set_hw_addr(priv, dev->dev_addr);
@ -90627,7 +90591,7 @@ index 5de37c33a737..0420b61443d3 100644
/* Reinitialize TDMA and RDMA and SW housekeeping */
ret = bcmgenet_init_dma(priv);
@@ -4066,9 +4082,12 @@ static int bcmgenet_probe(struct platform_device *pdev)
@@ -4073,9 +4089,12 @@ static int bcmgenet_probe(struct platform_device *pdev)
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
/* Set default coalescing parameters */
@ -90641,7 +90605,7 @@ index 5de37c33a737..0420b61443d3 100644
/* libphy will determine the link state */
netif_carrier_off(dev);
@@ -4184,7 +4203,7 @@ static int bcmgenet_resume(struct device *d)
@@ -4191,7 +4210,7 @@ static int bcmgenet_resume(struct device *d)
bcmgenet_hfb_create_rxnfc_filter(priv, rule);
/* Disable RX/TX DMA and flush TX queues */
@ -96853,7 +96817,7 @@ index 61febc9bfa14..7491710bdec0 100644
brcmf_pcie_fwnames,
ARRAY_SIZE(brcmf_pcie_fwnames),
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
index 6d5d5c39c635..c8609fed3c32 100644
index 9929e90866f0..5de2f21a3cfe 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
@@ -35,6 +35,7 @@
@ -176353,10 +176317,10 @@ index 4aab93d5b651..f482c43bc64e 100644
"// Write ERST size = %i to ir_set 0 (some bits preserved)",
val);
diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
index 490ce38ae93d..97260e089e0c 100644
index 405c2fe8b104..fa9453d5029e 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
@@ -297,6 +297,8 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
@@ -299,6 +299,8 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
if (pdev->vendor == PCI_VENDOR_ID_VIA && pdev->device == 0x3483) {
xhci->quirks |= XHCI_LPM_SUPPORT;
xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
@ -176366,7 +176330,7 @@ index 490ce38ae93d..97260e089e0c 100644
if (pdev->vendor == PCI_VENDOR_ID_ZHAOXIN &&
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
index 76389c0dda8b..545387a0679a 100644
index fa3a7ac15f82..b01cc54aeef6 100644
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -87,15 +87,16 @@ static bool trb_is_link(union xhci_trb *trb)
@ -176437,8 +176401,8 @@ index 76389c0dda8b..545387a0679a 100644
+ if (event_loop++ < xhci->event_ring->trbs_per_seg / 2)
continue;
xhci_update_erst_dequeue(xhci, event_ring_deq);
event_loop = 0;
@@ -4258,9 +4276,9 @@ void xhci_queue_new_dequeue_state(struct xhci_hcd *xhci,
event_ring_deq = xhci->event_ring->dequeue;
@@ -4260,9 +4278,9 @@ void xhci_queue_new_dequeue_state(struct xhci_hcd *xhci,
}
ep = &xhci->devs[slot_id]->eps[ep_index];
if ((ep->ep_state & SET_DEQ_PENDING)) {
@ -176452,10 +176416,10 @@ index 76389c0dda8b..545387a0679a 100644
/* This function gets called from contexts where it cannot sleep */
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
index cc21f5f9d0ad..407527cac378 100644
index 8beb17c67d73..7fc2b3688998 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -856,8 +856,8 @@ static void xhci_clear_command_ring(struct xhci_hcd *xhci)
@@ -867,8 +867,8 @@ static void xhci_clear_command_ring(struct xhci_hcd *xhci)
seg = ring->deq_seg;
do {
memset(seg->trbs, 0,
@ -176466,7 +176430,7 @@ index cc21f5f9d0ad..407527cac378 100644
cpu_to_le32(~TRB_CYCLE);
seg = seg->next;
} while (seg != ring->deq_seg);
@@ -868,7 +868,7 @@ static void xhci_clear_command_ring(struct xhci_hcd *xhci)
@@ -879,7 +879,7 @@ static void xhci_clear_command_ring(struct xhci_hcd *xhci)
ring->enq_seg = ring->deq_seg;
ring->enqueue = ring->dequeue;
@ -176475,7 +176439,7 @@ index cc21f5f9d0ad..407527cac378 100644
/*
* Ring is now zeroed, so the HW should look for change of ownership
* when the cycle bit is set to 1.
@@ -1471,6 +1471,103 @@ static int xhci_check_maxpacket(struct xhci_hcd *xhci, unsigned int slot_id,
@@ -1482,6 +1482,103 @@ static int xhci_check_maxpacket(struct xhci_hcd *xhci, unsigned int slot_id,
return ret;
}
@ -176579,7 +176543,7 @@ index cc21f5f9d0ad..407527cac378 100644
/*
* non-error returns are a promise to giveback() the urb later
* we drop ownership so next owner (or urb unlink) can get it
@@ -5427,6 +5524,7 @@ static const struct hc_driver xhci_hc_driver = {
@@ -5438,6 +5535,7 @@ static const struct hc_driver xhci_hc_driver = {
.endpoint_reset = xhci_endpoint_reset,
.check_bandwidth = xhci_check_bandwidth,
.reset_bandwidth = xhci_reset_bandwidth,
@ -178297,10 +178261,10 @@ index a2bb276a8b24..436494fba15a 100644
start_index, pitch_index);
} else
diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c
index 00939ca2065a..098cd5dfc06f 100644
index 3b3ccb235522..2272606cf003 100644
--- a/drivers/video/fbdev/core/fbmem.c
+++ b/drivers/video/fbdev/core/fbmem.c
@@ -1085,6 +1085,30 @@ fb_blank(struct fb_info *info, int blank)
@@ -1095,6 +1095,30 @@ fb_blank(struct fb_info *info, int blank)
}
EXPORT_SYMBOL(fb_blank);
@ -178331,7 +178295,7 @@ index 00939ca2065a..098cd5dfc06f 100644
static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
unsigned long arg)
{
@@ -1093,6 +1117,7 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
@@ -1103,6 +1127,7 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
struct fb_fix_screeninfo fix;
struct fb_cmap cmap_from;
struct fb_cmap_user cmap;
@ -178339,7 +178303,7 @@ index 00939ca2065a..098cd5dfc06f 100644
void __user *argp = (void __user *)arg;
long ret = 0;
@@ -1168,6 +1193,15 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
@@ -1180,6 +1205,15 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
unlock_fb_info(info);
console_unlock();
break;
@ -178355,7 +178319,7 @@ index 00939ca2065a..098cd5dfc06f 100644
default:
lock_fb_info(info);
fb = info->fbops;
@@ -1313,6 +1347,7 @@ static long fb_compat_ioctl(struct file *file, unsigned int cmd,
@@ -1325,6 +1359,7 @@ static long fb_compat_ioctl(struct file *file, unsigned int cmd,
case FBIOPAN_DISPLAY:
case FBIOGET_CON2FBMAP:
case FBIOPUT_CON2FBMAP:
@ -183681,7 +183645,7 @@ index 817545ff80b9..375a43d99b28 100644
for (;;) {
tmp = *p;
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index ec73cca1726c..60b829755c0b 100644
index cf9c69d631f3..d920ef24438c 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -8894,8 +8894,6 @@ int alloc_contig_range(unsigned long start, unsigned long end,

View File

@ -2,13 +2,13 @@
%global KernelVer %{version}-%{release}.raspi.%{_target_cpu}
%global hulkrelease 105.0.0
%global hulkrelease 112.0.0
%global debug_package %{nil}
Name: raspberrypi-kernel
Version: 5.10.0
Release: %{hulkrelease}.11
Release: %{hulkrelease}.12
Summary: Linux Kernel
License: GPLv2
URL: http://www.kernel.org/
@ -166,6 +166,9 @@ install -m 644 /boot/dtb-%{KernelVer}/overlays/README /boot/overlays/
/lib/modules/%{KernelVer}
%changelog
* Thu Aug 18 2022 Yafen Fang <yafen@iscas.ac.cn> - 5.10.0-112.0.0.12
- update kernel version to openEuler 5.10.0-112.0.0
* Fri Jul 22 2022 Yafen Fang <yafen@iscas.ac.cn> - 5.10.0-105.0.0.11
- update kernel version to openEuler 5.10.0-105.0.0