summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThorsten Leemhuis <fedora@leemhuis.info>2017-03-12 10:04:46 +0100
committerThorsten Leemhuis <fedora@leemhuis.info>2017-03-12 10:04:46 +0100
commit3699f07483eed28a3f323b44600103f7c27b4b45 (patch)
treea997e2229d1a89c968a0e6cca9723b853444174b
parent411f7bf930a3c7d2b4a228827814a3595d389e26 (diff)
parent6edaa7c42fa496c4258acc6b81584c16aa808656 (diff)
downloadkernel-3699f07483eed28a3f323b44600103f7c27b4b45.tar.gz
kernel-3699f07483eed28a3f323b44600103f7c27b4b45.tar.xz
kernel-3699f07483eed28a3f323b44600103f7c27b4b45.zip
Merge remote-tracking branch 'origin/stabilization' into stabilizationkernel-4.10.2-1.vanilla.knurd.1.fc25kernel-4.10.2-1.vanilla.knurd.1.fc24
-rw-r--r--0001-tty-n_hdlc-get-rid-of-racy-n_hdlc.tbuf.patch311
-rw-r--r--baseconfig/CONFIG_ARM64_SW_TTBR0_PAN1
-rw-r--r--baseconfig/CONFIG_CRYPTO_CRC32_ARM64_CE1
-rw-r--r--baseconfig/CONFIG_CRYPTO_CRCT10DIF_ARM64_CE1
-rw-r--r--baseconfig/CONFIG_CRYPTO_SHA256_ARM641
-rw-r--r--baseconfig/CONFIG_CRYPTO_SHA512_ARM641
-rw-r--r--baseconfig/CONFIG_DEBUG_VM_RB (renamed from baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible)0
-rw-r--r--baseconfig/CONFIG_DPM_WATCHDOG (renamed from baseconfig/CONFIG_DPM_WATCHDOG revisit this in debug)0
-rw-r--r--baseconfig/CONFIG_FB_INTEL1
-rw-r--r--baseconfig/CONFIG_FB_INTEL_DEBUG1
-rw-r--r--baseconfig/CONFIG_FB_INTEL_I2C1
-rw-r--r--baseconfig/CONFIG_GPIO_SYSFS2
-rw-r--r--baseconfig/CONFIG_RADIO_WL128X (renamed from baseconfig/CONFIG_RADIO_WL128X depends on TI_ST which we don't enable)0
-rw-r--r--baseconfig/CONFIG_SND_SOC_HDAC_HDMI1
-rw-r--r--baseconfig/arm/arm64/CONFIG_XGENE_DMA2
-rw-r--r--baseconfig/powerpc/CONFIG_AGP (renamed from baseconfig/CONFIG_AGP)0
-rw-r--r--baseconfig/x86/CONFIG_AGP1
-rw-r--r--baseconfig/x86/CONFIG_AGP_ALI (renamed from baseconfig/CONFIG_AGP_ALI)0
-rw-r--r--baseconfig/x86/CONFIG_AGP_AMD (renamed from baseconfig/CONFIG_AGP_AMD)0
-rw-r--r--baseconfig/x86/CONFIG_AGP_AMD64 (renamed from baseconfig/CONFIG_AGP_AMD64)0
-rw-r--r--baseconfig/x86/CONFIG_AGP_ATI (renamed from baseconfig/CONFIG_AGP_ATI)0
-rw-r--r--baseconfig/x86/CONFIG_AGP_EFFICEON (renamed from baseconfig/CONFIG_AGP_EFFICEON)0
-rw-r--r--baseconfig/x86/CONFIG_AGP_INTEL (renamed from baseconfig/CONFIG_AGP_INTEL)0
-rw-r--r--baseconfig/x86/CONFIG_AGP_NVIDIA (renamed from baseconfig/CONFIG_AGP_NVIDIA)0
-rw-r--r--baseconfig/x86/CONFIG_AGP_SIS (renamed from baseconfig/CONFIG_AGP_SIS)0
-rw-r--r--baseconfig/x86/CONFIG_AGP_SWORKS (renamed from baseconfig/CONFIG_AGP_SWORKS)0
-rw-r--r--baseconfig/x86/CONFIG_AGP_VIA (renamed from baseconfig/CONFIG_AGP_VIA)0
-rw-r--r--baseconfig/x86/CONFIG_NET_VENDOR_SOLARFLARE1
-rw-r--r--kernel-aarch64-debug.config18
-rw-r--r--kernel-aarch64.config18
-rw-r--r--kernel-armv7hl-debug.config17
-rw-r--r--kernel-armv7hl-lpae-debug.config17
-rw-r--r--kernel-armv7hl-lpae.config17
-rw-r--r--kernel-armv7hl.config17
-rw-r--r--kernel-i686-PAE.config13
-rw-r--r--kernel-i686-PAEdebug.config13
-rw-r--r--kernel-i686-debug.config13
-rw-r--r--kernel-i686.config13
-rw-r--r--kernel-ppc64-debug.config21
-rw-r--r--kernel-ppc64.config21
-rw-r--r--kernel-ppc64le-debug.config21
-rw-r--r--kernel-ppc64le.config21
-rw-r--r--kernel-ppc64p7-debug.config21
-rw-r--r--kernel-ppc64p7.config21
-rw-r--r--kernel-s390x-debug.config22
-rw-r--r--kernel-s390x.config22
-rw-r--r--kernel-x86_64-debug.config13
-rw-r--r--kernel-x86_64.config13
-rw-r--r--kernel.spec22
-rw-r--r--sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch66
-rw-r--r--vc4-fix-vblank-cursor-update-issue.patch59
51 files changed, 510 insertions, 315 deletions
diff --git a/0001-tty-n_hdlc-get-rid-of-racy-n_hdlc.tbuf.patch b/0001-tty-n_hdlc-get-rid-of-racy-n_hdlc.tbuf.patch
new file mode 100644
index 000000000..b6cd8b211
--- /dev/null
+++ b/0001-tty-n_hdlc-get-rid-of-racy-n_hdlc.tbuf.patch
@@ -0,0 +1,311 @@
+From 1dea7a8061ad9212f4464464a80d0dcd477eceab Mon Sep 17 00:00:00 2001
+From: Alexander Popov <alex.popov@linux.com>
+Date: Tue, 28 Feb 2017 19:28:54 +0300
+Subject: [PATCH 1/1] tty: n_hdlc: get rid of racy n_hdlc.tbuf
+
+Currently N_HDLC line discipline uses a self-made singly linked list for
+data buffers and has n_hdlc.tbuf pointer for buffer retransmitting after
+an error.
+
+The commit be10eb7589337e5defbe214dae038a53dd21add8
+("tty: n_hdlc add buffer flushing") introduced racy access to n_hdlc.tbuf.
+After tx error concurrent flush_tx_queue() and n_hdlc_send_frames() can put
+one data buffer to tx_free_buf_list twice. That causes double free in
+n_hdlc_release().
+
+Let's use standard kernel linked list and get rid of n_hdlc.tbuf:
+in case of tx error put current data buffer after the head of tx_buf_list.
+
+Signed-off-by: Alexander Popov <alex.popov@linux.com>
+---
+ drivers/tty/n_hdlc.c | 132 +++++++++++++++++++++++++++------------------------
+ 1 file changed, 69 insertions(+), 63 deletions(-)
+
+diff --git a/drivers/tty/n_hdlc.c b/drivers/tty/n_hdlc.c
+index eb27883..728c824 100644
+--- a/drivers/tty/n_hdlc.c
++++ b/drivers/tty/n_hdlc.c
+@@ -114,7 +114,7 @@
+ #define DEFAULT_TX_BUF_COUNT 3
+
+ struct n_hdlc_buf {
+- struct n_hdlc_buf *link;
++ struct list_head list_item;
+ int count;
+ char buf[1];
+ };
+@@ -122,8 +122,7 @@ struct n_hdlc_buf {
+ #define N_HDLC_BUF_SIZE (sizeof(struct n_hdlc_buf) + maxframe)
+
+ struct n_hdlc_buf_list {
+- struct n_hdlc_buf *head;
+- struct n_hdlc_buf *tail;
++ struct list_head list;
+ int count;
+ spinlock_t spinlock;
+ };
+@@ -136,7 +135,6 @@ struct n_hdlc_buf_list {
+ * @backup_tty - TTY to use if tty gets closed
+ * @tbusy - reentrancy flag for tx wakeup code
+ * @woke_up - FIXME: describe this field
+- * @tbuf - currently transmitting tx buffer
+ * @tx_buf_list - list of pending transmit frame buffers
+ * @rx_buf_list - list of received frame buffers
+ * @tx_free_buf_list - list unused transmit frame buffers
+@@ -149,7 +147,6 @@ struct n_hdlc {
+ struct tty_struct *backup_tty;
+ int tbusy;
+ int woke_up;
+- struct n_hdlc_buf *tbuf;
+ struct n_hdlc_buf_list tx_buf_list;
+ struct n_hdlc_buf_list rx_buf_list;
+ struct n_hdlc_buf_list tx_free_buf_list;
+@@ -159,6 +156,8 @@ struct n_hdlc {
+ /*
+ * HDLC buffer list manipulation functions
+ */
++static void n_hdlc_buf_return(struct n_hdlc_buf_list *buf_list,
++ struct n_hdlc_buf *buf);
+ static void n_hdlc_buf_put(struct n_hdlc_buf_list *list,
+ struct n_hdlc_buf *buf);
+ static struct n_hdlc_buf *n_hdlc_buf_get(struct n_hdlc_buf_list *list);
+@@ -208,16 +207,9 @@ static void flush_tx_queue(struct tty_struct *tty)
+ {
+ struct n_hdlc *n_hdlc = tty2n_hdlc(tty);
+ struct n_hdlc_buf *buf;
+- unsigned long flags;
+
+ while ((buf = n_hdlc_buf_get(&n_hdlc->tx_buf_list)))
+ n_hdlc_buf_put(&n_hdlc->tx_free_buf_list, buf);
+- spin_lock_irqsave(&n_hdlc->tx_buf_list.spinlock, flags);
+- if (n_hdlc->tbuf) {
+- n_hdlc_buf_put(&n_hdlc->tx_free_buf_list, n_hdlc->tbuf);
+- n_hdlc->tbuf = NULL;
+- }
+- spin_unlock_irqrestore(&n_hdlc->tx_buf_list.spinlock, flags);
+ }
+
+ static struct tty_ldisc_ops n_hdlc_ldisc = {
+@@ -283,7 +275,6 @@ static void n_hdlc_release(struct n_hdlc *n_hdlc)
+ } else
+ break;
+ }
+- kfree(n_hdlc->tbuf);
+ kfree(n_hdlc);
+
+ } /* end of n_hdlc_release() */
+@@ -402,13 +393,7 @@ static void n_hdlc_send_frames(struct n_hdlc *n_hdlc, struct tty_struct *tty)
+ n_hdlc->woke_up = 0;
+ spin_unlock_irqrestore(&n_hdlc->tx_buf_list.spinlock, flags);
+
+- /* get current transmit buffer or get new transmit */
+- /* buffer from list of pending transmit buffers */
+-
+- tbuf = n_hdlc->tbuf;
+- if (!tbuf)
+- tbuf = n_hdlc_buf_get(&n_hdlc->tx_buf_list);
+-
++ tbuf = n_hdlc_buf_get(&n_hdlc->tx_buf_list);
+ while (tbuf) {
+ if (debuglevel >= DEBUG_LEVEL_INFO)
+ printk("%s(%d)sending frame %p, count=%d\n",
+@@ -420,7 +405,7 @@ static void n_hdlc_send_frames(struct n_hdlc *n_hdlc, struct tty_struct *tty)
+
+ /* rollback was possible and has been done */
+ if (actual == -ERESTARTSYS) {
+- n_hdlc->tbuf = tbuf;
++ n_hdlc_buf_return(&n_hdlc->tx_buf_list, tbuf);
+ break;
+ }
+ /* if transmit error, throw frame away by */
+@@ -435,10 +420,7 @@ static void n_hdlc_send_frames(struct n_hdlc *n_hdlc, struct tty_struct *tty)
+
+ /* free current transmit buffer */
+ n_hdlc_buf_put(&n_hdlc->tx_free_buf_list, tbuf);
+-
+- /* this tx buffer is done */
+- n_hdlc->tbuf = NULL;
+-
++
+ /* wait up sleeping writers */
+ wake_up_interruptible(&tty->write_wait);
+
+@@ -448,10 +430,12 @@ static void n_hdlc_send_frames(struct n_hdlc *n_hdlc, struct tty_struct *tty)
+ if (debuglevel >= DEBUG_LEVEL_INFO)
+ printk("%s(%d)frame %p pending\n",
+ __FILE__,__LINE__,tbuf);
+-
+- /* buffer not accepted by driver */
+- /* set this buffer as pending buffer */
+- n_hdlc->tbuf = tbuf;
++
++ /*
++ * the buffer was not accepted by driver,
++ * return it back into tx queue
++ */
++ n_hdlc_buf_return(&n_hdlc->tx_buf_list, tbuf);
+ break;
+ }
+ }
+@@ -749,7 +733,8 @@ static int n_hdlc_tty_ioctl(struct tty_struct *tty, struct file *file,
+ int error = 0;
+ int count;
+ unsigned long flags;
+-
++ struct n_hdlc_buf *buf = NULL;
++
+ if (debuglevel >= DEBUG_LEVEL_INFO)
+ printk("%s(%d)n_hdlc_tty_ioctl() called %d\n",
+ __FILE__,__LINE__,cmd);
+@@ -763,8 +748,10 @@ static int n_hdlc_tty_ioctl(struct tty_struct *tty, struct file *file,
+ /* report count of read data available */
+ /* in next available frame (if any) */
+ spin_lock_irqsave(&n_hdlc->rx_buf_list.spinlock,flags);
+- if (n_hdlc->rx_buf_list.head)
+- count = n_hdlc->rx_buf_list.head->count;
++ buf = list_first_entry_or_null(&n_hdlc->rx_buf_list.list,
++ struct n_hdlc_buf, list_item);
++ if (buf)
++ count = buf->count;
+ else
+ count = 0;
+ spin_unlock_irqrestore(&n_hdlc->rx_buf_list.spinlock,flags);
+@@ -776,8 +763,10 @@ static int n_hdlc_tty_ioctl(struct tty_struct *tty, struct file *file,
+ count = tty_chars_in_buffer(tty);
+ /* add size of next output frame in queue */
+ spin_lock_irqsave(&n_hdlc->tx_buf_list.spinlock,flags);
+- if (n_hdlc->tx_buf_list.head)
+- count += n_hdlc->tx_buf_list.head->count;
++ buf = list_first_entry_or_null(&n_hdlc->tx_buf_list.list,
++ struct n_hdlc_buf, list_item);
++ if (buf)
++ count += buf->count;
+ spin_unlock_irqrestore(&n_hdlc->tx_buf_list.spinlock,flags);
+ error = put_user(count, (int __user *)arg);
+ break;
+@@ -825,14 +814,14 @@ static unsigned int n_hdlc_tty_poll(struct tty_struct *tty, struct file *filp,
+ poll_wait(filp, &tty->write_wait, wait);
+
+ /* set bits for operations that won't block */
+- if (n_hdlc->rx_buf_list.head)
++ if (!list_empty(&n_hdlc->rx_buf_list.list))
+ mask |= POLLIN | POLLRDNORM; /* readable */
+ if (test_bit(TTY_OTHER_CLOSED, &tty->flags))
+ mask |= POLLHUP;
+ if (tty_hung_up_p(filp))
+ mask |= POLLHUP;
+ if (!tty_is_writelocked(tty) &&
+- n_hdlc->tx_free_buf_list.head)
++ !list_empty(&n_hdlc->tx_free_buf_list.list))
+ mask |= POLLOUT | POLLWRNORM; /* writable */
+ }
+ return mask;
+@@ -856,7 +845,12 @@ static struct n_hdlc *n_hdlc_alloc(void)
+ spin_lock_init(&n_hdlc->tx_free_buf_list.spinlock);
+ spin_lock_init(&n_hdlc->rx_buf_list.spinlock);
+ spin_lock_init(&n_hdlc->tx_buf_list.spinlock);
+-
++
++ INIT_LIST_HEAD(&n_hdlc->rx_free_buf_list.list);
++ INIT_LIST_HEAD(&n_hdlc->tx_free_buf_list.list);
++ INIT_LIST_HEAD(&n_hdlc->rx_buf_list.list);
++ INIT_LIST_HEAD(&n_hdlc->tx_buf_list.list);
++
+ /* allocate free rx buffer list */
+ for(i=0;i<DEFAULT_RX_BUF_COUNT;i++) {
+ buf = kmalloc(N_HDLC_BUF_SIZE, GFP_KERNEL);
+@@ -884,53 +878,65 @@ static struct n_hdlc *n_hdlc_alloc(void)
+ } /* end of n_hdlc_alloc() */
+
+ /**
++ * n_hdlc_buf_return - put the HDLC buffer after the head of the specified list
++ * @buf_list - pointer to the buffer list
++ * @buf - pointer to the buffer
++ */
++static void n_hdlc_buf_return(struct n_hdlc_buf_list *buf_list,
++ struct n_hdlc_buf *buf)
++{
++ unsigned long flags;
++
++ spin_lock_irqsave(&buf_list->spinlock, flags);
++
++ list_add(&buf->list_item, &buf_list->list);
++ buf_list->count++;
++
++ spin_unlock_irqrestore(&buf_list->spinlock, flags);
++}
++
++/**
+ * n_hdlc_buf_put - add specified HDLC buffer to tail of specified list
+- * @list - pointer to buffer list
++ * @buf_list - pointer to buffer list
+ * @buf - pointer to buffer
+ */
+-static void n_hdlc_buf_put(struct n_hdlc_buf_list *list,
++static void n_hdlc_buf_put(struct n_hdlc_buf_list *buf_list,
+ struct n_hdlc_buf *buf)
+ {
+ unsigned long flags;
+- spin_lock_irqsave(&list->spinlock,flags);
+-
+- buf->link=NULL;
+- if (list->tail)
+- list->tail->link = buf;
+- else
+- list->head = buf;
+- list->tail = buf;
+- (list->count)++;
+-
+- spin_unlock_irqrestore(&list->spinlock,flags);
+-
++
++ spin_lock_irqsave(&buf_list->spinlock, flags);
++
++ list_add_tail(&buf->list_item, &buf_list->list);
++ buf_list->count++;
++
++ spin_unlock_irqrestore(&buf_list->spinlock, flags);
+ } /* end of n_hdlc_buf_put() */
+
+ /**
+ * n_hdlc_buf_get - remove and return an HDLC buffer from list
+- * @list - pointer to HDLC buffer list
++ * @buf_list - pointer to HDLC buffer list
+ *
+ * Remove and return an HDLC buffer from the head of the specified HDLC buffer
+ * list.
+ * Returns a pointer to HDLC buffer if available, otherwise %NULL.
+ */
+-static struct n_hdlc_buf* n_hdlc_buf_get(struct n_hdlc_buf_list *list)
++static struct n_hdlc_buf *n_hdlc_buf_get(struct n_hdlc_buf_list *buf_list)
+ {
+ unsigned long flags;
+ struct n_hdlc_buf *buf;
+- spin_lock_irqsave(&list->spinlock,flags);
+-
+- buf = list->head;
++
++ spin_lock_irqsave(&buf_list->spinlock, flags);
++
++ buf = list_first_entry_or_null(&buf_list->list,
++ struct n_hdlc_buf, list_item);
+ if (buf) {
+- list->head = buf->link;
+- (list->count)--;
++ list_del(&buf->list_item);
++ buf_list->count--;
+ }
+- if (!list->head)
+- list->tail = NULL;
+-
+- spin_unlock_irqrestore(&list->spinlock,flags);
++
++ spin_unlock_irqrestore(&buf_list->spinlock, flags);
+ return buf;
+-
+ } /* end of n_hdlc_buf_get() */
+
+ static char hdlc_banner[] __initdata =
+--
+2.7.4
+
diff --git a/baseconfig/CONFIG_ARM64_SW_TTBR0_PAN b/baseconfig/CONFIG_ARM64_SW_TTBR0_PAN
deleted file mode 100644
index 3b878e832..000000000
--- a/baseconfig/CONFIG_ARM64_SW_TTBR0_PAN
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
diff --git a/baseconfig/CONFIG_CRYPTO_CRC32_ARM64_CE b/baseconfig/CONFIG_CRYPTO_CRC32_ARM64_CE
deleted file mode 100644
index ee9966699..000000000
--- a/baseconfig/CONFIG_CRYPTO_CRC32_ARM64_CE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
diff --git a/baseconfig/CONFIG_CRYPTO_CRCT10DIF_ARM64_CE b/baseconfig/CONFIG_CRYPTO_CRCT10DIF_ARM64_CE
deleted file mode 100644
index c59d53cfb..000000000
--- a/baseconfig/CONFIG_CRYPTO_CRCT10DIF_ARM64_CE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
diff --git a/baseconfig/CONFIG_CRYPTO_SHA256_ARM64 b/baseconfig/CONFIG_CRYPTO_SHA256_ARM64
deleted file mode 100644
index ba32f8501..000000000
--- a/baseconfig/CONFIG_CRYPTO_SHA256_ARM64
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_CRYPTO_SHA256_ARM64=m
diff --git a/baseconfig/CONFIG_CRYPTO_SHA512_ARM64 b/baseconfig/CONFIG_CRYPTO_SHA512_ARM64
deleted file mode 100644
index de1c4c957..000000000
--- a/baseconfig/CONFIG_CRYPTO_SHA512_ARM64
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_CRYPTO_SHA512_ARM64=m
diff --git a/baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible b/baseconfig/CONFIG_DEBUG_VM_RB
index fbc8aaef8..fbc8aaef8 100644
--- a/baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible
+++ b/baseconfig/CONFIG_DEBUG_VM_RB
diff --git a/baseconfig/CONFIG_DPM_WATCHDOG revisit this in debug b/baseconfig/CONFIG_DPM_WATCHDOG
index c12b35c43..c12b35c43 100644
--- a/baseconfig/CONFIG_DPM_WATCHDOG revisit this in debug
+++ b/baseconfig/CONFIG_DPM_WATCHDOG
diff --git a/baseconfig/CONFIG_FB_INTEL b/baseconfig/CONFIG_FB_INTEL
deleted file mode 100644
index d5ca4253f..000000000
--- a/baseconfig/CONFIG_FB_INTEL
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_FB_INTEL is not set
diff --git a/baseconfig/CONFIG_FB_INTEL_DEBUG b/baseconfig/CONFIG_FB_INTEL_DEBUG
deleted file mode 100644
index b3ff96e60..000000000
--- a/baseconfig/CONFIG_FB_INTEL_DEBUG
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_FB_INTEL_DEBUG is not set
diff --git a/baseconfig/CONFIG_FB_INTEL_I2C b/baseconfig/CONFIG_FB_INTEL_I2C
deleted file mode 100644
index 7dbd2269f..000000000
--- a/baseconfig/CONFIG_FB_INTEL_I2C
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_FB_INTEL_I2C is not set
diff --git a/baseconfig/CONFIG_GPIO_SYSFS b/baseconfig/CONFIG_GPIO_SYSFS
index 006904523..52708d181 100644
--- a/baseconfig/CONFIG_GPIO_SYSFS
+++ b/baseconfig/CONFIG_GPIO_SYSFS
@@ -1 +1 @@
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
diff --git a/baseconfig/CONFIG_RADIO_WL128X depends on TI_ST which we don't enable b/baseconfig/CONFIG_RADIO_WL128X
index da0cf2eb9..da0cf2eb9 100644
--- a/baseconfig/CONFIG_RADIO_WL128X depends on TI_ST which we don't enable
+++ b/baseconfig/CONFIG_RADIO_WL128X
diff --git a/baseconfig/CONFIG_SND_SOC_HDAC_HDMI b/baseconfig/CONFIG_SND_SOC_HDAC_HDMI
new file mode 100644
index 000000000..dfefcf887
--- /dev/null
+++ b/baseconfig/CONFIG_SND_SOC_HDAC_HDMI
@@ -0,0 +1 @@
+CONFIG_SND_SOC_HDAC_HDMI=m
diff --git a/baseconfig/arm/arm64/CONFIG_XGENE_DMA b/baseconfig/arm/arm64/CONFIG_XGENE_DMA
index 7fe45ff18..7c67d5b57 100644
--- a/baseconfig/arm/arm64/CONFIG_XGENE_DMA
+++ b/baseconfig/arm/arm64/CONFIG_XGENE_DMA
@@ -1 +1 @@
-CONFIG_XGENE_DMA=m
+# CONFIG_XGENE_DMA is not set
diff --git a/baseconfig/CONFIG_AGP b/baseconfig/powerpc/CONFIG_AGP
index ea543fee8..ea543fee8 100644
--- a/baseconfig/CONFIG_AGP
+++ b/baseconfig/powerpc/CONFIG_AGP
diff --git a/baseconfig/x86/CONFIG_AGP b/baseconfig/x86/CONFIG_AGP
new file mode 100644
index 000000000..ea543fee8
--- /dev/null
+++ b/baseconfig/x86/CONFIG_AGP
@@ -0,0 +1 @@
+CONFIG_AGP=y
diff --git a/baseconfig/CONFIG_AGP_ALI b/baseconfig/x86/CONFIG_AGP_ALI
index c46aee1e8..c46aee1e8 100644
--- a/baseconfig/CONFIG_AGP_ALI
+++ b/baseconfig/x86/CONFIG_AGP_ALI
diff --git a/baseconfig/CONFIG_AGP_AMD b/baseconfig/x86/CONFIG_AGP_AMD
index 142f8a1cd..142f8a1cd 100644
--- a/baseconfig/CONFIG_AGP_AMD
+++ b/baseconfig/x86/CONFIG_AGP_AMD
diff --git a/baseconfig/CONFIG_AGP_AMD64 b/baseconfig/x86/CONFIG_AGP_AMD64
index 97e9526e4..97e9526e4 100644
--- a/baseconfig/CONFIG_AGP_AMD64
+++ b/baseconfig/x86/CONFIG_AGP_AMD64
diff --git a/baseconfig/CONFIG_AGP_ATI b/baseconfig/x86/CONFIG_AGP_ATI
index 1f551caec..1f551caec 100644
--- a/baseconfig/CONFIG_AGP_ATI
+++ b/baseconfig/x86/CONFIG_AGP_ATI
diff --git a/baseconfig/CONFIG_AGP_EFFICEON b/baseconfig/x86/CONFIG_AGP_EFFICEON
index 070b4ae60..070b4ae60 100644
--- a/baseconfig/CONFIG_AGP_EFFICEON
+++ b/baseconfig/x86/CONFIG_AGP_EFFICEON
diff --git a/baseconfig/CONFIG_AGP_INTEL b/baseconfig/x86/CONFIG_AGP_INTEL
index 524a67977..524a67977 100644
--- a/baseconfig/CONFIG_AGP_INTEL
+++ b/baseconfig/x86/CONFIG_AGP_INTEL
diff --git a/baseconfig/CONFIG_AGP_NVIDIA b/baseconfig/x86/CONFIG_AGP_NVIDIA
index f177c1d92..f177c1d92 100644
--- a/baseconfig/CONFIG_AGP_NVIDIA
+++ b/baseconfig/x86/CONFIG_AGP_NVIDIA
diff --git a/baseconfig/CONFIG_AGP_SIS b/baseconfig/x86/CONFIG_AGP_SIS
index dac4635e3..dac4635e3 100644
--- a/baseconfig/CONFIG_AGP_SIS
+++ b/baseconfig/x86/CONFIG_AGP_SIS
diff --git a/baseconfig/CONFIG_AGP_SWORKS b/baseconfig/x86/CONFIG_AGP_SWORKS
index 09d99f431..09d99f431 100644
--- a/baseconfig/CONFIG_AGP_SWORKS
+++ b/baseconfig/x86/CONFIG_AGP_SWORKS
diff --git a/baseconfig/CONFIG_AGP_VIA b/baseconfig/x86/CONFIG_AGP_VIA
index 21da1a429..21da1a429 100644
--- a/baseconfig/CONFIG_AGP_VIA
+++ b/baseconfig/x86/CONFIG_AGP_VIA
diff --git a/baseconfig/x86/CONFIG_NET_VENDOR_SOLARFLARE b/baseconfig/x86/CONFIG_NET_VENDOR_SOLARFLARE
new file mode 100644
index 000000000..8b1f0b6bf
--- /dev/null
+++ b/baseconfig/x86/CONFIG_NET_VENDOR_SOLARFLARE
@@ -0,0 +1 @@
+CONFIG_NET_VENDOR_SOLARFLARE=y
diff --git a/kernel-aarch64-debug.config b/kernel-aarch64-debug.config
index f1f65d0f0..edd165525 100644
--- a/kernel-aarch64-debug.config
+++ b/kernel-aarch64-debug.config
@@ -145,17 +145,7 @@ CONFIG_ADAPTEC_STARFIRE=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
# CONFIG_AGP is not set
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
# CONFIG_AHCI_CEVA is not set
CONFIG_AHCI_MVEBU=m
# CONFIG_AHCI_QORIQ is not set
@@ -1509,9 +1499,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1701,7 +1688,7 @@ CONFIG_GPIO_PL061=y
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
@@ -5005,6 +4992,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
@@ -6144,7 +6132,7 @@ CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
# CONFIG_XFS_WARN is not set
-CONFIG_XGENE_DMA=m
+# CONFIG_XGENE_DMA is not set
CONFIG_XGENE_PMU=y
CONFIG_XGENE_SLIMPRO_MBOX=m
# CONFIG_XILINX_DMA is not set
diff --git a/kernel-aarch64.config b/kernel-aarch64.config
index 1195fdda0..99868582c 100644
--- a/kernel-aarch64.config
+++ b/kernel-aarch64.config
@@ -145,17 +145,7 @@ CONFIG_ADAPTEC_STARFIRE=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
# CONFIG_AGP is not set
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
# CONFIG_AHCI_CEVA is not set
CONFIG_AHCI_MVEBU=m
# CONFIG_AHCI_QORIQ is not set
@@ -1492,9 +1482,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1684,7 +1671,7 @@ CONFIG_GPIO_PL061=y
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
@@ -4982,6 +4969,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
@@ -6121,7 +6109,7 @@ CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
# CONFIG_XFS_WARN is not set
-CONFIG_XGENE_DMA=m
+# CONFIG_XGENE_DMA is not set
CONFIG_XGENE_PMU=y
CONFIG_XGENE_SLIMPRO_MBOX=m
# CONFIG_XILINX_DMA is not set
diff --git a/kernel-armv7hl-debug.config b/kernel-armv7hl-debug.config
index 14d69b6d3..cf16a6793 100644
--- a/kernel-armv7hl-debug.config
+++ b/kernel-armv7hl-debug.config
@@ -124,17 +124,7 @@ CONFIG_AEABI=y
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
# CONFIG_AGP is not set
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
# CONFIG_AHCI_CEVA is not set
CONFIG_AHCI_IMX=m
CONFIG_AHCI_MVEBU=m
@@ -257,7 +247,6 @@ CONFIG_ARCH_VIRT=y
CONFIG_ARCH_ZYNQ=y
# CONFIG_ARCNET is not set
CONFIG_ARM64_PTDUMP=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
CONFIG_ARMADA_THERMAL=m
CONFIG_ARM_AMBA=y
CONFIG_ARM_APPENDED_DTB=y
@@ -1652,9 +1641,6 @@ CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_IMX is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1852,7 +1838,7 @@ CONFIG_GPIO_PL061=y
CONFIG_GPIO_STMPE=y
# CONFIG_GPIO_SX150X is not set
CONFIG_GPIO_SYSCON=m
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS65218=m
@@ -5447,6 +5433,7 @@ CONFIG_SND_SOC_FSL_SSI=m
CONFIG_SND_SOC_FSL_UTILS=m
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
CONFIG_SND_SOC_I2C_AND_SPI=m
# CONFIG_SND_SOC_IMG is not set
diff --git a/kernel-armv7hl-lpae-debug.config b/kernel-armv7hl-lpae-debug.config
index ef4179471..1866b1638 100644
--- a/kernel-armv7hl-lpae-debug.config
+++ b/kernel-armv7hl-lpae-debug.config
@@ -124,17 +124,7 @@ CONFIG_AEABI=y
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
# CONFIG_AGP is not set
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
# CONFIG_AHCI_CEVA is not set
CONFIG_AHCI_MVEBU=m
# CONFIG_AHCI_QORIQ is not set
@@ -249,7 +239,6 @@ CONFIG_ARCH_VIRT=y
# CONFIG_ARCH_ZYNQ is not set
# CONFIG_ARCNET is not set
CONFIG_ARM64_PTDUMP=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
CONFIG_ARMADA_THERMAL=m
CONFIG_ARM_AMBA=y
CONFIG_ARM_APPENDED_DTB=y
@@ -1575,9 +1564,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1767,7 +1753,7 @@ CONFIG_GPIO_PL061=y
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
CONFIG_GPIO_SYSCON=m
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS65910=y
@@ -5140,6 +5126,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-armv7hl-lpae.config b/kernel-armv7hl-lpae.config
index 89d6015d5..8ee9feedf 100644
--- a/kernel-armv7hl-lpae.config
+++ b/kernel-armv7hl-lpae.config
@@ -124,17 +124,7 @@ CONFIG_AEABI=y
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
# CONFIG_AGP is not set
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
# CONFIG_AHCI_CEVA is not set
CONFIG_AHCI_MVEBU=m
# CONFIG_AHCI_QORIQ is not set
@@ -249,7 +239,6 @@ CONFIG_ARCH_VIRT=y
# CONFIG_ARCH_ZYNQ is not set
# CONFIG_ARCNET is not set
# CONFIG_ARM64_PTDUMP is not set
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
CONFIG_ARMADA_THERMAL=m
CONFIG_ARM_AMBA=y
CONFIG_ARM_APPENDED_DTB=y
@@ -1559,9 +1548,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1751,7 +1737,7 @@ CONFIG_GPIO_PL061=y
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
CONFIG_GPIO_SYSCON=m
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS65910=y
@@ -5118,6 +5104,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-armv7hl.config b/kernel-armv7hl.config
index 2f6979473..51af64def 100644
--- a/kernel-armv7hl.config
+++ b/kernel-armv7hl.config
@@ -124,17 +124,7 @@ CONFIG_AEABI=y
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
# CONFIG_AGP is not set
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
# CONFIG_AHCI_CEVA is not set
CONFIG_AHCI_IMX=m
CONFIG_AHCI_MVEBU=m
@@ -257,7 +247,6 @@ CONFIG_ARCH_VIRT=y
CONFIG_ARCH_ZYNQ=y
# CONFIG_ARCNET is not set
# CONFIG_ARM64_PTDUMP is not set
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
CONFIG_ARMADA_THERMAL=m
CONFIG_ARM_AMBA=y
CONFIG_ARM_APPENDED_DTB=y
@@ -1636,9 +1625,6 @@ CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_IMX is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1836,7 +1822,7 @@ CONFIG_GPIO_PL061=y
CONFIG_GPIO_STMPE=y
# CONFIG_GPIO_SX150X is not set
CONFIG_GPIO_SYSCON=m
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS65218=m
@@ -5425,6 +5411,7 @@ CONFIG_SND_SOC_FSL_SSI=m
CONFIG_SND_SOC_FSL_UTILS=m
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
CONFIG_SND_SOC_I2C_AND_SPI=m
# CONFIG_SND_SOC_IMG is not set
diff --git a/kernel-i686-PAE.config b/kernel-i686-PAE.config
index 5f996ccb4..477ebedc7 100644
--- a/kernel-i686-PAE.config
+++ b/kernel-i686-PAE.config
@@ -225,7 +225,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
# CONFIG_ARM64_PTDUMP is not set
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASUS_LAPTOP=m
@@ -824,14 +823,12 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
CONFIG_CRYPTO_CRC32_PCLMUL=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_CTR=y
@@ -897,10 +894,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_SERPENT_SSE2_586=m
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1393,9 +1388,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1588,7 +1580,7 @@ CONFIG_GPIO_SCH=m
# CONFIG_GPIO_SODAVILLE is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -3336,7 +3328,7 @@ CONFIG_NET_VENDOR_ROCKER=y
CONFIG_NET_VENDOR_SILAN=y
CONFIG_NET_VENDOR_SIS=y
CONFIG_NET_VENDOR_SMSC=y
-# CONFIG_NET_VENDOR_SOLARFLARE is not set
+CONFIG_NET_VENDOR_SOLARFLARE=y
CONFIG_NET_VENDOR_STMICRO=y
CONFIG_NET_VENDOR_SUN=y
# CONFIG_NET_VENDOR_SYNOPSYS is not set
@@ -4764,6 +4756,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-i686-PAEdebug.config b/kernel-i686-PAEdebug.config
index 35a7863da..9b316ee62 100644
--- a/kernel-i686-PAEdebug.config
+++ b/kernel-i686-PAEdebug.config
@@ -225,7 +225,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
CONFIG_ARM64_PTDUMP=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASUS_LAPTOP=m
@@ -825,14 +824,12 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
CONFIG_CRYPTO_CRC32_PCLMUL=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_CTR=y
@@ -898,10 +895,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_SERPENT_SSE2_586=m
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1410,9 +1405,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1605,7 +1597,7 @@ CONFIG_GPIO_SCH=m
# CONFIG_GPIO_SODAVILLE is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -3355,7 +3347,7 @@ CONFIG_NET_VENDOR_ROCKER=y
CONFIG_NET_VENDOR_SILAN=y
CONFIG_NET_VENDOR_SIS=y
CONFIG_NET_VENDOR_SMSC=y
-# CONFIG_NET_VENDOR_SOLARFLARE is not set
+CONFIG_NET_VENDOR_SOLARFLARE=y
CONFIG_NET_VENDOR_STMICRO=y
CONFIG_NET_VENDOR_SUN=y
# CONFIG_NET_VENDOR_SYNOPSYS is not set
@@ -4785,6 +4777,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-i686-debug.config b/kernel-i686-debug.config
index 490f9ac26..ca49b6d5d 100644
--- a/kernel-i686-debug.config
+++ b/kernel-i686-debug.config
@@ -225,7 +225,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
CONFIG_ARM64_PTDUMP=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASUS_LAPTOP=m
@@ -825,14 +824,12 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
CONFIG_CRYPTO_CRC32_PCLMUL=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_CTR=y
@@ -898,10 +895,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_SERPENT_SSE2_586=m
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1410,9 +1405,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1605,7 +1597,7 @@ CONFIG_GPIO_SCH=m
# CONFIG_GPIO_SODAVILLE is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -3355,7 +3347,7 @@ CONFIG_NET_VENDOR_ROCKER=y
CONFIG_NET_VENDOR_SILAN=y
CONFIG_NET_VENDOR_SIS=y
CONFIG_NET_VENDOR_SMSC=y
-# CONFIG_NET_VENDOR_SOLARFLARE is not set
+CONFIG_NET_VENDOR_SOLARFLARE=y
CONFIG_NET_VENDOR_STMICRO=y
CONFIG_NET_VENDOR_SUN=y
# CONFIG_NET_VENDOR_SYNOPSYS is not set
@@ -4785,6 +4777,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-i686.config b/kernel-i686.config
index c8dcfc858..c9ffb0272 100644
--- a/kernel-i686.config
+++ b/kernel-i686.config
@@ -225,7 +225,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
# CONFIG_ARM64_PTDUMP is not set
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASUS_LAPTOP=m
@@ -824,14 +823,12 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
CONFIG_CRYPTO_CRC32_PCLMUL=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_CTR=y
@@ -897,10 +894,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_SERPENT_SSE2_586=m
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1393,9 +1388,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1588,7 +1580,7 @@ CONFIG_GPIO_SCH=m
# CONFIG_GPIO_SODAVILLE is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -3336,7 +3328,7 @@ CONFIG_NET_VENDOR_ROCKER=y
CONFIG_NET_VENDOR_SILAN=y
CONFIG_NET_VENDOR_SIS=y
CONFIG_NET_VENDOR_SMSC=y
-# CONFIG_NET_VENDOR_SOLARFLARE is not set
+CONFIG_NET_VENDOR_SOLARFLARE=y
CONFIG_NET_VENDOR_STMICRO=y
CONFIG_NET_VENDOR_SUN=y
# CONFIG_NET_VENDOR_SYNOPSYS is not set
@@ -4764,6 +4756,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-ppc64-debug.config b/kernel-ppc64-debug.config
index 318317a3f..026ffc2bd 100644
--- a/kernel-ppc64-debug.config
+++ b/kernel-ppc64-debug.config
@@ -125,17 +125,7 @@ CONFIG_AFFS_FS=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
CONFIG_AGP_UNINORTH=y
-CONFIG_AGP_VIA=y
CONFIG_AGP=y
# CONFIG_AHCI_CEVA is not set
# CONFIG_AHCI_QORIQ is not set
@@ -187,7 +177,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
CONFIG_ARM64_PTDUMP=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
@@ -821,13 +810,11 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_CTR=y
@@ -889,10 +876,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
# CONFIG_CRYPTO_SHA1_PPC is not set
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1345,9 +1330,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
CONFIG_FB_IBM_GXT4500=y
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
CONFIG_FB_MATROX_G=y
@@ -1539,7 +1521,7 @@ CONFIG_GPIO_PCF857X=m
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -4656,6 +4638,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-ppc64.config b/kernel-ppc64.config
index 2cc4ad06a..69c5f3d8c 100644
--- a/kernel-ppc64.config
+++ b/kernel-ppc64.config
@@ -125,17 +125,7 @@ CONFIG_AFFS_FS=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
CONFIG_AGP_UNINORTH=y
-CONFIG_AGP_VIA=y
CONFIG_AGP=y
# CONFIG_AHCI_CEVA is not set
# CONFIG_AHCI_QORIQ is not set
@@ -187,7 +177,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
# CONFIG_ARM64_PTDUMP is not set
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
@@ -820,13 +809,11 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_CTR=y
@@ -888,10 +875,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
# CONFIG_CRYPTO_SHA1_PPC is not set
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1328,9 +1313,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
CONFIG_FB_IBM_GXT4500=y
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
CONFIG_FB_MATROX_G=y
@@ -1522,7 +1504,7 @@ CONFIG_GPIO_PCF857X=m
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -4633,6 +4615,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-ppc64le-debug.config b/kernel-ppc64le-debug.config
index ae87cf9f4..59393dcba 100644
--- a/kernel-ppc64le-debug.config
+++ b/kernel-ppc64le-debug.config
@@ -122,16 +122,6 @@ CONFIG_AFFS_FS=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
CONFIG_AGP=y
# CONFIG_AHCI_CEVA is not set
# CONFIG_AHCI_QORIQ is not set
@@ -181,7 +171,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
CONFIG_ARM64_PTDUMP=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
@@ -776,13 +765,11 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_CTR=y
@@ -844,10 +831,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
# CONFIG_CRYPTO_SHA1_PPC is not set
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1299,9 +1284,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
CONFIG_FB_IBM_GXT4500=y
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
CONFIG_FB_MATROX_G=y
@@ -1493,7 +1475,7 @@ CONFIG_GPIO_PCF857X=m
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -4585,6 +4567,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-ppc64le.config b/kernel-ppc64le.config
index 48bee7544..793914ca6 100644
--- a/kernel-ppc64le.config
+++ b/kernel-ppc64le.config
@@ -122,16 +122,6 @@ CONFIG_AFFS_FS=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
CONFIG_AGP=y
# CONFIG_AHCI_CEVA is not set
# CONFIG_AHCI_QORIQ is not set
@@ -181,7 +171,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
# CONFIG_ARM64_PTDUMP is not set
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
@@ -775,13 +764,11 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_CTR=y
@@ -843,10 +830,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
# CONFIG_CRYPTO_SHA1_PPC is not set
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1282,9 +1267,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
CONFIG_FB_IBM_GXT4500=y
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
CONFIG_FB_MATROX_G=y
@@ -1476,7 +1458,7 @@ CONFIG_GPIO_PCF857X=m
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -4562,6 +4544,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-ppc64p7-debug.config b/kernel-ppc64p7-debug.config
index 736b5a7c9..66f831cb8 100644
--- a/kernel-ppc64p7-debug.config
+++ b/kernel-ppc64p7-debug.config
@@ -122,16 +122,6 @@ CONFIG_AFFS_FS=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
CONFIG_AGP=y
# CONFIG_AHCI_CEVA is not set
# CONFIG_AHCI_QORIQ is not set
@@ -181,7 +171,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
CONFIG_ARM64_PTDUMP=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
@@ -776,13 +765,11 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_CTR=y
@@ -844,10 +831,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
# CONFIG_CRYPTO_SHA1_PPC is not set
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1298,9 +1283,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
CONFIG_FB_IBM_GXT4500=y
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
CONFIG_FB_MATROX_G=y
@@ -1492,7 +1474,7 @@ CONFIG_GPIO_PCF857X=m
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -4584,6 +4566,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-ppc64p7.config b/kernel-ppc64p7.config
index 92abf2172..c5ed24d48 100644
--- a/kernel-ppc64p7.config
+++ b/kernel-ppc64p7.config
@@ -122,16 +122,6 @@ CONFIG_AFFS_FS=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
CONFIG_AGP=y
# CONFIG_AHCI_CEVA is not set
# CONFIG_AHCI_QORIQ is not set
@@ -181,7 +171,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
# CONFIG_ARM64_PTDUMP is not set
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
@@ -775,13 +764,11 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_CTR=y
@@ -843,10 +830,8 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
# CONFIG_CRYPTO_SHA1_PPC is not set
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_TEA=m
@@ -1281,9 +1266,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
CONFIG_FB_IBM_GXT4500=y
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
CONFIG_FB_MATROX_G=y
@@ -1475,7 +1457,7 @@ CONFIG_GPIO_PCF857X=m
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -4561,6 +4543,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-s390x-debug.config b/kernel-s390x-debug.config
index cd3b70250..773f0b4ef 100644
--- a/kernel-s390x-debug.config
+++ b/kernel-s390x-debug.config
@@ -122,17 +122,6 @@ CONFIG_AFIUCV=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
-CONFIG_AGP=y
# CONFIG_AHCI_CEVA is not set
# CONFIG_AHCI_QORIQ is not set
# CONFIG_AIC79XX_BUILD_FIRMWARE is not set
@@ -183,7 +172,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
CONFIG_ARM64_PTDUMP=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
@@ -773,14 +761,12 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
CONFIG_CRYPTO_CRC32_S390=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_CTR=y
@@ -835,11 +821,9 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_SHA1_S390=m
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256_S390=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SHA512_S390=m
CONFIG_CRYPTO_SIMD=y
@@ -1290,9 +1274,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
@@ -1467,7 +1448,7 @@ CONFIG_GPIOLIB=y
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -4481,6 +4462,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-s390x.config b/kernel-s390x.config
index 1d8139bdf..a46da965f 100644
--- a/kernel-s390x.config
+++ b/kernel-s390x.config
@@ -122,17 +122,6 @@ CONFIG_AFIUCV=m
# CONFIG_AF_KCM is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_AFS_FS is not set
-CONFIG_AGP_ALI=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_AMD=y
-CONFIG_AGP_ATI=y
-CONFIG_AGP_EFFICEON=y
-CONFIG_AGP_INTEL=y
-CONFIG_AGP_NVIDIA=y
-CONFIG_AGP_SIS=y
-CONFIG_AGP_SWORKS=y
-CONFIG_AGP_VIA=y
-CONFIG_AGP=y
# CONFIG_AHCI_CEVA is not set
# CONFIG_AHCI_QORIQ is not set
# CONFIG_AIC79XX_BUILD_FIRMWARE is not set
@@ -183,7 +172,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
# CONFIG_ARM64_PTDUMP is not set
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
@@ -772,14 +760,12 @@ CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
CONFIG_CRYPTO_CRC32_S390=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_CTR=y
@@ -834,11 +820,9 @@ CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_SHA1_S390=m
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256_S390=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SHA512_S390=m
CONFIG_CRYPTO_SIMD=y
@@ -1273,9 +1257,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
@@ -1450,7 +1431,7 @@ CONFIG_GPIOLIB=y
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -4458,6 +4439,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-x86_64-debug.config b/kernel-x86_64-debug.config
index 121f8efca..f00a23b9d 100644
--- a/kernel-x86_64-debug.config
+++ b/kernel-x86_64-debug.config
@@ -224,7 +224,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
CONFIG_ARM64_PTDUMP=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASUS_LAPTOP=m
@@ -839,14 +838,12 @@ CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CHACHA20_X86_64=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
CONFIG_CRYPTO_CRC32_PCLMUL=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m
CONFIG_CRYPTO_CRYPTD=y
@@ -921,12 +918,10 @@ CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m
# CONFIG_CRYPTO_SHA1_MB is not set
CONFIG_CRYPTO_SHA1_SSSE3=m
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256_MB=m
CONFIG_CRYPTO_SHA256_SSSE3=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SHA512_MB=m
CONFIG_CRYPTO_SHA512_SSSE3=m
@@ -1440,9 +1435,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1631,7 +1623,7 @@ CONFIG_GPIOLIB=y
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -3377,7 +3369,7 @@ CONFIG_NET_VENDOR_ROCKER=y
CONFIG_NET_VENDOR_SILAN=y
CONFIG_NET_VENDOR_SIS=y
CONFIG_NET_VENDOR_SMSC=y
-# CONFIG_NET_VENDOR_SOLARFLARE is not set
+CONFIG_NET_VENDOR_SOLARFLARE=y
CONFIG_NET_VENDOR_STMICRO=y
CONFIG_NET_VENDOR_SUN=y
# CONFIG_NET_VENDOR_SYNOPSYS is not set
@@ -4813,6 +4805,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel-x86_64.config b/kernel-x86_64.config
index aefc4c930..81a2dfb5d 100644
--- a/kernel-x86_64.config
+++ b/kernel-x86_64.config
@@ -224,7 +224,6 @@ CONFIG_AR5523=m
# CONFIG_ARCH_TEGRA_186_SOC is not set
# CONFIG_ARCNET is not set
# CONFIG_ARM64_PTDUMP is not set
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
# CONFIG_ARM_SCPI_PROTOCOL is not set
# CONFIG_AS3935 is not set
CONFIG_ASUS_LAPTOP=m
@@ -838,14 +837,12 @@ CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_CHACHA20_X86_64=m
CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_CRC32_ARM64_CE=m
CONFIG_CRYPTO_CRC32_ARM_CE=m
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_CRC32C_VPMSUM=m
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32=m
CONFIG_CRYPTO_CRC32_PCLMUL=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m
CONFIG_CRYPTO_CRYPTD=y
@@ -920,12 +917,10 @@ CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m
# CONFIG_CRYPTO_SHA1_MB is not set
CONFIG_CRYPTO_SHA1_SSSE3=m
CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256_ARM64=m
CONFIG_CRYPTO_SHA256_MB=m
CONFIG_CRYPTO_SHA256_SSSE3=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SHA512_MB=m
CONFIG_CRYPTO_SHA512_SSSE3=m
@@ -1423,9 +1418,6 @@ CONFIG_FB_I810_I2C=y
CONFIG_FB_I810=m
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
-# CONFIG_FB_INTEL is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX_G is not set
@@ -1614,7 +1606,7 @@ CONFIG_GPIOLIB=y
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
# CONFIG_GPIO_TS5500 is not set
@@ -3358,7 +3350,7 @@ CONFIG_NET_VENDOR_ROCKER=y
CONFIG_NET_VENDOR_SILAN=y
CONFIG_NET_VENDOR_SIS=y
CONFIG_NET_VENDOR_SMSC=y
-# CONFIG_NET_VENDOR_SOLARFLARE is not set
+CONFIG_NET_VENDOR_SOLARFLARE=y
CONFIG_NET_VENDOR_STMICRO=y
CONFIG_NET_VENDOR_SUN=y
# CONFIG_NET_VENDOR_SYNOPSYS is not set
@@ -4792,6 +4784,7 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_FSL_SSI is not set
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
+CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
diff --git a/kernel.spec b/kernel.spec
index f816209bd..6352a0154 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -540,6 +540,8 @@ Patch434: 0001-i2c-bcm2835-Debug-test-for-curr_msg.patch
# Upstream fixes for i2c/serial/ethernet MAC addresses
Patch435: bcm283x-fixes.patch
+Patch436: vc4-fix-vblank-cursor-update-issue.patch
+
# http://www.spinics.net/lists/arm-kernel/msg552554.html
Patch438: arm-imx6-hummingboard2.patch
@@ -612,6 +614,12 @@ Patch853: 0001-Work-around-for-gcc7-and-arm64.patch
#CVE-2017-2596 rhbz 1417812 1417813
Patch854: kvm-fix-page-struct-leak-in-handle_vmon.patch
+#CVE-2017-6353 rhbz 1428907 1428910
+Patch855: sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch
+
+# CVE-2017-2636 rhbz 1430049
+Patch668: 0001-tty-n_hdlc-get-rid-of-racy-n_hdlc.tbuf.patch
+
# END OF PATCH DEFINITIONS
%endif
@@ -821,7 +829,6 @@ Summary: Development package for building kernel modules to match the %{?2:%{2}
Group: System Environment/Kernel\
Provides: kernel%{?1:-%{1}}-devel-%{_target_cpu} = %{version}-%{release}\
Provides: kernel-devel-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
-Provides: kernel-devel = %{version}-%{release}%{?1:+%{1}}\
Provides: kernel-devel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Provides: installonlypkg(kernel)\
AutoReqProv: no\
@@ -2182,6 +2189,19 @@ fi
#
#
%changelog
+* Tue Mar 07 2017 Laura Abbott <labbott@fedoraproject.org>
+- CVE-2017-2636 Race condition access to n_hdlc.tbuf causes double free in n_hdlc_release (rhbz 1430049)
+
+* Mon Mar 6 2017 Justin M. Forbes <jforbes@fedoraproject.org>
+- CVE-2017-6353 Possible double free in stcp_sendmsg (rhbz 1428907 1428910)
+
+* Wed Mar 1 2017 Peter Robinson <pbrobinson@fedoraproject.org>
+- Add patch to fix desktop lockups on RPi (vc4) RHBZ# 1389163
+- Minor config cleanups
+
+* Tue Feb 28 2017 Justin M. Forbes <jforbes@fedoraproject.org>
+- Fix kernel-devel virtual provide
+
* Mon Feb 27 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.10.1-1
- Linux v4.10.1
diff --git a/sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch b/sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch
new file mode 100644
index 000000000..47f586ace
--- /dev/null
+++ b/sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch
@@ -0,0 +1,66 @@
+From dfcb9f4f99f1e9a49e43398a7bfbf56927544af1 Mon Sep 17 00:00:00 2001
+From: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
+Date: Thu, 23 Feb 2017 09:31:18 -0300
+Subject: [PATCH] sctp: deny peeloff operation on asocs with threads sleeping
+ on it
+
+commit 2dcab5984841 ("sctp: avoid BUG_ON on sctp_wait_for_sndbuf")
+attempted to avoid a BUG_ON call when the association being used for a
+sendmsg() is blocked waiting for more sndbuf and another thread did a
+peeloff operation on such asoc, moving it to another socket.
+
+As Ben Hutchings noticed, then in such case it would return without
+locking back the socket and would cause two unlocks in a row.
+
+Further analysis also revealed that it could allow a double free if the
+application managed to peeloff the asoc that is created during the
+sendmsg call, because then sctp_sendmsg() would try to free the asoc
+that was created only for that call.
+
+This patch takes another approach. It will deny the peeloff operation
+if there is a thread sleeping on the asoc, so this situation doesn't
+exist anymore. This avoids the issues described above and also honors
+the syscalls that are already being handled (it can be multiple sendmsg
+calls).
+
+Joint work with Xin Long.
+
+Fixes: 2dcab5984841 ("sctp: avoid BUG_ON on sctp_wait_for_sndbuf")
+Cc: Alexander Popov <alex.popov@linux.com>
+Cc: Ben Hutchings <ben@decadent.org.uk>
+Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
+Signed-off-by: Xin Long <lucien.xin@gmail.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ net/sctp/socket.c | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/net/sctp/socket.c b/net/sctp/socket.c
+index b532148..465a9c8 100644
+--- a/net/sctp/socket.c
++++ b/net/sctp/socket.c
+@@ -4862,6 +4862,12 @@ int sctp_do_peeloff(struct sock *sk, sctp_assoc_t id, struct socket **sockp)
+ if (!asoc)
+ return -EINVAL;
+
++ /* If there is a thread waiting on more sndbuf space for
++ * sending on this asoc, it cannot be peeled.
++ */
++ if (waitqueue_active(&asoc->wait))
++ return -EBUSY;
++
+ /* An association cannot be branched off from an already peeled-off
+ * socket, nor is this supported for tcp style sockets.
+ */
+@@ -7599,8 +7605,6 @@ static int sctp_wait_for_sndbuf(struct sctp_association *asoc, long *timeo_p,
+ */
+ release_sock(sk);
+ current_timeo = schedule_timeout(current_timeo);
+- if (sk != asoc->base.sk)
+- goto do_error;
+ lock_sock(sk);
+
+ *timeo_p = current_timeo;
+--
+2.9.3
+
diff --git a/vc4-fix-vblank-cursor-update-issue.patch b/vc4-fix-vblank-cursor-update-issue.patch
new file mode 100644
index 000000000..8537d67ca
--- /dev/null
+++ b/vc4-fix-vblank-cursor-update-issue.patch
@@ -0,0 +1,59 @@
+From 6d24c1c5918907ab78a5729b78c0d165deb3cc2b Mon Sep 17 00:00:00 2001
+From: Michael Zoran <mzoran@crowfest.net>
+Date: Thu, 23 Feb 2017 17:54:31 -0800
+Subject: drm/vc4: Don't wait for vblank when updating the cursor
+
+Commonly used desktop environments such as xfce4 and gnome
+on debian sid can flood the graphics drivers with cursor
+updates. Because the current implementation is waiting
+for a vblank between cursor updates, this will cause the
+display to hang for a long time since a typical refresh
+rate is only 60Hz.
+
+This is unnecessary and unexpected by user mode software,
+so simply swap out the cursor frame buffer without waiting.
+
+Signed-off-by: Michael Zoran <mzoran@crowfest.net>
+Reviewed-by: Eric Anholt <eric@anholt.net>
+Link: http://patchwork.freedesktop.org/patch/msgid/20170224015431.24583-1-mzoran@crowfest.net
+
+diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
+index f7a229d..110224c 100644
+--- a/drivers/gpu/drm/vc4/vc4_plane.c
++++ b/drivers/gpu/drm/vc4/vc4_plane.c
+@@ -20,6 +20,7 @@
+
+ #include "vc4_drv.h"
+ #include "vc4_regs.h"
++#include "drm_atomic.h"
+ #include "drm_atomic_helper.h"
+ #include "drm_fb_cma_helper.h"
+ #include "drm_plane_helper.h"
+@@ -769,12 +770,6 @@ vc4_update_plane(struct drm_plane *plane,
+ if (!plane_state)
+ goto out;
+
+- /* If we're changing the cursor contents, do that in the
+- * normal vblank-synced atomic path.
+- */
+- if (fb != plane_state->fb)
+- goto out;
+-
+ /* No configuring new scaling in the fast path. */
+ if (crtc_w != plane_state->crtc_w ||
+ crtc_h != plane_state->crtc_h ||
+@@ -783,6 +778,11 @@ vc4_update_plane(struct drm_plane *plane,
+ goto out;
+ }
+
++ if (fb != plane_state->fb) {
++ drm_atomic_set_fb_for_plane(plane->state, fb);
++ vc4_plane_async_set_fb(plane, fb);
++ }
++
+ /* Set the cursor's position on the screen. This is the
+ * expected change from the drm_mode_cursor_universal()
+ * helper.
+--
+cgit v0.10.2
+