-LINUX_VERSION-6.1 = .65
-LINUX_KERNEL_HASH-6.1.65 = 407229936802a44b1e484c2e9ac3bbe53a65d825cc468ccdbd76281b491ab20a
+LINUX_VERSION-6.1 = .66
+LINUX_KERNEL_HASH-6.1.66 = 419e62cd6c4239e6950b688db9e8753eb1e99c216dc3204f7932398a3fef1a0c
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -3613,7 +3613,7 @@ static int dpaa2_eth_setup_dpni(struct f
+@@ -3611,7 +3611,7 @@ static int dpaa2_eth_setup_dpni(struct f
dev_err(dev, "DPNI version %u.%u not supported, need >= %u.%u\n",
priv->dpni_ver_major, priv->dpni_ver_minor,
DPNI_VER_MAJOR, DPNI_VER_MINOR);
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -2082,10 +2082,8 @@ static int dpaa2_eth_open(struct net_dev
+@@ -2080,10 +2080,8 @@ static int dpaa2_eth_open(struct net_dev
goto enable_err;
}
return 0;
-@@ -2159,7 +2157,6 @@ static int dpaa2_eth_stop(struct net_dev
+@@ -2157,7 +2155,6 @@ static int dpaa2_eth_stop(struct net_dev
int retries = 10;
if (dpaa2_eth_is_type_phy(priv)) {
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -4443,9 +4443,8 @@ static int dpaa2_eth_connect_mac(struct
+@@ -4441,9 +4441,8 @@ static int dpaa2_eth_connect_mac(struct
err = dpaa2_mac_open(mac);
if (err)
goto err_free_mac;
err = dpaa2_mac_connect(mac);
if (err && err != -EPROBE_DEFER)
netdev_err(priv->net_dev, "Error connecting to the MAC endpoint: %pe",
-@@ -4454,11 +4453,12 @@ static int dpaa2_eth_connect_mac(struct
+@@ -4452,11 +4451,12 @@ static int dpaa2_eth_connect_mac(struct
goto err_close_mac;
}
err_free_mac:
kfree(mac);
return err;
-@@ -4466,15 +4466,18 @@ err_free_mac:
+@@ -4464,15 +4464,18 @@ err_free_mac:
static void dpaa2_eth_disconnect_mac(struct dpaa2_eth_priv *priv)
{
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -4710,6 +4710,10 @@ static int dpaa2_eth_probe(struct fsl_mc
+@@ -4708,6 +4708,10 @@ static int dpaa2_eth_probe(struct fsl_mc
}
#endif
err = dpaa2_eth_setup_irqs(dpni_dev);
if (err) {
netdev_warn(net_dev, "Failed to set link interrupt, fall back to polling\n");
-@@ -4722,10 +4726,6 @@ static int dpaa2_eth_probe(struct fsl_mc
+@@ -4720,10 +4724,6 @@ static int dpaa2_eth_probe(struct fsl_mc
priv->do_link_poll = true;
}
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -2020,8 +2020,11 @@ static int dpaa2_eth_link_state_update(s
+@@ -2018,8 +2018,11 @@ static int dpaa2_eth_link_state_update(s
/* When we manage the MAC/PHY using phylink there is no need
* to manually update the netif_carrier.
goto out;
/* Chech link state; speed / duplex changes are not treated yet */
-@@ -2060,6 +2063,8 @@ static int dpaa2_eth_open(struct net_dev
+@@ -2058,6 +2061,8 @@ static int dpaa2_eth_open(struct net_dev
priv->dpbp_dev->obj_desc.id, priv->bpid);
}
if (!dpaa2_eth_is_type_phy(priv)) {
/* We'll only start the txqs when the link is actually ready;
* make sure we don't race against the link up notification,
-@@ -2078,6 +2083,7 @@ static int dpaa2_eth_open(struct net_dev
+@@ -2076,6 +2081,7 @@ static int dpaa2_eth_open(struct net_dev
err = dpni_enable(priv->mc_io, 0, priv->mc_token);
if (err < 0) {
netdev_err(net_dev, "dpni_enable() failed\n");
goto enable_err;
}
-@@ -2085,6 +2091,8 @@ static int dpaa2_eth_open(struct net_dev
+@@ -2083,6 +2089,8 @@ static int dpaa2_eth_open(struct net_dev
if (dpaa2_eth_is_type_phy(priv))
dpaa2_mac_start(priv->mac);
return 0;
enable_err:
-@@ -2156,6 +2164,8 @@ static int dpaa2_eth_stop(struct net_dev
+@@ -2154,6 +2162,8 @@ static int dpaa2_eth_stop(struct net_dev
int dpni_enabled = 0;
int retries = 10;
if (dpaa2_eth_is_type_phy(priv)) {
dpaa2_mac_stop(priv->mac);
} else {
-@@ -2163,6 +2173,8 @@ static int dpaa2_eth_stop(struct net_dev
+@@ -2161,6 +2171,8 @@ static int dpaa2_eth_stop(struct net_dev
netif_carrier_off(net_dev);
}
/* On dpni_disable(), the MC firmware will:
* - stop MAC Rx and wait for all Rx frames to be enqueued to software
* - cut off WRIOP dequeues from egress FQs and wait until transmission
-@@ -2488,12 +2500,20 @@ static int dpaa2_eth_ts_ioctl(struct net
+@@ -2486,12 +2498,20 @@ static int dpaa2_eth_ts_ioctl(struct net
static int dpaa2_eth_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
{
struct dpaa2_eth_priv *priv = netdev_priv(dev);
return -EOPNOTSUPP;
}
-@@ -4453,7 +4473,9 @@ static int dpaa2_eth_connect_mac(struct
+@@ -4451,7 +4471,9 @@ static int dpaa2_eth_connect_mac(struct
goto err_close_mac;
}
return 0;
-@@ -4466,9 +4488,12 @@ err_free_mac:
+@@ -4464,9 +4486,12 @@ err_free_mac:
static void dpaa2_eth_disconnect_mac(struct dpaa2_eth_priv *priv)
{
if (!mac)
return;
-@@ -4487,6 +4512,7 @@ static irqreturn_t dpni_irq0_handler_thr
+@@ -4485,6 +4510,7 @@ static irqreturn_t dpni_irq0_handler_thr
struct fsl_mc_device *dpni_dev = to_fsl_mc_device(dev);
struct net_device *net_dev = dev_get_drvdata(dev);
struct dpaa2_eth_priv *priv = netdev_priv(net_dev);
int err;
err = dpni_get_irq_status(dpni_dev->mc_io, 0, dpni_dev->mc_handle,
-@@ -4504,7 +4530,12 @@ static irqreturn_t dpni_irq0_handler_thr
+@@ -4502,7 +4528,12 @@ static irqreturn_t dpni_irq0_handler_thr
dpaa2_eth_update_tx_fqids(priv);
rtnl_lock();
dpaa2_eth_disconnect_mac(priv);
else
dpaa2_eth_connect_mac(priv);
-@@ -4605,6 +4636,8 @@ static int dpaa2_eth_probe(struct fsl_mc
+@@ -4603,6 +4634,8 @@ static int dpaa2_eth_probe(struct fsl_mc
priv = netdev_priv(net_dev);
priv->net_dev = net_dev;
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -4529,7 +4529,6 @@ static irqreturn_t dpni_irq0_handler_thr
+@@ -4527,7 +4527,6 @@ static irqreturn_t dpni_irq0_handler_thr
dpaa2_eth_set_mac_addr(netdev_priv(net_dev));
dpaa2_eth_update_tx_fqids(priv);
/* We can avoid locking because the "endpoint changed" IRQ
* handler is the only one who changes priv->mac at runtime,
* so we are not racing with anyone.
-@@ -4539,7 +4538,6 @@ static irqreturn_t dpni_irq0_handler_thr
+@@ -4537,7 +4536,6 @@ static irqreturn_t dpni_irq0_handler_thr
dpaa2_eth_disconnect_mac(priv);
else
dpaa2_eth_connect_mac(priv);
static inline int mmc_blk_part_switch(struct mmc_card *card,
unsigned int part_type);
static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq,
-@@ -2996,6 +3003,8 @@ static int mmc_blk_probe(struct mmc_card
+@@ -2998,6 +3005,8 @@ static int mmc_blk_probe(struct mmc_card
{
struct mmc_blk_data *md;
int ret = 0;
/*
* Check that the card supports the command class(es) we need.
-@@ -3003,7 +3012,16 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3005,7 +3014,16 @@ static int mmc_blk_probe(struct mmc_card
if (!(card->csd.cmdclass & CCC_BLOCK_READ))
return -ENODEV;
card->complete_wq = alloc_workqueue("mmc_complete",
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
-@@ -3018,6 +3036,17 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3020,6 +3038,17 @@ static int mmc_blk_probe(struct mmc_card
goto out_free;
}
goto out;
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
-@@ -1814,7 +1814,8 @@ EXPORT_SYMBOL(mmc_erase);
+@@ -1819,7 +1819,8 @@ EXPORT_SYMBOL(mmc_erase);
int mmc_can_erase(struct mmc_card *card)
{
--- a/drivers/tty/serial/sc16is7xx.c
+++ b/drivers/tty/serial/sc16is7xx.c
-@@ -770,6 +770,8 @@ static bool sc16is7xx_port_irq(struct sc
+@@ -771,6 +771,8 @@ static bool sc16is7xx_port_irq(struct sc
rxlen = sc16is7xx_port_read(port, SC16IS7XX_RXLVL_REG);
if (rxlen)
sc16is7xx_handle_rx(port, rxlen, iir);
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
-@@ -3614,6 +3614,7 @@ static int __spi_validate_bits_per_word(
+@@ -3633,6 +3633,7 @@ static int __spi_validate_bits_per_word(
*/
int spi_setup(struct spi_device *spi)
{
unsigned bad_bits, ugly_bits;
int status = 0;
-@@ -3634,6 +3635,14 @@ int spi_setup(struct spi_device *spi)
+@@ -3653,6 +3654,14 @@ int spi_setup(struct spi_device *spi)
(SPI_TX_DUAL | SPI_TX_QUAD | SPI_TX_OCTAL |
SPI_RX_DUAL | SPI_RX_QUAD | SPI_RX_OCTAL)))
return -EINVAL;
--- a/drivers/mmc/core/block.c
+++ b/drivers/mmc/core/block.c
-@@ -1926,7 +1926,7 @@ static void mmc_blk_mq_rw_recovery(struc
+@@ -1928,7 +1928,7 @@ static void mmc_blk_mq_rw_recovery(struc
return;
}
static inline struct spi_driver *to_spi_driver(struct device_driver *drv)
{
return drv ? container_of(drv, struct spi_driver, driver) : NULL;
-@@ -682,6 +716,11 @@ struct spi_controller {
+@@ -683,6 +717,11 @@ struct spi_controller {
void *dummy_rx;
void *dummy_tx;
int (*fw_translate_cs)(struct spi_controller *ctlr, unsigned cs);
/*
-@@ -1489,6 +1528,9 @@ spi_register_board_info(struct spi_board
+@@ -1490,6 +1529,9 @@ spi_register_board_info(struct spi_board
{ return 0; }
#endif