Commit graph

1,399,042 commits

Author SHA1 Message Date
Fuad Tabba
066daa8d3b KVM: arm64: Initialize HCRX_EL2 traps in pKVM
Initialize and set the traps controlled by the HCRX_EL2 in pKVM.

Reviewed-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Fuad Tabba <tabba@google.com>
Link: https://lore.kernel.org/r/20250314111832.4137161-3-tabba@google.com
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-03-14 16:00:49 -07:00
Fuad Tabba
44f979bf43 KVM: arm64: Factor out setting HCRX_EL2 traps into separate function
Factor out the code for setting a vcpu's HCRX_EL2 traps in to a
separate inline function. This allows us to share the logic with
pKVM when setting the traps in protected mode.

No functional change intended.

Reviewed-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Fuad Tabba <tabba@google.com>
Link: https://lore.kernel.org/r/20250314111832.4137161-2-tabba@google.com
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-03-14 16:00:49 -07:00
Davidlohr Bueso
6eb52f63ea tools/testing/cxl: Set Shutdown State support
Add support to emulate the CXL Set Shutdown State operation.

Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Li Ming <ming.li@zohomail.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://patch.msgid.link/20250220220235.276831-5-dave@stgolabs.net
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:55:27 -07:00
Davidlohr Bueso
7d0ecc0bd8 cxl/pmem: Export dirty shutdown count via sysfs
Similar to how the acpi_nfit driver exports Optane dirty shutdown count,
introduce:

  /sys/bus/cxl/devices/nvdimm-bridge0/ndbusX/nmemY/cxl/dirty_shutdown

Under the conditions that 1) dirty shutdown can be set, 2) Device GPF
DVSEC exists, and 3) the count itself can be retrieved.

Suggested-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://patch.msgid.link/20250220220235.276831-4-dave@stgolabs.net
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:55:26 -07:00
Davidlohr Bueso
86349aaaea cxl/pmem: Rename cxl_dirty_shutdown_state()
... to a better suited 'cxl_arm_dirty_shutdown()'.

Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Li Ming <ming.li@zohomail.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://patch.msgid.link/20250220220235.276831-3-dave@stgolabs.net
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:55:25 -07:00
Davidlohr Bueso
021b7e42fa cxl/pci: Introduce cxl_gpf_get_dvsec()
Add a helper to fetch the port/device GPF dvsecs. This is
currently only used for ports, but a later patch to export
dirty count to users will make use of the device one.

Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Li Ming <ming.li@zohomail.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://patch.msgid.link/20250220220235.276831-2-dave@stgolabs.net
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:54:59 -07:00
Davidlohr Bueso
a52b6a2c1c cxl/pci: Support Global Persistent Flush (GPF)
Add support for GPF flows. It is found that the CXL specification
around this to be a bit too involved from the driver side. And while
this should really all handled by the hardware, this patch takes
things with a grain of salt.

Upon respective port enumeration, both phase timeouts are set to
a max of 20 seconds, which is the NMI watchdog default for lockup
detection. The premise is that the kernel does not have enough
information to set anything better than a max across the board
and hope devices finish their GPF flows within the platform energy
budget.

Timeout detection is based on dirty Shutdown semantics. The driver
will mark it as dirty, expecting that the device clear it upon a
successful GPF event. The admin may consult the device Health and
check the dirty shutdown counter to see if there was a problem
with data integrity.

[ davej: Explicitly set return to 0 in update_gpf_port_dvsec() ]
[ davej: Add spec reference for 'struct cxl_mbox_set_shutdown_state_in ]
[ davej: Fix 0-day reported issue ]

Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Link: https://patch.msgid.link/20250124233533.910535-1-dave@stgolabs.net
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:50:22 -07:00
Arnd Bergmann
35759662ef TI K3 device tree updates for v6.15
Generic Fixups/Cleanups:
 
 SoC Specific features and Fixes:
 AM62Ax:
 Enable MCU domain pinctrl node
 
 J784S4/J742S4:
 GICD reg size fixes
 Serdes lane ctrl reg mux mask fix
 
 AM62P/J722s:
 Wakeup UART0 sysc updates for system wakeup
 pinctrl node fixes drop pinctrl-single,gpio-ranges
 BCDMA CSI-RX support
 Audio REFCLKx output support
 
 Board Specific:
 J784S4:
 EVM: Cleanup duplicate gpio-hogs
 
 J722S:
 TypeC port mux selection fix
 
 AM62Ax
 SK: boot-phase tag to support USB bootmode
 RTC support
 Aliases for wakeup and MCU serial UARTs
 
 AM62P
 SK: boot-phase tag to support USB bootmode
 USB wakeup support
 Aliases for wakeup and MCU serial UARTs
 
 AM62:
 verdin-dahila: microphone support
 SK: Aliases for wakeup and MCU serial UARTs
 BeaglePlay: reserved CMA region for Multimedia applications
 
 J721e:
 SK/EVM: boot-phase tags for Serdes for DFU boot
 
 Phytech board updates:
 Boot-phase tag updates for AM64/AM62/AM62A boards
 DTS coding style cleanups
 RTOS IPC reserved-memory additions
 DT overlay for X27 Connectors on AM64 SOMs
 
 J721S2 SOM:
 Add flash partitions
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEEyRC2zAhGcGjrhiNExEYeRXyRFuMFAmfRDioQHHZpZ25lc2hy
 QHRpLmNvbQAKCRDERh5FfJEW4w/fB/92ly/Q276g9OKSXOPQXvOS/L/7CJ8wQcxs
 y+kmtwSKUjSMeliWVR+wNX9jsi4JYvC7Eji4aJxNitRxQdBy0o4TYc2Ucrrfr2Xl
 7AH7H9cg+aOAvt3tMbLf6T9CKaJXjiKuFIw6/QtDFx7KAF632KC5G86tiFKJ3X+N
 3G3AxChZbv9nLMUVs3Av/h12Ok8WqScgikDbbGCu9N5h6q1lQKDClGXlrKBLeXOk
 tY5bMX48HaIoNGVH/YV9wDiFoCrY/t8f7AUS0ob79eE6tkpBuG5krmhBnNevIVpC
 ijL0chfrV/bfLoOhZvMjK4/JmtG8iZl+TDQnrctrg6Ujh1SUwT8m
 =44GG
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmfUrmQACgkQYKtH/8kJ
 UicQmBAAv4e1To6a/1qXnEI9q2okNJaRCdi6uJZc0r1xVOaD+3E+Q3SmimVpDMaM
 EJ7XlHAyY2Y+EtSjbsgAPTL0Emk6dkssJUqieyXAw/Gf0eneE/8rmY+2ydm/J7ul
 7bPBopmKkkACxpqNl63EKM3PqG56U5ZQ2fBTlXgjLaEhvB+tuEgVWmuXcJxZJLBZ
 U1K7AvH2Gzoy0J/xzRQSGN9VnloWYKasbfgpdufFsr0O2hfm0Olbg6k53OZaHuh5
 mL8BY40GnH1m2GZrkgGjNcWkt3GIFTbwOg5UJsqRBQ0QzgymSoRuCxjgt6Opx//U
 /J+qhCL43dDGoQh08wd5zgEiNLBGLb2kO5N3n/paeHLtFVuOB4idbpse4qL7dCr0
 7U+MkL0TdD9ZpOGN+K2DuuVm3VW3gahXpa9DUTpFJRNEncKRmb7//I4xalkjoyh+
 ubRxWQV1jwNoUTL0kvpSoojMtVNdLpJi4IAbQTzVzrFSkr/1lZZGwyiN5MrZVU+C
 VdpTWL1wr0aNhpBxIzK+RMwtTTrZluqiEgUSLb2/J2c6Ke/W/uro16LjqMu7dkXe
 GJdG2ljV8ZH6L9MqW39Qwnx5xhWjzBjsmOt42AsdzRDCxjlg5YdEECrGobkVk+rS
 eiwp4yW9YA1GQnqj4J6GbwNMzvdSXYAq3mKTJ+aIDZTJ/gDCqhk=
 =11gj
 -----END PGP SIGNATURE-----

Merge tag 'ti-k3-dt-for-v6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into soc/dt

TI K3 device tree updates for v6.15

Generic Fixups/Cleanups:

SoC Specific features and Fixes:
AM62Ax:
Enable MCU domain pinctrl node

J784S4/J742S4:
GICD reg size fixes
Serdes lane ctrl reg mux mask fix

AM62P/J722s:
Wakeup UART0 sysc updates for system wakeup
pinctrl node fixes drop pinctrl-single,gpio-ranges
BCDMA CSI-RX support
Audio REFCLKx output support

Board Specific:
J784S4:
EVM: Cleanup duplicate gpio-hogs

J722S:
TypeC port mux selection fix

AM62Ax
SK: boot-phase tag to support USB bootmode
RTC support
Aliases for wakeup and MCU serial UARTs

AM62P
SK: boot-phase tag to support USB bootmode
USB wakeup support
Aliases for wakeup and MCU serial UARTs

AM62:
verdin-dahila: microphone support
SK: Aliases for wakeup and MCU serial UARTs
BeaglePlay: reserved CMA region for Multimedia applications

J721e:
SK/EVM: boot-phase tags for Serdes for DFU boot

Phytech board updates:
Boot-phase tag updates for AM64/AM62/AM62A boards
DTS coding style cleanups
RTOS IPC reserved-memory additions
DT overlay for X27 Connectors on AM64 SOMs

J721S2 SOM:
Add flash partitions

* tag 'ti-k3-dt-for-v6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux: (32 commits)
  arm64: dts: ti: k3-am62a-phycore-som: Reorder properties per DTS coding style
  arm64: dts: ti: k3-am642-phyboard-electra: Reorder properties per DTS coding style
  arm64: dts: ti: k3-am642-phyboard-electra: Add boot phase tags
  arm64: dts: ti: k3-am62a-phycore-som: Add boot phase tags
  arm64: dts: ti: k3-am62x-phyboard-lyra: Add boot phase tags
  arm64: dts: ti: k3-j722s-evm: Add camera peripherals
  arm64: dts: ti: k3-j722s-main: Add CSI2RX nodes
  arm64: dts: ti: k3-j722s-main: Add BCDMA CSI overrides
  arm64: dts: ti: k3-j722s: fix pinctrl settings
  arm64: dts: ti: k3-am62p: fix pinctrl settings
  arm64: dts: ti: am64-phyboard-electra: Add DT overlay for X27 connector
  arm64: dts: ti: k3-j784s4-j742s2-main-common: Fix serdes_ln_ctrl reg-masks
  arm64: dts: ti: k3-am62p: Enable AUDIO_REFCLKx
  arm64: dts: ti: k3-am62-phycore-som: Reserve RTOS IPC memory
  arm64: dts: ti: k3-am64-phycore-som: Reserve RTOS IPC memory
  arm64: dts: ti: k3-am62p5-sk: Add serial alias
  arm64: dts: ti: k3-am62a7-sk: Add serial alias
  arm64: dts: ti: k3-am62x-sk-common: Add serial aliases
  arm64: dts: ti: k3-am62p5-sk: Support SoC wakeup using USB1 wakeup
  arm64: dts: ti: k3-am625-beagleplay: Reserve 128MiB of global CMA
  ...

Link: https://lore.kernel.org/r/5d612c0e-4cd4-469a-9856-dd4552d74412@ti.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-03-14 23:32:04 +01:00
Arnd Bergmann
c9869f9073 i.MX arm64 device tree changes for 6.15:
- New board support: S32G-EVB/RDB, i.MX95 15x15 EVK, i.MX8MP Skov
   revC BD500 and new 7" panel board, i.MX8MM phyboard polis PEB-AV-10
 - A series from Ahmad Fatoum and Oleksij Rempel to flesh out
   imx8mp-skov device trees, correcting PMIC board limits, adding display
   pipeline, configuring uart1 for RS485, etc.
 - A bunch of changes from Alexander Stein, adding PCIe support for
   mba8xx, enabling jpeg encode and decode for tqma8xx, adding vcc-supply
   for spi-nor, etc.
 - A series from Chancel Liu to complete WM8960 power supplies for NXP
   i.MX8 based boards
 - A dozen of changes from Frank Li, enabling audio codec for imx8qm-mek,
   adding PCIe EP for i.MX8Q, improving i.MX93 and i.MX95 support, etc.
 - A number of changes from Frieder Schrempf to support reading SD_VSEL
   signal for imx8m-kontron devices, fix SD card IO voltage control for
   imx93-kontron
 - A series from Teresa Remmet to improve imx8mm-phycore support, keeping
   LDO3 on in suspend, adding overlays for devices without Ethernet PHY,
   SPI NOR Flash, etc.
 - A couple of changes from Xu Yang to enable usb3 support for
   imx95-19x19-evk board
 - Other random improvements and cleanups on various boards
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmfRN6sUHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM6vIQf/duM1njX3L5Vlxp7OStdQ5M09tCO4
 maknuv2nUMBvM3rmzA8ZIIi/vJjEseah/EMVD+O0bZdJX0K9NwdE1I/jeXVzKCgN
 ca6oB0OD58I/TxqOdSzdIQxh+rdbEe/XK4B9b20HpGj/xN347I4bLCR9SITAGOQx
 DEJ70Dcrt430oYk7ag6FvskenkXV0JFhGY0hZ/LetFtnfcc5G9QG7jYW2Si+KEqF
 MH4HV9u1s/Xng1Yb21ACbeh06Bdakuu/W9ZBGUwgkKRvLgDJdOYFds3xNuhuR8CI
 LPbTkWoQqp0Oi9yV1UTxS2vMGfoyxSkQWLBSuPobTCDE3Qj7s1KSt7b92A==
 =Exxa
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIyBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmfUreIACgkQYKtH/8kJ
 UieWCg/4pHq1yVR7HfdRRPFoErYiK0qF/9p3npmEIK/2+pIbJH3OMdeVXKXIUFnG
 9+GLav6un70mDW8lV5IqkFjiARy3vlTf8fALk95NSROGeXRk1XaJSH1jtjSFfSeb
 2xTzNk7wNUrzl/TVY2YG6pp54WqDvHRKUBgoYVzoHoryVYODOu09henDuZ27Kw4W
 sh10GBsP83KoIfgE0ND03NjWvWdAS/W7HE8YJIqXxl77OJ60+N08MiY93Sw2syBL
 SxqPeDmS+ThiRO8rRm6bk78vCB5KVUAkocI9qEw3TPZDhluSkp0DGEMcfZHyA8AT
 yFV/hPoX8PXCJ2Vi336elwURTQACmITPxJhzuC6dayxUpIf6lLqr2RBSyELpPccm
 dY2o+wXWdgjamm2eWMNXo8LUxfWyiv46DvGwZ6h+Cuga9vT5F2YWa2mHD1SNVgNK
 liA6uDyb95ArW6Y0fLLMAo7Yz2u61AsbaQvJvmt6BdoFER6MrYOmNkf78q4lJJCz
 SFJVlR+T74aI+mY2fiU4x500EySEzTLQLDdPUKGBp+4C3S/jDeT03tx65IVqyiV/
 TqtGm38/V8PJQ17Gaqw7FN5IGKmljxcWUfyI8Wv4U/l/7WMYVS+IEYBdWtn9eO5n
 4KsuWcKOm1kSp0tbUoudqit6SL/L2V+ZTUOTuGdFnVcAIvfafg==
 =DSmR
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt64-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt

i.MX arm64 device tree changes for 6.15:

- New board support: S32G-EVB/RDB, i.MX95 15x15 EVK, i.MX8MP Skov
  revC BD500 and new 7" panel board, i.MX8MM phyboard polis PEB-AV-10
- A series from Ahmad Fatoum and Oleksij Rempel to flesh out
  imx8mp-skov device trees, correcting PMIC board limits, adding display
  pipeline, configuring uart1 for RS485, etc.
- A bunch of changes from Alexander Stein, adding PCIe support for
  mba8xx, enabling jpeg encode and decode for tqma8xx, adding vcc-supply
  for spi-nor, etc.
- A series from Chancel Liu to complete WM8960 power supplies for NXP
  i.MX8 based boards
- A dozen of changes from Frank Li, enabling audio codec for imx8qm-mek,
  adding PCIe EP for i.MX8Q, improving i.MX93 and i.MX95 support, etc.
- A number of changes from Frieder Schrempf to support reading SD_VSEL
  signal for imx8m-kontron devices, fix SD card IO voltage control for
  imx93-kontron
- A series from Teresa Remmet to improve imx8mm-phycore support, keeping
  LDO3 on in suspend, adding overlays for devices without Ethernet PHY,
  SPI NOR Flash, etc.
- A couple of changes from Xu Yang to enable usb3 support for
  imx95-19x19-evk board
- Other random improvements and cleanups on various boards

* tag 'imx-dt64-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (84 commits)
  arm64: dts: imx8qm-apalis: Remove compatible from SoM dtsi
  arm64: dts: imx8mp: change AUDIO_AXI_CLK_ROOT freq. to 800MHz
  arm64: dts: imx8mp: add AUDIO_AXI_CLK_ROOT to AUDIOMIX block
  arm64: dts: imx93: add ddr edac support
  arm64: dts: imx95: add ref clock for pcie nodes
  arm64: dts: mba8xx: Remove invalid property disable-gpio
  arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe
  arm64: dts: im8mq-librem5: move dwc3 usb port under ports
  arm64: dts: mba8mx: change sound card model name
  arm64: dts: imx8mp-tqma8mpql-mba8mpxl: change sound card model name
  arm64: dts: s32g: add FlexCAN[0..3] support for s32g2 and s32g3
  arm64: dts: imx95: Add imx95-15x15-evk support
  arm64: dts: imx95: Add i3c1 and i3c2
  arm64: dts: imx95: Add #io-channel-cells = <1> for adc node
  arm64: dts: imx8mp-skov: support new 7" panel board
  arm64: dts: imx8mp-skov: add revC BD500 board
  arm64: dts: imx8mp-skov: describe I2C bus recovery for all controllers
  arm64: dts: imx8mp-skov: move I2C2 pin control group into DTSI
  arm64: dts: imx8mp-skov: add basic board as fallback
  arm64: dts: freescale: imx8mp-skov: operate SoC in nominal mode
  ...

Link: https://lore.kernel.org/r/20250312074005.663165-5-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-03-14 23:29:54 +01:00
Arnd Bergmann
cdd4a27027 i.MX ARM device tree changes for 6.15:
- New boards support: Variscite VAR-SOM-MX6UL SoM/Concerto, i.MX6
   apalis/colibri v1.2, i.MX28 based btt3
 - A bunch of TQMa6/7 cleanups from Alexander Stein and Markus Niebel,
   ordering DT properties, correcting 3.3V supply, adding partitions
   child node to spi-nor, etc.
 - A bunch of changes from Fabio Estevam to fix dt-schema warnings on
   various boards
 - Other small and random changes
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmfREaAUHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM4yRQf/evn2a+TJddNbG6SeuulRr07AtGhu
 PnVnzRNnMrrGiYKoOXudulii7MWinVWElJJabboow5aEjNhN5K/V0WvXuIwDkOAq
 U23i8udMtmdgjt4z4uw/vJb4QKS81YvShxHEf0l+7yoBCcvGFmuMkLF+Q17FmqUx
 W6Q2a28AhLNm5o/WH3aA0EZNsiQ33rEyZsvzaMdx2btX1YaHVtBoDGXCsxQLzE/b
 WChEdwt0ATrgqFN0gKgL1JU3FKa6alOcxVECjbCQzwPCSuV3ydNqeNCApHN5xVhZ
 QtdcdwwLrFIbAyZ0yivamNaiwQR7WxCZ48WE7XYeCa+DkNmOs+8dblIGyw==
 =n4I/
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmfUrVIACgkQYKtH/8kJ
 Uicxgg/+MaSKgYuYBnSNJW9asTGbi7Ds8a3SDMdJysYi9NI5biHE79yk5poqgTmL
 jIgdjCyopwEnSsQSLMUWRDmHlmV74xzBScjKOz5NmrR8VMWDg6PhCI4E0Gnz5BrN
 1rdeqO6cSc1oshnJ/yg97ndtG6S6GCiRFB/zeVQDD9O9M526sB8tbgUGojXTikua
 9pBUP3A/WPh2ZUk6F1Gmk13btLsfbMiNWUtCXjb3O6oqhaV1A9nxjvVrjUIDnLJ5
 KhqTOwAuOOh+F+55mvg7fMX8DbNaqGigF9YqzXsAWbFWR60EwzJiVpWCW50LioM3
 oNshj3g1Ruo10YFbyy2P2iXT6pyp9I37gVCwAiAXJfWBEcsgw4HbHavzBkSjjcfz
 /4o1L5XJOTRpWsUqHCZqIMNwx1SXkFnJ3cgs4gy/RExTCjDWGW4nCY1EPlmfmIhW
 pQ3W8y7//xu/3CvrtU9AntfafJH4UhA/DejD50BPORRiaxYoJdKVg13jWILRwUEy
 hvuZna/rJ0kN6hZH50uVWo6lHOZw6Z43QVCH6pph4V7dqUx8FMjLrVRaOCMEs5Xk
 dJq+hbB1fo3vA52qHjZGLxrAMQwIT6HyqQGGKIKnql4g1lBqtXaNpzva+RFmXIIv
 mouxLd508sAGZNWJwgpZMC5Ddn+J9KnkuAqqEF3c3r1Bo/GktQc=
 =26pZ
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt

i.MX ARM device tree changes for 6.15:

- New boards support: Variscite VAR-SOM-MX6UL SoM/Concerto, i.MX6
  apalis/colibri v1.2, i.MX28 based btt3
- A bunch of TQMa6/7 cleanups from Alexander Stein and Markus Niebel,
  ordering DT properties, correcting 3.3V supply, adding partitions
  child node to spi-nor, etc.
- A bunch of changes from Fabio Estevam to fix dt-schema warnings on
  various boards
- Other small and random changes

* tag 'imx-dt-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (32 commits)
  ARM: dts: apalis/colibri-imx6: Add support for v1.2
  ARM: dts: apalis/colibri-imx6: Enable STMPE811 TS
  ARM: dts: imx6ul: Add Variscite Concerto board support
  ARM: dts: imx6ul: Add Variscite VAR-SOM-MX6UL SoM support
  ARM: dts: vf610-colibri: Remove compatible from SoM dtsi
  ARM: dts: imx6qdl-apalis/colibri: Remove compatible from SoM dtsi
  ARM: dts: imx6ul-tqma6ul1: Change include order to disable fec2 node
  ARM: dts: imx53-mba53: Fix the PCA9554 compatible
  ARM: dts: imx31: Use nand-controller as node name
  ARM: dts: vfxxx: Fix the order of the DMA entries
  ARM: dts: tqma7: Add partitions subnode to spi-nor
  ARM: dts: imx7-tqma7: Add vcc-supply for spi-nor
  ARM: dts: tqma6ul: Add partitions subnode to spi-nor
  ARM: dts: imx6ul-tqma6ul: Add vcc-supply for spi-nor
  ARM: dts: imx6ul-tqma6ul: Order DT properties
  ARM: dts: imx6qdl-tqma6: Add partitions subnode to spi-nor
  ARM: dts: imx6qdl-tqma6: use sw4_reg as 3.3V supply
  ARM: dts: imx6qdl-tqma6: limit PMIC SW4 to 3.3V
  ARM: dts: imx6qdl-tqma6: Order DT properties
  ARM: dts: imx7d-sdb: Complete WM8960 power supplies
  ...

Link: https://lore.kernel.org/r/20250312074005.663165-4-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-03-14 23:27:30 +01:00
Arnd Bergmann
ea40c5d8b5 i.MX dt-bindings changes for 6.15:
- Add compatibles for Skov i.MX8MP variants, VAR-SOM-MX6UL SoM and
   Concerto, i.MX95 15x15 EVK, btt3 i.MX28
 - Drop Toradex SOMs compatibles
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmfRBy4UHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM5pEAf/UbiTnSHzkmWfCFBSb06D/L09iGxJ
 w7V4TSsoy4rT9lZE7N1czEEu4DmuJuZOWEcwxdq1RCwe1HpxURIL9Oh4KmCAzet4
 zI7K9O2Y/ErI2f0hKqP0Ad6L6TOl+dhEJ/Rv6Q7zSaopXaGt420jRGxvTQ0vzrmB
 bFnmMmcwWDBf9kyTiz+Ef45I7H0rJsc+lOXaT84pPFFr4ohXqyB6+lDJFRSlgOSL
 W58/l8LMF12mSILsYys3qewvnMLqbzQA6mHtCtADmW2BNfPgaG3fITRWJ2uL30Ts
 Lq3m3XUEYvCBx+SFECt0qs/0QxiT8Hp9/lowvqfB606wZ6yDjXBKs1mVXg==
 =Wbb1
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmfUrQwACgkQYKtH/8kJ
 UicT/BAAiht79OQ/ZS8sLbo+a+Abdrx/dWb6Vzan03ekjFVGGB/SX2lWQLUsOtuR
 YCJrPWw8Ff3UFzYCCDc2wnW1Glp0of0GMab87pxJb+Zdw6UHYGyGIENAcHXJTOeo
 YleZxvd8z93R6z9b9MecNTcNkAyreIVu/Z8EuIREiOMUmdHsleuzrM8iY0vUxynr
 v4i9Xlr5MIfcJItlMjtUS3bLIvZKOENHZjWNEf6xiPZiV6NejRmF4U+Hc/fbisTr
 W9CPJ449s17ZsP/MoiUVoYmyn0rNXgNL1d0ypHTgGeNWd+/EFhTyudJzco4rdHbG
 fTqfCFY9dez77LQUprmhVqNMQIIXGTHNq4YUuygnA6f0ErhvpDLtpGULPhF9RQls
 Lki7SZGnBfS8CMpJzGFBS/WrsERI3mP9VhoL+8B0AS59gus/+n9eO7nwe/lUQlAb
 1KuBtYDwcpeJl1UhBbI56aGnqeHB6rtynHCIKIv4Tm7sx9ZzTudcn30yi1mohLay
 8RYgYuwxoZgL65jI/5lHD09hNVlSQpwfOd+Ajx9tR6LmvaBMJxJObhSXm8VqPlr8
 +GAeZcymhbVEI+YCkwjgMjKcRqHMZveTqcMDf79OZY/C22kdUbUy92NO/aU8GV4t
 8jcPm85+Qykgtm6jwLzQ72ucMNKh04pb20BKezTzoUPyxhFCvDw=
 =GJmZ
 -----END PGP SIGNATURE-----

Merge tag 'imx-bindings-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt

i.MX dt-bindings changes for 6.15:

- Add compatibles for Skov i.MX8MP variants, VAR-SOM-MX6UL SoM and
  Concerto, i.MX95 15x15 EVK, btt3 i.MX28
- Drop Toradex SOMs compatibles

* tag 'imx-bindings-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  dt-bindings: arm: fsl: Add VAR-SOM-MX6UL SoM and Concerto board
  dt-bindings: arm: fsl: drop usage of Toradex SOMs compatible alone
  dt-bindings: arm: fsl: add i.MX95 15x15 EVK board
  dt-bindings: arm: fsl: add more compatibles for Skov i.MX8MP variants
  dt-bindings: arm: Document the btt3 i.MX28 based board

Link: https://lore.kernel.org/r/20250312074005.663165-3-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-03-14 23:26:20 +01:00
Arnd Bergmann
fce5759af9 RISC-V SpacemiT DT changes for 6.15
- Add Milk-V Jupiter board
 - MAINTAINERS info
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQKTBAABCgB9FiEEtbq4ycMbcRVnAiPcMarqR1lNu+0FAmfQ0dZfFIAAAAAALgAo
 aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEI1
 QkFCOEM5QzMxQjcxMTU2NzAyMjNEQzMxQUFFQTQ3NTk0REJCRUQACgkQMarqR1lN
 u+3DOA//TFUYeBRCpZkyGC/FAqVQ1TrMs+bcKdi3gGtnmjX6QLVT6SMokkeboBp6
 0G6lbcgdb5h4UfglUnVH2m3omJIRwvUj6qCq2omzwVgLpr3gKsarKA6JRDxwfuGa
 V3BEgWNlwAtcRqgHqib/Dmj0B39ZWr9Y9CYklSwLjY8E0SvOHfn3Y43qUYzJ5xYQ
 P7ncVuWox7LrLXDwq7qyFKwBqI9AymE+xKL/r6waaAUjGV+Nm543Ja74lNejWZm6
 pQterSVdYy9RXrNGV5ZEKMUNlek8D69XydUrkt9anPRk329gKyvQlZ8Nx0AsUZ7p
 1lyExxXGpPXhgMfNjnxNxHgNGgBLdvPUz5B6UUvaLV2xg/DFWo1Mhd14PF5nJEIn
 N+j16e2rtj1hDxC0umWuigRDoaBmtYGY2zIbhudFjLbP1hk5bL6g2bFKU8GSKHEo
 C76Ze+mk+4XECZC4CSujMGXmEWTR/eG9mE1XXjDXL+Xv53cqeV1PEG2WBSGmfRVH
 /GP552Fo4kVgP6pFRhwLbKJsre1LBZFBHbXESHc4sEeXL7uCzPNREGbEVaRYNZnt
 2vMC/QzyRI1hsPmN9+0G4ql220qmFcP4p8DaB7wZIvrJwRPVZEQW/FqwJ4OS7JVV
 Xy8ggstgbKNmKfSIBv/F5fmZMqiYcr9Ync8XU3+stCc7AFUtxew=
 =1+mn
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmfUrH8ACgkQYKtH/8kJ
 Uie2OBAAvCUVgtRR3ZKnQMaseVxKVEdj0dP0u5vhMaFCIgXOU3fwDWYaGHRsKKbq
 DxIbqVGoSR8g380TQhgXx1xCnaZQ0VTtQqutW3hWnlxJdSbSJmZZM4QSb89oFuGx
 1F8CnpUOw7hqXUf9vUw4THyF02xw0v3Kk226Ji29mCsHww+UmIdXalLSut/llYA+
 G89mCB5aEUwT2NHcmqreHq1wmST3HdnlEIzlgWwLvQ7JTNRvWYd0vo/BI1qKjBD8
 83igacLhIPC+0L8qLOsRlXU2aiaypKLnz32uq/Vg0Wv+2AtMI4cEDGwLYxV30YGs
 wsBaAc8QMKRWsVS8STAcST37CLb60+nVNF6KkHpf2C9jkIKxiHqrHofR+dbsy78l
 tIxHIFDwrHJ1fygzpLmybcEMCx21nVfSEN1DlOj44Jx+XvibzrWLa+aJx1wKf8rh
 +GFBDLlO8r7p3wwO+BcF4VS9Ca165Ac00A7qzqfnr7sUlWs5028oerUlC7yfJBK+
 9YWszDhm1DcMd8d8prYBOkAl8bj9O8oSWkymY/o5dGCkBSQllWXiKpJ71qr5Kqht
 pEmpW31Kqkj/WnazIStQNVj++lYMx+GPuR7JlVrGDQQjRARhikuQ2rbZPcCVA08N
 zix568ApbfX7fQH0BAuwfbfdq/lRncpCoivAIeqNyEJ3Fwo2uQQ=
 =im6Q
 -----END PGP SIGNATURE-----

Merge tag 'spacemit-dt-for-6.15-1' of https://github.com/spacemit-com/linux into soc/dt

RISC-V SpacemiT DT changes for 6.15

- Add Milk-V Jupiter board
- MAINTAINERS info

* tag 'spacemit-dt-for-6.15-1' of https://github.com/spacemit-com/linux:
  riscv: dts: spacemit: Add Milk-V Jupiter board device tree
  dt-bindings: riscv: spacemit: Add Milk-V Jupiter board compatible
  MAINTAINERS: spacemit: update various info

Link: https://lore.kernel.org/r/20250312003023-GYA76989@gentoo
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-03-14 23:23:58 +01:00
Arnd Bergmann
291632e06d TI DaVinci updates for v6.15-rc1
- make GPIO hog names conform to bindings
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEFp3rbAvDxGAT0sefEacuoBRx13IFAmfQJK4ACgkQEacuoBRx
 13JACg//aNCeUZV4JlqwExlZBSDbloZEARwdCqdSAFihPQB1RQ7CQDW+Y8w+orm1
 i5UAamDJ0oWUpHR0esUq0iL15yN/gxYeSqrtIzkNUYm8R5L9xO4/KWvmk7u5rD7r
 kjIh9pry+y5C4t5IYRjF2UKlBRUfCgRRsaw2/w0V9riXARtiktyCNfS7P6mHsSQK
 QRyKd6tTxakK3ogzxcLqhDSATiQ4H3R2gYCbMIiziGEFahOGBFzWgCJxPqGrlDXY
 OxPXguT6xi2uGw/McLsI2GdIVMlI/2dAJO9pJ+khzXewKoK3xP6ubwpEz0atXsLj
 j8WwUyYw5FNktYsQNyEc5H35jItHUQ89vHmSKsZ82K/IL7G08l4AqsstxbLkpsqM
 B2CfxI91p9qzcc8mHG9vE/eBrf0xIjYIuXGx/56dB08lwaIRp/wYLJm/xhWOVr4N
 xYQgwUT0uOCy6dBA5sS6imQ8AMHJVWXPSOYImuW7tsgnvZrE76xx90rswtnYzn7m
 CTVZKSaPheXanvhiorfSvNIXpn5wH/Bx6ermXRkeYgnyvBmEuPeeOEACrj9xx2w+
 5ZG8ZuEvw+jBeAF75u/ywYYZzbii5kC7fzN9KheMV7m7w7TSAdJcp0TACNsB7B7b
 Iq3PAabgCtAONOwBeXbZO5lM+kbNjnLroMXbAA0TcwHjz+hXDEg=
 =uDr/
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmfUqy4ACgkQYKtH/8kJ
 UieM2xAAs2h0D3SSlOTn6oPB6NFRDnFQXnLK0JNJp3VztIuctPmteBtenoWInu2R
 KzjLa/rM8I6oMy9a4/I8xD503LpDxDXrOtFyCbKSSCktBfDGL4NTEa1YzJ9s4j4A
 D8VOKsAdtwIzpvhGeF3YTALu4E9AgK5YF1QaGxWCA0+7kh625qBo5m4C2jjXI6/P
 kM0hTpQr+CKdgZO1f1GPRd2aCoE346aNuQzY0NPv2w8Q78TzyUnfKdHD4IsLzgIG
 p301KVH9iwf9VLTviliPnaFmxM/NshK2kLbxC7SMQ2F7ya/oWPM7Pcjve/pm9ZFX
 2+ozC75Gi9/wKpvvtw/JKBWKx/QWmxk9hnY5w/BMTc0JSmz1HxwWxYNYlrmndVqf
 o0vOUlj+KZZFa7HaEw+t3TjjrRKzGh6YIfX6rdKwlWnEAFsVVFdFNGRJjfQBsCYh
 Bu/UfGtaIR7bPeB2xOkkGmGkk+19IShnRRAzCq3tQWYfnpPk4baP1TJKYoiywiNd
 u51gqW7aO0OSf+xSW6cRe8xFRDS7pGmVUjafTh+c05N05IMKjBxx8RZVXGED3Mtb
 WRdVj2RZ+CVXrA+i2EXZOyEZIrXadhdglhdEmXpMmrjDA8E/wlQ8gZlSlIcKsFF+
 78ro9hMhRhmjFyO8WbGx0XfGTiNp7TDOWVmMQIqOCpUXfc9EyZ0=
 =NYBj
 -----END PGP SIGNATURE-----

Merge tag 'davinci-updates-for-v6.15-rc1' of https://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux into soc/dt

TI DaVinci updates for v6.15-rc1

- make GPIO hog names conform to bindings

* tag 'davinci-updates-for-v6.15-rc1' of https://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
  ARM: dts: ti: davinci: Align GPIO hog name with bindings

Link: https://lore.kernel.org/r/20250311115720.40053-1-brgl@bgdev.pl
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-03-14 23:18:22 +01:00
Linus Torvalds
912ad8b317 bcachefs fix for 6.14-rc7
This one is high priority: a user hit an assertion in the upgrade to
 6.14, and we don't have a reproducer, so this changes the assertion to
 an emergency read-only with more info so we can debug it.
 -----BEGIN PGP SIGNATURE-----
 
 iQIyBAABCgAdFiEEKnAFLkS8Qha+jvQrE6szbY3KbnYFAmfUTFgACgkQE6szbY3K
 bnYOlg/3Ram/mou5oHuUnvX6ZhtJ2ATewJ72MIKB2rTFP/5hlJk1Mr16hJFrNf7o
 oGvklAGkLeq/1JMggRMJ8iLvwhT5jL8MBCt9eq9EI0zfjN9mT5g+hPjUsaznz1XS
 Fcb8i0587vhv5+peM+KEwUm2tDU0uPK9efOEhfYT08bleRNODU8wDoS6e8O3LSmp
 mTsOfhfL8pbl5AhmliEwy7MjLymNolxmKdTszSEkPqL7kMrKErQD2qrieoQbnFCa
 K+jhGkwbo2pTdl/yA8PuPHyA3Z65F5oNgUDhfXWhUXA0nQaYSI1eK0gakxkBEyFo
 WMoNDuto8sATKGz3CStBo7BYXM8TwEd16czlk/UtHu7svwuTEIZRhF8hFs7YnjN3
 cZ8J4gBd05bInXfe1GaVm44FbOFMKHIlFH1WRgwjbEX/zLtcr5I/cKGDdxvxjoUO
 OgqNrScEyFWRylSkbtZQBEhKForokC2tzTLxnegu2QJ6tWd1n4koW/GymM82LnPB
 6sjQJ7hXjQqqBLQefGWFSqjqgcFQ+//0j1uww4NspwHgnoFEM18aFmFTP77Acwgt
 2RnsN9Rvak+2u/j+oZ65xR7osZFSAlDZo9ugoK5Pzn3MipWy1zfpdXs9NWj1+J4N
 3GBoptFyHKFZhLdrP/1xXMdJMWN4abazADUr4M4Yxjj29uF6sw==
 =Ahlg
 -----END PGP SIGNATURE-----

Merge tag 'bcachefs-2025-03-14' of git://evilpiepirate.org/bcachefs

Pull bcachefs hotfix from Kent Overstreet:
 "This one is high priority: a user hit an assertion in the upgrade to
  6.14, and we don't have a reproducer, so this changes the assertion to
  an emergency read-only with more info so we can debug it"

* tag 'bcachefs-2025-03-14' of git://evilpiepirate.org/bcachefs:
  bcachefs: Change btree wb assert to runtime error
2025-03-14 12:14:32 -10:00
Davidlohr Bueso
17218b0228 cxl: Document missing sysfs files
Add to the ABI documentation the payload_max and label_storage_size
read-only files, which have been there since the early days.

Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Li Ming <ming.li@zohomail.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Link: https://patch.msgid.link/20250218224853.67457-3-dave@stgolabs.net
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:01:20 -07:00
Davidlohr Bueso
eb8081bcc5 cxl: Plug typos in ABI doc
Trivially update where necessary.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Li Ming <ming.li@zohomail.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Link: https://patch.msgid.link/20250218224853.67457-2-dave@stgolabs.net
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:01:12 -07:00
Yuquan Wang
2da9ad027e cxl/pmem: debug invalid serial number data
In a nvdimm interleave-set each device with an invalid or zero
serial number may cause pmem region initialization to fail, but in
cxl case such device could still set cookies of nd_interleave_set
and create a nvdimm pmem region.

This adds the validation of serial number in cxl pmem region creation.
The event of no serial number would cause to fail to set the cookie
and pmem region.

For cxl-test to work properly, always +1 on mock device's serial
number.

Signed-off-by: Yuquan Wang <wangyuquan1236@phytium.com.cn>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Link: https://patch.msgid.link/20250219040029.515451-2-wangyuquan1236@phytium.com.cn
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:01:04 -07:00
Li Ming
e0feac20d1 cxl/cdat: Remove redundant gp_port initialization
gp_port is already pointed to the grandparent port during its definition,
remove a redundant code to let gp_port point to the grandparent port
again.

Signed-off-by: Li Ming <ming.li@zohomail.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Davidlohr Bueso <dave@stgolabs.net>
Link: https://patch.msgid.link/20250211062054.300108-1-ming.li@zohomail.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:00:55 -07:00
Ira Weiny
16ca2f5431 cxl/memdev: Remove unused partition values
The next volatile and next persistent values are unused and are
cluttering the cxl_memdev_state.

Remove these values.

Reviewed-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Link: https://patch.msgid.link/20250206-cxl-cleanup-v1-1-9ddf26dd8433@intel.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 15:00:45 -07:00
Li Ming
5ec67596e3 cxl/region: Drop goto pattern of construct_region()
Some operations need to be protected by the cxl_region_rwsem in
construct_region(). Currently, construct_region() uses down_write() and
up_write() for the cxl_region_rwsem locking, so there is a goto pattern
after down_write() invoked to release cxl_region_rwsem.

construct region() can be optimized to remove the goto pattern. The
changes are creating a new function called __construct_region() which
will include all checking and operations protected by the
cxl_region_rwsem, and using guard(rwsem_write) to replace down_write()
and up_write() in __construct_region().

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Acked-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Li Ming <ming.li@zohomail.com>
Link: https://patch.msgid.link/20250221013205.126419-1-ming.li@zohomail.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 14:59:34 -07:00
Li Ming
9e7b7ab5af cxl/region: Drop goto pattern in cxl_dax_region_alloc()
In cxl_dax_region_alloc(), there is a goto pattern to release the rwsem
cxl_region_rwsem when the function returns, the down_read() and up_read
can be replaced by a guard(rwsem_read) then the goto pattern can be
removed.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Acked-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Li Ming <ming.li@zohomail.com>
Link: https://patch.msgid.link/20250221012453.126366-7-ming.li@zohomail.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 14:46:32 -07:00
Li Ming
a81ebe7d19 cxl/core: Use guard() to drop goto pattern of cxl_dpa_alloc()
In cxl_dpa_alloc(), some checking and operations need to be protected by
a rwsem called cxl_dpa_rwsem, so there is a goto pattern in
cxl_dpa_alloc() to release the rwsem. The goto pattern can be optimized
by using guard() to hold the rwsem.

Creating a new function called __cxl_dpa_alloc() to include all checking
and operations needed to be protected by cxl_dpa_rwsem. Using
guard(rwsem_write()) to hold cxl_dpa_rwsem at the beginning of the new
function.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Acked-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Li Ming <ming.li@zohomail.com>
Link: https://patch.msgid.link/20250221012453.126366-6-ming.li@zohomail.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 14:45:04 -07:00
Li Ming
16fe6ec4ac cxl/core: Use guard() to drop the goto pattern of cxl_dpa_free()
cxl_dpa_free() has a goto pattern to call up_write() for cxl_dpa_rwsem,
it can be removed by using a guard() to replace the down_write() and
up_write().

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Acked-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Li Ming <ming.li@zohomail.com>
Link: https://patch.msgid.link/20250221012453.126366-5-ming.li@zohomail.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 14:37:54 -07:00
Li Ming
a58afda8bf cxl/memdev: cxl_memdev_ioctl() cleanup
In cxl_memdev_ioctl(), the down_read(&cxl_memdev_rwsem) and
up_read(&cxl_memdev_rwsem) can be replaced by a
guard(rwsem_read)(&cxl_memdev_rwsem), it helps to remove the open-coded
up_read(&cxl_memdev_rwsem). Besides, the local var 'rc' can be also
removed to make the code more cleaner.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Acked-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Li Ming <ming.li@zohomail.com>
Link: https://patch.msgid.link/20250221012453.126366-4-ming.li@zohomail.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 14:37:47 -07:00
Li Ming
3ad4f59f38 cxl/core: cxl_mem_sanitize() cleanup
In cxl_mem_sanitize(), the down_read() and up_read() for
cxl_region_rwsem can be simply replaced by a guard(rwsem_read), and the
local variable 'rc' can be removed.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Acked-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Li Ming <ming.li@zohomail.com>
Link: https://patch.msgid.link/20250221012453.126366-3-ming.li@zohomail.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 14:37:42 -07:00
Li Ming
eeba74747a cxl/core: Use guard() to replace open-coded down_read/write()
Some down/up_read() and down/up_write() cases can be replaced by a
guard() simply to drop explicit unlock invoked. It helps to align coding
style with current CXL subsystem's.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Acked-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Li Ming <ming.li@zohomail.com>
Link: https://patch.msgid.link/20250221012453.126366-2-ming.li@zohomail.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 14:37:01 -07:00
Linus Torvalds
b35233e7bf - dm-flakey: fix memory corruption in optional corrupt_bio_byte feature
-----BEGIN PGP SIGNATURE-----
 
 iIoEABYIADIWIQRnH8MwLyZDhyYfesYTAyx9YGnhbQUCZ9QgCxQcbXBhdG9ja2FA
 cmVkaGF0LmNvbQAKCRATAyx9YGnhbQOXAP0dT6GGRIeW02cWgBeDAT4dmCOMyZhV
 Y4QYbBWnfpm97QEAmuEkUrw8apznS9kJ+n/O4NFbBa3gWJJ0K80HnPxX8wE=
 =HWcU
 -----END PGP SIGNATURE-----

Merge tag 'for-6.14/dm-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm

Pull device mapper fix from Mikulas Patocka:

 - dm-flakey: fix memory corruption in optional corrupt_bio_byte feature

* tag 'for-6.14/dm-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
  dm-flakey: Fix memory corruption in optional corrupt_bio_byte feature
2025-03-14 11:31:57 -10:00
Dave Jiang
9387c6aec0 Merge branch 'for-6.15/fw-first-error-logging' into cxl-for-next2
Add logging support for CXL CPER endpoint and port protocol errors.
Including the 2 patches that was completed later.

Link: https://lore.kernel.org/linux-cxl/20250123084421.127697-1-Smita.KoralahalliChannabasappa@amd.com/
Link: https://lore.kernel.org/linux-cxl/20250310223839.31342-1-Smita.KoralahalliChannabasappa@amd.com/
2025-03-14 14:27:17 -07:00
Smita Koralahalli
02f4f0177d cxl/pci: Add trace logging for CXL PCIe Port RAS errors
The CXL drivers use kernel trace functions for logging endpoint and
Restricted CXL host (RCH) Downstream Port RAS errors. Similar functionality
is required for CXL Root Ports, CXL Downstream Switch Ports, and CXL
Upstream Switch Ports.

Introduce trace logging functions for both RAS correctable and
uncorrectable errors specific to CXL PCIe Ports. Use them to trace
FW-First Protocol errors.

Co-developed-by: Terry Bowman <terry.bowman@amd.com>
Signed-off-by: Terry Bowman <terry.bowman@amd.com>
Signed-off-by: Smita Koralahalli <Smita.KoralahalliChannabasappa@amd.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Li Ming <ming.li@zohomail.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Tony Luck <tony.luck@intel.com>
Link: https://patch.msgid.link/20250310223839.31342-3-Smita.KoralahalliChannabasappa@amd.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 14:22:08 -07:00
Linus Torvalds
580b203235 block-6.14-20250313
-----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCAAuFiEEwPw5LcreJtl1+l5K99NY+ylx4KYFAmfTYxsQHGF4Ym9lQGtl
 cm5lbC5kawAKCRD301j7KXHgpjVKD/9qZjztmVq6Rk9RBjZwMYxcO9Nzj7qQQ6m9
 S15eXslAA1eLec3p1Mx4oVaWoFranY03BClqCgywBUAgpYstnT9cEqkz0P+n6xIE
 bNGjfxx4NInvrQYRETskc4wQqOnAdiRMd9i96EpHqW9Pi/pl8dSQxmxlaeo0BBIM
 XDvodLhr38aLJwcNBQ9NKCfhJ7RruACuSiXRAsPH3D641ZpccW4ADuhYxhJDehKa
 fMzuEFaa9/mBvmIrhE3QCbvWr7VYzSkadMLJWnxLsN1PU4FXZbh4Oy5Kp7DrA4Zq
 YkwezSivjNWNqNsiyvVa63mKbxfe9MSh5odqWuLrkWr4cOzEOcpHRbNV2El5RK/x
 BtGt/eCT2cRQAG4MzveoiE1yG9AAmUvUZL/RvxbERedqWO69IsgrsIsdnoiaLgw/
 267eCeGQlpHGhVUKga7ouShlTowTaCLCi+XgJwUTsVP/VPuzEFwgkzX0J45bSPGd
 h0laUzuHcThe8cRY2t5JWu+JJTqHj6ubsPeqiMAQzCns1C+IWYsjPXEohfqt7av+
 2yoIwG9DCBfJfh0ml0t3yHHMSJzjcwQcQAw1P7loLI+TIDvrpVP7AYOVt4SYeXl4
 RTEvNKQRmQGNZ8B3lGrqVKnbJ5ExBzvE6muQTOhockCTQsNK7WNaT2dMWRLyW6rW
 HcdUkADDVg==
 =MG/C
 -----END PGP SIGNATURE-----

Merge tag 'block-6.14-20250313' of git://git.kernel.dk/linux

Pull block fixes from Jens Axboe:

 - NVMe pull request via Keith:
     - Concurrent pci error and hotplug handling fix (Keith)
     - Endpoint function fixes (Damien)

 - Fix for a regression introduced in this cycle with error checking for
   batched request completions (Shin'ichiro)

* tag 'block-6.14-20250313' of git://git.kernel.dk/linux:
  block: change blk_mq_add_to_batch() third argument type to bool
  nvme: move error logging from nvme_end_req() to __nvme_end_req()
  nvmet: pci-epf: Do not add an IRQ vector if not needed
  nvmet: pci-epf: Set NVMET_PCI_EPF_Q_LIVE when a queue is fully created
  nvme-pci: fix stuck reset on concurrent DPC and HP
2025-03-14 11:22:05 -10:00
Smita Koralahalli
36f257e3b0 acpi/ghes, cxl/pci: Process CXL CPER Protocol Errors
When PCIe AER is in FW-First, OS should process CXL Protocol errors from
CPER records. Introduce support for handling and logging CXL Protocol
errors.

The defined trace events cxl_aer_uncorrectable_error and
cxl_aer_correctable_error trace native CXL AER endpoint errors. Reuse them
to trace FW-First Protocol errors.

Since the CXL code is required to be called from process context and
GHES is in interrupt context, use workqueues for processing.

Similar to CXL CPER event handling, use kfifo to handle errors as it
simplifies queue processing by providing lock free fifo operations.

Add the ability for the CXL sub-system to register a workqueue to
process CXL CPER protocol errors.

[DJ: return cxl_cper_register_prot_err_work() directly in cxl_ras_init()]

Signed-off-by: Smita Koralahalli <Smita.KoralahalliChannabasappa@amd.com>
Reviewed-by: Li Ming <ming.li@zohomail.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Tony Luck <tony.luck@intel.com>
Link: https://patch.msgid.link/20250310223839.31342-2-Smita.KoralahalliChannabasappa@amd.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
2025-03-14 14:21:45 -07:00
Johan Hovold
55e52d0553 arm64: dts: qcom: x1e78100-t14s: fix missing HID supplies
Add the missing HID supplies to avoid relying on other consumers to keep
them on.

This also avoids the following warnings on boot:

	i2c_hid_of 0-0010: supply vdd not found, using dummy regulator
	i2c_hid_of 0-0010: supply vddl not found, using dummy regulator
	i2c_hid_of 1-0015: supply vdd not found, using dummy regulator
	i2c_hid_of 1-002c: supply vdd not found, using dummy regulator
	i2c_hid_of 1-0015: supply vddl not found, using dummy regulator
	i2c_hid_of 1-002c: supply vddl not found, using dummy regulator
	i2c_hid_of 1-003a: supply vdd not found, using dummy regulator
	i2c_hid_of 1-003a: supply vddl not found, using dummy regulator

Note that VCC3B is also used for things like the modem which are not yet
described so mark the regulator as always-on for now.

Fixes: 7d1cbe2f49 ("arm64: dts: qcom: Add X1E78100 ThinkPad T14s Gen 6")
Cc: stable@vger.kernel.org	# 6.12
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250314145440.11371-9-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-14 16:07:31 -05:00
Johan Hovold
ff6ba96378 arm64: dts: qcom: x1e80100-qcp: mark l12b and l15b always-on
The l12b and l15b supplies are used by components that are not (fully)
described (and some never will be) and must never be disabled.

Mark the regulators as always-on to prevent them from being disabled,
for example, when consumers probe defer or suspend.

Fixes: af16b00578 ("arm64: dts: qcom: Add base X1E80100 dtsi and the QCP dts")
Cc: stable@vger.kernel.org	# 6.8
Cc: Rajendra Nayak <quic_rjendra@quicinc.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250314145440.11371-8-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-14 16:07:31 -05:00
Johan Hovold
f43a71dc6d arm64: dts: qcom: x1e80100-yoga-slim7x: mark l12b and l15b always-on
The l12b and l15b supplies are used by components that are not (fully)
described (and some never will be) and must never be disabled.

Mark the regulators as always-on to prevent them from being disabled,
for example, when consumers probe defer or suspend.

Fixes: 45247fe17d ("arm64: dts: qcom: x1e80100: add Lenovo Thinkpad Yoga slim 7x devicetree")
Cc: stable@vger.kernel.org	# 6.11
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250314145440.11371-7-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-14 16:07:31 -05:00
Johan Hovold
3ab4e212a4 arm64: dts: qcom: x1e80100-hp-x14: mark l12b and l15b always-on
The l12b and l15b supplies are used by components that are not (fully)
described (and some never will be) and must never be disabled.

Mark the regulators as always-on to prevent them from being disabled,
for example, when consumers probe defer or suspend.

Fixes: 6f18b8d414 ("arm64: dts: qcom: x1e80100-hp-x14: dt for HP Omnibook X Laptop 14")
Cc: stable@vger.kernel.org	# 6.14
Cc: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250314145440.11371-6-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-14 16:07:30 -05:00
Johan Hovold
63169c07d7 arm64: dts: qcom: x1e80100-dell-xps13-9345: mark l12b and l15b always-on
The l12b and l15b supplies are used by components that are not (fully)
described (and some never will be) and must never be disabled.

Mark the regulators as always-on to prevent them from being disabled,
for example, when consumers probe defer or suspend.

Note that these supplies currently have no consumers described in
mainline.

Fixes: f5b788d0e8 ("arm64: dts: qcom: Add support for X1-based Dell XPS 13 9345")
Cc: stable@vger.kernel.org	# 6.13
Reviewed-by: Aleksandrs Vinarskis <alex.vinarskis@gmail.com>
Tested-by: Aleksandrs Vinarskis <alex.vinarskis@gmail.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250314145440.11371-5-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-14 16:07:30 -05:00
Johan Hovold
7d328cc134 arm64: dts: qcom: x1e001de-devkit: mark l12b and l15b always-on
The l12b and l15b supplies are used by components that are not (fully)
described (and some never will be) and must never be disabled.

Mark the regulators as always-on to prevent them from being disabled,
for example, when consumers probe defer or suspend.

Fixes: 7b8a31e82b ("arm64: dts: qcom: Add X1E001DE Snapdragon Devkit for Windows")
Cc: stable@vger.kernel.org	# 6.14
Cc: Sibi Sankar <quic_sibis@quicinc.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250314145440.11371-4-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-14 16:07:30 -05:00
Johan Hovold
673fa129e5 arm64: dts: qcom: x1e78100-t14s: mark l12b and l15b always-on
The l12b and l15b supplies are used by components that are not (fully)
described (and some never will be) and must never be disabled.

Mark the regulators as always-on to prevent them from being disabled,
for example, when consumers probe defer or suspend.

Fixes: 7d1cbe2f49 ("arm64: dts: qcom: Add X1E78100 ThinkPad T14s Gen 6")
Cc: stable@vger.kernel.org	# 6.12
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250314145440.11371-3-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-14 16:07:30 -05:00
Johan Hovold
abf89bc4bb arm64: dts: qcom: x1e80100-crd: mark l12b and l15b always-on
The l12b and l15b supplies are used by components that are not (fully)
described (and some never will be) and must never be disabled.

Mark the regulators as always-on to prevent them from being disabled,
for example, when consumers probe defer or suspend.

Fixes: bd50b1f5b6 ("arm64: dts: qcom: x1e80100: Add Compute Reference Device")
Cc: stable@vger.kernel.org	# 6.8
Cc: Abel Vesa <abel.vesa@linaro.org>
Cc: Rajendra Nayak <quic_rjendra@quicinc.com>
Cc: Sibi Sankar <quic_sibis@quicinc.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250314145440.11371-2-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-14 16:07:30 -05:00
Johan Hovold
3529d95361 arm64: dts: qcom: sc8280xp-crd: add support for volume-up key
Add support for the keypad volume-up key on the debug extension board.

This is useful to have when testing PMIC interrupt handling, and the key
can also be used to wake up from deep suspend states (CX shutdown).

Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250307171036.7276-1-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-14 16:06:51 -05:00
Linus Torvalds
83158b21ae platform-drivers-x86 for v6.14-5
Fixes and new HW support:
 
  - amd/pmf:
 
     - Fix error handling in amd_pmf_init_smart_pc()
 
     - Fix missing hidden options for Smart PC
 
  - surface: aggregator_registry: Add Support for Surface Pro 11
 
 The following is an automated shortlog grouped by driver:
 
 amd/pmf:
  -  fix cleanup in amd_pmf_init_smart_pc()
 
 amd: pmf:
  -  Fix missing hidden options for Smart PC
 
 MAINTAINERS:
  -  Update Ike Panhc's email address
 
 surface: aggregator_registry:
  -  Add Support for Surface Pro 11
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQSCSUwRdwTNL2MhaBlZrE9hU+XOMQUCZ9Q9DAAKCRBZrE9hU+XO
 MZE3AP9GnIgzXK1dFbuorGfNCHMol4TbR6oANflMBPvORWE54QD/XWwongTvUpFU
 cgwVSasJb2fLso/nyBlVmYeKE7h8qAk=
 =6Une
 -----END PGP SIGNATURE-----

Merge tag 'platform-drivers-x86-v6.14-5' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86

Pull x86 platform driver fixes from Ilpo Järvinen:
 "Fixes and new HW support.

  The diff is a bit larger than I'd prefer at this point due to
  unwinding the amd/pmf driver's error handling properly instead of
  calling a deinit function that was a can full of worms.

  Summary:

   - amd/pmf:
       - Fix error handling in amd_pmf_init_smart_pc()
       - Fix missing hidden options for Smart PC

   - surface: aggregator_registry: Add Support for Surface Pro 11"

* tag 'platform-drivers-x86-v6.14-5' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
  MAINTAINERS: Update Ike Panhc's email address
  platform/x86/amd: pmf: Fix missing hidden options for Smart PC
  platform/surface: aggregator_registry: Add Support for Surface Pro 11
  platform/x86/amd/pmf: fix cleanup in amd_pmf_init_smart_pc()
2025-03-14 10:57:28 -10:00
Tamir Duberstein
d62f8c9547 scanf: break kunit into test cases
Use `suite_init` and move some tests into `scanf_test_cases`. This
gives us nicer output in the event of a failure.

Reviewed-by: David Gow <davidgow@google.com>
Signed-off-by: Tamir Duberstein <tamird@gmail.com>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Tested-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20250307-scanf-kunit-convert-v9-4-b98820fa39ff@gmail.com
Signed-off-by: Kees Cook <kees@kernel.org>
2025-03-14 13:56:15 -07:00
Tamir Duberstein
97c1f302f2 scanf: convert self-test to KUnit
Convert the scanf() self-test to a KUnit test.

In the interest of keeping the patch reasonably-sized this doesn't
refactor the tests into proper parameterized tests - it's all one big
test case.

Reviewed-by: David Gow <davidgow@google.com>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Tested-by: Petr Mladek <pmladek@suse.com>
Signed-off-by: Tamir Duberstein <tamird@gmail.com>
Link: https://lore.kernel.org/r/20250307-scanf-kunit-convert-v9-3-b98820fa39ff@gmail.com
Signed-off-by: Kees Cook <kees@kernel.org>
2025-03-14 13:55:37 -07:00
Tamir Duberstein
6340d61b90 scanf: remove redundant debug logs
Remove `pr_debug` calls which emit information already contained in
`pr_warn` calls that occur on test failure. This reduces unhelpful test
verbosity.

Note that a `pr_debug` removed from `_check_numbers_template` appears to
have been the only guard against silent false positives, but in fact
this condition is handled in `_test`; it is only possible for `n_args`
to be `0` in `_check_numbers_template` if the test explicitly expects it
*and* `vsscanf` returns `0`, matching the expectation.

Reviewed-by: Petr Mladek <pmladek@suse.com>
Signed-off-by: Tamir Duberstein <tamird@gmail.com>
Link: https://lore.kernel.org/r/20250307-scanf-kunit-convert-v9-2-b98820fa39ff@gmail.com
Signed-off-by: Kees Cook <kees@kernel.org>
2025-03-14 13:50:44 -07:00
Tamir Duberstein
5866730da7 scanf: implicate test line in failure messages
This improves the failure output by pointing to the failing line at the
top level of the test.

Reviewed-by: Petr Mladek <pmladek@suse.com>
Tested-by: Petr Mladek <pmladek@suse.com>
Signed-off-by: Tamir Duberstein <tamird@gmail.com>
Link: https://lore.kernel.org/r/20250307-scanf-kunit-convert-v9-1-b98820fa39ff@gmail.com
Signed-off-by: Kees Cook <kees@kernel.org>
2025-03-14 13:50:44 -07:00
Linus Torvalds
6efcfe105c gpio fixes for v6.14-rc7
- use raw notifier for line state events
 - don't check the return value of gpio_chip::get_direction() when
   registering a GPIO chip
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEFp3rbAvDxGAT0sefEacuoBRx13IFAmfT/6AACgkQEacuoBRx
 13JcXBAAxhMZQ4WpdqXMCjLTSGCRGS/QsmsqMFSeaPAi9es3BiQrFHq8D5uu0pGT
 37mkKQVt7mnNy7N7edbheKKwmwN6DCEBYvBNMnKTuXuruHOIsNqk/zgBisB5BlAV
 nrZhy5c7pSRcMVVfnNr9lFgfIw0Vg1chUXh3GqL9l4JhrIpWdtnACw2/RvjV3CCj
 eGotF+pBKoLiN8fGobK7b710LptUJ0oB0RLxgYkqPHwBFRe6A90Z6NgQtTHzIcI/
 lHxEU2kmfqGGhhQMLZwE8f1IR477fu903YpeN4DnQoEbgZtPx8KuW4eyZ/sRRxWZ
 a1JEQq29TUES7xnbPMQCSFnI+2CPQCC6Y61cxsI+RJeF2hjw/+HrF+7Kil4hI9Gk
 XlAWohymH60rVnRx9V7DLDu2E7F/D7xVd/0B//RnDp32uvQaQtxkfg4Y0cz8Ldwa
 4c3yxeGjTQinxavkePeSQOV0m5Y14ow5X4HDM72wzHjt7tcdj0EcU/Go3Y/ymkbu
 lJa6p4LpXA8QlKUBKUHztoLOoYbuCr/5A/zdc8PYS7SBCn9Zm29A+TcjPxxwRimA
 7UpgfD5xytgY7DRB5meuebXD6BvLda0cJaa9vdc7Hd8nRbbPdhGlmt5i1URPM38g
 E4jTmFMmNVzL+ngRJPBxv5CQ9R35jiOlQsAphcMObVwCCj65w3s=
 =gVFo
 -----END PGP SIGNATURE-----

Merge tag 'gpio-fixes-for-v6.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux

Pull gpio fixes from Bartosz Golaszewski:
 "The first fix is a backport from my v6.15-rc1 queue that turned out to
  be needed in v6.14 as well but as the former diverged from my fixes
  branch I had to adjust the patch a bit.

  The second one fixes a regression observed in user-space where closing
  a file descriptor associated with a GPIO device results in a ~10ms
  delay due to the atomic notifier calling rcu_synchronize() when
  unregistering.

  Summary:

   - don't check the return value of gpio_chip::get_direction() when
     registering a GPIO chip

   - use raw notifier for line state events"

* tag 'gpio-fixes-for-v6.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
  gpio: cdev: use raw notifier for line state events
  gpiolib: don't check the retval of get_direction() when registering a chip
2025-03-14 10:39:41 -10:00
Linus Torvalds
b1144bc7cb sound fixes for 6.14-rc7
A collection of last-minute fixes.  Most of them are for ASoC, and
 the only one core fix is for reverting the previous change, while
 the rest are all device-specific quirks and fixes, which should be
 relatively safe to apply.
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCAAsFiEEIXTw5fNLNI7mMiVaLtJE4w1nLE8FAmfT/QgOHHRpd2FpQHN1
 c2UuZGUACgkQLtJE4w1nLE+BRQ//R0JdsAi6QdLaFBr9djLaeD4cg4teZNAIllZH
 +DHicAcLq8c8YRZpBEtbkdNSPqQaaP1DFK+ecfBPCnMNVVNviVu31LfOkPYOeeaa
 OhcpewBoeIPbUlt2B1uvgo/sNsQVw2oNIYQLd8iwz/Qx50K2M2TdsBvdsvD94MbL
 tTADYYXexXv3zNLTPrrUH0aq6pQ+ybjiXovsN+enWTnwTTg9EDiBeiC4x0pYje1e
 pbY2ouxkKhxJR5+RFlkznSgeUZap4X63ax1yo5x5nosyEWzIX9R6PL735HTtgjXc
 Z1BcB5nxv93sbdkTivPCrF8Ttqb9vCLDdBNvK4J/oLSJzmLImEl7WNldNEYdEfad
 DeI90gNL2nQBnhCsVhu2kPw20IsLym9UNuDsu9A/tC0tVw9cTcV95xPNWhosM2ue
 y7ma+UsZQKLVgZWtLBbwHaPmXiyb0z9n/5GtVA2ZfmBih4h5pKPZ/qV7pL59zubz
 73vq8vZNaeRMJdO2wTmsfkZxvxfeh8w9AzqzDEYVMj9bsKsheDtgjGVHKE15dMbk
 Ti9YnPv0T5Hcv39ZK2vF8xNCEVfpeJt2P9449ht41gyKdVCW0BO7LCcHih7LSreL
 RiowSMa2L4+Afjali+qIWT8Kp3jTlqWDPF88Eqw+jTZF4OUSAB7JeSN3OWycrrtS
 2J52niI=
 =EmsG
 -----END PGP SIGNATURE-----

Merge tag 'sound-6.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull sound fixes from Takashi Iwai:
 "A collection of last-minute fixes.

  Most of them are for ASoC, and the only one core fix is for reverting
  the previous change, while the rest are all device-specific quirks and
  fixes, which should be relatively safe to apply"

* tag 'sound-6.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ASoC: cs42l43: convert to SYSTEM_SLEEP_PM_OPS
  ALSA: hda/realtek: Add mute LED quirk for HP Pavilion x360 14-dy1xxx
  ASoC: codecs: wm0010: Fix error handling path in wm0010_spi_probe()
  ASoC: rt722-sdca: add missing readable registers
  ASoC: amd: yc: Support mic on another Lenovo ThinkPad E16 Gen 2 model
  ASoC: cs42l43: Fix maximum ADC Volume
  ASoC: ops: Consistently treat platform_max as control value
  ASoC: rt1320: set wake_capable = 0 explicitly
  ASoC: cs42l43: Add jack delay debounce after suspend
  ASoC: tegra: Fix ADX S24_LE audio format
  ASoC: codecs: wsa884x: report temps to hwmon in millidegree of Celsius
  ASoC: Intel: sof_sdw: Fix unlikely uninitialized variable use in create_sdw_dailinks()
2025-03-14 10:35:39 -10:00
Linus Torvalds
ef9248676f arm64 fixes for -rc7
- Fix population of the vmemmap for regions of memory that are smaller
   than a section (128 MiB)
 
 - Fix range-based TLB over-invalidation when invoked via a MMU notifier
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCgAuFiEEPxTL6PPUbjXGY88ct6xw3ITBYzQFAmfTHq4QHHdpbGxAa2Vy
 bmVsLm9yZwAKCRC3rHDchMFjNGU4CAC6PIWBABqenvd3bDAKSndhq8oGUWGU6sxT
 XvOaIJZzTNOufe3mbLZe2B4IQryW3aRnW5Y97PX9aEdymZCz9o9FRId7nyzduRON
 kga5AzYJ0EiGQV5clXY3lh6rlcG2lnCtvc2ZJwZFKPpC5wqWbpUoRIcgVyq5Ys3E
 lDtMa4Lq9CpEfzLZeEN2e7U5FzFFPppoYl/zfLmhQDawpOlIwnH5zQLgEvjhJvg7
 gsbUdHmtIFbzAqM/JlHyOe1cks8Il39xlG0g/q1B7tw6Cr82NaQ/6HIDH82Niuwu
 m3u3N5c3JeeSTlDPuLOnvk1jNHnsxKsoizNc4YMKxdrJx1XA/kua
 =UQo9
 -----END PGP SIGNATURE-----

Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

Pull arm64 fixes from Will Deacon:
 "The main one is a horrible macro fix for our TLB flushing code which
  resulted in over-invalidation on the MMU notifier path.

  Summary:

   - Fix population of the vmemmap for regions of memory that are
     smaller than a section (128 MiB)

   - Fix range-based TLB over-invalidation when invoked via a MMU
     notifier"

* tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
  Fix mmu notifiers for range-based invalidates
  arm64: mm: Populate vmemmap at the page level if not section aligned
2025-03-14 10:24:57 -10:00
Sebastian Andrzej Siewior
35e6b537af lockdep: Remove disable_irq_lockdep()
disable_irq_lockdep() has no users, last one was probabaly removed in
   0b7c874348 ("forcedeth: fix unilateral interrupt disabling in netpoll path")

Remove disable_irq_lockdep().

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20250212103619.2560503-3-bigeasy@linutronix.de
2025-03-14 21:13:20 +01:00
Sebastian Andrzej Siewior
87886b32d6 lockdep: Don't disable interrupts on RT in disable_irq_nosync_lockdep.*()
disable_irq_nosync_lockdep() disables interrupts with lockdep enabled to
avoid false positive reports by lockdep that a certain lock has not been
acquired with disabled interrupts. The user of this macros expects that
a lock can be acquried without disabling interrupts because the IRQ line
triggering the interrupt is disabled.

This triggers a warning on PREEMPT_RT because after
disable_irq_nosync_lockdep.*() the following spinlock_t now is acquired
with disabled interrupts.

On PREEMPT_RT there is no difference between spin_lock() and
spin_lock_irq() so avoiding disabling interrupts in this case works for
the two remaining callers as of today.

Don't disable interrupts on PREEMPT_RT in disable_irq_nosync_lockdep.*().

Closes: https://lore.kernel.org/760e34f9-6034-40e0-82a5-ee9becd24438@roeck-us.net
Fixes: e8106b941c ("[PATCH] lockdep: core, add enable/disable_irq_irqsave/irqrestore() APIs")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Suggested-by: "Steven Rostedt (Google)" <rostedt@goodmis.org>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20250212103619.2560503-2-bigeasy@linutronix.de
2025-03-14 21:13:20 +01:00