kernel: bump 5.4 to 5.4.69

Seemingly unneeded based on new upstream code so manually deleted:
 layerscape:
  820-usb-0007-usb-dwc3-gadget-increase-timeout-value-for-send-ep-c.patch

Manually merged:
 generic-hack:
  251-sound_kconfig.patch

All other modifications made by update_kernel.sh

Build system: x86_64
Build-tested: ipq806x/R7800, ath79/generic, bcm27xx/bcm2711
Run-tested: ipq806x/R7800, lantiq/Easybox 904 xDSL

No dmesg regressions, everything functional

Signed-off-by: John Audia <graysky@archlinux.us>
[add lantiq test report, minor commit message clarification]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit is contained in:
John Audia 2020-10-01 09:22:00 -04:00 committed by Adrian Schmutzler
parent 2d72671b6e
commit d6a9a92e32
71 changed files with 177 additions and 203 deletions

View File

@ -7,10 +7,10 @@ ifdef CONFIG_TESTING_KERNEL
endif
LINUX_VERSION-4.19 = .138
LINUX_VERSION-5.4 = .68
LINUX_VERSION-5.4 = .69
LINUX_KERNEL_HASH-4.19.138 = d15c27d05f6c527269b75b30cc72972748e55720e7e00ad8abbaa4fe3b1d5e02
LINUX_KERNEL_HASH-5.4.68 = 0e93876c5ae8dc0c55cbe631971a46ab02b90cf7461fed3085703a5e4e3cd6dd
LINUX_KERNEL_HASH-5.4.69 = a8b31d716b397303a183e42ad525ff2871024a43e3ea530d0fdf73b7f9d27da7
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))

View File

@ -402,7 +402,7 @@ Cc: linux-rockchip@lists.infradead.org
}
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -2278,6 +2278,7 @@ struct irq_domain;
@@ -2277,6 +2277,7 @@ struct irq_domain;
struct irq_domain *pci_host_bridge_of_msi_domain(struct pci_bus *bus);
int pci_parse_request_of_pci_ranges(struct device *dev,
struct list_head *resources,
@ -410,7 +410,7 @@ Cc: linux-rockchip@lists.infradead.org
struct resource **bus_range);
/* Arch may override this (weak) */
@@ -2286,9 +2287,11 @@ struct device_node *pcibios_get_phb_of_n
@@ -2285,9 +2286,11 @@ struct device_node *pcibios_get_phb_of_n
#else /* CONFIG_OF */
static inline struct irq_domain *
pci_host_bridge_of_msi_domain(struct pci_bus *bus) { return NULL; }

View File

@ -38,7 +38,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
VC4_ENCODER_TYPE_DSI1,
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1319,7 +1319,7 @@ static int vc4_hdmi_bind(struct device *
@@ -1320,7 +1320,7 @@ static int vc4_hdmi_bind(struct device *
GFP_KERNEL);
if (!vc4_hdmi_encoder)
return -ENOMEM;

View File

@ -180,7 +180,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
return 0;
}
@@ -1230,7 +1229,7 @@ static int vc4_hdmi_bind(struct device *
@@ -1231,7 +1230,7 @@ static int vc4_hdmi_bind(struct device *
struct drm_device *drm = dev_get_drvdata(master);
struct vc4_dev *vc4 = drm->dev_private;
struct vc4_hdmi *hdmi;
@ -189,7 +189,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
struct device_node *ddc_node;
u32 value;
int ret;
@@ -1239,14 +1238,10 @@ static int vc4_hdmi_bind(struct device *
@@ -1240,14 +1239,10 @@ static int vc4_hdmi_bind(struct device *
if (!hdmi)
return -ENOMEM;
@ -207,7 +207,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
hdmi->hdmicore_regs = vc4_ioremap_regs(pdev, 0);
if (IS_ERR(hdmi->hdmicore_regs))
return PTR_ERR(hdmi->hdmicore_regs);
@@ -1332,15 +1327,14 @@ static int vc4_hdmi_bind(struct device *
@@ -1333,15 +1328,14 @@ static int vc4_hdmi_bind(struct device *
}
pm_runtime_enable(dev);
@ -228,7 +228,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
#ifdef CONFIG_DRM_VC4_HDMI_CEC
hdmi->cec_adap = cec_allocate_adapter(&vc4_hdmi_cec_adap_ops,
vc4, "vc4",
@@ -1350,7 +1344,7 @@ static int vc4_hdmi_bind(struct device *
@@ -1351,7 +1345,7 @@ static int vc4_hdmi_bind(struct device *
if (ret < 0)
goto err_destroy_conn;
@ -237,7 +237,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
cec_s_conn_info(hdmi->cec_adap, &conn_info);
HDMI_WRITE(VC4_HDMI_CPU_MASK_SET, 0xffffffff);
@@ -1387,10 +1381,10 @@ static int vc4_hdmi_bind(struct device *
@@ -1388,10 +1382,10 @@ static int vc4_hdmi_bind(struct device *
err_delete_cec_adap:
cec_delete_adapter(hdmi->cec_adap);
err_destroy_conn:
@ -250,7 +250,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
err_unprepare_hsm:
clk_disable_unprepare(hdmi->hsm_clock);
pm_runtime_disable(dev);
@@ -1408,8 +1402,8 @@ static void vc4_hdmi_unbind(struct devic
@@ -1409,8 +1403,8 @@ static void vc4_hdmi_unbind(struct devic
struct vc4_hdmi *hdmi = vc4->hdmi;
cec_unregister_adapter(hdmi->cec_adap);

View File

@ -401,7 +401,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
dai_link->num_cpus = 1;
dai_link->num_codecs = 1;
@@ -1058,7 +1058,7 @@ static int vc4_hdmi_audio_init(struct vc
@@ -1059,7 +1059,7 @@ static int vc4_hdmi_audio_init(struct vc
* now stored in card->drvdata and should be retrieved with
* snd_soc_card_get_drvdata() if needed.
*/
@ -410,7 +410,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
ret = devm_snd_soc_register_card(dev, card);
if (ret)
dev_err(dev, "Could not register sound card: %d\n", ret);
@@ -1071,20 +1071,21 @@ static int vc4_hdmi_audio_init(struct vc
@@ -1072,20 +1072,21 @@ static int vc4_hdmi_audio_init(struct vc
static irqreturn_t vc4_cec_irq_handler_thread(int irq, void *priv)
{
struct vc4_dev *vc4 = priv;
@ -439,7 +439,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
0, 2, 0, 0);
}
return IRQ_HANDLED;
@@ -1110,23 +1111,23 @@ static void vc4_cec_read_msg(struct vc4_
@@ -1111,23 +1112,23 @@ static void vc4_cec_read_msg(struct vc4_
static irqreturn_t vc4_cec_irq_handler(int irq, void *priv)
{
struct vc4_dev *vc4 = priv;
@ -468,7 +468,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
cntrl1 &= ~VC4_HDMI_CEC_START_XMIT_BEGIN;
}
HDMI_WRITE(VC4_HDMI_CEC_CNTRL_1, cntrl1);
@@ -1228,44 +1229,44 @@ static int vc4_hdmi_bind(struct device *
@@ -1229,44 +1230,44 @@ static int vc4_hdmi_bind(struct device *
struct platform_device *pdev = to_platform_device(dev);
struct drm_device *drm = dev_get_drvdata(master);
struct vc4_dev *vc4 = drm->dev_private;
@ -538,7 +538,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
}
ddc_node = of_parse_phandle(dev->of_node, "ddc", 0);
@@ -1274,9 +1275,9 @@ static int vc4_hdmi_bind(struct device *
@@ -1275,9 +1276,9 @@ static int vc4_hdmi_bind(struct device *
return -ENODEV;
}
@ -550,7 +550,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
DRM_DEBUG("Failed to get ddc i2c adapter by node\n");
return -EPROBE_DEFER;
}
@@ -1285,13 +1286,13 @@ static int vc4_hdmi_bind(struct device *
@@ -1286,13 +1287,13 @@ static int vc4_hdmi_bind(struct device *
* needs to be a bit higher than the pixel clock rate
* (generally 148.5Mhz).
*/
@ -566,7 +566,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
if (ret) {
DRM_ERROR("Failed to turn on HDMI state machine clock: %d\n",
ret);
@@ -1304,18 +1305,18 @@ static int vc4_hdmi_bind(struct device *
@@ -1305,18 +1306,18 @@ static int vc4_hdmi_bind(struct device *
if (of_find_property(dev->of_node, "hpd-gpios", &value)) {
enum of_gpio_flags hpd_gpio_flags;
@ -590,7 +590,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
/* HDMI core must be enabled. */
if (!(HD_READ(VC4_HD_M_CTL) & VC4_HD_M_ENABLE)) {
@@ -1331,21 +1332,21 @@ static int vc4_hdmi_bind(struct device *
@@ -1332,21 +1333,21 @@ static int vc4_hdmi_bind(struct device *
DRM_MODE_ENCODER_TMDS, NULL);
drm_encoder_helper_add(encoder, &vc4_hdmi_encoder_helper_funcs);
@ -617,7 +617,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
HDMI_WRITE(VC4_HDMI_CPU_MASK_SET, 0xffffffff);
value = HDMI_READ(VC4_HDMI_CEC_CNTRL_1);
@@ -1364,32 +1365,32 @@ static int vc4_hdmi_bind(struct device *
@@ -1365,32 +1366,32 @@ static int vc4_hdmi_bind(struct device *
"vc4 hdmi cec", vc4);
if (ret)
goto err_delete_cec_adap;
@ -657,7 +657,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
return ret;
}
@@ -1399,16 +1400,16 @@ static void vc4_hdmi_unbind(struct devic
@@ -1400,16 +1401,16 @@ static void vc4_hdmi_unbind(struct devic
{
struct drm_device *drm = dev_get_drvdata(master);
struct vc4_dev *vc4 = drm->dev_private;

View File

@ -100,7 +100,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
switch (cmd) {
case SNDRV_PCM_TRIGGER_START:
@@ -1093,7 +1083,8 @@ static irqreturn_t vc4_cec_irq_handler_t
@@ -1094,7 +1084,8 @@ static irqreturn_t vc4_cec_irq_handler_t
static void vc4_cec_read_msg(struct vc4_dev *vc4, u32 cntrl1)
{
@ -110,7 +110,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
unsigned int i;
msg->len = 1 + ((cntrl1 & VC4_HDMI_CEC_REC_WRD_CNT_MASK) >>
@@ -1139,6 +1130,7 @@ static irqreturn_t vc4_cec_irq_handler(i
@@ -1140,6 +1131,7 @@ static irqreturn_t vc4_cec_irq_handler(i
static int vc4_hdmi_cec_adap_enable(struct cec_adapter *adap, bool enable)
{
struct vc4_dev *vc4 = cec_get_drvdata(adap);
@ -118,7 +118,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
/* clock period in microseconds */
const u32 usecs = 1000000 / CEC_CLOCK_FREQ;
u32 val = HDMI_READ(VC4_HDMI_CEC_CNTRL_5);
@@ -1182,6 +1174,7 @@ static int vc4_hdmi_cec_adap_enable(stru
@@ -1183,6 +1175,7 @@ static int vc4_hdmi_cec_adap_enable(stru
static int vc4_hdmi_cec_adap_log_addr(struct cec_adapter *adap, u8 log_addr)
{
struct vc4_dev *vc4 = cec_get_drvdata(adap);
@ -126,7 +126,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
HDMI_WRITE(VC4_HDMI_CEC_CNTRL_1,
(HDMI_READ(VC4_HDMI_CEC_CNTRL_1) & ~VC4_HDMI_CEC_ADDR_MASK) |
@@ -1193,6 +1186,7 @@ static int vc4_hdmi_cec_adap_transmit(st
@@ -1194,6 +1187,7 @@ static int vc4_hdmi_cec_adap_transmit(st
u32 signal_free_time, struct cec_msg *msg)
{
struct vc4_dev *vc4 = cec_get_drvdata(adap);

View File

@ -17,7 +17,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1043,8 +1043,7 @@ static int vc4_hdmi_audio_init(struct vc
@@ -1044,8 +1044,7 @@ static int vc4_hdmi_audio_init(struct vc
#ifdef CONFIG_DRM_VC4_HDMI_CEC
static irqreturn_t vc4_cec_irq_handler_thread(int irq, void *priv)
{
@ -27,7 +27,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
if (vc4_hdmi->cec_irq_was_rx) {
if (vc4_hdmi->cec_rx_msg.len)
@@ -1064,9 +1063,8 @@ static irqreturn_t vc4_cec_irq_handler_t
@@ -1065,9 +1064,8 @@ static irqreturn_t vc4_cec_irq_handler_t
return IRQ_HANDLED;
}
@ -38,7 +38,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
struct cec_msg *msg = &vc4_hdmi->cec_rx_msg;
unsigned int i;
@@ -1084,8 +1082,7 @@ static void vc4_cec_read_msg(struct vc4_
@@ -1085,8 +1083,7 @@ static void vc4_cec_read_msg(struct vc4_
static irqreturn_t vc4_cec_irq_handler(int irq, void *priv)
{
@ -48,7 +48,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
u32 stat = HDMI_READ(VC4_HDMI_CPU_STATUS);
u32 cntrl1, cntrl5;
@@ -1096,7 +1093,7 @@ static irqreturn_t vc4_cec_irq_handler(i
@@ -1097,7 +1094,7 @@ static irqreturn_t vc4_cec_irq_handler(i
cntrl5 = HDMI_READ(VC4_HDMI_CEC_CNTRL_5);
vc4_hdmi->cec_irq_was_rx = cntrl5 & VC4_HDMI_CEC_RX_CEC_INT;
if (vc4_hdmi->cec_irq_was_rx) {
@ -57,7 +57,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
cntrl1 |= VC4_HDMI_CEC_CLEAR_RECEIVE_OFF;
HDMI_WRITE(VC4_HDMI_CEC_CNTRL_1, cntrl1);
cntrl1 &= ~VC4_HDMI_CEC_CLEAR_RECEIVE_OFF;
@@ -1112,8 +1109,7 @@ static irqreturn_t vc4_cec_irq_handler(i
@@ -1113,8 +1110,7 @@ static irqreturn_t vc4_cec_irq_handler(i
static int vc4_hdmi_cec_adap_enable(struct cec_adapter *adap, bool enable)
{
@ -67,7 +67,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
/* clock period in microseconds */
const u32 usecs = 1000000 / CEC_CLOCK_FREQ;
u32 val = HDMI_READ(VC4_HDMI_CEC_CNTRL_5);
@@ -1156,8 +1152,7 @@ static int vc4_hdmi_cec_adap_enable(stru
@@ -1157,8 +1153,7 @@ static int vc4_hdmi_cec_adap_enable(stru
static int vc4_hdmi_cec_adap_log_addr(struct cec_adapter *adap, u8 log_addr)
{
@ -77,7 +77,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
HDMI_WRITE(VC4_HDMI_CEC_CNTRL_1,
(HDMI_READ(VC4_HDMI_CEC_CNTRL_1) & ~VC4_HDMI_CEC_ADDR_MASK) |
@@ -1168,8 +1163,7 @@ static int vc4_hdmi_cec_adap_log_addr(st
@@ -1169,8 +1164,7 @@ static int vc4_hdmi_cec_adap_log_addr(st
static int vc4_hdmi_cec_adap_transmit(struct cec_adapter *adap, u8 attempts,
u32 signal_free_time, struct cec_msg *msg)
{
@ -87,7 +87,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
u32 val;
unsigned int i;
@@ -1315,7 +1309,7 @@ static int vc4_hdmi_bind(struct device *
@@ -1316,7 +1310,7 @@ static int vc4_hdmi_bind(struct device *
#ifdef CONFIG_DRM_VC4_HDMI_CEC
vc4_hdmi->cec_adap = cec_allocate_adapter(&vc4_hdmi_cec_adap_ops,
@ -96,7 +96,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
CEC_CAP_DEFAULTS |
CEC_CAP_CONNECTOR_INFO, 1);
ret = PTR_ERR_OR_ZERO(vc4_hdmi->cec_adap);
@@ -1339,7 +1333,7 @@ static int vc4_hdmi_bind(struct device *
@@ -1340,7 +1334,7 @@ static int vc4_hdmi_bind(struct device *
ret = devm_request_threaded_irq(dev, platform_get_irq(pdev, 0),
vc4_cec_irq_handler,
vc4_cec_irq_handler_thread, 0,

View File

@ -23,7 +23,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
struct vc4_dpi *dpi;
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1199,7 +1199,6 @@ static int vc4_hdmi_bind(struct device *
@@ -1200,7 +1200,6 @@ static int vc4_hdmi_bind(struct device *
#endif
struct platform_device *pdev = to_platform_device(dev);
struct drm_device *drm = dev_get_drvdata(master);
@ -31,7 +31,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
struct vc4_hdmi *vc4_hdmi;
struct drm_encoder *encoder;
struct device_node *ddc_node;
@@ -1287,8 +1286,6 @@ static int vc4_hdmi_bind(struct device *
@@ -1288,8 +1287,6 @@ static int vc4_hdmi_bind(struct device *
vc4_hdmi->hpd_active_low = hpd_gpio_flags & OF_GPIO_ACTIVE_LOW;
}
@ -40,7 +40,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
/* HDMI core must be enabled. */
if (!(HD_READ(VC4_HD_M_CTL) & VC4_HD_M_ENABLE)) {
HD_WRITE(VC4_HD_M_CTL, VC4_HD_M_SW_RST);
@@ -1369,9 +1366,12 @@ err_put_i2c:
@@ -1370,9 +1367,12 @@ err_put_i2c:
static void vc4_hdmi_unbind(struct device *dev, struct device *master,
void *data)
{
@ -56,7 +56,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
cec_unregister_adapter(vc4_hdmi->cec_adap);
vc4_hdmi_connector_destroy(&vc4_hdmi->connector.base);
@@ -1381,8 +1381,6 @@ static void vc4_hdmi_unbind(struct devic
@@ -1382,8 +1382,6 @@ static void vc4_hdmi_unbind(struct devic
pm_runtime_disable(dev);
put_device(&vc4_hdmi->ddc->dev);

View File

@ -66,7 +66,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
memcpy(ucontrol->value.bytes.data, connector->eld,
sizeof(connector->eld));
@@ -1313,7 +1310,7 @@ static int vc4_hdmi_bind(struct device *
@@ -1314,7 +1311,7 @@ static int vc4_hdmi_bind(struct device *
if (ret < 0)
goto err_destroy_conn;
@ -75,7 +75,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
cec_s_conn_info(vc4_hdmi->cec_adap, &conn_info);
HDMI_WRITE(VC4_HDMI_CPU_MASK_SET, 0xffffffff);
@@ -1350,7 +1347,7 @@ static int vc4_hdmi_bind(struct device *
@@ -1351,7 +1348,7 @@ static int vc4_hdmi_bind(struct device *
err_delete_cec_adap:
cec_delete_adapter(vc4_hdmi->cec_adap);
err_destroy_conn:
@ -84,7 +84,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
#endif
err_destroy_encoder:
vc4_hdmi_encoder_destroy(encoder);
@@ -1374,7 +1371,7 @@ static void vc4_hdmi_unbind(struct devic
@@ -1375,7 +1372,7 @@ static void vc4_hdmi_unbind(struct devic
struct vc4_hdmi *vc4_hdmi = snd_soc_card_get_drvdata(card);
cec_unregister_adapter(vc4_hdmi->cec_adap);

View File

@ -18,7 +18,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1189,38 +1189,23 @@ static const struct cec_adap_ops vc4_hdm
@@ -1190,38 +1190,23 @@ static const struct cec_adap_ops vc4_hdm
};
#endif
@ -64,7 +64,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
vc4_hdmi->hd_regset.base = vc4_hdmi->hd_regs;
vc4_hdmi->hd_regset.regs = hd_regs;
vc4_hdmi->hd_regset.nregs = ARRAY_SIZE(hd_regs);
@@ -1230,12 +1215,44 @@ static int vc4_hdmi_bind(struct device *
@@ -1231,12 +1216,44 @@ static int vc4_hdmi_bind(struct device *
DRM_ERROR("Failed to get pixel clock\n");
return PTR_ERR(vc4_hdmi->pixel_clock);
}
@ -109,7 +109,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
ddc_node = of_parse_phandle(dev->of_node, "ddc", 0);
if (!ddc_node) {
DRM_ERROR("Failed to find ddc node in device tree\n");
@@ -1396,8 +1413,12 @@ static int vc4_hdmi_dev_remove(struct pl
@@ -1397,8 +1414,12 @@ static int vc4_hdmi_dev_remove(struct pl
return 0;
}

View File

@ -525,7 +525,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
vc4_hdmi->audio.dma_data.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES;
vc4_hdmi->audio.dma_data.maxburst = 2;
@@ -1068,7 +1031,7 @@ static void vc4_cec_read_msg(struct vc4_
@@ -1069,7 +1032,7 @@ static void vc4_cec_read_msg(struct vc4_
msg->len = 1 + ((cntrl1 & VC4_HDMI_CEC_REC_WRD_CNT_MASK) >>
VC4_HDMI_CEC_REC_WRD_CNT_SHIFT);
for (i = 0; i < msg->len; i += 4) {
@ -534,7 +534,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
msg->msg[i] = val & 0xff;
msg->msg[i + 1] = (val >> 8) & 0xff;
@@ -1080,26 +1043,26 @@ static void vc4_cec_read_msg(struct vc4_
@@ -1081,26 +1044,26 @@ static void vc4_cec_read_msg(struct vc4_
static irqreturn_t vc4_cec_irq_handler(int irq, void *priv)
{
struct vc4_hdmi *vc4_hdmi = priv;
@ -567,7 +567,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
return IRQ_WAKE_THREAD;
}
@@ -1109,7 +1072,7 @@ static int vc4_hdmi_cec_adap_enable(stru
@@ -1110,7 +1073,7 @@ static int vc4_hdmi_cec_adap_enable(stru
struct vc4_hdmi *vc4_hdmi = cec_get_drvdata(adap);
/* clock period in microseconds */
const u32 usecs = 1000000 / CEC_CLOCK_FREQ;
@ -576,7 +576,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
val &= ~(VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET |
VC4_HDMI_CEC_CNT_TO_4700_US_MASK |
@@ -1118,30 +1081,30 @@ static int vc4_hdmi_cec_adap_enable(stru
@@ -1119,30 +1082,30 @@ static int vc4_hdmi_cec_adap_enable(stru
((4500 / usecs) << VC4_HDMI_CEC_CNT_TO_4500_US_SHIFT);
if (enable) {
@ -615,7 +615,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET);
}
return 0;
@@ -1151,8 +1114,8 @@ static int vc4_hdmi_cec_adap_log_addr(st
@@ -1152,8 +1115,8 @@ static int vc4_hdmi_cec_adap_log_addr(st
{
struct vc4_hdmi *vc4_hdmi = cec_get_drvdata(adap);
@ -626,7 +626,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
(log_addr & 0xf) << VC4_HDMI_CEC_ADDR_SHIFT);
return 0;
}
@@ -1165,20 +1128,20 @@ static int vc4_hdmi_cec_adap_transmit(st
@@ -1166,20 +1129,20 @@ static int vc4_hdmi_cec_adap_transmit(st
unsigned int i;
for (i = 0; i < msg->len; i += 4)
@ -651,7 +651,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
return 0;
}
@@ -1189,26 +1152,63 @@ static const struct cec_adap_ops vc4_hdm
@@ -1190,26 +1153,63 @@ static const struct cec_adap_ops vc4_hdm
};
#endif
@ -721,7 +721,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
vc4_hdmi->pixel_clock = devm_clk_get(dev, "pixel");
if (IS_ERR(vc4_hdmi->pixel_clock)) {
@@ -1301,12 +1301,12 @@ static int vc4_hdmi_bind(struct device *
@@ -1302,12 +1302,12 @@ static int vc4_hdmi_bind(struct device *
}
/* HDMI core must be enabled. */
@ -738,7 +738,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
}
pm_runtime_enable(dev);
@@ -1330,8 +1330,8 @@ static int vc4_hdmi_bind(struct device *
@@ -1331,8 +1331,8 @@ static int vc4_hdmi_bind(struct device *
cec_fill_conn_info_from_drm(&conn_info, &vc4_hdmi->connector);
cec_s_conn_info(vc4_hdmi->cec_adap, &conn_info);
@ -749,7 +749,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
value &= ~VC4_HDMI_CEC_DIV_CLK_CNT_MASK;
/*
* Set the logical address to Unregistered and set the clock
@@ -1340,7 +1340,7 @@ static int vc4_hdmi_bind(struct device *
@@ -1341,7 +1341,7 @@ static int vc4_hdmi_bind(struct device *
*/
value |= VC4_HDMI_CEC_ADDR_MASK |
(4091 << VC4_HDMI_CEC_DIV_CLK_CNT_SHIFT);
@ -758,7 +758,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
ret = devm_request_threaded_irq(dev, platform_get_irq(pdev, 0),
vc4_cec_irq_handler,
vc4_cec_irq_handler_thread, 0,
@@ -1387,6 +1387,9 @@ static void vc4_hdmi_unbind(struct devic
@@ -1388,6 +1388,9 @@ static void vc4_hdmi_unbind(struct devic
struct snd_soc_card *card = dev_get_drvdata(dev);
struct vc4_hdmi *vc4_hdmi = snd_soc_card_get_drvdata(card);
@ -768,7 +768,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
cec_unregister_adapter(vc4_hdmi->cec_adap);
vc4_hdmi_connector_destroy(&vc4_hdmi->connector);
vc4_hdmi_encoder_destroy(&vc4_hdmi->encoder.base.base);
@@ -1414,6 +1417,9 @@ static int vc4_hdmi_dev_remove(struct pl
@@ -1415,6 +1418,9 @@ static int vc4_hdmi_dev_remove(struct pl
}
static const struct vc4_hdmi_variant bcm2835_variant = {

View File

@ -44,7 +44,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
/* PHY should be in reset, like
* vc4_hdmi_encoder_disable() does.
@@ -1421,6 +1427,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1422,6 +1428,7 @@ static const struct vc4_hdmi_variant bcm
.num_registers = ARRAY_SIZE(vc4_hdmi_fields),
.init_resources = vc4_hdmi_init_resources,

View File

@ -55,7 +55,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
if (debug_dump_regs) {
struct drm_printer p = drm_info_printer(&vc4_hdmi->pdev->dev);
@@ -1428,6 +1426,8 @@ static const struct vc4_hdmi_variant bcm
@@ -1429,6 +1427,8 @@ static const struct vc4_hdmi_variant bcm
.init_resources = vc4_hdmi_init_resources,
.reset = vc4_hdmi_reset,

View File

@ -42,7 +42,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
break;
default:
break;
@@ -1428,6 +1429,8 @@ static const struct vc4_hdmi_variant bcm
@@ -1429,6 +1430,8 @@ static const struct vc4_hdmi_variant bcm
.reset = vc4_hdmi_reset,
.phy_init = vc4_hdmi_phy_init,
.phy_disable = vc4_hdmi_phy_disable,

View File

@ -112,7 +112,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
HDMI_WRITE(HDMI_FIFO_CTL, VC4_HDMI_FIFO_CTL_MASTER_SLAVE_N);
if (debug_dump_regs) {
@@ -1426,6 +1438,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1427,6 +1439,7 @@ static const struct vc4_hdmi_variant bcm
.num_registers = ARRAY_SIZE(vc4_hdmi_fields),
.init_resources = vc4_hdmi_init_resources,

View File

@ -110,7 +110,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
if (vc4_encoder->hdmi_monitor &&
drm_default_rgb_quant_range(mode) == HDMI_QUANTIZATION_RANGE_LIMITED) {
@@ -1440,6 +1448,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1441,6 +1449,7 @@ static const struct vc4_hdmi_variant bcm
.init_resources = vc4_hdmi_init_resources,
.csc_setup = vc4_hdmi_csc_setup,
.reset = vc4_hdmi_reset,

View File

@ -17,7 +17,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1267,11 +1267,10 @@ static int vc4_hdmi_bind(struct device *
@@ -1268,11 +1268,10 @@ static int vc4_hdmi_bind(struct device *
vc4_hdmi = devm_kzalloc(dev, sizeof(*vc4_hdmi), GFP_KERNEL);
if (!vc4_hdmi)
return -ENOMEM;

View File

@ -19,7 +19,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1380,7 +1380,10 @@ static int vc4_hdmi_bind(struct device *
@@ -1381,7 +1381,10 @@ static int vc4_hdmi_bind(struct device *
if (ret)
goto err_destroy_encoder;

View File

@ -25,7 +25,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
if (!of_find_property(dev->of_node, "dmas", &len) ||
len == 0) {
dev_warn(dev,
@@ -1444,6 +1447,7 @@ static int vc4_hdmi_dev_remove(struct pl
@@ -1445,6 +1448,7 @@ static int vc4_hdmi_dev_remove(struct pl
}
static const struct vc4_hdmi_variant bcm2835_variant = {

View File

@ -14,7 +14,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1178,6 +1178,67 @@ static const struct cec_adap_ops vc4_hdm
@@ -1179,6 +1179,67 @@ static const struct cec_adap_ops vc4_hdm
.adap_log_addr = vc4_hdmi_cec_adap_log_addr,
.adap_transmit = vc4_hdmi_cec_adap_transmit,
};
@ -82,7 +82,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
#endif
static int vc4_hdmi_build_regset(struct vc4_hdmi *vc4_hdmi,
@@ -1255,9 +1316,6 @@ static int vc4_hdmi_init_resources(struc
@@ -1256,9 +1317,6 @@ static int vc4_hdmi_init_resources(struc
static int vc4_hdmi_bind(struct device *dev, struct device *master, void *data)
{
@ -92,7 +92,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
struct platform_device *pdev = to_platform_device(dev);
struct drm_device *drm = dev_get_drvdata(master);
const struct vc4_hdmi_variant *variant;
@@ -1345,43 +1403,13 @@ static int vc4_hdmi_bind(struct device *
@@ -1346,43 +1404,13 @@ static int vc4_hdmi_bind(struct device *
if (ret)
goto err_destroy_encoder;
@ -139,7 +139,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
vc4_debugfs_add_file(drm,
variant->id ? "hdmi1_regs" : "hdmi_regs",
@@ -1390,12 +1418,10 @@ static int vc4_hdmi_bind(struct device *
@@ -1391,12 +1419,10 @@ static int vc4_hdmi_bind(struct device *
return 0;
@ -154,7 +154,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
err_destroy_encoder:
vc4_hdmi_encoder_destroy(encoder);
err_unprepare_hsm:
@@ -1420,7 +1446,7 @@ static void vc4_hdmi_unbind(struct devic
@@ -1421,7 +1447,7 @@ static void vc4_hdmi_unbind(struct devic
kfree(vc4_hdmi->hdmi_regset.regs);
kfree(vc4_hdmi->hd_regset.regs);

View File

@ -15,7 +15,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1186,6 +1186,9 @@ static int vc4_hdmi_cec_init(struct vc4_
@@ -1187,6 +1187,9 @@ static int vc4_hdmi_cec_init(struct vc4_
u32 value;
int ret;
@ -25,7 +25,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
vc4_hdmi->cec_adap = cec_allocate_adapter(&vc4_hdmi_cec_adap_ops,
vc4_hdmi, "vc4",
CEC_CAP_DEFAULTS |
@@ -1474,6 +1477,7 @@ static int vc4_hdmi_dev_remove(struct pl
@@ -1475,6 +1478,7 @@ static int vc4_hdmi_dev_remove(struct pl
static const struct vc4_hdmi_variant bcm2835_variant = {
.audio_available = true,

View File

@ -99,7 +99,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
return MODE_CLOCK_HIGH;
return MODE_OK;
@@ -1353,23 +1373,6 @@ static int vc4_hdmi_bind(struct device *
@@ -1354,23 +1374,6 @@ static int vc4_hdmi_bind(struct device *
return -EPROBE_DEFER;
}
@ -123,7 +123,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
/* Only use the GPIO HPD pin if present in the DT, otherwise
* we'll use the HDMI core's register.
*/
@@ -1427,9 +1430,7 @@ err_destroy_conn:
@@ -1428,9 +1431,7 @@ err_destroy_conn:
err_destroy_encoder:
vc4_hdmi_encoder_destroy(encoder);
err_unprepare_hsm:
@ -133,7 +133,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
put_device(&vc4_hdmi->ddc->dev);
return ret;
@@ -1452,7 +1453,6 @@ static void vc4_hdmi_unbind(struct devic
@@ -1453,7 +1454,6 @@ static void vc4_hdmi_unbind(struct devic
vc4_hdmi_connector_destroy(&vc4_hdmi->connector);
vc4_hdmi_encoder_destroy(&vc4_hdmi->encoder.base.base);
@ -141,7 +141,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
pm_runtime_disable(dev);
put_device(&vc4_hdmi->ddc->dev);
@@ -1475,6 +1475,7 @@ static int vc4_hdmi_dev_remove(struct pl
@@ -1476,6 +1476,7 @@ static int vc4_hdmi_dev_remove(struct pl
}
static const struct vc4_hdmi_variant bcm2835_variant = {

View File

@ -175,7 +175,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
static void vc4_hdmi_encoder_enable(struct drm_encoder *encoder)
{
struct drm_display_mode *mode = &encoder->crtc->state->adjusted_mode;
@@ -1336,6 +1460,92 @@ static int vc4_hdmi_init_resources(struc
@@ -1337,6 +1461,92 @@ static int vc4_hdmi_init_resources(struc
return 0;
}
@ -268,7 +268,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
static int vc4_hdmi_bind(struct device *dev, struct device *master, void *data)
{
struct platform_device *pdev = to_platform_device(dev);
@@ -1491,8 +1701,52 @@ static const struct vc4_hdmi_variant bcm
@@ -1492,8 +1702,52 @@ static const struct vc4_hdmi_variant bcm
.phy_rng_disable = vc4_hdmi_phy_rng_disable,
};

View File

@ -83,7 +83,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
HDMI_WRITE(HDMI_MAI_CHANNEL_MAP, channel_map);
HDMI_WRITE(HDMI_AUDIO_PACKET_CONFIG, audio_packet_config);
vc4_hdmi_set_n_cts(vc4_hdmi);
@@ -1715,6 +1744,8 @@ static const struct vc4_hdmi_variant bcm
@@ -1716,6 +1745,8 @@ static const struct vc4_hdmi_variant bcm
.phy_disable = vc4_hdmi_phy_disable,
.phy_rng_enable = vc4_hdmi_phy_rng_enable,
.phy_rng_disable = vc4_hdmi_phy_rng_disable,
@ -92,7 +92,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
};
static const struct vc4_hdmi_variant bcm2711_hdmi0_variant = {
@@ -1736,6 +1767,8 @@ static const struct vc4_hdmi_variant bcm
@@ -1737,6 +1768,8 @@ static const struct vc4_hdmi_variant bcm
.phy_init = vc5_hdmi_phy_init,
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
@ -101,7 +101,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
};
static const struct vc4_hdmi_variant bcm2711_hdmi1_variant = {
@@ -1757,6 +1790,8 @@ static const struct vc4_hdmi_variant bcm
@@ -1758,6 +1791,8 @@ static const struct vc4_hdmi_variant bcm
.phy_init = vc5_hdmi_phy_init,
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
.phy_rng_disable = vc5_hdmi_phy_rng_disable,

View File

@ -13,7 +13,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1750,6 +1750,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1751,6 +1751,7 @@ static const struct vc4_hdmi_variant bcm
static const struct vc4_hdmi_variant bcm2711_hdmi0_variant = {
.id = 0,
@ -21,7 +21,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
.max_pixel_clock = 297000000,
.registers = vc5_hdmi_hdmi0_fields,
.num_registers = ARRAY_SIZE(vc5_hdmi_hdmi0_fields),
@@ -1773,6 +1774,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1774,6 +1775,7 @@ static const struct vc4_hdmi_variant bcm
static const struct vc4_hdmi_variant bcm2711_hdmi1_variant = {
.id = 1,

View File

@ -35,7 +35,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
ret = clk_set_rate(vc4_hdmi->hsm_clock, hsm_rate);
if (ret) {
DRM_ERROR("Failed to set HSM clock rate: %d\n", ret);
@@ -1730,7 +1731,7 @@ static int vc4_hdmi_dev_remove(struct pl
@@ -1731,7 +1732,7 @@ static int vc4_hdmi_dev_remove(struct pl
}
static const struct vc4_hdmi_variant bcm2835_variant = {

View File

@ -22,5 +22,5 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
- card->name = "vc4-hdmi";
+ card->name = vc4_hdmi->variant->id ? "vc4-hdmi1" : "vc4-hdmi";
card->dev = dev;
card->owner = THIS_MODULE;
/*

View File

@ -14,7 +14,7 @@ Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1493,8 +1493,10 @@ static int vc4_hdmi_init_resources(struc
@@ -1494,8 +1494,10 @@ static int vc4_hdmi_init_resources(struc
vc4_hdmi->pixel_clock = devm_clk_get(dev, "pixel");
if (IS_ERR(vc4_hdmi->pixel_clock)) {

View File

@ -55,7 +55,7 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
static u32 vc4_hdmi_channel_map(struct vc4_hdmi *vc4_hdmi, u32 channel_mask)
{
int i;
@@ -1748,6 +1765,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1749,6 +1766,7 @@ static const struct vc4_hdmi_variant bcm
.phy_rng_enable = vc4_hdmi_phy_rng_enable,
.phy_rng_disable = vc4_hdmi_phy_rng_disable,
.get_hsm_clock = vc4_hdmi_get_hsm_clock,
@ -63,7 +63,7 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
.channel_map = vc4_hdmi_channel_map,
};
@@ -1772,6 +1790,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1773,6 +1791,7 @@ static const struct vc4_hdmi_variant bcm
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
.get_hsm_clock = vc5_hdmi_get_hsm_clock,
@ -71,7 +71,7 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
.channel_map = vc5_hdmi_channel_map,
};
@@ -1796,6 +1815,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1797,6 +1816,7 @@ static const struct vc4_hdmi_variant bcm
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
.get_hsm_clock = vc5_hdmi_get_hsm_clock,

View File

@ -11,7 +11,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1264,8 +1264,13 @@ static void vc4_cec_read_msg(struct vc4_
@@ -1265,8 +1265,13 @@ static void vc4_cec_read_msg(struct vc4_
msg->len = 1 + ((cntrl1 & VC4_HDMI_CEC_REC_WRD_CNT_MASK) >>
VC4_HDMI_CEC_REC_WRD_CNT_SHIFT);
@ -26,7 +26,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
msg->msg[i] = val & 0xff;
msg->msg[i + 1] = (val >> 8) & 0xff;
@@ -1361,8 +1366,12 @@ static int vc4_hdmi_cec_adap_transmit(st
@@ -1362,8 +1367,12 @@ static int vc4_hdmi_cec_adap_transmit(st
u32 val;
unsigned int i;

View File

@ -69,7 +69,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1581,6 +1581,14 @@ static int vc5_hdmi_init_resources(struc
@@ -1582,6 +1582,14 @@ static int vc5_hdmi_init_resources(struc
if (IS_ERR(vc4_hdmi->dvp_regs))
return PTR_ERR(vc4_hdmi->dvp_regs);

View File

@ -12,7 +12,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1285,7 +1285,7 @@ static irqreturn_t vc4_cec_irq_handler(i
@@ -1286,7 +1286,7 @@ static irqreturn_t vc4_cec_irq_handler(i
u32 stat = HDMI_READ(HDMI_CEC_CPU_STATUS);
u32 cntrl1, cntrl5;
@ -21,7 +21,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
return IRQ_NONE;
vc4_hdmi->cec_rx_msg.len = 0;
cntrl1 = HDMI_READ(HDMI_CEC_CNTRL_1);
@@ -1301,7 +1301,7 @@ static irqreturn_t vc4_cec_irq_handler(i
@@ -1302,7 +1302,7 @@ static irqreturn_t vc4_cec_irq_handler(i
cntrl1 &= ~VC4_HDMI_CEC_START_XMIT_BEGIN;
}
HDMI_WRITE(HDMI_CEC_CNTRL_1, cntrl1);
@ -30,7 +30,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
return IRQ_WAKE_THREAD;
}
@@ -1340,9 +1340,9 @@ static int vc4_hdmi_cec_adap_enable(stru
@@ -1341,9 +1341,9 @@ static int vc4_hdmi_cec_adap_enable(stru
((3600 / usecs) << VC4_HDMI_CEC_CNT_TO_3600_US_SHIFT) |
((3500 / usecs) << VC4_HDMI_CEC_CNT_TO_3500_US_SHIFT));
@ -42,7 +42,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
HDMI_WRITE(HDMI_CEC_CNTRL_5, val |
VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET);
}
@@ -1784,6 +1784,8 @@ static const struct vc4_hdmi_variant bcm
@@ -1785,6 +1785,8 @@ static const struct vc4_hdmi_variant bcm
.get_hsm_clock = vc4_hdmi_get_hsm_clock,
.calc_hsm_clock = vc4_hdmi_calc_hsm_clock,
.channel_map = vc4_hdmi_channel_map,
@ -51,7 +51,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
};
static const struct vc4_hdmi_variant bcm2711_hdmi0_variant = {
@@ -1809,6 +1811,8 @@ static const struct vc4_hdmi_variant bcm
@@ -1810,6 +1812,8 @@ static const struct vc4_hdmi_variant bcm
.get_hsm_clock = vc5_hdmi_get_hsm_clock,
.calc_hsm_clock = vc5_hdmi_calc_hsm_clock,
.channel_map = vc5_hdmi_channel_map,
@ -60,7 +60,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
};
static const struct vc4_hdmi_variant bcm2711_hdmi1_variant = {
@@ -1834,6 +1838,8 @@ static const struct vc4_hdmi_variant bcm
@@ -1835,6 +1839,8 @@ static const struct vc4_hdmi_variant bcm
.get_hsm_clock = vc5_hdmi_get_hsm_clock,
.calc_hsm_clock = vc5_hdmi_calc_hsm_clock,
.channel_map = vc5_hdmi_channel_map,

View File

@ -10,7 +10,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1428,7 +1428,8 @@ static int vc4_hdmi_cec_init(struct vc4_
@@ -1429,7 +1429,8 @@ static int vc4_hdmi_cec_init(struct vc4_
HDMI_WRITE(HDMI_CEC_CNTRL_1, value);
ret = devm_request_threaded_irq(&pdev->dev, platform_get_irq(pdev, 0),
vc4_cec_irq_handler,

View File

@ -32,7 +32,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
}
static u32 vc5_hdmi_calc_hsm_clock(struct vc4_hdmi *vc4_hdmi, unsigned long pixel_rate)
@@ -1399,6 +1399,7 @@ static int vc4_hdmi_cec_init(struct vc4_
@@ -1400,6 +1400,7 @@ static int vc4_hdmi_cec_init(struct vc4_
struct cec_connector_info conn_info;
struct platform_device *pdev = vc4_hdmi->pdev;
u32 value;
@ -40,7 +40,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
int ret;
if (!vc4_hdmi->variant->cec_available)
@@ -1423,8 +1424,9 @@ static int vc4_hdmi_cec_init(struct vc4_
@@ -1424,8 +1425,9 @@ static int vc4_hdmi_cec_init(struct vc4_
* divider: the hsm_clock rate and this divider setting will
* give a 40 kHz CEC clock.
*/
@ -51,7 +51,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
HDMI_WRITE(HDMI_CEC_CNTRL_1, value);
ret = devm_request_threaded_irq(&pdev->dev, platform_get_irq(pdev, 0),
vc4_cec_irq_handler,
@@ -1769,6 +1771,7 @@ static int vc4_hdmi_dev_remove(struct pl
@@ -1770,6 +1772,7 @@ static int vc4_hdmi_dev_remove(struct pl
static const struct vc4_hdmi_variant bcm2835_variant = {
.max_pixel_clock = 162000000,
@ -59,7 +59,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
.audio_available = true,
.cec_available = true,
.registers = vc4_hdmi_fields,
@@ -1793,6 +1796,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1794,6 +1797,7 @@ static const struct vc4_hdmi_variant bcm
.id = 0,
.audio_available = true,
.max_pixel_clock = 297000000,
@ -67,7 +67,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
.registers = vc5_hdmi_hdmi0_fields,
.num_registers = ARRAY_SIZE(vc5_hdmi_hdmi0_fields),
.phy_lane_mapping = {
@@ -1820,6 +1824,7 @@ static const struct vc4_hdmi_variant bcm
@@ -1821,6 +1825,7 @@ static const struct vc4_hdmi_variant bcm
.id = 1,
.audio_available = true,
.max_pixel_clock = 297000000,

View File

@ -12,7 +12,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -1402,9 +1402,6 @@ static int vc4_hdmi_cec_init(struct vc4_
@@ -1403,9 +1403,6 @@ static int vc4_hdmi_cec_init(struct vc4_
u32 clk_cnt;
int ret;
@ -22,7 +22,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
vc4_hdmi->cec_adap = cec_allocate_adapter(&vc4_hdmi_cec_adap_ops,
vc4_hdmi, "vc4",
CEC_CAP_DEFAULTS |
@@ -1773,7 +1770,6 @@ static const struct vc4_hdmi_variant bcm
@@ -1774,7 +1771,6 @@ static const struct vc4_hdmi_variant bcm
.max_pixel_clock = 162000000,
.cec_input_clock = VC4_HSM_CLOCK,
.audio_available = true,

View File

@ -49,7 +49,7 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
return UBI_IO_BAD_HDR_EBADMSG;
--- a/drivers/mtd/ubi/ubi.h
+++ b/drivers/mtd/ubi/ubi.h
@@ -820,6 +820,7 @@ extern struct mutex ubi_devices_mutex;
@@ -822,6 +822,7 @@ extern struct mutex ubi_devices_mutex;
extern struct blocking_notifier_head ubi_notifiers;
/* attach.c */

View File

@ -156,7 +156,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
default n
help
This options enables a library of common routines used
@@ -212,16 +212,16 @@ config LIB80211
@@ -212,17 +212,17 @@ config LIB80211
Drivers should select this themselves if needed.
config LIB80211_CRYPT_WEP
@ -167,6 +167,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
config LIB80211_CRYPT_CCMP
- tristate
+ tristate "LIB80211_CRYPT_CCMP"
select CRYPTO
select CRYPTO_AES
select CRYPTO_CCM

View File

@ -106,7 +106,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#include <linux/mutex.h>
#include <linux/err.h>
#include <linux/of.h>
@@ -3117,3 +3118,5 @@ static int __init regmap_initcall(void)
@@ -3118,3 +3119,5 @@ static int __init regmap_initcall(void)
return 0;
}
postcore_initcall(regmap_initcall);

View File

@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
*/
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -2667,6 +2667,10 @@ static inline int pskb_trim(struct sk_bu
@@ -2679,6 +2679,10 @@ static inline int pskb_trim(struct sk_bu
return (len < skb->len) ? __pskb_trim(skb, len) : 0;
}
@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/**
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer
* @skb: buffer to alter
@@ -2798,16 +2802,6 @@ static inline struct sk_buff *dev_alloc_
@@ -2810,16 +2814,6 @@ static inline struct sk_buff *dev_alloc_
}

View File

@ -396,7 +396,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
}
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -408,6 +408,9 @@ static struct pernet_operations ip_rt_pr
@@ -409,6 +409,9 @@ static struct pernet_operations ip_rt_pr
static int __init ip_rt_proc_init(void)
{

View File

@ -45,7 +45,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
selftest.o \
--- a/drivers/dma-buf/dma-buf.c
+++ b/drivers/dma-buf/dma-buf.c
@@ -1298,4 +1298,5 @@ static void __exit dma_buf_deinit(void)
@@ -1300,4 +1300,5 @@ static void __exit dma_buf_deinit(void)
dma_buf_uninit_debugfs();
kern_unmount(dma_buf_mnt);
}

View File

@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
@@ -910,7 +910,7 @@ static int get_chip(struct map_info *map
@@ -909,7 +909,7 @@ static int get_chip(struct map_info *map
return 0;
case FL_ERASING:

View File

@ -7,7 +7,7 @@ Signed-off-by: George Kashperko <george@znau.edu.ua>
1 file changed, 1 insertion(+)
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
@@ -2055,6 +2055,7 @@ static int __xipram do_write_buffer(stru
@@ -2054,6 +2054,7 @@ static int __xipram do_write_buffer(stru
/* Write Buffer Load */
map_write(map, CMD(0x25), cmd_adr);

View File

@ -50,7 +50,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
break;
--- a/drivers/mtd/ubi/ubi.h
+++ b/drivers/mtd/ubi/ubi.h
@@ -776,6 +776,7 @@ struct ubi_attach_info {
@@ -780,6 +780,7 @@ struct ubi_attach_info {
int mean_ec;
uint64_t ec_sum;
int ec_count;

View File

@ -506,7 +506,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+MODULE_ALIAS("nf-flow-table-hw");
--- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c
@@ -5741,6 +5741,13 @@ static int nf_tables_flowtable_parse_hoo
@@ -5742,6 +5742,13 @@ static int nf_tables_flowtable_parse_hoo
if (err < 0)
return err;
@ -520,7 +520,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
ops = kcalloc(n, sizeof(struct nf_hook_ops), GFP_KERNEL);
if (!ops)
return -ENOMEM;
@@ -5871,10 +5878,19 @@ static int nf_tables_newflowtable(struct
@@ -5872,10 +5879,19 @@ static int nf_tables_newflowtable(struct
}
flowtable->data.type = type;
@ -540,7 +540,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
err = nf_tables_flowtable_parse_hook(&ctx, nla[NFTA_FLOWTABLE_HOOK],
flowtable);
if (err < 0)
@@ -6000,7 +6016,8 @@ static int nf_tables_fill_flowtable_info
@@ -6001,7 +6017,8 @@ static int nf_tables_fill_flowtable_info
nla_put_string(skb, NFTA_FLOWTABLE_NAME, flowtable->name) ||
nla_put_be32(skb, NFTA_FLOWTABLE_USE, htonl(flowtable->use)) ||
nla_put_be64(skb, NFTA_FLOWTABLE_HANDLE, cpu_to_be64(flowtable->handle),

View File

@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -2633,7 +2633,7 @@ static inline int pskb_network_may_pull(
@@ -2645,7 +2645,7 @@ static inline int pskb_network_may_pull(
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
*/
#ifndef NET_SKB_PAD

View File

@ -65,7 +65,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
/**
* ata_build_rw_tf - Build ATA taskfile for given read/write request
* @tf: Target ATA taskfile
@@ -5114,6 +5127,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
@@ -5117,6 +5130,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
if (tag < 0)
return NULL;
}
@ -75,7 +75,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
qc = __ata_qc_from_tag(ap, tag);
qc->tag = qc->hw_tag = tag;
@@ -6048,6 +6064,9 @@ struct ata_port *ata_port_alloc(struct a
@@ -6053,6 +6069,9 @@ struct ata_port *ata_port_alloc(struct a
ap->stats.unhandled_irq = 1;
ap->stats.idle_irq = 1;
#endif
@ -85,7 +85,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
ata_sff_port_init(ap);
return ap;
@@ -6083,6 +6102,12 @@ static void ata_host_release(struct kref
@@ -6088,6 +6107,12 @@ static void ata_host_release(struct kref
kfree(ap->pmp_link);
kfree(ap->slave_link);
@ -98,7 +98,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
kfree(ap);
host->ports[i] = NULL;
}
@@ -6546,7 +6571,23 @@ int ata_host_register(struct ata_host *h
@@ -6551,7 +6576,23 @@ int ata_host_register(struct ata_host *h
host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
host->ports[i]->local_port_no = i + 1;
}
@ -134,7 +134,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
/*
* Define if arch has non-standard setup. This is a _PCI_ standard
@@ -880,6 +883,12 @@ struct ata_port {
@@ -881,6 +884,12 @@ struct ata_port {
#ifdef CONFIG_ATA_ACPI
struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */
#endif

View File

@ -31,7 +31,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
help
--- a/init/main.c
+++ b/init/main.c
@@ -366,6 +366,29 @@ static inline void setup_nr_cpu_ids(void
@@ -367,6 +367,29 @@ static inline void setup_nr_cpu_ids(void
static inline void smp_prepare_cpus(unsigned int maxcpus) { }
#endif
@ -61,7 +61,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
/*
* We need to store the untouched command line for future reference.
* We also need to store the touched command line since the parameter
@@ -596,6 +619,7 @@ asmlinkage __visible void __init start_k
@@ -597,6 +620,7 @@ asmlinkage __visible void __init start_k
pr_notice("%s", linux_banner);
early_security_init();
setup_arch(&command_line);

View File

@ -39,7 +39,7 @@ Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
--- a/drivers/opp/core.c
+++ b/drivers/opp/core.c
@@ -2105,6 +2105,75 @@ put_table:
@@ -2095,6 +2095,75 @@ put_table:
}
/**

View File

@ -17,7 +17,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
--- a/drivers/opp/core.c
+++ b/drivers/opp/core.c
@@ -2145,6 +2145,7 @@ int dev_pm_opp_adjust_voltage(struct dev
@@ -2135,6 +2135,7 @@ int dev_pm_opp_adjust_voltage(struct dev
struct opp_table *opp_table;
struct dev_pm_opp *tmp_opp, *opp = ERR_PTR(-ENODEV);
int r = 0;
@ -25,7 +25,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
/* Find the opp_table */
opp_table = _find_opp_table(dev);
@@ -2174,8 +2175,17 @@ int dev_pm_opp_adjust_voltage(struct dev
@@ -2164,8 +2165,17 @@ int dev_pm_opp_adjust_voltage(struct dev
goto adjust_unlock;
opp->supplies->u_volt = u_volt;

View File

@ -178,7 +178,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
}
--- a/init/main.c
+++ b/init/main.c
@@ -103,6 +103,10 @@
@@ -104,6 +104,10 @@
#define CREATE_TRACE_POINTS
#include <trace/events/initcall.h>
@ -189,7 +189,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
static int kernel_init(void *);
extern void init_IRQ(void);
@@ -632,6 +636,18 @@ asmlinkage __visible void __init start_k
@@ -633,6 +637,18 @@ asmlinkage __visible void __init start_k
pr_notice("Kernel command line: %s\n", boot_command_line);
/* parameters may set static keys */
jump_label_init();

View File

@ -5480,7 +5480,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
(transaction layer end-to-end CRC checking).
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -1390,6 +1390,8 @@ void pci_walk_bus(struct pci_bus *top, i
@@ -1389,6 +1389,8 @@ void pci_walk_bus(struct pci_bus *top, i
void *userdata);
int pci_cfg_space_size(struct pci_dev *dev);
unsigned char pci_bus_max_busnr(struct pci_bus *bus);

View File

@ -471,7 +471,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
int max_pcr; /* maximum PCR in cells per second */
--- a/net/atm/proc.c
+++ b/net/atm/proc.c
@@ -142,7 +142,7 @@ static void *vcc_seq_next(struct seq_fil
@@ -141,7 +141,7 @@ static void *vcc_seq_next(struct seq_fil
static void pvc_info(struct seq_file *seq, struct atm_vcc *vcc)
{
static const char *const class_name[] = {

View File

@ -101,7 +101,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
}
/* For each FQ, decide on which core to process incoming frames */
@@ -2699,7 +2704,7 @@ static int setup_rx_flow(struct dpaa2_et
@@ -2701,7 +2706,7 @@ static int setup_rx_flow(struct dpaa2_et
int err;
err = dpni_get_queue(priv->mc_io, 0, priv->mc_token,
@ -110,7 +110,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
if (err) {
dev_err(dev, "dpni_get_queue(RX) failed\n");
return err;
@@ -2712,7 +2717,7 @@ static int setup_rx_flow(struct dpaa2_et
@@ -2714,7 +2719,7 @@ static int setup_rx_flow(struct dpaa2_et
queue.destination.priority = 1;
queue.user_context = (u64)(uintptr_t)fq;
err = dpni_set_queue(priv->mc_io, 0, priv->mc_token,
@ -119,7 +119,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
DPNI_QUEUE_OPT_USER_CTX | DPNI_QUEUE_OPT_DEST,
&queue);
if (err) {
@@ -2721,6 +2726,10 @@ static int setup_rx_flow(struct dpaa2_et
@@ -2723,6 +2728,10 @@ static int setup_rx_flow(struct dpaa2_et
}
/* xdp_rxq setup */
@ -130,7 +130,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
err = xdp_rxq_info_reg(&fq->channel->xdp_rxq, priv->net_dev,
fq->flowid);
if (err) {
@@ -2858,7 +2867,7 @@ static int config_legacy_hash_key(struct
@@ -2860,7 +2869,7 @@ static int config_legacy_hash_key(struct
{
struct device *dev = priv->net_dev->dev.parent;
struct dpni_rx_tc_dist_cfg dist_cfg;
@ -139,7 +139,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
memset(&dist_cfg, 0, sizeof(dist_cfg));
@@ -2866,9 +2875,14 @@ static int config_legacy_hash_key(struct
@@ -2868,9 +2877,14 @@ static int config_legacy_hash_key(struct
dist_cfg.dist_size = dpaa2_eth_queue_count(priv);
dist_cfg.dist_mode = DPNI_DIST_MODE_HASH;
@ -157,7 +157,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
return err;
}
@@ -2878,7 +2892,7 @@ static int config_hash_key(struct dpaa2_
@@ -2880,7 +2894,7 @@ static int config_hash_key(struct dpaa2_
{
struct device *dev = priv->net_dev->dev.parent;
struct dpni_rx_dist_cfg dist_cfg;
@ -166,7 +166,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
memset(&dist_cfg, 0, sizeof(dist_cfg));
@@ -2886,9 +2900,15 @@ static int config_hash_key(struct dpaa2_
@@ -2888,9 +2902,15 @@ static int config_hash_key(struct dpaa2_
dist_cfg.dist_size = dpaa2_eth_queue_count(priv);
dist_cfg.enable = 1;
@ -185,7 +185,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
return err;
}
@@ -2898,7 +2918,7 @@ static int config_cls_key(struct dpaa2_e
@@ -2900,7 +2920,7 @@ static int config_cls_key(struct dpaa2_e
{
struct device *dev = priv->net_dev->dev.parent;
struct dpni_rx_dist_cfg dist_cfg;
@ -194,7 +194,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
memset(&dist_cfg, 0, sizeof(dist_cfg));
@@ -2906,9 +2926,15 @@ static int config_cls_key(struct dpaa2_e
@@ -2908,9 +2928,15 @@ static int config_cls_key(struct dpaa2_e
dist_cfg.dist_size = dpaa2_eth_queue_count(priv);
dist_cfg.enable = 1;

View File

@ -147,7 +147,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
+
priv->cls_rules = devm_kzalloc(dev, sizeof(struct dpaa2_eth_cls_rule) *
dpaa2_eth_fs_count(priv), GFP_KERNEL);
if (!priv->cls_rules)
if (!priv->cls_rules) {
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.h
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.h
@@ -414,6 +414,7 @@ struct dpaa2_eth_priv {

View File

@ -33,7 +33,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
depends on FSL_DPAA2_ETH && PTP_1588_CLOCK_QORIQ
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
@@ -3612,6 +3612,81 @@ static void del_ch_napi(struct dpaa2_eth
@@ -3614,6 +3614,81 @@ static void del_ch_napi(struct dpaa2_eth
}
}
@ -115,7 +115,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
static int dpaa2_eth_probe(struct fsl_mc_device *dpni_dev)
{
struct device *dev;
@@ -3701,6 +3776,15 @@ static int dpaa2_eth_probe(struct fsl_mc
@@ -3703,6 +3778,15 @@ static int dpaa2_eth_probe(struct fsl_mc
if (err)
goto err_alloc_rings;

View File

@ -26,7 +26,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
@@ -3618,6 +3618,9 @@ static int dpaa2_eth_dcbnl_ieee_getpfc(s
@@ -3620,6 +3620,9 @@ static int dpaa2_eth_dcbnl_ieee_getpfc(s
{
struct dpaa2_eth_priv *priv = netdev_priv(net_dev);
@ -36,7 +36,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
memcpy(pfc, &priv->pfc, sizeof(priv->pfc));
pfc->pfc_cap = dpaa2_eth_tc_count(priv);
@@ -3628,6 +3631,8 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
@@ -3630,6 +3633,8 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
struct ieee_pfc *pfc)
{
struct dpaa2_eth_priv *priv = netdev_priv(net_dev);
@ -45,7 +45,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
if (pfc->mbc || pfc->delay)
return -EOPNOTSUPP;
@@ -3636,6 +3641,24 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
@@ -3638,6 +3643,24 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
if (priv->pfc.pfc_en == pfc->pfc_en)
return 0;

View File

@ -19,7 +19,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
@@ -3627,6 +3627,47 @@ static int dpaa2_eth_dcbnl_ieee_getpfc(s
@@ -3629,6 +3629,47 @@ static int dpaa2_eth_dcbnl_ieee_getpfc(s
return 0;
}
@ -67,7 +67,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
static int dpaa2_eth_dcbnl_ieee_setpfc(struct net_device *net_dev,
struct ieee_pfc *pfc)
{
@@ -3644,7 +3685,8 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
@@ -3646,7 +3687,8 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
/* We allow PFC configuration even if it won't have any effect until
* general pause frames are enabled
*/
@ -77,7 +77,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
netdev_warn(net_dev, "Pause support must be enabled in order for PFC to work!\n");
link_cfg.rate = priv->link_state.rate;
@@ -3659,6 +3701,11 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
@@ -3661,6 +3703,11 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
return err;
}

View File

@ -87,7 +87,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
/* Chech link state; speed / duplex changes are not treated yet */
if (priv->link_state.up == state.up)
@@ -3673,6 +3688,7 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
@@ -3675,6 +3690,7 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
{
struct dpaa2_eth_priv *priv = netdev_priv(net_dev);
struct dpni_link_cfg link_cfg = {0};
@ -95,7 +95,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
int err;
if (pfc->mbc || pfc->delay)
@@ -3685,8 +3701,8 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
@@ -3687,8 +3703,8 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
/* We allow PFC configuration even if it won't have any effect until
* general pause frames are enabled
*/
@ -106,7 +106,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
netdev_warn(net_dev, "Pause support must be enabled in order for PFC to work!\n");
link_cfg.rate = priv->link_state.rate;
@@ -3707,6 +3723,9 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
@@ -3709,6 +3725,9 @@ static int dpaa2_eth_dcbnl_ieee_setpfc(s
return err;
memcpy(&priv->pfc, pfc, sizeof(priv->pfc));

View File

@ -19,7 +19,7 @@ Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com>
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
@@ -3776,6 +3776,83 @@ const struct dcbnl_rtnl_ops dpaa2_eth_dc
@@ -3778,6 +3778,83 @@ const struct dcbnl_rtnl_ops dpaa2_eth_dc
};
#endif
@ -103,7 +103,7 @@ Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com>
static int dpaa2_eth_probe(struct fsl_mc_device *dpni_dev)
{
struct device *dev;
@@ -3895,6 +3972,7 @@ static int dpaa2_eth_probe(struct fsl_mc
@@ -3897,6 +3974,7 @@ static int dpaa2_eth_probe(struct fsl_mc
#ifdef CONFIG_DEBUG_FS
dpaa2_dbg_add(priv);
#endif
@ -111,7 +111,7 @@ Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com>
dev_info(dev, "Probed interface %s\n", net_dev->name);
return 0;
@@ -3942,6 +4020,8 @@ static int dpaa2_eth_remove(struct fsl_m
@@ -3944,6 +4022,8 @@ static int dpaa2_eth_remove(struct fsl_m
#ifdef CONFIG_DEBUG_FS
dpaa2_dbg_remove(priv);
#endif

View File

@ -113,7 +113,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
/* For each FQ, decide on which core to process incoming frames */
set_fq_affinity(priv);
}
@@ -2944,6 +2998,40 @@ static int setup_tx_flow(struct dpaa2_et
@@ -2946,6 +3000,40 @@ static int setup_tx_flow(struct dpaa2_et
return 0;
}
@ -154,7 +154,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
/* Supported header fields for Rx hash distribution key */
static const struct dpaa2_eth_dist_fields dist_fields[] = {
{
@@ -3313,7 +3401,11 @@ static int bind_dpni(struct dpaa2_eth_pr
@@ -3315,7 +3403,11 @@ static int bind_dpni(struct dpaa2_eth_pr
/* Configure handling of error frames */
err_cfg.errors = DPAA2_FAS_RX_ERR_MASK;
err_cfg.set_frame_annotation = 1;
@ -166,7 +166,7 @@ Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
err = dpni_set_errors_behavior(priv->mc_io, 0, priv->mc_token,
&err_cfg);
if (err) {
@@ -3330,6 +3422,11 @@ static int bind_dpni(struct dpaa2_eth_pr
@@ -3332,6 +3424,11 @@ static int bind_dpni(struct dpaa2_eth_pr
case DPAA2_TX_CONF_FQ:
err = setup_tx_flow(priv, &priv->fq[i]);
break;

View File

@ -15,7 +15,7 @@ Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com>
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
@@ -3893,7 +3893,7 @@ static ssize_t dpaa2_eth_write_tx_shapin
@@ -3895,7 +3895,7 @@ static ssize_t dpaa2_eth_write_tx_shapin
{
int err, items;
struct dpaa2_eth_priv *priv = netdev_priv(to_net_dev(dev));
@ -24,7 +24,7 @@ Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com>
items = sscanf(buf, "%u %hu", &scfg.rate_limit, &scfg.max_burst_size);
if (items != 2) {
@@ -3907,7 +3907,8 @@ static ssize_t dpaa2_eth_write_tx_shapin
@@ -3909,7 +3909,8 @@ static ssize_t dpaa2_eth_write_tx_shapin
return -EINVAL;
}

View File

@ -1561,7 +1561,7 @@ Signed-off-by: Camelia Groza <camelia.groza@nxp.com>
static const struct net_device_ops dpaa2_eth_ops = {
.ndo_open = dpaa2_eth_open,
.ndo_start_xmit = dpaa2_eth_tx,
@@ -4171,18 +4191,27 @@ static int __init dpaa2_eth_driver_init(
@@ -4173,18 +4193,27 @@ static int __init dpaa2_eth_driver_init(
dpaa2_eth_dbg_init();
err = fsl_mc_driver_register(&dpaa2_eth_driver);

View File

@ -15,7 +15,7 @@ Signed-off-by: Bharat Bhushan <Bharat.Bhushan@nxp.com>
--- a/virt/kvm/arm/vgic/vgic-its.c
+++ b/virt/kvm/arm/vgic/vgic-its.c
@@ -241,7 +241,7 @@ static struct its_ite *find_ite(struct v
@@ -248,7 +248,7 @@ static struct its_ite *find_ite(struct v
#define GIC_LPI_OFFSET 8192
#define VITS_TYPER_IDBITS 16

View File

@ -229,7 +229,7 @@ Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
* fall back to INTx or other interrupts, e.g., a system shared
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -2021,6 +2021,7 @@ static inline void pcibios_penalize_isa_
@@ -2020,6 +2020,7 @@ static inline void pcibios_penalize_isa_
int pcibios_alloc_irq(struct pci_dev *dev);
void pcibios_free_irq(struct pci_dev *dev);
resource_size_t pcibios_default_alignment(void);

View File

@ -1,27 +0,0 @@
From 355f342af78a54051f38ffa4b4018e6ea6b9e3d4 Mon Sep 17 00:00:00 2001
From: Li Jun <jun.li@nxp.com>
Date: Mon, 28 Jan 2019 11:19:03 +0800
Subject: [PATCH] usb: dwc3: gadget: increase timeout value for send ep cmd
In case the USB3 PHY enters P3, then ep command may need a long
time to complete, per test of ep0out enable, the dwc3 trace time
stamp shows the time is more then 280us, so increase the timeout
loop count to be 2000, this has no side effect for HW which has
no this problem.
Signed-off-by: Li Jun <jun.li@nxp.com>
---
drivers/usb/dwc3/gadget.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -270,7 +270,7 @@ int dwc3_send_gadget_ep_cmd(struct dwc3_
{
const struct usb_endpoint_descriptor *desc = dep->endpoint.desc;
struct dwc3 *dwc = dep->dwc;
- u32 timeout = 1000;
+ u32 timeout = 2000;
u32 saved_config = 0;
u32 reg;

View File

@ -141,7 +141,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
+++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
@@ -1488,9 +1488,10 @@ static void axienet_mac_link_down(struct
@@ -1499,9 +1499,10 @@ static void axienet_mac_link_down(struct
}
static void axienet_mac_link_up(struct phylink_config *config,

View File

@ -19,7 +19,7 @@
},
[PORT_NPCM] = {
.name = "Nuvoton 16550",
@@ -2564,6 +2564,11 @@ serial8250_do_set_termios(struct uart_po
@@ -2578,6 +2578,11 @@ serial8250_do_set_termios(struct uart_po
unsigned long flags;
unsigned int baud, quot, frac = 0;

View File

@ -176,7 +176,7 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
}
--- a/init/main.c
+++ b/init/main.c
@@ -103,6 +103,10 @@
@@ -104,6 +104,10 @@
#define CREATE_TRACE_POINTS
#include <trace/events/initcall.h>
@ -187,7 +187,7 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
static int kernel_init(void *);
extern void init_IRQ(void);
@@ -630,6 +634,18 @@ asmlinkage __visible void __init start_k
@@ -631,6 +635,18 @@ asmlinkage __visible void __init start_k
page_alloc_init();
pr_notice("Kernel command line: %s\n", boot_command_line);

View File

@ -157,7 +157,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
}
--- a/init/main.c
+++ b/init/main.c
@@ -103,6 +103,10 @@
@@ -104,6 +104,10 @@
#define CREATE_TRACE_POINTS
#include <trace/events/initcall.h>
@ -168,7 +168,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
static int kernel_init(void *);
extern void init_IRQ(void);
@@ -630,6 +634,18 @@ asmlinkage __visible void __init start_k
@@ -631,6 +635,18 @@ asmlinkage __visible void __init start_k
page_alloc_init();
pr_notice("Kernel command line: %s\n", boot_command_line);

View File

@ -15,7 +15,7 @@
/* initialize internal qc */
qc = __ata_qc_from_tag(ap, ATA_TAG_INTERNAL);
@@ -5121,6 +5129,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
@@ -5124,6 +5132,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
if (unlikely(ap->pflags & ATA_PFLAG_FROZEN))
return NULL;
@ -25,7 +25,7 @@
/* libsas case */
if (ap->flags & ATA_FLAG_SAS_HOST) {
tag = ata_sas_allocate_tag(ap);
@@ -5166,6 +5177,8 @@ void ata_qc_free(struct ata_queued_cmd *
@@ -5169,6 +5180,8 @@ void ata_qc_free(struct ata_queued_cmd *
qc->tag = ATA_TAG_POISON;
if (ap->flags & ATA_FLAG_SAS_HOST)
ata_sas_free_tag(tag, ap);
@ -36,8 +36,8 @@
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -909,6 +909,8 @@ struct ata_port_operations {
void (*qc_prep)(struct ata_queued_cmd *qc);
@@ -910,6 +910,8 @@ struct ata_port_operations {
enum ata_completion_errors (*qc_prep)(struct ata_queued_cmd *qc);
unsigned int (*qc_issue)(struct ata_queued_cmd *qc);
bool (*qc_fill_rtf)(struct ata_queued_cmd *qc);
+ int (*qc_new)(struct ata_port *ap);
@ -45,7 +45,7 @@
/*
* Configuration and exception handling
@@ -999,6 +1001,9 @@ struct ata_port_operations {
@@ -1000,6 +1002,9 @@ struct ata_port_operations {
void (*phy_reset)(struct ata_port *ap);
void (*eng_timeout)(struct ata_port *ap);