kernel: Refresh patches for all targets
This refreshes the patches on top of kernel 5.4.127. Deleted (upstreamed): bcm27xx/patches-5.10/950-0005-Revert-mailbox-avoid-timer-start-from-callback.patch [0] bcm27xx/patches-5.10/950-0678-bcm2711_thermal-Don-t-clamp-temperature-at-zero.patch [1] Needed manual modifications: bcm27xx/patches-5.10/950-0410-drm-atomic-Pass-the-full-state-to-CRTC-atomic-begin-.patch [0]: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.127&id=bb2220e0672b7433a9a42618599cd261b2629240 [1]: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.127&id=83603802954068ccd1b8a3f2ccbbaf5e0862acb0 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
32e9095662
commit
ee67afeda9
36 changed files with 79 additions and 155 deletions
|
@ -13,8 +13,8 @@
|
||||||
select SWCONFIG
|
select SWCONFIG
|
||||||
--- a/drivers/net/phy/Makefile
|
--- a/drivers/net/phy/Makefile
|
||||||
+++ b/drivers/net/phy/Makefile
|
+++ b/drivers/net/phy/Makefile
|
||||||
@@ -31,6 +31,7 @@ ar8xxx-y += ar8216.o
|
@@ -29,6 +29,7 @@ obj-$(CONFIG_ADM6996_PHY) += adm6996.o
|
||||||
ar8xxx-y += ar8327.o
|
obj-$(CONFIG_AR8216_PHY) += ar8216.o ar8327.o
|
||||||
obj-$(CONFIG_SWCONFIG_B53) += b53/
|
obj-$(CONFIG_SWCONFIG_B53) += b53/
|
||||||
obj-$(CONFIG_IP17XX_PHY) += ip17xx.o
|
obj-$(CONFIG_IP17XX_PHY) += ip17xx.o
|
||||||
+obj-$(CONFIG_MVSWITCH_PHY) += mvswitch.o
|
+obj-$(CONFIG_MVSWITCH_PHY) += mvswitch.o
|
||||||
|
|
|
@ -10,7 +10,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
||||||
|
|
||||||
--- a/drivers/mtd/spi-nor/core.c
|
--- a/drivers/mtd/spi-nor/core.c
|
||||||
+++ b/drivers/mtd/spi-nor/core.c
|
+++ b/drivers/mtd/spi-nor/core.c
|
||||||
@@ -3156,6 +3156,7 @@ int spi_nor_scan(struct spi_nor *nor, co
|
@@ -3157,6 +3157,7 @@ int spi_nor_scan(struct spi_nor *nor, co
|
||||||
struct device *dev = nor->dev;
|
struct device *dev = nor->dev;
|
||||||
struct mtd_info *mtd = &nor->mtd;
|
struct mtd_info *mtd = &nor->mtd;
|
||||||
struct device_node *np = spi_nor_get_flash_node(nor);
|
struct device_node *np = spi_nor_get_flash_node(nor);
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
||||||
int ret;
|
int ret;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
@@ -3210,7 +3211,12 @@ int spi_nor_scan(struct spi_nor *nor, co
|
@@ -3211,7 +3212,12 @@ int spi_nor_scan(struct spi_nor *nor, co
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
||||||
mtd->type = MTD_NORFLASH;
|
mtd->type = MTD_NORFLASH;
|
||||||
--- a/drivers/mtd/mtdcore.c
|
--- a/drivers/mtd/mtdcore.c
|
||||||
+++ b/drivers/mtd/mtdcore.c
|
+++ b/drivers/mtd/mtdcore.c
|
||||||
@@ -778,6 +778,17 @@ out_error:
|
@@ -788,6 +788,17 @@ out_error:
|
||||||
*/
|
*/
|
||||||
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,58 +0,0 @@
|
||||||
From a8fb0d43b8acd25d68a0d2c24fd0260393148447 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Phil Elwell <phil@raspberrypi.com>
|
|
||||||
Date: Tue, 3 Nov 2020 11:49:53 +0000
|
|
||||||
Subject: [PATCH] Revert "mailbox: avoid timer start from callback"
|
|
||||||
|
|
||||||
This reverts commit c7dacf5b0f32957b24ef29df1207dc2cd8307743.
|
|
||||||
|
|
||||||
The Pi 400 shutdown/poweroff mechanism relies on being able to set
|
|
||||||
a GPIO on the expander in the pm_power_off handler, something that
|
|
||||||
requires two mailbox calls - GET_GPIO_STATE and SET_GPIO_STATE. A
|
|
||||||
recent kernel change introduces a reasonable possibility that the
|
|
||||||
GET call doesn't completes, and bisecting led to a commit from
|
|
||||||
October that changes the timer usage of the mailbox.
|
|
||||||
|
|
||||||
My theory is that there is a race condition in the new code that breaks
|
|
||||||
the poll timer, but that it normally goes unnoticed because subsequent
|
|
||||||
mailbox activity wakes it up again. The power-off mailbox calls happen
|
|
||||||
at a time when other subsystems have been shut down, so if one of them
|
|
||||||
fails then there is nothing to allow it to recover.
|
|
||||||
|
|
||||||
See: https://github.com/raspberrypi/linux/issues/3941
|
|
||||||
|
|
||||||
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
|
||||||
---
|
|
||||||
drivers/mailbox/mailbox.c | 12 +++++-------
|
|
||||||
1 file changed, 5 insertions(+), 7 deletions(-)
|
|
||||||
|
|
||||||
--- a/drivers/mailbox/mailbox.c
|
|
||||||
+++ b/drivers/mailbox/mailbox.c
|
|
||||||
@@ -82,12 +82,9 @@ static void msg_submit(struct mbox_chan
|
|
||||||
exit:
|
|
||||||
spin_unlock_irqrestore(&chan->lock, flags);
|
|
||||||
|
|
||||||
- /* kick start the timer immediately to avoid delays */
|
|
||||||
- if (!err && (chan->txdone_method & TXDONE_BY_POLL)) {
|
|
||||||
- /* but only if not already active */
|
|
||||||
- if (!hrtimer_active(&chan->mbox->poll_hrt))
|
|
||||||
- hrtimer_start(&chan->mbox->poll_hrt, 0, HRTIMER_MODE_REL);
|
|
||||||
- }
|
|
||||||
+ if (!err && (chan->txdone_method & TXDONE_BY_POLL))
|
|
||||||
+ /* kick start the timer immediately to avoid delays */
|
|
||||||
+ hrtimer_start(&chan->mbox->poll_hrt, 0, HRTIMER_MODE_REL);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void tx_tick(struct mbox_chan *chan, int r)
|
|
||||||
@@ -125,10 +122,11 @@ static enum hrtimer_restart txdone_hrtim
|
|
||||||
struct mbox_chan *chan = &mbox->chans[i];
|
|
||||||
|
|
||||||
if (chan->active_req && chan->cl) {
|
|
||||||
- resched = true;
|
|
||||||
txdone = chan->mbox->ops->last_tx_done(chan);
|
|
||||||
if (txdone)
|
|
||||||
tx_tick(chan, 0);
|
|
||||||
+ else
|
|
||||||
+ resched = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ Signed-off-by: Noralf Tronnes <notro@tronnes.org>
|
||||||
|
|
||||||
--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||||
+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||||
@@ -362,7 +362,7 @@ static const struct gpio_chip bcm2835_gp
|
@@ -378,7 +378,7 @@ static const struct gpio_chip bcm2835_gp
|
||||||
.get = bcm2835_gpio_get,
|
.get = bcm2835_gpio_get,
|
||||||
.set = bcm2835_gpio_set,
|
.set = bcm2835_gpio_set,
|
||||||
.set_config = gpiochip_generic_config,
|
.set_config = gpiochip_generic_config,
|
||||||
|
@ -19,4 +19,4 @@ Signed-off-by: Noralf Tronnes <notro@tronnes.org>
|
||||||
+ .base = 0,
|
+ .base = 0,
|
||||||
.ngpio = BCM2835_NUM_GPIOS,
|
.ngpio = BCM2835_NUM_GPIOS,
|
||||||
.can_sleep = false,
|
.can_sleep = false,
|
||||||
};
|
.of_gpio_ranges_fallback = bcm2835_of_gpio_ranges_fallback,
|
||||||
|
|
|
@ -221,7 +221,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
|
||||||
static inline int mmc_blk_part_switch(struct mmc_card *card,
|
static inline int mmc_blk_part_switch(struct mmc_card *card,
|
||||||
unsigned int part_type);
|
unsigned int part_type);
|
||||||
static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq,
|
static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq,
|
||||||
@@ -2897,6 +2904,7 @@ static int mmc_blk_probe(struct mmc_card
|
@@ -2896,6 +2903,7 @@ static int mmc_blk_probe(struct mmc_card
|
||||||
{
|
{
|
||||||
struct mmc_blk_data *md, *part_md;
|
struct mmc_blk_data *md, *part_md;
|
||||||
char cap_str[10];
|
char cap_str[10];
|
||||||
|
@ -229,7 +229,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Check that the card supports the command class(es) we need.
|
* Check that the card supports the command class(es) we need.
|
||||||
@@ -2904,7 +2912,16 @@ static int mmc_blk_probe(struct mmc_card
|
@@ -2903,7 +2911,16 @@ static int mmc_blk_probe(struct mmc_card
|
||||||
if (!(card->csd.cmdclass & CCC_BLOCK_READ))
|
if (!(card->csd.cmdclass & CCC_BLOCK_READ))
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
|
@ -247,7 +247,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
|
||||||
|
|
||||||
card->complete_wq = alloc_workqueue("mmc_complete",
|
card->complete_wq = alloc_workqueue("mmc_complete",
|
||||||
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
|
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
|
||||||
@@ -2919,9 +2936,14 @@ static int mmc_blk_probe(struct mmc_card
|
@@ -2918,9 +2935,14 @@ static int mmc_blk_probe(struct mmc_card
|
||||||
|
|
||||||
string_get_size((u64)get_capacity(md->disk), 512, STRING_UNITS_2,
|
string_get_size((u64)get_capacity(md->disk), 512, STRING_UNITS_2,
|
||||||
cap_str, sizeof(cap_str));
|
cap_str, sizeof(cap_str));
|
||||||
|
|
|
@ -12465,7 +12465,7 @@ Signed-off-by: Joerg Schambacher joerg@i2audio.com
|
||||||
config SND_SOC_MADERA
|
config SND_SOC_MADERA
|
||||||
tristate
|
tristate
|
||||||
default y if SND_SOC_CS47L15=y
|
default y if SND_SOC_CS47L15=y
|
||||||
@@ -1130,6 +1141,10 @@ config SND_SOC_RT5616
|
@@ -1128,6 +1139,10 @@ config SND_SOC_RT5616
|
||||||
tristate "Realtek RT5616 CODEC"
|
tristate "Realtek RT5616 CODEC"
|
||||||
depends on I2C
|
depends on I2C
|
||||||
|
|
||||||
|
@ -12476,7 +12476,7 @@ Signed-off-by: Joerg Schambacher joerg@i2audio.com
|
||||||
config SND_SOC_RT5631
|
config SND_SOC_RT5631
|
||||||
tristate "Realtek ALC5631/RT5631 CODEC"
|
tristate "Realtek ALC5631/RT5631 CODEC"
|
||||||
depends on I2C
|
depends on I2C
|
||||||
@@ -1351,6 +1366,9 @@ config SND_SOC_TFA9879
|
@@ -1349,6 +1364,9 @@ config SND_SOC_TFA9879
|
||||||
tristate "NXP Semiconductors TFA9879 amplifier"
|
tristate "NXP Semiconductors TFA9879 amplifier"
|
||||||
depends on I2C
|
depends on I2C
|
||||||
|
|
||||||
|
@ -12486,7 +12486,7 @@ Signed-off-by: Joerg Schambacher joerg@i2audio.com
|
||||||
config SND_SOC_TLV320AIC23
|
config SND_SOC_TLV320AIC23
|
||||||
tristate
|
tristate
|
||||||
|
|
||||||
@@ -1789,4 +1807,8 @@ config SND_SOC_TPA6130A2
|
@@ -1787,4 +1805,8 @@ config SND_SOC_TPA6130A2
|
||||||
tristate "Texas Instruments TPA6130A2 headphone amplifier"
|
tristate "Texas Instruments TPA6130A2 headphone amplifier"
|
||||||
depends on I2C
|
depends on I2C
|
||||||
|
|
||||||
|
|
|
@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||||
/* Disable rate control for now */
|
/* Disable rate control for now */
|
||||||
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
|
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
|
||||||
TDMA_FLOW_PERIOD);
|
TDMA_FLOW_PERIOD);
|
||||||
@@ -4069,9 +4069,12 @@ static int bcmgenet_probe(struct platfor
|
@@ -4073,9 +4073,12 @@ static int bcmgenet_probe(struct platfor
|
||||||
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
|
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
|
||||||
|
|
||||||
/* Set default coalescing parameters */
|
/* Set default coalescing parameters */
|
||||||
|
|
|
@ -81,7 +81,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||||
extern int usb_driver_set_configuration(struct usb_device *udev, int config);
|
extern int usb_driver_set_configuration(struct usb_device *udev, int config);
|
||||||
--- a/include/linux/usb/hcd.h
|
--- a/include/linux/usb/hcd.h
|
||||||
+++ b/include/linux/usb/hcd.h
|
+++ b/include/linux/usb/hcd.h
|
||||||
@@ -382,6 +382,11 @@ struct hc_driver {
|
@@ -384,6 +384,11 @@ struct hc_driver {
|
||||||
* or bandwidth constraints.
|
* or bandwidth constraints.
|
||||||
*/
|
*/
|
||||||
void (*reset_bandwidth)(struct usb_hcd *, struct usb_device *);
|
void (*reset_bandwidth)(struct usb_hcd *, struct usb_device *);
|
||||||
|
@ -93,7 +93,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||||
/* Returns the hardware-chosen device address */
|
/* Returns the hardware-chosen device address */
|
||||||
int (*address_device)(struct usb_hcd *, struct usb_device *udev);
|
int (*address_device)(struct usb_hcd *, struct usb_device *udev);
|
||||||
/* prepares the hardware to send commands to the device */
|
/* prepares the hardware to send commands to the device */
|
||||||
@@ -443,6 +448,8 @@ extern void usb_hcd_unmap_urb_setup_for_
|
@@ -445,6 +450,8 @@ extern void usb_hcd_unmap_urb_setup_for_
|
||||||
extern void usb_hcd_unmap_urb_for_dma(struct usb_hcd *, struct urb *);
|
extern void usb_hcd_unmap_urb_for_dma(struct usb_hcd *, struct urb *);
|
||||||
extern void usb_hcd_flush_endpoint(struct usb_device *udev,
|
extern void usb_hcd_flush_endpoint(struct usb_device *udev,
|
||||||
struct usb_host_endpoint *ep);
|
struct usb_host_endpoint *ep);
|
||||||
|
|
|
@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||||
|
|
||||||
--- a/drivers/usb/host/xhci.c
|
--- a/drivers/usb/host/xhci.c
|
||||||
+++ b/drivers/usb/host/xhci.c
|
+++ b/drivers/usb/host/xhci.c
|
||||||
@@ -1483,6 +1483,103 @@ command_cleanup:
|
@@ -1494,6 +1494,103 @@ command_cleanup:
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -119,7 +119,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||||
* non-error returns are a promise to giveback() the urb later
|
* non-error returns are a promise to giveback() the urb later
|
||||||
* we drop ownership so next owner (or urb unlink) can get it
|
* we drop ownership so next owner (or urb unlink) can get it
|
||||||
*/
|
*/
|
||||||
@@ -5389,6 +5486,7 @@ static const struct hc_driver xhci_hc_dr
|
@@ -5400,6 +5497,7 @@ static const struct hc_driver xhci_hc_dr
|
||||||
.endpoint_reset = xhci_endpoint_reset,
|
.endpoint_reset = xhci_endpoint_reset,
|
||||||
.check_bandwidth = xhci_check_bandwidth,
|
.check_bandwidth = xhci_check_bandwidth,
|
||||||
.reset_bandwidth = xhci_reset_bandwidth,
|
.reset_bandwidth = xhci_reset_bandwidth,
|
||||||
|
|
|
@ -33,7 +33,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||||
#define USB_VENDOR_ID_BELKIN 0x050d
|
#define USB_VENDOR_ID_BELKIN 0x050d
|
||||||
#define USB_DEVICE_ID_FLIP_KVM 0x3201
|
#define USB_DEVICE_ID_FLIP_KVM 0x3201
|
||||||
|
|
||||||
@@ -1270,6 +1273,9 @@
|
@@ -1271,6 +1274,9 @@
|
||||||
#define USB_VENDOR_ID_XAT 0x2505
|
#define USB_VENDOR_ID_XAT 0x2505
|
||||||
#define USB_DEVICE_ID_XAT_CSR 0x0220
|
#define USB_DEVICE_ID_XAT_CSR 0x0220
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||||
|
|
||||||
--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||||
+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||||
@@ -1318,7 +1318,7 @@ static int bcm2835_pinctrl_probe(struct
|
@@ -1336,7 +1336,7 @@ static int bcm2835_pinctrl_probe(struct
|
||||||
girq->default_type = IRQ_TYPE_NONE;
|
girq->default_type = IRQ_TYPE_NONE;
|
||||||
girq->handler = handle_level_irq;
|
girq->handler = handle_level_irq;
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||||
+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||||
@@ -1290,9 +1290,13 @@ static int bcm2835_pinctrl_probe(struct
|
@@ -1308,9 +1308,13 @@ static int bcm2835_pinctrl_probe(struct
|
||||||
char *name;
|
char *name;
|
||||||
|
|
||||||
girq->parents[i] = irq_of_parse_and_map(np, i);
|
girq->parents[i] = irq_of_parse_and_map(np, i);
|
||||||
|
|
|
@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/drivers/of/overlay.c
|
--- a/drivers/of/overlay.c
|
||||||
+++ b/drivers/of/overlay.c
|
+++ b/drivers/of/overlay.c
|
||||||
@@ -245,6 +245,8 @@ static struct property *dup_and_fixup_sy
|
@@ -243,6 +243,8 @@ static struct property *dup_and_fixup_sy
|
||||||
if (!target_path)
|
if (!target_path)
|
||||||
return NULL;
|
return NULL;
|
||||||
target_path_len = strlen(target_path);
|
target_path_len = strlen(target_path);
|
||||||
|
|
|
@ -16,7 +16,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||||
+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||||
@@ -378,7 +378,7 @@ static const struct gpio_chip bcm2711_gp
|
@@ -395,7 +395,7 @@ static const struct gpio_chip bcm2711_gp
|
||||||
.get = bcm2835_gpio_get,
|
.get = bcm2835_gpio_get,
|
||||||
.set = bcm2835_gpio_set,
|
.set = bcm2835_gpio_set,
|
||||||
.set_config = gpiochip_generic_config,
|
.set_config = gpiochip_generic_config,
|
||||||
|
@ -24,4 +24,4 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
+ .base = 0,
|
+ .base = 0,
|
||||||
.ngpio = BCM2711_NUM_GPIOS,
|
.ngpio = BCM2711_NUM_GPIOS,
|
||||||
.can_sleep = false,
|
.can_sleep = false,
|
||||||
};
|
.of_gpio_ranges_fallback = bcm2835_of_gpio_ranges_fallback,
|
||||||
|
|
|
@ -25,7 +25,7 @@ Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -16346,6 +16346,14 @@ S: Maintained
|
@@ -16348,6 +16348,14 @@ S: Maintained
|
||||||
T: git git://linuxtv.org/media_tree.git
|
T: git git://linuxtv.org/media_tree.git
|
||||||
F: drivers/media/i2c/imx355.c
|
F: drivers/media/i2c/imx355.c
|
||||||
|
|
||||||
|
|
|
@ -59,7 +59,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
/* Reinitialize TDMA and RDMA and SW housekeeping */
|
/* Reinitialize TDMA and RDMA and SW housekeeping */
|
||||||
ret = bcmgenet_init_dma(priv);
|
ret = bcmgenet_init_dma(priv);
|
||||||
@@ -4198,7 +4206,7 @@ static int bcmgenet_resume(struct device
|
@@ -4202,7 +4210,7 @@ static int bcmgenet_resume(struct device
|
||||||
bcmgenet_hfb_create_rxnfc_filter(priv, rule);
|
bcmgenet_hfb_create_rxnfc_filter(priv, rule);
|
||||||
|
|
||||||
/* Disable RX/TX DMA and flush TX queues */
|
/* Disable RX/TX DMA and flush TX queues */
|
||||||
|
|
|
@ -59,7 +59,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
/* The filter kernel is composed of dwords each containing 3 9-bit
|
/* The filter kernel is composed of dwords each containing 3 9-bit
|
||||||
* signed integers packed next to each other.
|
* signed integers packed next to each other.
|
||||||
*/
|
*/
|
||||||
@@ -671,6 +710,8 @@ static int vc4_hvs_bind(struct device *d
|
@@ -687,6 +726,8 @@ static int vc4_hvs_bind(struct device *d
|
||||||
vc4_debugfs_add_regset32(drm, "hvs_regs", &hvs->regset);
|
vc4_debugfs_add_regset32(drm, "hvs_regs", &hvs->regset);
|
||||||
vc4_debugfs_add_file(drm, "hvs_underrun", vc4_hvs_debugfs_underrun,
|
vc4_debugfs_add_file(drm, "hvs_underrun", vc4_hvs_debugfs_underrun,
|
||||||
NULL);
|
NULL);
|
||||||
|
|
|
@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||||
|
|
||||||
--- a/drivers/usb/host/xhci-pci.c
|
--- a/drivers/usb/host/xhci-pci.c
|
||||||
+++ b/drivers/usb/host/xhci-pci.c
|
+++ b/drivers/usb/host/xhci-pci.c
|
||||||
@@ -293,6 +293,7 @@ static void xhci_pci_quirks(struct devic
|
@@ -299,6 +299,7 @@ static void xhci_pci_quirks(struct devic
|
||||||
if (pdev->vendor == PCI_VENDOR_ID_VIA && pdev->device == 0x3483) {
|
if (pdev->vendor == PCI_VENDOR_ID_VIA && pdev->device == 0x3483) {
|
||||||
xhci->quirks |= XHCI_LPM_SUPPORT;
|
xhci->quirks |= XHCI_LPM_SUPPORT;
|
||||||
xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
|
xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
|
||||||
|
|
|
@ -367,7 +367,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/845aa10ef171fc0ea060495efef1
|
||||||
struct atmel_hlcdc_crtc *crtc = drm_crtc_to_atmel_hlcdc_crtc(c);
|
struct atmel_hlcdc_crtc *crtc = drm_crtc_to_atmel_hlcdc_crtc(c);
|
||||||
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
||||||
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
||||||
@@ -1093,7 +1093,7 @@ disable_outputs(struct drm_device *dev,
|
@@ -1103,7 +1103,7 @@ disable_outputs(struct drm_device *dev,
|
||||||
if (new_crtc_state->enable && funcs->prepare)
|
if (new_crtc_state->enable && funcs->prepare)
|
||||||
funcs->prepare(crtc);
|
funcs->prepare(crtc);
|
||||||
else if (funcs->atomic_disable)
|
else if (funcs->atomic_disable)
|
||||||
|
@ -376,7 +376,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/845aa10ef171fc0ea060495efef1
|
||||||
else if (funcs->disable)
|
else if (funcs->disable)
|
||||||
funcs->disable(crtc);
|
funcs->disable(crtc);
|
||||||
else if (funcs->dpms)
|
else if (funcs->dpms)
|
||||||
@@ -1358,7 +1358,7 @@ void drm_atomic_helper_commit_modeset_en
|
@@ -1368,7 +1368,7 @@ void drm_atomic_helper_commit_modeset_en
|
||||||
DRM_DEBUG_ATOMIC("enabling [CRTC:%d:%s]\n",
|
DRM_DEBUG_ATOMIC("enabling [CRTC:%d:%s]\n",
|
||||||
crtc->base.id, crtc->name);
|
crtc->base.id, crtc->name);
|
||||||
if (funcs->atomic_enable)
|
if (funcs->atomic_enable)
|
||||||
|
@ -547,7 +547,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/845aa10ef171fc0ea060495efef1
|
||||||
|
|
||||||
--- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
--- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
||||||
+++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
+++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
||||||
@@ -112,7 +112,7 @@ static inline struct ingenic_drm *drm_cr
|
@@ -151,7 +151,7 @@ static int ingenic_drm_update_pixclk(str
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ingenic_drm_crtc_atomic_enable(struct drm_crtc *crtc,
|
static void ingenic_drm_crtc_atomic_enable(struct drm_crtc *crtc,
|
||||||
|
@ -556,7 +556,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/845aa10ef171fc0ea060495efef1
|
||||||
{
|
{
|
||||||
struct ingenic_drm *priv = drm_crtc_get_priv(crtc);
|
struct ingenic_drm *priv = drm_crtc_get_priv(crtc);
|
||||||
|
|
||||||
@@ -126,7 +126,7 @@ static void ingenic_drm_crtc_atomic_enab
|
@@ -165,7 +165,7 @@ static void ingenic_drm_crtc_atomic_enab
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ingenic_drm_crtc_atomic_disable(struct drm_crtc *crtc,
|
static void ingenic_drm_crtc_atomic_disable(struct drm_crtc *crtc,
|
||||||
|
@ -989,7 +989,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/845aa10ef171fc0ea060495efef1
|
||||||
#include <drm/drm_atomic_helper.h>
|
#include <drm/drm_atomic_helper.h>
|
||||||
#include <drm/drm_edid.h>
|
#include <drm/drm_edid.h>
|
||||||
#include <drm/drm_fb_cma_helper.h>
|
#include <drm/drm_fb_cma_helper.h>
|
||||||
@@ -401,15 +402,19 @@ static int vc4_txp_atomic_check(struct d
|
@@ -407,15 +408,19 @@ static int vc4_txp_atomic_check(struct d
|
||||||
}
|
}
|
||||||
|
|
||||||
static void vc4_txp_atomic_enable(struct drm_crtc *crtc,
|
static void vc4_txp_atomic_enable(struct drm_crtc *crtc,
|
||||||
|
|
|
@ -468,7 +468,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-1-max
|
||||||
return 0;
|
return 0;
|
||||||
--- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
--- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
||||||
+++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
+++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
||||||
@@ -195,22 +195,27 @@ static void ingenic_drm_crtc_update_timi
|
@@ -234,22 +234,27 @@ static void ingenic_drm_crtc_update_timi
|
||||||
}
|
}
|
||||||
|
|
||||||
static int ingenic_drm_crtc_atomic_check(struct drm_crtc *crtc,
|
static int ingenic_drm_crtc_atomic_check(struct drm_crtc *crtc,
|
||||||
|
@ -589,7 +589,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-1-max
|
||||||
#include <drm/drm_mode.h>
|
#include <drm/drm_mode.h>
|
||||||
#include <drm/drm_crtc.h>
|
#include <drm/drm_crtc.h>
|
||||||
#include <drm/drm_flip_work.h>
|
#include <drm/drm_flip_work.h>
|
||||||
@@ -682,15 +683,17 @@ static enum mdp_mixer_stage_id get_start
|
@@ -688,15 +689,17 @@ static enum mdp_mixer_stage_id get_start
|
||||||
}
|
}
|
||||||
|
|
||||||
static int mdp5_crtc_atomic_check(struct drm_crtc *crtc,
|
static int mdp5_crtc_atomic_check(struct drm_crtc *crtc,
|
||||||
|
@ -609,7 +609,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-1-max
|
||||||
bool cursor_plane = false;
|
bool cursor_plane = false;
|
||||||
bool need_right_mixer = false;
|
bool need_right_mixer = false;
|
||||||
int cnt = 0, i;
|
int cnt = 0, i;
|
||||||
@@ -699,7 +702,7 @@ static int mdp5_crtc_atomic_check(struct
|
@@ -705,7 +708,7 @@ static int mdp5_crtc_atomic_check(struct
|
||||||
|
|
||||||
DBG("%s: check", crtc->name);
|
DBG("%s: check", crtc->name);
|
||||||
|
|
||||||
|
@ -618,7 +618,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-1-max
|
||||||
if (!pstate->visible)
|
if (!pstate->visible)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@@ -731,7 +734,7 @@ static int mdp5_crtc_atomic_check(struct
|
@@ -737,7 +740,7 @@ static int mdp5_crtc_atomic_check(struct
|
||||||
if (mode->hdisplay > hw_cfg->lm.max_width)
|
if (mode->hdisplay > hw_cfg->lm.max_width)
|
||||||
need_right_mixer = true;
|
need_right_mixer = true;
|
||||||
|
|
||||||
|
@ -627,7 +627,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-1-max
|
||||||
if (ret) {
|
if (ret) {
|
||||||
DRM_DEV_ERROR(dev->dev, "couldn't assign mixers %d\n", ret);
|
DRM_DEV_ERROR(dev->dev, "couldn't assign mixers %d\n", ret);
|
||||||
return ret;
|
return ret;
|
||||||
@@ -744,7 +747,7 @@ static int mdp5_crtc_atomic_check(struct
|
@@ -750,7 +753,7 @@ static int mdp5_crtc_atomic_check(struct
|
||||||
WARN_ON(cursor_plane &&
|
WARN_ON(cursor_plane &&
|
||||||
(pstates[cnt - 1].plane->type != DRM_PLANE_TYPE_CURSOR));
|
(pstates[cnt - 1].plane->type != DRM_PLANE_TYPE_CURSOR));
|
||||||
|
|
||||||
|
@ -886,7 +886,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-1-max
|
||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_txp.c
|
--- a/drivers/gpu/drm/vc4/vc4_txp.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_txp.c
|
+++ b/drivers/gpu/drm/vc4/vc4_txp.c
|
||||||
@@ -386,16 +386,18 @@ static const struct drm_crtc_funcs vc4_t
|
@@ -392,16 +392,18 @@ static const struct drm_crtc_funcs vc4_t
|
||||||
};
|
};
|
||||||
|
|
||||||
static int vc4_txp_atomic_check(struct drm_crtc *crtc,
|
static int vc4_txp_atomic_check(struct drm_crtc *crtc,
|
||||||
|
|
|
@ -385,7 +385,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-2-max
|
||||||
}
|
}
|
||||||
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
||||||
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
||||||
@@ -2507,7 +2507,7 @@ void drm_atomic_helper_commit_planes(str
|
@@ -2517,7 +2517,7 @@ void drm_atomic_helper_commit_planes(str
|
||||||
if (active_only && !new_crtc_state->active)
|
if (active_only && !new_crtc_state->active)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
@ -394,7 +394,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-2-max
|
||||||
}
|
}
|
||||||
|
|
||||||
for_each_oldnew_plane_in_state(old_state, plane, old_plane_state, new_plane_state, i) {
|
for_each_oldnew_plane_in_state(old_state, plane, old_plane_state, new_plane_state, i) {
|
||||||
@@ -2565,7 +2565,7 @@ void drm_atomic_helper_commit_planes(str
|
@@ -2575,7 +2575,7 @@ void drm_atomic_helper_commit_planes(str
|
||||||
if (active_only && !new_crtc_state->active)
|
if (active_only && !new_crtc_state->active)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
@ -403,7 +403,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-2-max
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(drm_atomic_helper_commit_planes);
|
EXPORT_SYMBOL(drm_atomic_helper_commit_planes);
|
||||||
@@ -2603,7 +2603,7 @@ drm_atomic_helper_commit_planes_on_crtc(
|
@@ -2613,7 +2613,7 @@ drm_atomic_helper_commit_planes_on_crtc(
|
||||||
|
|
||||||
crtc_funcs = crtc->helper_private;
|
crtc_funcs = crtc->helper_private;
|
||||||
if (crtc_funcs && crtc_funcs->atomic_begin)
|
if (crtc_funcs && crtc_funcs->atomic_begin)
|
||||||
|
@ -412,7 +412,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-2-max
|
||||||
|
|
||||||
drm_for_each_plane_mask(plane, crtc->dev, plane_mask) {
|
drm_for_each_plane_mask(plane, crtc->dev, plane_mask) {
|
||||||
struct drm_plane_state *old_plane_state =
|
struct drm_plane_state *old_plane_state =
|
||||||
@@ -2629,7 +2629,7 @@ drm_atomic_helper_commit_planes_on_crtc(
|
@@ -2639,7 +2639,7 @@ drm_atomic_helper_commit_planes_on_crtc(
|
||||||
}
|
}
|
||||||
|
|
||||||
if (crtc_funcs && crtc_funcs->atomic_flush)
|
if (crtc_funcs && crtc_funcs->atomic_flush)
|
||||||
|
@ -530,7 +530,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-2-max
|
||||||
if (crtc->state->event) {
|
if (crtc->state->event) {
|
||||||
--- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
--- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
||||||
+++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
+++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
||||||
@@ -253,7 +253,7 @@ ingenic_drm_crtc_mode_valid(struct drm_c
|
@@ -292,7 +292,7 @@ ingenic_drm_crtc_mode_valid(struct drm_c
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ingenic_drm_crtc_atomic_begin(struct drm_crtc *crtc,
|
static void ingenic_drm_crtc_atomic_begin(struct drm_crtc *crtc,
|
||||||
|
@ -539,7 +539,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-2-max
|
||||||
{
|
{
|
||||||
struct ingenic_drm *priv = drm_crtc_get_priv(crtc);
|
struct ingenic_drm *priv = drm_crtc_get_priv(crtc);
|
||||||
u32 ctrl = 0;
|
u32 ctrl = 0;
|
||||||
@@ -273,20 +273,20 @@ static void ingenic_drm_crtc_atomic_begi
|
@@ -312,26 +312,26 @@ static void ingenic_drm_crtc_atomic_begi
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ingenic_drm_crtc_atomic_flush(struct drm_crtc *crtc,
|
static void ingenic_drm_crtc_atomic_flush(struct drm_crtc *crtc,
|
||||||
|
@ -553,11 +553,17 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-2-max
|
||||||
+ struct drm_pending_vblank_event *event = crtc_state->event;
|
+ struct drm_pending_vblank_event *event = crtc_state->event;
|
||||||
|
|
||||||
- if (drm_atomic_crtc_needs_modeset(state)) {
|
- if (drm_atomic_crtc_needs_modeset(state)) {
|
||||||
- ingenic_drm_crtc_update_timings(priv, &state->mode);
|
|
||||||
+ if (drm_atomic_crtc_needs_modeset(crtc_state)) {
|
+ if (drm_atomic_crtc_needs_modeset(crtc_state)) {
|
||||||
+ ingenic_drm_crtc_update_timings(priv, &crtc_state->mode);
|
ingenic_drm_crtc_update_timings(priv, &state->mode);
|
||||||
|
priv->update_clk_rate = true;
|
||||||
|
}
|
||||||
|
|
||||||
clk_set_rate(priv->pix_clk, state->adjusted_mode.clock * 1000);
|
if (priv->update_clk_rate) {
|
||||||
|
mutex_lock(&priv->clk_mutex);
|
||||||
|
- clk_set_rate(priv->pix_clk, state->adjusted_mode.clock * 1000);
|
||||||
|
+ clk_set_rate(priv->pix_clk, crtc_state->adjusted_mode.clock * 1000);
|
||||||
|
priv->update_clk_rate = false;
|
||||||
|
mutex_unlock(&priv->clk_mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event) {
|
if (event) {
|
||||||
|
@ -662,7 +668,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-2-max
|
||||||
struct drm_device *dev = crtc->dev;
|
struct drm_device *dev = crtc->dev;
|
||||||
--- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c
|
--- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c
|
||||||
+++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c
|
+++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c
|
||||||
@@ -772,13 +772,13 @@ static int mdp5_crtc_atomic_check(struct
|
@@ -778,13 +778,13 @@ static int mdp5_crtc_atomic_check(struct
|
||||||
}
|
}
|
||||||
|
|
||||||
static void mdp5_crtc_atomic_begin(struct drm_crtc *crtc,
|
static void mdp5_crtc_atomic_begin(struct drm_crtc *crtc,
|
||||||
|
@ -776,7 +782,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201028123222.1732139-2-max
|
||||||
struct sti_mixer *mixer = to_sti_mixer(crtc);
|
struct sti_mixer *mixer = to_sti_mixer(crtc);
|
||||||
--- a/drivers/gpu/drm/stm/ltdc.c
|
--- a/drivers/gpu/drm/stm/ltdc.c
|
||||||
+++ b/drivers/gpu/drm/stm/ltdc.c
|
+++ b/drivers/gpu/drm/stm/ltdc.c
|
||||||
@@ -625,7 +625,7 @@ static void ltdc_crtc_mode_set_nofb(stru
|
@@ -629,7 +629,7 @@ static void ltdc_crtc_mode_set_nofb(stru
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ltdc_crtc_atomic_flush(struct drm_crtc *crtc,
|
static void ltdc_crtc_atomic_flush(struct drm_crtc *crtc,
|
||||||
|
|
|
@ -81,7 +81,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_txp.c
|
--- a/drivers/gpu/drm/vc4/vc4_txp.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_txp.c
|
+++ b/drivers/gpu/drm/vc4/vc4_txp.c
|
||||||
@@ -406,23 +406,19 @@ static int vc4_txp_atomic_check(struct d
|
@@ -412,23 +412,19 @@ static int vc4_txp_atomic_check(struct d
|
||||||
static void vc4_txp_atomic_enable(struct drm_crtc *crtc,
|
static void vc4_txp_atomic_enable(struct drm_crtc *crtc,
|
||||||
struct drm_atomic_state *state)
|
struct drm_atomic_state *state)
|
||||||
{
|
{
|
||||||
|
|
|
@ -157,7 +157,7 @@ Signed-off-by: Joerg Quinten <aBUGSworstnightmare@gmail.com>
|
||||||
static const struct drm_display_mode innolux_at070tn92_mode = {
|
static const struct drm_display_mode innolux_at070tn92_mode = {
|
||||||
.clock = 33333,
|
.clock = 33333,
|
||||||
.hdisplay = 800,
|
.hdisplay = 800,
|
||||||
@@ -4077,6 +4109,9 @@ static const struct of_device_id platfor
|
@@ -4078,6 +4110,9 @@ static const struct of_device_id platfor
|
||||||
.compatible = "innolux,at043tn24",
|
.compatible = "innolux,at043tn24",
|
||||||
.data = &innolux_at043tn24,
|
.data = &innolux_at043tn24,
|
||||||
}, {
|
}, {
|
||||||
|
|
|
@ -132,7 +132,7 @@ Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||||
+...
|
+...
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -16360,6 +16360,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
@@ -16362,6 +16362,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
||||||
L: linux-media@vger.kernel.org
|
L: linux-media@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
T: git git://linuxtv.org/media_tree.git
|
T: git git://linuxtv.org/media_tree.git
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
From 8f367667b69df3af3d5fa2695f14f97910beadfa Mon Sep 17 00:00:00 2001
|
|
||||||
From: Dom Cobley <popcornmix@gmail.com>
|
|
||||||
Date: Thu, 8 Jul 2021 13:48:11 +0100
|
|
||||||
Subject: [PATCH] bcm2711_thermal: Don't clamp temperature at zero
|
|
||||||
|
|
||||||
The temperature sensor is valid below zero and the linux framework is happy with it.
|
|
||||||
|
|
||||||
See: https://www.raspberrypi.org/forums/viewtopic.php?f=98&t=315382
|
|
||||||
Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
|
||||||
---
|
|
||||||
drivers/thermal/broadcom/bcm2711_thermal.c | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
--- a/drivers/thermal/broadcom/bcm2711_thermal.c
|
|
||||||
+++ b/drivers/thermal/broadcom/bcm2711_thermal.c
|
|
||||||
@@ -52,7 +52,7 @@ static int bcm2711_get_temp(void *data,
|
|
||||||
/* Convert a HW code to a temperature reading (millidegree celsius) */
|
|
||||||
t = slope * val + offset;
|
|
||||||
|
|
||||||
- *temp = t < 0 ? 0 : t;
|
|
||||||
+ *temp = t;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -31,7 +31,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||||
|
|
||||||
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
||||||
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
||||||
@@ -2039,6 +2039,9 @@ crtc_or_fake_commit(struct drm_atomic_st
|
@@ -2049,6 +2049,9 @@ crtc_or_fake_commit(struct drm_atomic_st
|
||||||
* should always call this function from their
|
* should always call this function from their
|
||||||
* &drm_mode_config_funcs.atomic_commit hook.
|
* &drm_mode_config_funcs.atomic_commit hook.
|
||||||
*
|
*
|
||||||
|
@ -41,7 +41,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||||
* To be able to use this support drivers need to use a few more helper
|
* To be able to use this support drivers need to use a few more helper
|
||||||
* functions. drm_atomic_helper_wait_for_dependencies() must be called before
|
* functions. drm_atomic_helper_wait_for_dependencies() must be called before
|
||||||
* actually committing the hardware state, and for nonblocking commits this call
|
* actually committing the hardware state, and for nonblocking commits this call
|
||||||
@@ -2082,8 +2085,11 @@ int drm_atomic_helper_setup_commit(struc
|
@@ -2092,8 +2095,11 @@ int drm_atomic_helper_setup_commit(struc
|
||||||
struct drm_plane *plane;
|
struct drm_plane *plane;
|
||||||
struct drm_plane_state *old_plane_state, *new_plane_state;
|
struct drm_plane_state *old_plane_state, *new_plane_state;
|
||||||
struct drm_crtc_commit *commit;
|
struct drm_crtc_commit *commit;
|
||||||
|
@ -53,7 +53,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||||
for_each_oldnew_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) {
|
for_each_oldnew_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) {
|
||||||
commit = kzalloc(sizeof(*commit), GFP_KERNEL);
|
commit = kzalloc(sizeof(*commit), GFP_KERNEL);
|
||||||
if (!commit)
|
if (!commit)
|
||||||
@@ -2160,6 +2166,9 @@ int drm_atomic_helper_setup_commit(struc
|
@@ -2170,6 +2176,9 @@ int drm_atomic_helper_setup_commit(struc
|
||||||
new_plane_state->commit = drm_crtc_commit_get(commit);
|
new_plane_state->commit = drm_crtc_commit_get(commit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -76,7 +76,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201215154243.540115-2-maxi
|
||||||
dlist_count++; /* Account for SCALER_CTL0_END. */
|
dlist_count++; /* Account for SCALER_CTL0_END. */
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_txp.c
|
--- a/drivers/gpu/drm/vc4/vc4_txp.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_txp.c
|
+++ b/drivers/gpu/drm/vc4/vc4_txp.c
|
||||||
@@ -393,7 +393,7 @@ static int vc4_txp_atomic_check(struct d
|
@@ -399,7 +399,7 @@ static int vc4_txp_atomic_check(struct d
|
||||||
struct vc4_crtc_state *vc4_state = to_vc4_crtc_state(crtc_state);
|
struct vc4_crtc_state *vc4_state = to_vc4_crtc_state(crtc_state);
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
|
|
@ -62,7 +62,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201211114237.213288-2-tomi
|
||||||
.page_flip = drm_atomic_helper_page_flip,
|
.page_flip = drm_atomic_helper_page_flip,
|
||||||
--- a/drivers/gpu/drm/arm/malidp_crtc.c
|
--- a/drivers/gpu/drm/arm/malidp_crtc.c
|
||||||
+++ b/drivers/gpu/drm/arm/malidp_crtc.c
|
+++ b/drivers/gpu/drm/arm/malidp_crtc.c
|
||||||
@@ -510,7 +510,6 @@ static void malidp_crtc_disable_vblank(s
|
@@ -513,7 +513,6 @@ static void malidp_crtc_disable_vblank(s
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct drm_crtc_funcs malidp_crtc_funcs = {
|
static const struct drm_crtc_funcs malidp_crtc_funcs = {
|
||||||
|
@ -102,7 +102,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201211114237.213288-2-tomi
|
||||||
int atmel_hlcdc_crtc_create(struct drm_device *dev)
|
int atmel_hlcdc_crtc_create(struct drm_device *dev)
|
||||||
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
||||||
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
||||||
@@ -3500,76 +3500,6 @@ fail:
|
@@ -3510,76 +3510,6 @@ fail:
|
||||||
EXPORT_SYMBOL(drm_atomic_helper_page_flip_target);
|
EXPORT_SYMBOL(drm_atomic_helper_page_flip_target);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -346,7 +346,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201211114237.213288-2-tomi
|
||||||
.page_flip = drm_atomic_helper_page_flip, \
|
.page_flip = drm_atomic_helper_page_flip, \
|
||||||
--- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
--- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
||||||
+++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
+++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c
|
||||||
@@ -647,8 +647,6 @@ static const struct drm_crtc_funcs ingen
|
@@ -692,8 +692,6 @@ static const struct drm_crtc_funcs ingen
|
||||||
|
|
||||||
.enable_vblank = ingenic_drm_enable_vblank,
|
.enable_vblank = ingenic_drm_enable_vblank,
|
||||||
.disable_vblank = ingenic_drm_disable_vblank,
|
.disable_vblank = ingenic_drm_disable_vblank,
|
||||||
|
@ -415,7 +415,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201211114237.213288-2-tomi
|
||||||
static void vop_fb_unref_worker(struct drm_flip_work *work, void *val)
|
static void vop_fb_unref_worker(struct drm_flip_work *work, void *val)
|
||||||
--- a/drivers/gpu/drm/stm/ltdc.c
|
--- a/drivers/gpu/drm/stm/ltdc.c
|
||||||
+++ b/drivers/gpu/drm/stm/ltdc.c
|
+++ b/drivers/gpu/drm/stm/ltdc.c
|
||||||
@@ -742,7 +742,6 @@ static const struct drm_crtc_funcs ltdc_
|
@@ -746,7 +746,6 @@ static const struct drm_crtc_funcs ltdc_
|
||||||
.enable_vblank = ltdc_crtc_enable_vblank,
|
.enable_vblank = ltdc_crtc_enable_vblank,
|
||||||
.disable_vblank = ltdc_crtc_disable_vblank,
|
.disable_vblank = ltdc_crtc_disable_vblank,
|
||||||
.get_vblank_timestamp = drm_crtc_vblank_helper_get_vblank_timestamp,
|
.get_vblank_timestamp = drm_crtc_vblank_helper_get_vblank_timestamp,
|
||||||
|
@ -435,7 +435,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201211114237.213288-2-tomi
|
||||||
.get_vblank_timestamp = drm_crtc_vblank_helper_get_vblank_timestamp,
|
.get_vblank_timestamp = drm_crtc_vblank_helper_get_vblank_timestamp,
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_txp.c
|
--- a/drivers/gpu/drm/vc4/vc4_txp.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_txp.c
|
+++ b/drivers/gpu/drm/vc4/vc4_txp.c
|
||||||
@@ -380,7 +380,6 @@ static const struct drm_crtc_funcs vc4_t
|
@@ -386,7 +386,6 @@ static const struct drm_crtc_funcs vc4_t
|
||||||
.reset = vc4_crtc_reset,
|
.reset = vc4_crtc_reset,
|
||||||
.atomic_duplicate_state = vc4_crtc_duplicate_state,
|
.atomic_duplicate_state = vc4_crtc_duplicate_state,
|
||||||
.atomic_destroy_state = vc4_crtc_destroy_state,
|
.atomic_destroy_state = vc4_crtc_destroy_state,
|
||||||
|
|
|
@ -224,7 +224,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201118094758.506730-1-maxi
|
||||||
else if (funcs->best_encoder)
|
else if (funcs->best_encoder)
|
||||||
new_encoder = funcs->best_encoder(connector);
|
new_encoder = funcs->best_encoder(connector);
|
||||||
else
|
else
|
||||||
@@ -1318,7 +1318,7 @@ static void drm_atomic_helper_commit_wri
|
@@ -1328,7 +1328,7 @@ static void drm_atomic_helper_commit_wri
|
||||||
|
|
||||||
if (new_conn_state->writeback_job && new_conn_state->writeback_job->fb) {
|
if (new_conn_state->writeback_job && new_conn_state->writeback_job->fb) {
|
||||||
WARN_ON(connector->connector_type != DRM_MODE_CONNECTOR_WRITEBACK);
|
WARN_ON(connector->connector_type != DRM_MODE_CONNECTOR_WRITEBACK);
|
||||||
|
|
|
@ -77,7 +77,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||||
|
|
||||||
#include "mtdcore.h"
|
#include "mtdcore.h"
|
||||||
|
|
||||||
@@ -851,6 +852,8 @@ int mtd_device_parse_register(struct mtd
|
@@ -861,6 +862,8 @@ int mtd_device_parse_register(struct mtd
|
||||||
register_reboot_notifier(&mtd->reboot_notifier);
|
register_reboot_notifier(&mtd->reboot_notifier);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||||
#include <linux/nvmem-provider.h>
|
#include <linux/nvmem-provider.h>
|
||||||
|
|
||||||
#include <linux/mtd/mtd.h>
|
#include <linux/mtd/mtd.h>
|
||||||
@@ -694,6 +695,19 @@ int add_mtd_device(struct mtd_info *mtd)
|
@@ -704,6 +705,19 @@ int add_mtd_device(struct mtd_info *mtd)
|
||||||
of this try_ nonsense, and no bitching about it
|
of this try_ nonsense, and no bitching about it
|
||||||
either. :) */
|
either. :) */
|
||||||
__module_get(THIS_MODULE);
|
__module_get(THIS_MODULE);
|
||||||
|
|
|
@ -39,7 +39,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
endif # MTD_SPI_NOR
|
endif # MTD_SPI_NOR
|
||||||
--- a/drivers/mtd/spi-nor/core.c
|
--- a/drivers/mtd/spi-nor/core.c
|
||||||
+++ b/drivers/mtd/spi-nor/core.c
|
+++ b/drivers/mtd/spi-nor/core.c
|
||||||
@@ -2801,6 +2801,21 @@ static void spi_nor_info_init_params(str
|
@@ -2802,6 +2802,21 @@ static void spi_nor_info_init_params(str
|
||||||
*/
|
*/
|
||||||
erase_mask = 0;
|
erase_mask = 0;
|
||||||
i = 0;
|
i = 0;
|
||||||
|
@ -61,7 +61,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
if (info->flags & SECT_4K_PMC) {
|
if (info->flags & SECT_4K_PMC) {
|
||||||
erase_mask |= BIT(i);
|
erase_mask |= BIT(i);
|
||||||
spi_nor_set_erase_type(&map->erase_type[i], 4096u,
|
spi_nor_set_erase_type(&map->erase_type[i], 4096u,
|
||||||
@@ -2812,6 +2827,7 @@ static void spi_nor_info_init_params(str
|
@@ -2813,6 +2828,7 @@ static void spi_nor_info_init_params(str
|
||||||
SPINOR_OP_BE_4K);
|
SPINOR_OP_BE_4K);
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,7 +17,7 @@ Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||||
|
|
||||||
--- a/drivers/mtd/mtdcore.c
|
--- a/drivers/mtd/mtdcore.c
|
||||||
+++ b/drivers/mtd/mtdcore.c
|
+++ b/drivers/mtd/mtdcore.c
|
||||||
@@ -1046,6 +1046,44 @@ out_unlock:
|
@@ -1056,6 +1056,44 @@ out_unlock:
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(get_mtd_device_nm);
|
EXPORT_SYMBOL_GPL(get_mtd_device_nm);
|
||||||
|
|
||||||
|
|
|
@ -40,7 +40,7 @@ Signed-off-by: Robert Marko <robert.marko@sartura.hr>
|
||||||
help
|
help
|
||||||
--- a/drivers/net/phy/Makefile
|
--- a/drivers/net/phy/Makefile
|
||||||
+++ b/drivers/net/phy/Makefile
|
+++ b/drivers/net/phy/Makefile
|
||||||
@@ -88,6 +88,7 @@ obj-$(CONFIG_MICROSEMI_PHY) += mscc/
|
@@ -86,6 +86,7 @@ obj-$(CONFIG_MICROSEMI_PHY) += mscc/
|
||||||
obj-$(CONFIG_NATIONAL_PHY) += national.o
|
obj-$(CONFIG_NATIONAL_PHY) += national.o
|
||||||
obj-$(CONFIG_NXP_TJA11XX_PHY) += nxp-tja11xx.o
|
obj-$(CONFIG_NXP_TJA11XX_PHY) += nxp-tja11xx.o
|
||||||
obj-$(CONFIG_QSEMI_PHY) += qsemi.o
|
obj-$(CONFIG_QSEMI_PHY) += qsemi.o
|
||||||
|
|
|
@ -10,7 +10,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
||||||
|
|
||||||
--- a/drivers/mtd/spi-nor/core.c
|
--- a/drivers/mtd/spi-nor/core.c
|
||||||
+++ b/drivers/mtd/spi-nor/core.c
|
+++ b/drivers/mtd/spi-nor/core.c
|
||||||
@@ -3156,6 +3156,7 @@ int spi_nor_scan(struct spi_nor *nor, co
|
@@ -3157,6 +3157,7 @@ int spi_nor_scan(struct spi_nor *nor, co
|
||||||
struct device *dev = nor->dev;
|
struct device *dev = nor->dev;
|
||||||
struct mtd_info *mtd = &nor->mtd;
|
struct mtd_info *mtd = &nor->mtd;
|
||||||
struct device_node *np = spi_nor_get_flash_node(nor);
|
struct device_node *np = spi_nor_get_flash_node(nor);
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
||||||
int ret;
|
int ret;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
@@ -3210,7 +3211,12 @@ int spi_nor_scan(struct spi_nor *nor, co
|
@@ -3211,7 +3212,12 @@ int spi_nor_scan(struct spi_nor *nor, co
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
||||||
mtd->type = MTD_NORFLASH;
|
mtd->type = MTD_NORFLASH;
|
||||||
--- a/drivers/mtd/mtdcore.c
|
--- a/drivers/mtd/mtdcore.c
|
||||||
+++ b/drivers/mtd/mtdcore.c
|
+++ b/drivers/mtd/mtdcore.c
|
||||||
@@ -778,6 +778,17 @@ out_error:
|
@@ -788,6 +788,17 @@ out_error:
|
||||||
*/
|
*/
|
||||||
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
||||||
{
|
{
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
help
|
help
|
||||||
--- a/drivers/net/phy/Makefile
|
--- a/drivers/net/phy/Makefile
|
||||||
+++ b/drivers/net/phy/Makefile
|
+++ b/drivers/net/phy/Makefile
|
||||||
@@ -89,6 +89,7 @@ obj-$(CONFIG_NATIONAL_PHY) += national.o
|
@@ -87,6 +87,7 @@ obj-$(CONFIG_NATIONAL_PHY) += national.o
|
||||||
obj-$(CONFIG_NXP_TJA11XX_PHY) += nxp-tja11xx.o
|
obj-$(CONFIG_NXP_TJA11XX_PHY) += nxp-tja11xx.o
|
||||||
obj-$(CONFIG_QSEMI_PHY) += qsemi.o
|
obj-$(CONFIG_QSEMI_PHY) += qsemi.o
|
||||||
obj-$(CONFIG_REALTEK_PHY) += realtek.o
|
obj-$(CONFIG_REALTEK_PHY) += realtek.o
|
||||||
|
|
Loading…
Reference in a new issue