diff --git a/boot/kernel.img b/boot/kernel.img
index 6ce5ed78fc00..6632900d8774 100755
Binary files a/boot/kernel.img and b/boot/kernel.img differ
diff --git a/boot/kernel7.img b/boot/kernel7.img
index 1c8fe68b5615..9f7bcfc11799 100755
Binary files a/boot/kernel7.img and b/boot/kernel7.img differ
diff --git a/boot/kernel7l.img b/boot/kernel7l.img
index bc6b5058200f..be345d597bc9 100755
Binary files a/boot/kernel7l.img and b/boot/kernel7l.img differ
diff --git a/boot/kernel8.img b/boot/kernel8.img
index b655b6f4163f..a807b7e77a15 100644
Binary files a/boot/kernel8.img and b/boot/kernel8.img differ
diff --git a/boot/kernel_2712.img b/boot/kernel_2712.img
index b738a1d4ced9..f24edcd7e322 100644
Binary files a/boot/kernel_2712.img and b/boot/kernel_2712.img differ
diff --git a/boot/overlays/README b/boot/overlays/README
index d1ed7f64ec5a..c1be40a23c7b 100644
--- a/boot/overlays/README
+++ b/boot/overlays/README
@@ -4438,6 +4438,14 @@ Params: cs0_pin GPIO pin for CS0 (default 8)
it for other uses.
+Name: spi0-1cs-inverted
+Info: Only use one CS pin for SPI0 and set to active-high
+Load: dtoverlay=spi0-1cs-inverted,=
+Params: cs0_pin GPIO pin for CS0 (default 8)
+ no_miso Don't claim and use the MISO pin (9), freeing
+ it for other uses.
+
+
Name: spi0-2cs
Info: Change the CS pins for SPI0
Load: dtoverlay=spi0-2cs,=
diff --git a/boot/overlays/spi0-1cs-inverted.dtbo b/boot/overlays/spi0-1cs-inverted.dtbo
new file mode 100644
index 000000000000..6a125d8cd929
Binary files /dev/null and b/boot/overlays/spi0-1cs-inverted.dtbo differ
diff --git a/extra/Module8.symvers b/extra/Module8.symvers
index c92597c91a90..0c259b1c649a 100644
--- a/extra/Module8.symvers
+++ b/extra/Module8.symvers
@@ -12249,6 +12249,8 @@
0xf9eeca06 rp1_pio_sm_put drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0xf0a11f01 rp1_pio_sm_get drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0xf43c6805 rp1_pio_sm_set_dmactrl drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
+0xf4b58c42 rp1_pio_sm_fifo_state drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
+0xe6b798fa rp1_pio_sm_drain_tx drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0x2f64a4f6 rp1_pio_gpio_init drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0xf3280aea rp1_pio_gpio_set_function drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0xfa7dabb0 rp1_pio_gpio_set_pulls drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
diff --git a/extra/Module_2712.symvers b/extra/Module_2712.symvers
index b2c84533bf5d..42bee1da1638 100644
--- a/extra/Module_2712.symvers
+++ b/extra/Module_2712.symvers
@@ -12249,6 +12249,8 @@
0xf9eeca06 rp1_pio_sm_put drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0xf0a11f01 rp1_pio_sm_get drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0xf43c6805 rp1_pio_sm_set_dmactrl drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
+0xf4b58c42 rp1_pio_sm_fifo_state drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
+0xe6b798fa rp1_pio_sm_drain_tx drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0x2f64a4f6 rp1_pio_gpio_init drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0xf3280aea rp1_pio_gpio_set_function drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
0xfa7dabb0 rp1_pio_gpio_set_pulls drivers/misc/rp1-pio EXPORT_SYMBOL_GPL
diff --git a/extra/git_hash b/extra/git_hash
index aa7f846b72fd..86a92b0ec96d 100644
--- a/extra/git_hash
+++ b/extra/git_hash
@@ -1 +1 @@
-0e4968617aad7d0f88e0a630499202eaae407a19
+dd2394360860d15146c96635796a75b05bb32b61
diff --git a/extra/uname_string b/extra/uname_string
index 9fa825539eaf..c47def9ddc18 100644
--- a/extra/uname_string
+++ b/extra/uname_string
@@ -1 +1 @@
-Linux version 6.6.62+ (dom@buildbot) (arm-linux-gnueabihf-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1816 Mon Nov 18 15:28:58 GMT 2024
+Linux version 6.6.62+ (dom@buildbot) (arm-linux-gnueabihf-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1817 Wed Nov 20 13:30:40 GMT 2024
diff --git a/extra/uname_string7 b/extra/uname_string7
index 2f29ddefa489..216f63aa8282 100644
--- a/extra/uname_string7
+++ b/extra/uname_string7
@@ -1 +1 @@
-Linux version 6.6.62-v7+ (dom@buildbot) (arm-linux-gnueabihf-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1816 SMP Mon Nov 18 15:30:49 GMT 2024
+Linux version 6.6.62-v7+ (dom@buildbot) (arm-linux-gnueabihf-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1817 SMP Wed Nov 20 13:31:50 GMT 2024
diff --git a/extra/uname_string7l b/extra/uname_string7l
index 3208d33acfd7..4460c95b14af 100644
--- a/extra/uname_string7l
+++ b/extra/uname_string7l
@@ -1 +1 @@
-Linux version 6.6.62-v7l+ (dom@buildbot) (arm-linux-gnueabihf-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1816 SMP Mon Nov 18 15:33:33 GMT 2024
+Linux version 6.6.62-v7l+ (dom@buildbot) (arm-linux-gnueabihf-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1817 SMP Wed Nov 20 13:33:01 GMT 2024
diff --git a/extra/uname_string8 b/extra/uname_string8
index 447c00fce7b3..26102b36f4bb 100644
--- a/extra/uname_string8
+++ b/extra/uname_string8
@@ -1 +1 @@
-Linux version 6.6.62-v8+ (dom@buildbot) (aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1816 SMP PREEMPT Mon Nov 18 15:35:52 GMT 2024
+Linux version 6.6.62-v8+ (dom@buildbot) (aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1817 SMP PREEMPT Wed Nov 20 13:34:18 GMT 2024
diff --git a/extra/uname_string_2712 b/extra/uname_string_2712
index 74838704c2df..4474adf98657 100644
--- a/extra/uname_string_2712
+++ b/extra/uname_string_2712
@@ -1 +1 @@
-Linux version 6.6.62-v8-16k+ (dom@buildbot) (aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1816 SMP PREEMPT Mon Nov 18 15:37:17 GMT 2024
+Linux version 6.6.62-v8-16k+ (dom@buildbot) (aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1817 SMP PREEMPT Wed Nov 20 13:35:44 GMT 2024
diff --git a/modules/6.6.62+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz b/modules/6.6.62+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz
index 14d2b7699cf0..2fe9c0a8fc9d 100644
Binary files a/modules/6.6.62+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz and b/modules/6.6.62+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz differ
diff --git a/modules/6.6.62-v7+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz b/modules/6.6.62-v7+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz
index b04f895b0536..29bf25773b6b 100644
Binary files a/modules/6.6.62-v7+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz and b/modules/6.6.62-v7+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz differ
diff --git a/modules/6.6.62-v7l+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz b/modules/6.6.62-v7l+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz
index 5dc9419374b5..ca717b31b021 100644
Binary files a/modules/6.6.62-v7l+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz and b/modules/6.6.62-v7l+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz differ
diff --git a/modules/6.6.62-v7l+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz b/modules/6.6.62-v7l+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz
index 7407246abd5b..131bbd4649ed 100644
Binary files a/modules/6.6.62-v7l+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz and b/modules/6.6.62-v7l+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz differ
diff --git a/modules/6.6.62-v8+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz b/modules/6.6.62-v8+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz
index aabb5d2d371b..b6f41102a465 100644
Binary files a/modules/6.6.62-v8+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz and b/modules/6.6.62-v8+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz differ
diff --git a/modules/6.6.62-v8+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz b/modules/6.6.62-v8+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz
index a7f9d9ef02eb..724f51d9e06f 100644
Binary files a/modules/6.6.62-v8+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz and b/modules/6.6.62-v8+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz differ
diff --git a/modules/6.6.62-v8+/kernel/drivers/misc/rp1-pio.ko.xz b/modules/6.6.62-v8+/kernel/drivers/misc/rp1-pio.ko.xz
index 30d388b2072d..d3135e009126 100644
Binary files a/modules/6.6.62-v8+/kernel/drivers/misc/rp1-pio.ko.xz and b/modules/6.6.62-v8+/kernel/drivers/misc/rp1-pio.ko.xz differ
diff --git a/modules/6.6.62-v8+/kernel/drivers/pwm/pwm-pio-rp1.ko.xz b/modules/6.6.62-v8+/kernel/drivers/pwm/pwm-pio-rp1.ko.xz
index 9a993e7f5bef..46d069ad6979 100644
Binary files a/modules/6.6.62-v8+/kernel/drivers/pwm/pwm-pio-rp1.ko.xz and b/modules/6.6.62-v8+/kernel/drivers/pwm/pwm-pio-rp1.ko.xz differ
diff --git a/modules/6.6.62-v8+/modules.symbols b/modules/6.6.62-v8+/modules.symbols
index 1304e0748125..21a47b847ce9 100644
--- a/modules/6.6.62-v8+/modules.symbols
+++ b/modules/6.6.62-v8+/modules.symbols
@@ -189,6 +189,7 @@ alias symbol:spk_get_var speakup
alias symbol:w1_add_master_device wire
alias symbol:mt76_set_irq_mask mt76
alias symbol:mt76x02_sta_ps mt76x02_lib
+alias symbol:rp1_pio_sm_drain_tx rp1_pio
alias symbol:snd_pcm_hw_constraint_minmax snd_pcm
alias symbol:v4l2_fh_is_singular videodev
alias symbol:async_gen_syndrome async_pq
@@ -4441,6 +4442,7 @@ alias symbol:ipv6_dev_find ipv6
alias symbol:nf_synproxy_ipv4_fini nf_synproxy_core
alias symbol:dm_bufio_mark_buffer_dirty dm_bufio
alias symbol:nf_conntrack_broadcast_help nf_conntrack_broadcast
+alias symbol:rp1_pio_sm_fifo_state rp1_pio
alias symbol:sata_link_debounce libata
alias symbol:v4l2_ctrl_get_menu videodev
alias symbol:__nf_ct_refresh_acct nf_conntrack
diff --git a/modules/6.6.62-v8+/modules.symbols.bin b/modules/6.6.62-v8+/modules.symbols.bin
index e47bc40e429b..84bce93819df 100644
Binary files a/modules/6.6.62-v8+/modules.symbols.bin and b/modules/6.6.62-v8+/modules.symbols.bin differ
diff --git a/modules/6.6.62-v8-16k+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz b/modules/6.6.62-v8-16k+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz
index 749c82e749e4..8eab7742ce17 100644
Binary files a/modules/6.6.62-v8-16k+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz and b/modules/6.6.62-v8-16k+/kernel/drivers/gpu/drm/vc4/vc4.ko.xz differ
diff --git a/modules/6.6.62-v8-16k+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz b/modules/6.6.62-v8-16k+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz
index 6807c5910554..36582c2e34e1 100644
Binary files a/modules/6.6.62-v8-16k+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz and b/modules/6.6.62-v8-16k+/kernel/drivers/media/pci/hailo/hailo_pci.ko.xz differ
diff --git a/modules/6.6.62-v8-16k+/kernel/drivers/misc/rp1-pio.ko.xz b/modules/6.6.62-v8-16k+/kernel/drivers/misc/rp1-pio.ko.xz
index 82cabb599aa0..96154cbae59f 100644
Binary files a/modules/6.6.62-v8-16k+/kernel/drivers/misc/rp1-pio.ko.xz and b/modules/6.6.62-v8-16k+/kernel/drivers/misc/rp1-pio.ko.xz differ
diff --git a/modules/6.6.62-v8-16k+/kernel/drivers/pwm/pwm-pio-rp1.ko.xz b/modules/6.6.62-v8-16k+/kernel/drivers/pwm/pwm-pio-rp1.ko.xz
index 293ca1e46983..5dbdc6be1e3e 100644
Binary files a/modules/6.6.62-v8-16k+/kernel/drivers/pwm/pwm-pio-rp1.ko.xz and b/modules/6.6.62-v8-16k+/kernel/drivers/pwm/pwm-pio-rp1.ko.xz differ
diff --git a/modules/6.6.62-v8-16k+/modules.symbols b/modules/6.6.62-v8-16k+/modules.symbols
index 1304e0748125..21a47b847ce9 100644
--- a/modules/6.6.62-v8-16k+/modules.symbols
+++ b/modules/6.6.62-v8-16k+/modules.symbols
@@ -189,6 +189,7 @@ alias symbol:spk_get_var speakup
alias symbol:w1_add_master_device wire
alias symbol:mt76_set_irq_mask mt76
alias symbol:mt76x02_sta_ps mt76x02_lib
+alias symbol:rp1_pio_sm_drain_tx rp1_pio
alias symbol:snd_pcm_hw_constraint_minmax snd_pcm
alias symbol:v4l2_fh_is_singular videodev
alias symbol:async_gen_syndrome async_pq
@@ -4441,6 +4442,7 @@ alias symbol:ipv6_dev_find ipv6
alias symbol:nf_synproxy_ipv4_fini nf_synproxy_core
alias symbol:dm_bufio_mark_buffer_dirty dm_bufio
alias symbol:nf_conntrack_broadcast_help nf_conntrack_broadcast
+alias symbol:rp1_pio_sm_fifo_state rp1_pio
alias symbol:sata_link_debounce libata
alias symbol:v4l2_ctrl_get_menu videodev
alias symbol:__nf_ct_refresh_acct nf_conntrack
diff --git a/modules/6.6.62-v8-16k+/modules.symbols.bin b/modules/6.6.62-v8-16k+/modules.symbols.bin
index e47bc40e429b..84bce93819df 100644
Binary files a/modules/6.6.62-v8-16k+/modules.symbols.bin and b/modules/6.6.62-v8-16k+/modules.symbols.bin differ