diff options
Diffstat (limited to 'target/linux/bcm27xx')
11 files changed, 25 insertions, 86 deletions
diff --git a/target/linux/bcm27xx/patches-5.15/950-0035-cgroup-Disable-cgroup-memory-by-default.patch b/target/linux/bcm27xx/patches-5.15/950-0035-cgroup-Disable-cgroup-memory-by-default.patch index 6ea14aba94..85f909847b 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0035-cgroup-Disable-cgroup-memory-by-default.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0035-cgroup-Disable-cgroup-memory-by-default.patch @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> --- a/kernel/cgroup/cgroup.c +++ b/kernel/cgroup/cgroup.c -@@ -5824,6 +5824,9 @@ int __init cgroup_init_early(void) +@@ -5833,6 +5833,9 @@ int __init cgroup_init_early(void) return 0; } @@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> /** * cgroup_init - cgroup initialization * -@@ -5862,6 +5865,12 @@ int __init cgroup_init(void) +@@ -5871,6 +5874,12 @@ int __init cgroup_init(void) mutex_unlock(&cgroup_mutex); @@ -40,7 +40,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> for_each_subsys(ss, ssid) { if (ss->early_init) { struct cgroup_subsys_state *css = -@@ -6446,6 +6455,10 @@ static int __init cgroup_disable(char *s +@@ -6455,6 +6464,10 @@ static int __init cgroup_disable(char *s strcmp(token, ss->legacy_name)) continue; @@ -51,7 +51,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> static_branch_disable(cgroup_subsys_enabled_key[i]); pr_info("Disabling %s control group subsystem\n", ss->name); -@@ -6464,6 +6477,31 @@ static int __init cgroup_disable(char *s +@@ -6473,6 +6486,31 @@ static int __init cgroup_disable(char *s } __setup("cgroup_disable=", cgroup_disable); diff --git a/target/linux/bcm27xx/patches-5.15/950-0056-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch b/target/linux/bcm27xx/patches-5.15/950-0056-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch index 0fa06335aa..fe2b83dd42 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0056-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0056-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch @@ -14,7 +14,7 @@ use the same logic. --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -2725,7 +2725,12 @@ static int pl011_setup_port(struct devic +@@ -2744,7 +2744,12 @@ static int pl011_setup_port(struct devic if (IS_ERR(base)) return PTR_ERR(base); diff --git a/target/linux/bcm27xx/patches-5.15/950-0057-amba_pl011-Round-input-clock-up.patch b/target/linux/bcm27xx/patches-5.15/950-0057-amba_pl011-Round-input-clock-up.patch index 96435fe809..8fb5c393b6 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0057-amba_pl011-Round-input-clock-up.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0057-amba_pl011-Round-input-clock-up.patch @@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1718,6 +1718,23 @@ static void pl011_put_poll_char(struct u +@@ -1727,6 +1727,23 @@ static void pl011_put_poll_char(struct u #endif /* CONFIG_CONSOLE_POLL */ @@ -50,7 +50,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> static int pl011_hwinit(struct uart_port *port) { struct uart_amba_port *uap = -@@ -1734,7 +1751,7 @@ static int pl011_hwinit(struct uart_port +@@ -1743,7 +1760,7 @@ static int pl011_hwinit(struct uart_port if (retval) return retval; @@ -59,7 +59,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> /* Clear pending error and receive interrupts */ pl011_write(UART011_OEIS | UART011_BEIS | UART011_PEIS | -@@ -2421,7 +2438,7 @@ static int pl011_console_setup(struct co +@@ -2440,7 +2457,7 @@ static int pl011_console_setup(struct co plat->init(); } @@ -68,7 +68,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> if (uap->vendor->fixed_options) { baud = uap->fixed_baud; -@@ -2638,6 +2655,7 @@ static struct uart_driver amba_reg = { +@@ -2657,6 +2674,7 @@ static struct uart_driver amba_reg = { .cons = AMBA_CONSOLE, }; @@ -76,7 +76,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> static int pl011_probe_dt_alias(int index, struct device *dev) { struct device_node *np; -@@ -2669,6 +2687,7 @@ static int pl011_probe_dt_alias(int inde +@@ -2688,6 +2706,7 @@ static int pl011_probe_dt_alias(int inde return ret; } diff --git a/target/linux/bcm27xx/patches-5.15/950-0058-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch b/target/linux/bcm27xx/patches-5.15/950-0058-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch index adb5e0073f..88388f4259 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0058-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0058-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1423,6 +1423,7 @@ static bool pl011_tx_char(struct uart_am +@@ -1432,6 +1432,7 @@ static bool pl011_tx_char(struct uart_am return false; /* unable to transmit character */ pl011_write(c, uap, REG_DR); diff --git a/target/linux/bcm27xx/patches-5.15/950-0059-amba_pl011-Add-cts-event-workaround-DT-property.patch b/target/linux/bcm27xx/patches-5.15/950-0059-amba_pl011-Add-cts-event-workaround-DT-property.patch index 5dfe214100..02d86cfc61 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0059-amba_pl011-Add-cts-event-workaround-DT-property.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0059-amba_pl011-Add-cts-event-workaround-DT-property.patch @@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> - reg --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -2816,6 +2816,11 @@ static int pl011_probe(struct amba_devic +@@ -2835,6 +2835,11 @@ static int pl011_probe(struct amba_devic if (IS_ERR(uap->clk)) return PTR_ERR(uap->clk); diff --git a/target/linux/bcm27xx/patches-5.15/950-0060-tty-amba-pl011-Add-un-throttle-support.patch b/target/linux/bcm27xx/patches-5.15/950-0060-tty-amba-pl011-Add-un-throttle-support.patch deleted file mode 100644 index 3b0bca7adb..0000000000 --- a/target/linux/bcm27xx/patches-5.15/950-0060-tty-amba-pl011-Add-un-throttle-support.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 48cb6ac7067b412c56a0a6aca43f5c964dfb7dec Mon Sep 17 00:00:00 2001 -From: Phil Elwell <phil@raspberrypi.org> -Date: Fri, 24 Jan 2020 11:38:28 +0000 -Subject: [PATCH] tty: amba-pl011: Add un/throttle support - -The PL011 driver lacks throttle and unthrottle methods. As a result, -sending more data to the Pi than it can immediately sink while CRTSCTS -is enabled causes a NULL pointer to be followed. - -Add a throttle handler that disables the RX interrupts, and an -unthrottle handler that reenables them. - -Signed-off-by: Phil Elwell <phil@raspberrypi.org> ---- - drivers/tty/serial/amba-pl011.c | 28 ++++++++++++++++++++++++++++ - 1 file changed, 28 insertions(+) - ---- a/drivers/tty/serial/amba-pl011.c -+++ b/drivers/tty/serial/amba-pl011.c -@@ -1360,6 +1360,32 @@ static void pl011_start_tx(struct uart_p - pl011_start_tx_pio(uap); - } - -+static void pl011_throttle(struct uart_port *port) -+{ -+ struct uart_amba_port *uap = -+ container_of(port, struct uart_amba_port, port); -+ unsigned long flags; -+ -+ spin_lock_irqsave(&uap->port.lock, flags); -+ uap->im &= ~(UART011_RTIM | UART011_RXIM); -+ pl011_write(uap->im, uap, REG_IMSC); -+ spin_unlock_irqrestore(&uap->port.lock, flags); -+} -+ -+static void pl011_unthrottle(struct uart_port *port) -+{ -+ struct uart_amba_port *uap = -+ container_of(port, struct uart_amba_port, port); -+ unsigned long flags; -+ -+ spin_lock_irqsave(&uap->port.lock, flags); -+ uap->im |= UART011_RTIM; -+ if (!pl011_dma_rx_running(uap)) -+ uap->im |= UART011_RXIM; -+ pl011_write(uap->im, uap, REG_IMSC); -+ spin_unlock_irqrestore(&uap->port.lock, flags); -+} -+ - static void pl011_stop_rx(struct uart_port *port) - { - struct uart_amba_port *uap = -@@ -2263,6 +2289,8 @@ static const struct uart_ops amba_pl011_ - .stop_tx = pl011_stop_tx, - .start_tx = pl011_start_tx, - .stop_rx = pl011_stop_rx, -+ .throttle = pl011_throttle, -+ .unthrottle = pl011_unthrottle, - .enable_ms = pl011_enable_ms, - .break_ctl = pl011_break_ctl, - .startup = pl011_startup, diff --git a/target/linux/bcm27xx/patches-5.15/950-0061-tty-amba-pl011-Avoid-rare-write-when-full-error.patch b/target/linux/bcm27xx/patches-5.15/950-0061-tty-amba-pl011-Avoid-rare-write-when-full-error.patch index c72eeb470e..7607714a20 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0061-tty-amba-pl011-Avoid-rare-write-when-full-error.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0061-tty-amba-pl011-Avoid-rare-write-when-full-error.patch @@ -29,7 +29,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1510,6 +1510,10 @@ static bool pl011_tx_chars(struct uart_a +@@ -1493,6 +1493,10 @@ static bool pl011_tx_chars(struct uart_a if (likely(from_irq) && count-- == 0) break; diff --git a/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch b/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch index 2b2a5f50ff..b2286f8f80 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch @@ -244,7 +244,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> static int bcm2708_fb_register(struct bcm2708_fb *fb) --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c -@@ -1096,6 +1096,30 @@ fb_blank(struct fb_info *info, int blank +@@ -1097,6 +1097,30 @@ fb_blank(struct fb_info *info, int blank } EXPORT_SYMBOL(fb_blank); @@ -275,7 +275,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> static long do_fb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) { -@@ -1104,6 +1128,7 @@ static long do_fb_ioctl(struct fb_info * +@@ -1105,6 +1129,7 @@ static long do_fb_ioctl(struct fb_info * struct fb_fix_screeninfo fix; struct fb_cmap cmap_from; struct fb_cmap_user cmap; @@ -283,7 +283,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> void __user *argp = (void __user *)arg; long ret = 0; -@@ -1181,6 +1206,15 @@ static long do_fb_ioctl(struct fb_info * +@@ -1182,6 +1207,15 @@ static long do_fb_ioctl(struct fb_info * unlock_fb_info(info); console_unlock(); break; @@ -299,7 +299,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> default: lock_fb_info(info); fb = info->fbops; -@@ -1320,6 +1354,7 @@ static long fb_compat_ioctl(struct file +@@ -1321,6 +1355,7 @@ static long fb_compat_ioctl(struct file case FBIOPAN_DISPLAY: case FBIOGET_CON2FBMAP: case FBIOPUT_CON2FBMAP: diff --git a/target/linux/bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch b/target/linux/bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch index d0c6a88542..8a3ab3e46e 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch @@ -16,10 +16,10 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> --- a/sound/usb/quirks.c +++ b/sound/usb/quirks.c -@@ -1912,6 +1912,8 @@ static const struct usb_audio_quirk_flag - QUIRK_FLAG_ALIGN_TRANSFER), - DEVICE_FLG(0x1224, 0x2a25, /* Jieli Technology USB PHY 2.0 */ - QUIRK_FLAG_GET_SAMPLE_RATE), +@@ -1921,6 +1921,8 @@ static const struct usb_audio_quirk_flag + QUIRK_FLAG_GENERIC_IMPLICIT_FB), + DEVICE_FLG(0x2b53, 0x0031, /* Fiero SC-01 (firmware v1.1.0) */ + QUIRK_FLAG_GENERIC_IMPLICIT_FB), + DEVICE_FLG(0x09da, 0x2695, /* A4Tech FHD 1080p webcam */ + QUIRK_FLAG_DISABLE_AUTOSUSPEND | QUIRK_FLAG_GET_SAMPLE_RATE), diff --git a/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch b/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch index b609b65246..69fa9a44de 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch @@ -11,7 +11,7 @@ This reverts commit 2388f826cdc9af2651991adc0feb79de9bdf2232. --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c -@@ -1628,14 +1628,7 @@ static void do_remove_conflicting_frameb +@@ -1629,14 +1629,7 @@ static void do_remove_conflicting_frameb * If it's not a platform device, at least print a warning. A * fix would add code to remove the device from the system. */ diff --git a/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch b/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch index 870e59a6a5..b2fc4d8ffc 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch @@ -12,7 +12,7 @@ This reverts commit c894ac44786cfed383a6c6b20c1bfb12eb96018a. --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c -@@ -25,7 +25,6 @@ +@@ -26,7 +26,6 @@ #include <linux/init.h> #include <linux/linux_logo.h> #include <linux/proc_fs.h> @@ -20,7 +20,7 @@ This reverts commit c894ac44786cfed383a6c6b20c1bfb12eb96018a. #include <linux/seq_file.h> #include <linux/console.h> #include <linux/kmod.h> -@@ -1605,36 +1604,18 @@ static void do_remove_conflicting_frameb +@@ -1606,36 +1605,18 @@ static void do_remove_conflicting_frameb /* check all firmware fbs and kick off if the base addr overlaps */ for_each_registered_fb(i) { struct apertures_struct *gen_aper; @@ -58,7 +58,7 @@ This reverts commit c894ac44786cfed383a6c6b20c1bfb12eb96018a. } } } -@@ -1961,13 +1942,9 @@ EXPORT_SYMBOL(register_framebuffer); +@@ -1973,13 +1954,9 @@ EXPORT_SYMBOL(register_framebuffer); void unregister_framebuffer(struct fb_info *fb_info) { |