Commit graph

1,427,036 commits

Author SHA1 Message Date
Arnd Bergmann
fbf57f25f0 Reset controller updates for v7.1
* Rework the reset core to support firmware nodes, add more fine
   grained locking, and use guard() helpers.
 * Change the reset-gpio driver to use firmware nodes.
 * Add support for the Cix Sky1 SoC reset controller.
 * Add support for the RZ/G3E SoC to the reset-rzv2h-usb2phy driver and
   convert it to regmap. Prepare registering a VBUS mux controller.
 * Replace use of the deprecated register_restart_handler() function in
   the ath79, intel-gw, lpc18xx, ma35d1, npcm, and sunplus reset drivers.
 * Combine two allocations into one in the sti/reset-syscfg driver.
 * Fix the reset-rzg2l-usbphy-ctrl MODULE_AUTHOR email.
 * Fix the reset_control_rearm() kerneldoc comment.
 
 The last commit is a merge of reset-fixes-for-v7.0-2 into reset/next,
 to solve a merge conflict between commits a9b95ce36d ("reset: gpio: add a
 devlink between reset-gpio and its consumer") and fbffb8c7c7 ("reset: gpio:
 fix double free in reset_add_gpio_aux_device() error path").
 -----BEGIN PGP SIGNATURE-----
 
 iI0EABYKADUWIQRRO6F6WdpH1R0vGibVhaclGDdiwAUCac6hKxcccC56YWJlbEBw
 ZW5ndXRyb25peC5kZQAKCRDVhaclGDdiwCLgAP0UQcotyKJcre8i8wSOcqm2A3Bt
 KXA21xnTcdXMuohMLwEA65JaQYMy5/NVrU8n5Qap8w7MlgGW07TcOGD3RArY0gk=
 =SUSd
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnO3IcACgkQmmx57+YA
 GNkD8w//Q80QGO8FPb0YWyU5bHn4XI6COVbRAM6cZWd7xEJboHBPAItjzrH1vAIY
 EXho71wdW/1cl7wdcd/xi+BlDpGqHYqLLqiM5r5kKxGi5oQcJnHWxvwvjMuNPsfS
 /jY4hbKyj0E/uvYpf5NkECzOl1fovsuew+BkR/oSge+Jfn0mWtMLXpcnoIaN0x0S
 X+5QKE3SOa/3bTzwWFCcnLCRKzOYc5OKndphHaGXo21m4jZVsYPMKBZRRJtEpnYG
 FFq1wNYFZ7M0BSNr0gRGe0e4veiZsdUr0tqk3oAhDDDfyWWnNDVJ6BdskqoMWm3I
 xeHpVpNDIf6qhTcFHjEOCjv03XDqUD4nkwDAWFaDDpFLRM0qg/jWkHpVzdhSQynO
 5XExxY+7wggeX3xhC1MaaFY2rRuJI1fTEvDIg9N/TY04cQqPKNRj5gNZb/ndWxd0
 JWSR1tmgZGcrDa8UXZkbrSypHXVQDLcJC46dauApCNEQwi1SL0MngdRb89obqUwZ
 E/ASZK6q7Fr4OeMEr+i4Y5EbpcNMkPPlgeCPBQRpDvdZqX/mIn//pZX5CRiM7Pkn
 IGk1rLJDYkiWMyDtlIfZ00VFFDU4Fy4Duu21yKsDBm8pEjRQeYTaoMYFiQy73jZP
 ChY/TvtNX+M6bZcq14v105sIS3p53wyZs6QIUgAHV8TnuvP0b+s=
 =3l2y
 -----END PGP SIGNATURE-----

Merge tag 'reset-for-v7.1' of https://git.pengutronix.de/git/pza/linux into soc/drivers

Reset controller updates for v7.1

* Rework the reset core to support firmware nodes, add more fine
  grained locking, and use guard() helpers.
* Change the reset-gpio driver to use firmware nodes.
* Add support for the Cix Sky1 SoC reset controller.
* Add support for the RZ/G3E SoC to the reset-rzv2h-usb2phy driver and
  convert it to regmap. Prepare registering a VBUS mux controller.
* Replace use of the deprecated register_restart_handler() function in
  the ath79, intel-gw, lpc18xx, ma35d1, npcm, and sunplus reset drivers.
* Combine two allocations into one in the sti/reset-syscfg driver.
* Fix the reset-rzg2l-usbphy-ctrl MODULE_AUTHOR email.
* Fix the reset_control_rearm() kerneldoc comment.

The last commit is a merge of reset-fixes-for-v7.0-2 into reset/next,
to solve a merge conflict between commits a9b95ce36d ("reset: gpio: add a
devlink between reset-gpio and its consumer") and fbffb8c7c7 ("reset: gpio:
fix double free in reset_add_gpio_aux_device() error path").

* tag 'reset-for-v7.1' of https://git.pengutronix.de/git/pza/linux: (35 commits)
  reset: rzv2h-usb2phy: Add support for VBUS mux controller registration
  reset: rzv2h-usb2phy: Convert to regmap API
  dt-bindings: reset: renesas,rzv2h-usb2phy: Document RZ/G3E USB2PHY reset
  dt-bindings: reset: renesas,rzv2h-usb2phy: Add '#mux-state-cells' property
  reset: core: Drop unnecessary double quote
  reset: rzv2h-usb2phy: Keep PHY clock enabled for entire device lifetime
  reset: spacemit: k3: Decouple composite reset lines
  reset: gpio: fix double free in reset_add_gpio_aux_device() error path
  reset: rzg2l-usbphy-ctrl: Fix malformed MODULE_AUTHOR string
  reset: sti: kzalloc + kcalloc to kzalloc
  reset: don't overwrite fwnode_reset_n_cells
  reset: core: Fix indentation
  reset: add Sky1 soc reset support
  dt-bindings: soc: cix: document the syscon on Sky1 SoC
  reset: gpio: make the driver fwnode-agnostic
  reset: convert reset core to using firmware nodes
  reset: convert the core API to using firmware nodes
  reset: convert of_reset_control_get_count() to using firmware nodes
  reset: protect struct reset_control with its own mutex
  reset: protect struct reset_controller_dev with its own mutex
  ...

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-02 23:15:27 +02:00
Arnd Bergmann
62513d2213 i.MX dt-bindings update for 7.1:
- New board support: Verdin iMX95, MBa93xxLA-MINI, TQMa95xxLA, S32N79
   SoC/RDB, i.MX8MP audio board (version 2), SolidRun i.MX8M, TQMa8x,
   GOcontroll Moduline IV/Mini, FRDM-IMX91S, Variscite DART-MX91,
   i.MX93 Wireless EVK, Variscite DART-MX95.
 - fsl,irqsteer add nxp,s32n79-irqsteer support.
 - fsl,imx93-media-blk-ctrl add dbi-bridge.
 -----BEGIN PGP SIGNATURE-----
 
 iQHFBAABCgAvFiEEJS45w2QNr0ezLVaoNF3oRQ23YkwFAmnFXEURHGZyYW5rLmxp
 QG54cC5jb20ACgkQNF3oRQ23Ykwingv/b0JC877LuSiwreC39fP67SBWGPvaos1b
 q70gQ+nx9EY34ITpMmuwBVCCFUYtqgDQdpwLHzw6WOF5YcGfr7h7gjQZ4+Rt+5J3
 KLP6SBlQubNSArzBC2umXUlvxoyqkOqLEwA0LukxIjkPU1D6hdYg3rHm0P3jSNpY
 GG8omjXXL8VBQZXR/faVSy9RIaNSI0iTvoTavFmmyXgF5aFEOquIaPBdO8Io8JGU
 x9EHrG3vecR3XSit9c6y6sb2T7bFfp8m1x2+y9Jwmmzl/05gwRBnifVe1KAIRnrb
 XKBbt8TrvZJa0K/t6/r0JIj/H4wWNw0J0CejwaUbiW4BszVgfhXi8n+T7Ld53xf9
 BktA2oCFHqqpsJ+A4RZ/BmnD6bb+nd/1SZxDVnO+eXM1/XC+cDtXQsZ9RopwVmRU
 bf/6X7bnbITinT6MlO5QHoAgqqh6cS+roRw63mV5g1AcKTMZkj54qheNFxOCRb29
 LugZSq6NInLuOn2ftx45SZjP+OPhC/ur
 =tZ7p
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnO3CcACgkQmmx57+YA
 GNkIkBAAkYWfBOZ5wlSWOPxY0Bx79JCBVB9dC45C+Lcw2Sl8oHHH89wRSSR0BQr+
 83X4W+mNum5RWHQgDEyWkvllFZHZ0RFgstk31P7wCaYsSEq7VIHpb76NEGQDfGOB
 XSvIK7QgQoS38rE9JPXnJZNPjnYmn624Eev99Ykpx1o0uPBppMBDws36OX3m/WaI
 ObOuS7IQTIZ0wE+1dx3pwHZLt7qiYzX3rpoLZBI2wXc1Sr+RIGcbTXx6gFErk42U
 9ID6ovSDrxTOxAVZtFBCuHWKklB5H9fVPbcCJvCOdDEw4q4itxc4EJXWMvvRqsK7
 Sddc+zoL+g/zzgCICgWZLuK54wWDR8r39a3gGXNZgh/3FH7SkbA7+ujGImz2GGQM
 todKDj19HcRdcRDGYq3O6KjgbZ1vL4FvUgMv/Z3yakoMQ4BMI2X3ZsJFVm4YtEHz
 M3P2VKQiwSR+x0ZLml4PXQepwEkbWErUEzspeSOM98e8a23SkHdt91wbWWaii/RL
 cMS0BlQAauisEWpNhFNIwuTsQJPc9EnGqfQQMW3MJOImjjGjALWwvWsVDHEJRyja
 AqJBKYnHhFzGzAAj6xY667UfL9bjICdqg1GUBSqkt47RJZiwZ9a5kYKT4fWqQYuk
 MfJgEBpQH6NqjnRzwVgcmT5clEx1LYJJRn1aly28EfJb3RccYCw=
 =xuzA
 -----END PGP SIGNATURE-----

Merge tag 'imx-bindings-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/frank.li/linux into soc/drivers

i.MX dt-bindings update for 7.1:

- New board support: Verdin iMX95, MBa93xxLA-MINI, TQMa95xxLA, S32N79
  SoC/RDB, i.MX8MP audio board (version 2), SolidRun i.MX8M, TQMa8x,
  GOcontroll Moduline IV/Mini, FRDM-IMX91S, Variscite DART-MX91,
  i.MX93 Wireless EVK, Variscite DART-MX95.
- fsl,irqsteer add nxp,s32n79-irqsteer support.
- fsl,imx93-media-blk-ctrl add dbi-bridge.

* tag 'imx-bindings-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/frank.li/linux:
  dt-bindings: arm: fsl: add Verdin iMX95
  dt-bindings: arm: fsl: add MBa93xxLA-MINI
  dt-bindings: arm: add bindings for TQMa95xxLA
  dt-bindings: arm: lpc: add missed lpc43xx board
  dt-bindings: arm: fsl: Add NXP S32N79 SoC and RDB board
  dt-bindings: interrupt-controller: fsl,irqsteer: add S32N79 support
  dt-bindings: arm: fsl: Add compatible for i.MX8MP audio board (version 2)
  dt-bindings: arm: fsl: Add various solidrun i.MX8M boards
  dt-bindings: arm: fsl: add bindings for TQMa8x
  dt-bindings: fsl: imx7ulp-smc1: Add #clock-cells property
  dt-bindings: arm: fsl: Add GOcontroll Moduline IV/Mini
  dt-bindings: arm: fsl: Add FRDM-IMX91S board
  dt-bindings: arm: fsl: add Variscite DART-MX91 Boards
  dt-bindings: arm: fsl: Add i.MX93 Wireless EVK board
  dt-bindings: arm: fsl: add Variscite DART-MX95 Boards
  dt-bindings: soc: imx93-media-blk-ctrl: Add PDFC subnode to schema and example

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-02 23:14:13 +02:00
Arnd Bergmann
f1aa30a4b2 firmware: tegra: Changes for v7.1-rc1
This introduces a new API for the BPMP to be pass along a specifier from
 DT when getting a reference from a phandle. This is used to reference
 specific instances of the PCI controller on Tegra264. The ABI header for
 BPMP is updated to the latest version and BPMP APIs now use the more
 intuitive ENODEV instead of the non SUSV4 ENOTSUPP error code for stub
 implementations.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmnI8uEACgkQ3SOs138+
 s6G6MBAAhn72KSsuPWimww9QwCxbscyJzw65Kg3nWdeK+XUyKMhO7KiRMUUPtiHu
 qc7BrwtLk4w8rT9+2VP7v47N2I4MVpLdewb2e0mqMWpUygC7oHxHeF/RYfjgRaKX
 srGgQmzdBgiQQe2x0FZdSfTvVumKvTYJE9QkwPCjfmaQh740K4BZyRgMTYJrk6Nd
 qw/vnVEuEU1Wxg3cyronVnt2V2xkp8BOPgEgYNK6yGanE6NfmETWFKb+aXTU4ZpY
 Ou5lz4sr3ssqS+rOdTAfwL8eOiUW8CrGwLVXBb5PesWCzydpcYtni5cvAZmPx+u7
 f0/Z3Kxz+h64or2T5HQajQR+lCDYMapnonJKnUzCWNpBjXDlsuJ2MwVqkPIfFjcG
 D1JrfGoulFcmxFdskJFYptcT1izImCqYnqMO/5we6/EoOOenJpx+3iEWy76NRsHX
 zymq3z8nlt6WO3/GgKKcPEjaD6WoSpJJFC66DfADsUuXSiAoiFD7WFmTnOt1ZBrt
 xwUxJKmEbw6Z+MC2ZPNSG4gnHIty43+dCXYWfCNTljaO+I5Jsq+ZjQvWcQksa4MH
 A2J5/6A2mgaaxV6IG2tX3GFcJYB/7qjoSmxtvcKAMOEPcNu3EaWu9AFKKGycMbkc
 Ne5qvq0kLkPn47MLFWaF7wYSEeFAk6MNeHCQ7lm8rBF99oeYcGg=
 =MQCc
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnO2+EACgkQmmx57+YA
 GNlw9w//aV5hws4ODqH8LOpo2tOPcVXUurLbnZGULQiy30HmbUK2TKjU1P1aKVLE
 CmXS7XQUJi4vv8afNypUkU0ehouxRnVJY5eMKcLJsnq1pQydbjWjwWn18hx3+NPK
 R0jb0WFmrxPQ40jqY+1vMdbulAGLoqQjKGY7Vd+mOaFjJtaPw8+iFDsgtCSOLWlk
 G+BwOHSZMFaMHPLJ+ufwc/++MY/0ml8LIdbPfz4uaYGCsj6PkO1OMpaW5T7WUqQ1
 zy6YnYuZNoL+VbeQGcrYTBXaQyu0Frk0314dz05O2hFpnL+0k2im5j0tp/+rQZyv
 PlpEkk2jFLQXJ8zTdVdWfF138uiV0X3wNdppuYBGe97MohY+b1n9Cb7kM9jHD6kn
 meqs5bzwaj7Oz/J/AjopG0xfRxiCSHRSsB/1hq49IbSktWv5FMDFc7LPjgL1YyPy
 kDYJDMxpZi/dotAbS0zNWBF3bPeBSmc9q0sPiEMdQHSwb3l0HCMp3JOWAf0vo6Qa
 asCHLgbb6UXQOZ5fJytRqNmEsbS6+DczlagM0h97dt1WHRNUjzmPgDtnuRScE2Ep
 B9uD5EOe+N9Z+1DF9DlMzgMC9n7nMjlQKQZyg9GNMX9pUNRVyKlBMUm59jKo5UOm
 4odcE2L0tZQYyxS73/zBinFwm0vsKHHriR4ehsOzsmln5DWbJL0=
 =+Y40
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-7.1-firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/drivers

firmware: tegra: Changes for v7.1-rc1

This introduces a new API for the BPMP to be pass along a specifier from
DT when getting a reference from a phandle. This is used to reference
specific instances of the PCI controller on Tegra264. The ABI header for
BPMP is updated to the latest version and BPMP APIs now use the more
intuitive ENODEV instead of the non SUSV4 ENOTSUPP error code for stub
implementations.

* tag 'tegra-for-7.1-firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  soc/tegra: bpmp: Use ENODEV instead of ENOTSUPP
  firmware: tegra: bpmp: Add tegra_bpmp_get_with_id() function
  soc/tegra: Update BPMP ABI header
  firmware: tegra: bpmp: Rename Tegra239 to Tegra238

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-02 23:13:02 +02:00
Arnd Bergmann
86f9823daf soc/tegra: Changes for v7.1-rc1
A number of fixes went into this for the PMC and CBB drivers. The PMC
 driver also gains support for Tegra264 and a Kconfig symbol for the
 upcoming Tegra238 is added. The various per-generation Kconfig symbols
 are now also enabled by default for ARCH_TEGRA in order to reduce the
 number of configuration options that need to be explicitly enabled.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmnI8hsACgkQ3SOs138+
 s6ETEw/+NfgS037HAZX2R42EWsiVut+qDEc2+VhauHPlzGeUo6VtaGvM3kvy9iGe
 /qv3VU78lMdo/lwq6h6f1L45TQd2e703THeGisHqUb6VaK7Aqj6N4VjyfbPBOuAw
 FYppK7WfgBY2OLIcMuxPA9PIT/jXL6NKH0YbfXnoioPGRYFRk2eFfxg+hNoIWGyS
 tEVIL7hudorq+HriRkE7zRgFUnqcotApVYdxBj99tOrShHP3aQNt8RtZr+i3UKso
 VcK08IjmmHNgBwDTCpJbtBWKq37wxMPukKfj+X+a/dD/2lLOUizn6Wh8DQQw5iqU
 rfpw+AkcK8Foi7NuwSXzIW/riS1w2h3qrQEqGP34DeyNrJ9Jxc6ePlMb2a+hTZfk
 Hw5XwyrXbrdhaHqT7qswxztjHA8dF3Dkek4Sc2aqT23A4QYDZUyu5E9CVAjL7/oc
 i769HaKMZP5xMPCW/vqI4yBJNMST3Fbaph8Zlpq8+zuukEYBGoqReOhZ21uAOqmz
 nTLQOPMKSsNf4lV0sWp8kXRIY0zNOIzbBQJINlMWI3UHJ6wAB/DAmmuQ1MN30o3n
 GlSwUjH2t+y5CUn65xlXQxrAy41sSiQkx9sMjoOUPwVMG4Xy/49pAJZPwwzXEieH
 jy+GTtimJu08Bx9IULO7y5DVNwZY/XLXojlumPSNeFTen/IIdEc=
 =eOi6
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnO25IACgkQmmx57+YA
 GNnYHA//f2KoQOs2mSlkC06NHHW1s4lMr09Gx3K0TpfioayDT5SHdJqT93G0xb1r
 c/HjOCnq3a+kWhf5mNcJ/KWGaAwi/QJZqSU9GtsfD9SAyJP+1fA+8iokHAOHLbIN
 uKuFQFKPNw7ngdzFa4xpw/CaZ3q84Q2em9Yq7WEk6Ki4+hQ9LWCpl58zNZ8yi3C+
 9HQMwSlLINHTe+Ja5H0ciYpmcXI9fzRuKBjRngrMzTqaWeNT0QVOA4ca1MOQfIcs
 WaZp9oKdnGmsvCZrgsnsYv1dhlBM9Fq2XX0akvAV7ZZ7u/pdjgywZ4Bry1poPLON
 8vDCxlqBgrwxr8tpjhhaHZ3vE9CtVv1bNfc0kZ+voZb0wZSnD/VpZbfmTV+ufk2A
 +dEhvbq6wa9lZfZaSrlLfal6a4w6zClUvbSZ5JpIJWmQEdpy0EDkC2lh313oIUt5
 MZPhjBYvCyjfve2e7hZZ95HC3zVGgs0oRF8rIAw84BQNkUuaT05jDqbpuCYeO/Jy
 E2e2nVob5gExlqoqFGZTsbHTmY7urCkcI5/otTMyYApLh/MfiVKaxIohwJe9DfJO
 5CbkoxQEaavcA6AR/z+I1NNUUKBh4YmAUWLFA/hIozAnfP8TxiJmhZvfjiaudupa
 7L0XpaYK3L9YdWQ5Ja1vNnCj00PNYvGl2Ev9Pv+9WmX+KF99TO4=
 =3tc4
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-7.1-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/drivers

soc/tegra: Changes for v7.1-rc1

A number of fixes went into this for the PMC and CBB drivers. The PMC
driver also gains support for Tegra264 and a Kconfig symbol for the
upcoming Tegra238 is added. The various per-generation Kconfig symbols
are now also enabled by default for ARCH_TEGRA in order to reduce the
number of configuration options that need to be explicitly enabled.

* tag 'tegra-for-7.1-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  MAINTAINERS: Change email address for Thierry Reding
  soc/tegra: pmc: Add IO pads for Tegra264
  soc/tegra: pmc: Rename has_impl_33v_pwr flag
  soc/tegra: pmc: Refactor IO pad voltage control
  soc/tegra: pmc: Add Tegra264 wake events
  soc/tegra: pmc: Add AOWAKE regs for Tegra264
  soc/tegra: pmc: Add support for SoC specific AOWAKE offsets
  soc/tegra: pmc: Remove unused AOWAKE definitions
  soc/tegra: pmc: Add kerneldoc for wake-up variables
  soc/tegra: pmc: Correct function names in kerneldoc
  soc/tegra: pmc: Add kerneldoc for reboot notifier
  soc/tegra: common: Add Tegra114 support to devm_tegra_core_dev_init_opp_table
  soc/tegra: pmc: Enable core domain support for Tegra114
  soc/tegra: cbb: Fix cross-fabric target timeout lookup
  soc/tegra: cbb: Fix incorrect ARRAY_SIZE in fabric lookup tables
  soc/tegra: cbb: Set ERD on resume for err interrupt
  soc/tegra: cbb: Add support for CBB fabrics in Tegra238
  soc/tegra: Add Tegra238 Kconfig symbol
  soc/tegra: Make ARCH_TEGRA_SOC_FOO defaults for NVIDIA Tegra

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-02 23:11:42 +02:00
Philipp Zabel
d373605cd5 Reset controller fixes for v7.0, part 2
* Decouple spacemit K3 reset lines that were incorrectly coupled
   together as one, but are in fact separate resets in hardware.
 * Fix a double free in the reset_add_gpio_aux_device() error path.
   This has already been fixed on reset/next by commit a9b95ce36d
   ("reset: gpio: add a devlink between reset-gpio and its consumer").
 * Fix the MODULE_AUTHOR string in the rzg2l-usbphy-ctrl driver.
 -----BEGIN PGP SIGNATURE-----
 
 iI0EABYKADUWIQRRO6F6WdpH1R0vGibVhaclGDdiwAUCacJb2xcccC56YWJlbEBw
 ZW5ndXRyb25peC5kZQAKCRDVhaclGDdiwMEBAQCvMy6ymW61O7mFx3h26jX4XFXt
 FzW4T1OxSvZT4G8dwgEApKCL0clN6+eyZECPPm+785qeWLWaCKN2/YyCCg/EUQA=
 =l6oH
 -----END PGP SIGNATURE-----

Merge tag 'reset-fixes-for-v7.0-2' into reset/next

Reset controller fixes for v7.0, part 2

* Decouple spacemit K3 reset lines that were incorrectly coupled
  together as one, but are in fact separate resets in hardware.
* Fix a double free in the reset_add_gpio_aux_device() error path.
  This has already been fixed on reset/next by commit a9b95ce36d
  ("reset: gpio: add a devlink between reset-gpio and its consumer").
* Fix the MODULE_AUTHOR string in the rzg2l-usbphy-ctrl driver.

We merge this into reset/next to resolve a conflict between commits
a9b95ce36d ("reset: gpio: add a devlink between reset-gpio and its
consumer") and fbffb8c7c7 ("reset: gpio: fix double free in
reset_add_gpio_aux_device() error path").

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2026-04-02 18:32:53 +02:00
Arnd Bergmann
84a5fe2ee0 i.MX SoC update for 7.1:
- Updates MAINTAINERS file to include i.MX team coverage for ARM NXP platforms
 - Sets default values for OPACR (Off-Platform Peripheral Access Control
   Register) in the i.MX AIPSTZ bus driver
 -----BEGIN PGP SIGNATURE-----
 
 iQHFBAABCgAvFiEEJS45w2QNr0ezLVaoNF3oRQ23YkwFAmnFk5URHGZyYW5rLmxp
 QG54cC5jb20ACgkQNF3oRQ23YkxWxgwAyKOXAFEb8nD9qGmOvd+dsopZ91ZZLCun
 lqBDWz0B+IpPFGwO7NzpWjEcyeMJWAPpKzmRtaSETrCEymoIISm87CgDlrTsRTKi
 THLFk3fh6vT0JDCu3RzqYW4KLdb29p7ejVqcCzqcyAP5IjX1AN7HuBLI7Qd1CaHO
 tfU6+STyFrkRrMQv2y6ce04vv4DNWbnDSv7Z3/1lsk7s4VuQMS7yDPsL7k75t+Wo
 fqRu3nKBMok+XWtxHHaE04zZNvnQcBbY7FSR8XGhNOlSDv2l9rRxh4rlcFvpum4Q
 gbzqXa4zEmczZtn1c7YcP5ieMHGPrEuM1xYXi6k9io5xhD/4UIG1Q4jNTeZMw/vZ
 pjqnqNFeqMyy8ZcclYTvcUN0Mwqt1h83NsgD4qsly9Ofl8Q59BA58ZYJvOUjJ7wn
 25yKDB3WRClJFGhZnfAQG33yGt2xMOXjuV9bC7byWx263/WM0P5ll77YOneansj1
 2DA9kjss2QrrRVryeVpuZpnc6iRDIwNl
 =/y4n
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnNlIsACgkQmmx57+YA
 GNkf2BAAmExEqG510/98TAphhmDr2X65Gg4aORXfl1S4R3FUAvcU7ExCy05H7O1b
 PJmZqT0Wm8u9F/iGQjl8dOkO/kmCVBaNvrJOwr72yOwqxNsHJrKYFz872sjxM96s
 k1UMOq/aSe5xCz5bKWsXHPJMAMYald7Gbr97gsvwmnqngzTJzMSdAGLO9WCT2fn7
 pR+Ombdrz57d2CQ1XBs2xadD3uRNok2uuh4M+dVQqDUf+UfRWuTyu/5XnpSO7vNr
 zd105nFar/b1eiJA0DPtibnhUNoVG7QA//AoKC1TpEq1yz2kgmVGjWSVzFZMnfKz
 KaAsB/tDE/2MwGLfJuDHsLR8DLlTYEK8F2ICb+lG6EWS3MlP4C2SjVhKS89iUNXj
 rzrptW3iC21c4KOAKZRDUL4GnRknST4Hv0kJb/O6FEzHy4bJxm9RNlbZf5xVXuad
 2zlDVhg6gINZHNunIZPwjaR38KTIikzcvrwHnySWhRAQzbPguCpgzYTiZ8HotSkN
 b2iOTuFHQSAK492ECxJLCdVP9Od+7Wlh5V3+JW64KdKxtmTzCNw6DWv6OcZsZAyl
 OdkMgRWOwLzPBvDyiA9AlHZRCdUQz8d85bbaTnVePVOYfzMtJW2yzfRS/iqpDU4C
 ToXEtQFs9s9/7/vh92npAYaTP/ojxM2bGGgaDZgmeOAx3dSzDaU=
 =omNE
 -----END PGP SIGNATURE-----

Merge tag 'imx-soc-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/frank.li/linux into soc/drivers

i.MX SoC update for 7.1:

- Updates MAINTAINERS file to include i.MX team coverage for ARM NXP platforms
- Sets default values for OPACR (Off-Platform Peripheral Access Control
  Register) in the i.MX AIPSTZ bus driver

* tag 'imx-soc-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/frank.li/linux:
  MAINTAINERS: Add i.MX team to all arm NXP platforms
  bus: imx-aipstz: set default value for opacr registers

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:56:24 +02:00
Arnd Bergmann
78b06e0a76 Renesas driver updates for v7.1 (take two)
- Mark remaining rz_sysc_init_data structures __initconst.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCacZPdAAKCRCKwlD9ZEnx
 cIa3AP9jldP6tXheBHg/dEUixiO8ce+GUo7yqr6SqUPsoGidfAEAnwSHOmzmjKSY
 6fr2V4QLvQHII+sb+PlSKncwvZ6zdws=
 =jd3A
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnNk7wACgkQmmx57+YA
 GNnYow/+LQRUo1LqRLmk5degpqhgQA3U5FDcxuDHkbyRDEWjSIN0OuqaTQx586oa
 9RRNvy3YRlZULseIp8PBzMYNJP3TjmfRnZd1wGjErnpxU3WJa8PF4QQIkZWVHcZU
 WQZhlkYxCksqE+1879gJgzC0+vy7Mp5VJdFdBhptmNv5XOjFK6tVfrFDRdpo8MgV
 8Ww6Grj6XDIdBMIK+C+NAKJG5V6K3V5HXgTPg9jCrxRYu0LayNneYSdfzRS969So
 m2XrnZk7mSbUtb5xs+XpCdK2tQhj6zbx3x6czxAn9jI/8oh97GsRLQmUCs+HgvrM
 BV4PIKH+QBqsKKTGfHoTVVLjXHNIHrz8z7r5DfVFuVfkXmjaTlrsemt6U4RXJpzT
 xxUppC1KlDw8ARPfjAETtyyVKbfBGrAl48LTkDTWgZmOSj2Ep4zKPvZlaBARo++S
 4BawpPHvLPBZ3pYw5TJ7UG320xd0Xg90RmRwcb23Gu51EtlqoIHlAlCEcSAZuhd0
 JfeZUi2Ho0B4vqqciugHe00GjZpKg+OZG60LmffBb9UyUpG2NQrqSSKwHeTE1Bxg
 gwWiSBMUDacopK8sYx1JTafelBQww8bBaSlji6w9HeoHak9Jib4KnWFLimrWHYpO
 DKpBw8aliux25G0VqnbFBdZUqc7USvEI0JOHedpMe2lo1IZ4s5o=
 =+/O0
 -----END PGP SIGNATURE-----

Merge tag 'renesas-drivers-for-v7.1-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/drivers

Renesas driver updates for v7.1 (take two)

  - Mark remaining rz_sysc_init_data structures __initconst.

* tag 'renesas-drivers-for-v7.1-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  soc: renesas: r9a09g056-sys: Mark rzv2n_sys_init_data as __initconst
  soc: renesas: r9a09g047-sys: Mark rzg3e_sys_init_data as __initconst
  soc: renesas: r9a09g057-sys: Mark rzv2h_sys_init_data as __initconst

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:52:57 +02:00
Arnd Bergmann
95ff410d15 OP-TEE update for 7.1
Simplify TEE implementor ID match logic
 -----BEGIN PGP SIGNATURE-----
 
 iQJOBAABCgA4FiEE0qerISgy2SKkqO79Wr/6JGat8H4FAmnGgx4aHGplbnMud2lr
 bGFuZGVyQGxpbmFyby5vcmcACgkQWr/6JGat8H6umBAAucz456oX9sVT/8VEp+jU
 E92lFEH69o46uvF2ItzBrlo+U1K2ylECOUytexiaiPCz4XW7uSACOEARUOypc15x
 0NSTZC+P048kcDka8mpSdeJ4RbkA2qk8wQjOJJvILBAwjZsFCwczkhNRANGg4GxS
 G8CkT2m9n6fxwNgsPuxlah4+ywQ7DQyG4JJ+HYQCDuqZ+T76a7o15NVYiKMYN9de
 W4Xe71ZIPubGkK/K4Cb4FTo8OAHe1jLnFMtTfWq+p4RDO5GCHyHNw4X4thZoO1GO
 3RidNfK5AJS2r761mU+YYRY74gfilZsRYaGZSi9xHlKQRoUoCT6RlwJ/UgwIJMvp
 uInPHgAwIo8poaz9UOsqzrEALpLXWWf5evLNQsL9OjVfQDLPTzwTKPm8aZHnqmK5
 3JYEBpAkz7gjKr3+xBOL3E6M2JTkxVF2bTD8ELPc2wH8D0mKdPv15NGN1qUBHy9w
 PT47yYdJ3/rSdCTqzczbI8ebTdQhNdi8feATD2TNy++vrsy/srzxtCeI/stjqmME
 6k0wE3wRr4L16sfCYjEeHUunsqZEnQ40NZNGN5t5Ktio1tlQPlmycZNT8/kBQxfU
 XrcYRKVHJfVp3gp8FpOk4I8woTc6S78uQoccqKHxT+jIyfXHk19tf+Pot3W7pl+L
 B8oG4cu+CxMlquggU6aG/i4=
 =tXqq
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnNk5QACgkQmmx57+YA
 GNneVQ//e5D0/A+YL/yFR2rshZ0z6HqabYk5GugwCF6IJ3TujnQ4bebh3LhkE4w+
 UCY0RqugD7DJnMrBqSOB9P+bLk2GVg9ZOT9APUHec1Qc5Z6Is/VuQcUbhMMSROdn
 vMv2VkHxA2yYNLzvRROQf51flWD3Hoo6Gkjye/gI0GEU96bJ9G6BjO9884TjnNfD
 jWFAj7iqSwM/a9HMhd6EzxZSZe/0A80AwKmdY1pxi/6q7jxqAiAG5daqkUvp9tXU
 fOD7YcZymCVTufjffzkc686sVSmud1PMgUBOBNLEmi9vvKmLxk8WWWRmurqP8yyC
 SWPE4LqOlwVCYeGhYMdKK7dIO0ehzig0RXunUR66lzlaWJQxs+UTjAgocV7X6kQu
 cIEi9HgTQmLyGXl987eVDx7AZI1WDYwqzxfvJ0wS4tFbu7HwjKCpj2JwaJaEH8J7
 vEFXUA7f3kQ9HUkG9BIrJL3UC7HdfFfAnzgiiEPRi4ZP9xhq0MmyRIWetPne4gmI
 9udHJbjdJ0/+1pQLm45szqaSJvcqV23f3BiOfHT84XkekOzMpcjq/Hxj5DccfSN0
 8XiDr+stshAPasuESPiBRw9DmS/IlKi+YWTFBOFoATu1HYG3Xw89cfgPWEMK/NpN
 NpnrO13PZYy/KtX5vIIU76S/Dd9A+1dUQHadjHkAkPI/Q6K5Jj0=
 =8g4u
 -----END PGP SIGNATURE-----

Merge tag 'optee-for-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/jenswi/linux-tee into soc/drivers

OP-TEE update for 7.1

Simplify TEE implementor ID match logic

* tag 'optee-for-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/jenswi/linux-tee:
  optee: simplify OP-TEE context match

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:52:18 +02:00
Arnd Bergmann
d752790a4b TEE update for 7.1
Clean up tee_core.h kernel-doc to eliminate build warnings
 -----BEGIN PGP SIGNATURE-----
 
 iQJOBAABCgA4FiEE0qerISgy2SKkqO79Wr/6JGat8H4FAmnGgZYaHGplbnMud2lr
 bGFuZGVyQGxpbmFyby5vcmcACgkQWr/6JGat8H6yOQ//REPB4USw/k6NQOzQNsgC
 mLYX7SLbZ/EwcjxJQ9poZ6NwDB/NT6itA2m9m909rvFyi83jSGZBlTs8ma7o/bIf
 cUrfv8ooxOrVaX6x9oSTO/8rqEPj0rd67wqebHXXclQrpRFrBU1PXxw8NDhblw6J
 p2dHhKRqQPETmEiFFCjebLkAZ7Qlsi4Vz49uxDM3DIAc2KVpXR0dWwDpjggBf5xH
 PBgGIWk3CKYC5jh1T1C9ftznRm/vKByl4GK0+h7JNaq7/THOGyQqwIZErGqFvgyV
 kjAkoN2JS7BPsNvNpBktPBQ8SmKssND45iXkxOnpiRtLVhe0UiMfHjhk8Ebv1412
 WXcSzvQ3nVm7jSQpOETosioEk+pr1dWZAGIEnlFBj4RzeaIOaIMf8vLkSusOU3m9
 43un0KwvvFvUK+/xjTJ/DyQNj5qKaZVW8nJgzZTkUQDE79or8eKbcsmvKlIvyk+z
 1HYY3/HGXdSA1Qj2LedfcoAjAZ+4zDn70KGizA/LSuovWSR5CIboB5uercSgFU4K
 +C3JMzK5OxKx1Es8akZt8+Qs+XiNoLwyVsv8gbwNIIPUW1epjNzEDrSm14APH4Il
 ZHVxsN3oTI3pXOkW5xPhV9C0TznvJ5E76Lv/7x7+JuagwmVeonQCB+gWKrJ6F/sQ
 tXk+Y0OBleo33HRW8oginbM=
 =i/KD
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnNk2oACgkQmmx57+YA
 GNlhpRAAvlX7zj4nE6QWv0KJV5q1FyIvm24OPUq6hVZCzigkYsftM7TYTRS8IFYU
 Q7GAeSwQRbNJK8NPW0MCKTM65cyVGsOuG/LHsZnEeyDcV9Aj+B4v13ys8CORJazv
 N3FGqLkhqBY6Ji7YEqm4nWF2UJrFA4WfdSoiav/Nd2Fdmn6VIwaYmr5CG2URoKA1
 mHO8/neKTVqGyFuF7igyN3ei3e9oEAyAX15nceSls+3tNnMI50MjVol/66sUMbvE
 4ZXeajBDCfT5aPl6htzb2y+IgRaCZ6P/FCH8Vl5FI2mgz8mvaXaZ5mhf98sES8EF
 hZIUgolEhtrmZ1quNjFufstR+FNDxYEocp32flxiUzNHYTDaQSONP68jyhnmWqNU
 HL/w/iRgA+LuqHnX1fWvMhoT8qIYt8PUvXDp11u+pxMKuiHHtLHXz3wfLHEOYTAM
 mcWq+fkc1WFadTi2GkPy8t/glrrsiqAMX+IsLnZRZ37pjRAqTNYfCq0JsLHoWOP4
 +YcSWWnntEjD58o0s5UwLwees1djfJ4Ww8GwNkc6XpM0rwy178G81x0LGuzdUVWu
 0v5Z9Sd81R7bND//DB7CMudw9ZNpSePRGM9jjl1FHdZv8KsBwRFe5m1MALxggVnO
 K/lxlUi3j62ukALmIC/SsYDoXmtT3VnSBzT8Qfv2WiLfDlwOmmM=
 =6X4n
 -----END PGP SIGNATURE-----

Merge tag 'tee-for-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/jenswi/linux-tee into soc/drivers

TEE update for 7.1

Clean up tee_core.h kernel-doc to eliminate build warnings

* tag 'tee-for-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/jenswi/linux-tee:
  tee: clean up tee_core.h kernel-doc

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:51:34 +02:00
Arnd Bergmann
033d5c6cea HiSilicon driver updates for v7.1
- Fix two compiler warnings on kunpeng_hccs driver
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCgAzFiEEQeMYD8qOQTc1R/snC8hXbtmJZlwFAmm+PXwVHHh1d2VpNUBo
 aXNpbGljb24uY29tAAoJEAvIV27ZiWZc/7UP/R/5/KB/m8d3icwQvxu2gQjUYWWy
 7YO6KX3tveMg1xOEBpNznwY7ObEqLGUsgGcgoUiIaYwR/DOfAkV00bDpw1GoAE+O
 SmZq4/NwjP3TFdykM5mS+p0NzPj9UtnTFM2EjA2Y3KA4TSqM/YBpceHNQOztFw7J
 zEMPC/FPTusZzHg2ZEZnjmEhCgHF5p3OMpeqamxL6eti7vOppclax5awlLPKbfHW
 GQv5KkF9x0g6oi2+/oNLdgaI3ZVKeCO+48Ds8mAQOFktEynMa62IDedgooreh61m
 SiAWDpGFFMVC0rBevZDlDgCTiSgh1m3bgN17T9pRCTrLHwik2GRqufU95yjjhZ9w
 6MgPuGtiHgzAdxUuB2LMriOy9GodRo6dbJ+bth21g1xDdo/KxXg1Sm9Rqrp90XwX
 8dTK2/fLlqBe/B3g3yQx9h6IWspB/ETo5JmtK3H+7afkhhkQN/iHc7NCMbjM0vLz
 GiFxZ5lDrdQfkN9OCAbhJhhYenrXIEOMHuocw/PMSOUpyMskcGGrRcu/ZVhDtn0p
 vV/YRdZMFgxHGIdKWo97ubAnMfl6DrFVK2wEDqBknh8W1V5TH5BqzAB7/VLBCycM
 ULiR1cpyeU0jhGk3Fa5ntUJ98SXCDfPqB50rJthxEsmvO54Gexg7Y8aTGHAIneC2
 N8z0qi+5jr4CtVx2
 =wRln
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnNk0IACgkQmmx57+YA
 GNkZPxAAjypsXNR+S5/VmtTwtXwtdT5qzaOCG/vzBE/qjuBfDdHnbWPcmTFzCMiF
 2ghDH3ibHC1xe4zMBEoz1E1NyXSMdJ2OxuPeJFfJX3O3lY9vRCIPFWxbje0FCbRi
 i61jVd9LCzZa4OjZkl1+DgMdDY+qQg+68LQzrSh+OvhiyrWNRuU2GX4T95rejlCi
 KvD9fiRnX1I/fqPBmpgrcrrrAdX0MRqhmoZAfMbgKZyXg1w9+ZvnoOLszdhPTar2
 nNZIoHPqyo6FaYv5iMU9qRXV8vhgaHoK9XOqquPau7VQgvvqzKVCKAfZeoKf7nn2
 3ayGHlVytMCX6FdhWKRxJR0Fph1sjQcHk84mYZHD9vvNvkIoP6ZAPhqBANzYSzPy
 baJ4Yz+ngwsFf5nzJtjGe0Cs3jQUuVI1IDYaa/BuCmDdAQgW8ljO9+F+pgqcT3xA
 KykIV7ogqLpo8FdqpOhOvKBxLvZaQn2SsoNHdAnPyDzC1hThseQ/lkH0kNGfC0TJ
 H4NKQ7JmmxfXe/Mlj9jyF+zj4bsFyFEFLqmad69//pBSvIi8g22Ymb07uu+lhM4c
 y0nP7e53JFE/JaZnq7ocSi9ZMJCHKdi7bvjfXLWFyiVKX6g93agUTBTDGY3quLG3
 JVnpJ1OzdPEuLblyBg9iGQSyrOFLFAX8xV7uEKbH3BhdmtB1/xc=
 =pWw+
 -----END PGP SIGNATURE-----

Merge tag 'hisi-drivers-for-7.1' of https://github.com/hisilicon/linux-hisi into soc/drivers

HiSilicon driver updates for v7.1

- Fix two compiler warnings on kunpeng_hccs driver

* tag 'hisi-drivers-for-7.1' of https://github.com/hisilicon/linux-hisi:
  soc: hisilicon: kunpeng_hccs: Remove unused input parameter
  soc: hisilicon: kunpeng_hccs: Fix discard ‘const’ qualifier compiling warning

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:50:55 +02:00
Arnd Bergmann
dc26ea325f STM32 Firewall bus for v7.1, round 1
Highlights:
 ----------
 Stm32 SoCs embed debug peripherals such as Coresight. These peripherals
 can monitor the activity of the cores. Because of that, they can be
 used only if some features in the debug configuration are enabled.
 Else, errors or firewall exceptions can be observed. Similarly to
 the ETZPC(on stm32mp1x platforms) or the RIFSC(on stm32mp2x platforms),
 debug-related peripherals access can be assessed at bus level to
 prevent these issues from happening.
 
 The debug configuration can only be accessed by the secure world.
 That means that a service must be implemented in the secure world for
 the kernel to check the firewall configuration. On OpenSTLinux, it is
 done through a Debug access PTA in OP-TEE [1].
 To represent the debug peripherals present on a dedicated debug bus,
 create a debug bus node in the device tree and the associated driver
 that will interact with this PTA.
 
 Plus some fixes.
 -----BEGIN PGP SIGNATURE-----
 
 iQJRBAABCgA7FiEEctl9+nxzUSUqdELdf5rJavIecIUFAmnEEb8dHGFsZXhhbmRy
 ZS50b3JndWVAZm9zcy5zdC5jb20ACgkQf5rJavIecIX6EA//bOrRFlKpMFFTWuKB
 ueVMShipitZ0rwEz8zyCfNfKZ15hIASVb1DrnnW4RK68Q2zbuE3ZG373TM4Q7InA
 GiX4fqW2LMaJElHAzZA39bjgrvtvfyDBc/LKokbJO53HiQFrwFDfzsoTp03Juo5z
 +hoQcQaHRef1HSwJR2puj23oNYnGDxhoqUEkUAF/RQYQk32im5MUNUNSstXrKac0
 lL5adScbHdQ6YmhQ4jB/mQw9kWBEdSpC/HB3S/rbBSveGRgL2kedLnhr3z9kDbEE
 YnikgpR8LCPfwzp/bXMCRdr4eR4o8IbzzTpV/ZY6PBlKJh8DM9wM/zz+mx4AZ8ku
 g9uQpxUZp65N1We19+fsAylP50m3dnwbvite0gyLffjjWz/kc5N3FWQOcl4pIrF5
 7l1EjkbFkDAQnaec7a+OZoUd8Xw+KAd8nSBtAzpQROspxkTxmPd3gQxuAX3U3xn3
 FBYO9hSIWQ8VTMaC0bHABCybuNTBHehE20AlQBP26SA+RfooCHq8aEIqG9/J8UJW
 x9Sqja1CMZ3/MnLMbz8cmrR26GZZPDnwgErpH9mxHIUDEMaBaxE7M/raURCALkY0
 qiOJNzXwYySEkPIHQ/b8VapiKE/v6lij+XAQWk6LyVKMOu2LD0n3Zaf+tUmEc/TF
 Df6L0gSS/YOmuEe2yHSYji8b514=
 =f7UB
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnNku8ACgkQmmx57+YA
 GNm+3BAAogWy8Imbks8fi/3AZPwMx3fbCG5Pk92ObuXGP8a2u6pbuFTMah1ZakWD
 1jeHK+Z0LUwsS9N/YQ8CpgT5cgklF7RZUcUDKQqTQMhFMzyBoVFJChdMHxHgmajx
 XD/2t8bC5EfwytnLbfeOqaYB6CpdikA6cMlLA8pJzggD+g5zHWvGIOvfYqVCe9KE
 /XO1f3yuXB2oXShml+pdEuXzuqBd87lxpS+9sD+24AcBNzpPbZ2P3Nkubn8TEJ3K
 AtPF2vAB244YLTFOjXOGDUbIOrr2duflUSw3sNEziGrNot+l+DbD/+tRCs8zeIvx
 N5Q6pyXg6AR+oNcdFW9s3qxn5DCUedIdkNHIF0EXjVqcGdu9/Zxmu1IlnAmFrBy3
 vOOOMgWCkbMB+bvtApdhzvhmiVuNxCuTesp2QdTxg9jbfXYUaMfzwoAf4L9uAYQT
 ZLzulpYjkR6xAKD5MJJSn9e58Ut01FLEdomY39f069VIIPMkNvjec4P/Ll1xrSaj
 rS6ni8VAGZwbD+Y6PuYXo4t+D613AzHx4VkaePpRXbihAUOhmuJ9h9p95egNxi+9
 MRVVjtq7DJgJ+BwH/QteCmvQrqu1lkMoWpHxDQJwkBDgWDU1+c6RnvHMibwq5NX1
 Ribleap9ANiMwZhPWrWIaH/wBxOanuL74SWCUvWKlCuyjLG3ITw=
 =gD+b
 -----END PGP SIGNATURE-----

Merge tag 'stm32-bus-firewall-for-7.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into soc/drivers

STM32 Firewall bus for v7.1, round 1

Highlights:
----------
Stm32 SoCs embed debug peripherals such as Coresight. These peripherals
can monitor the activity of the cores. Because of that, they can be
used only if some features in the debug configuration are enabled.
Else, errors or firewall exceptions can be observed. Similarly to
the ETZPC(on stm32mp1x platforms) or the RIFSC(on stm32mp2x platforms),
debug-related peripherals access can be assessed at bus level to
prevent these issues from happening.

The debug configuration can only be accessed by the secure world.
That means that a service must be implemented in the secure world for
the kernel to check the firewall configuration. On OpenSTLinux, it is
done through a Debug access PTA in OP-TEE [1].
To represent the debug peripherals present on a dedicated debug bus,
create a debug bus node in the device tree and the associated driver
that will interact with this PTA.

Plus some fixes.

* tag 'stm32-bus-firewall-for-7.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  pinctrl: stm32: add firewall checks before probing the HDP driver
  drivers: bus: add the stm32 debug bus driver
  bus: stm32_firewall: add stm32_firewall_get_grant_all_access() API
  bus: stm32_firewall: allow check on different firewall controllers
  dt-bindings: bus: document the stm32 debug bus
  dt-bindings: pinctrl: document access-controllers property for stm32 HDP
  dt-bindings: document access-controllers property for coresight peripherals
  bus: rifsc: fix RIF configuration check for peripherals
  bus: rifsc: Replace snprintf("%s") with strscpy
  bus: stm32_firewall: Simplify with scoped for each OF child loop
  bus: firewall: move stm32_firewall header file in include folder

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:49:17 +02:00
Arnd Bergmann
720d813b53 Arm SCMI updates for v7.1
This batch mainly improves SCMI robustness on systems where the SCP does
 not generate completion interrupts, and includes two small follow-up
 cleanups in the SCMI core.
 
 The main functional change adds support for the new DT property
 'arm,no-completion-irq'. When present for mailbox/shared-memory based
 SCMI implementations, the driver forces SCMI operations into polling
 mode so affected platforms can continue to operate even with broken
 firmware interrupt behavior.
 
 In addition, it
  - replaces open-coded size rounding in the base protocol path with
    round_up() for clarity, with no functional change
  - updates the SCMI quirk snippet macro implementation so quirk handlers
   can use break and continue directly when invoked inside loop contexts
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmnD/hEACgkQAEG6vDF+
 4phtuxAAgkZT4P4EjKcS8T0FcACZ9Fi6TbICEiVpIATPscf9vi0zstRvqZ/TpUCL
 0UU/WPnBWITAC2FLemUmbK9uUJTO7De+lpoTaFLdaA/Eke/RnsQIYCxcTlN3Kuss
 MAmMYZwq/nWrz6v2yGygaoP7+VGWayoWDklJVRSsRyUAPw+3+QeIYSPCeeHYshCw
 JwAZ1KCfBodTsecxEF902o6eyJrLfIrYUo0FvTQPxchG82wKfFLGCigXjGVQnc0S
 yeXdkefXDQRq6MQKChTrcjL8ZXl+U7oqTcOXLF6IFmcpKn4gSp6Knkw9FzLjIdwR
 fz6/vdRA2sOcpYYC6CFD4qeCBwpO6D1NMAP656FdDOOmU3KU3u2msRE/XD94QCDE
 e8e/PaOY1CAzF4V659dgp0kQSkWdX4foKztTRpiBTdTla5jwmjDRbnezczcUKJtb
 2DeQBprMLwMpuufo3bZM4LNZBi6qIl8uZzVkAYgE7abQ8FkRiWcy2eSnl2SoaR9p
 IPrJlsS8RIugQQl8AzBDV7C0XAtK7yAhpoDzLmGaP/PJYLhN4dVFr5pMDkHEyrpQ
 brSflQwE5sNZ8FAg/X4elgi05i/wevvXtDh/qkTtTlAC+yhKIb1DPnJy9fuH5/P4
 JyPY3FxVzWbXUnaZr/x+C/5NUdSBOa2U6i/DE3AP+t5lvUZAb2A=
 =5Gaw
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnNkrAACgkQmmx57+YA
 GNkh2w//bBVuOadMZl5bWM302Qc7qIP7N1nOCPhUl7YrXoc4NQFMbCMbfyun9QzS
 /gdazRvcYMQJE5p14/qhKMLXzUdpA5Ry25DgcQRaQNVk57iIN997XyznNs2OxI8o
 TllzhW9Okf0cdZIhiY9XP3gQJsZ8VTGuG0beGdKv+DqkT3P9XsVUiQ5trj+0y4af
 J2cVOBnzDvzxKplZ1ll1DLJDvy5xwmDEcQi+hAq1uAOMwd4izxxrQK7iofRn/495
 35bCFH7vigBEG3XASByNtbBktvgPRUMaxDLLUbluMTUxH9tqj9uzyi5qxkmOp2Qn
 azlAEyv9hxCnVC2Nnfoh8W4GpPVJ1znevakBvIjzeNYlh1SMPHG7cedvrEpzerFQ
 PiRKrgqP2Shx1D1dsgv7kib5lXhO0hYmIb/oe74Rqox4pIxnboKxC/IZ9ChPIazp
 LUGfHk6k/uEWHYFm3luCV8PPsSvNlAr7RsH9Q2qDshjoXnq6WnUVTE3n9tQ97gjD
 RnpWCKlQkh0OUSMGafWbswlvfyvTtUTa8c6bFo5HEimQiWfZYeADiJJf88+VMq7m
 Yy+8VjjWyOqdAqKuISLVnWXsEHJwiQRM6hxUjYmdQsfJG8FGLWU5e1c+2kVHB9Ff
 nB1OBxTXwbj9I2KSRBesrS92fVj0u95OmPh51dScnURFjL7d0BQ=
 =vQ0q
 -----END PGP SIGNATURE-----

Merge tag 'scmi-updates-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers

Arm SCMI updates for v7.1

This batch mainly improves SCMI robustness on systems where the SCP does
not generate completion interrupts, and includes two small follow-up
cleanups in the SCMI core.

The main functional change adds support for the new DT property
'arm,no-completion-irq'. When present for mailbox/shared-memory based
SCMI implementations, the driver forces SCMI operations into polling
mode so affected platforms can continue to operate even with broken
firmware interrupt behavior.

In addition, it
 - replaces open-coded size rounding in the base protocol path with
   round_up() for clarity, with no functional change
 - updates the SCMI quirk snippet macro implementation so quirk handlers
  can use break and continue directly when invoked inside loop contexts

* tag 'scmi-updates-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
  firmware: arm_scmi: Support loop control in quirk code snippets
  firmware: arm_scmi: Use round_up() for base protocol list size calculation
  firmware: arm_scmi: Implement arm,no-completion-irq property
  dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:48:30 +02:00
Haoxiang Li
a0ac82cbed
clk: spear: fix resource leak in clk_register_vco_pll()
Add a goto label in clk_register_vco_pll(), unregister vco_clk
if tpll_clk is failed to be registered.

Signed-off-by: Haoxiang Li <lihaoxiang@isrc.iscas.ac.cn>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Link: https://lore.kernel.org/r/20260325062204.169648-1-lihaoxiang@isrc.iscas.ac.cn
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:46:18 +02:00
Arnd Bergmann
c7091fd5eb Memory controller drivers for v7.1
1. TegraMC:
  - Few fixes for older issues - missing clock on Tegra264,
    missing enabling of DLL for Tegra30 and Tegra124.
  - Simplify the code in a few places.
  - Rework handling interrupts on different variants and add support for
    error logging on Tegra 264.
 
 2. Drop Baikal SoC bt1-l2-ctl driver, because SoC support is being
    removed tree-wide.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmnCj2oQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD15akD/9ROv+8UYFkZe1uHd1vmPe+x9DmSq2t0TUz
 dycW91jyahQ2Tb57HSayBObLDN/xKK985+DCqILZsXUtY1KpkyMfS4nfKUM9mQA0
 ihNm/IPVx2soGG/qPMBOMYMK+RObXGeA5pXWbz6T7ty94sRPDPk5HSMiDLRBk9xk
 Df48KitcQM/jAzE/y4kWcqA0Mynb6Ngs6yr0fqkd+YtRbEzq/sgAzhIlfoPyzdOC
 5+lNme3AFJ0EM7a3jclF0Wt2jGZAHp7gbINBRhiDqLL8bve2PT4en92/sKub1g+n
 Vqp0A7W/wfGg8DOmYzj/9AjhWP4B6Omwm8/2wCNTHXRrViAqosKj5E0i7+s+zNbC
 D5kd7d3rdIfE4PfIl5zRmgZ9Z5pMhJvun6mc70+EkDfWuO6zDx6xYS7UxyQELw2d
 F+vMJI9rnjBR26fUyNeQUrChWR7U2H3UkwVQp7OUv7ieGNPB2F2pQDULHHjamhSA
 PXmJ2R2rwSWAYPA/jrz3zw9HC7432V448RBcg188vTSeobScY81Xdw8XmYgKMNfx
 RTykyDrvHUpraO1FkJmxRFWXHnz0FxwBxFtX8UZsf/Wz98IaUihqAPJnalHHmwUa
 fjAJQwOEEbg4YGpjpA9uadoancNLPsPlS+iwBoPJzULv1tQhRsZ2/TInR9uXweTe
 Ca1QV/YHug==
 =AJYZ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnNkd4ACgkQmmx57+YA
 GNmALRAAs/2faPGjhBgpYnfZp+5Mh9NqaeIekT2Fg6iOUibWihTMpPmTxdZdfo7v
 2jIaE0uDksaXyDDvCeKHhmVumZPNwhVodB2O4cEIN7qUUaRa6iQA9A1L0wKPCMxt
 aqW+YML5yvHRV0QefZ497bDBhSXUvcqRUDePznTwNn4RV1y0cnuNIQTN+lbuiZij
 4WnRNrsWzOiSGZKczJaBPY7X+o54CyLOYDB2UTzHepY7GYmh8/T/FvU2uS0Z5MN+
 mtE5jH5+8QrsPTGXCVE4/2NpYTrr0ODNpSHBH1MYwltxxY0f7Euoo76ShbtAdvDL
 EFnX1OjV+/V9bBVVypQJ5TPDNDcqhMzctupkYO3L6/C9Sh8EKi//7xaoQJKLKTiz
 kGLfKljW85YnbQtpJmXNxJFMcrNxUz+oS+pZJOvARFEwDYOUtTF5BfzxKqqVJIba
 YE9TupN78Slzx0X9+MXt161FVX8SCRa/izRCZTvLS6d1k1WPKV9d6amZT6pxsHXY
 AXeRcX7SEBEG3R/ratgP+MhAC9w1X5wLNbA7XyBy2AKVyJi6uRVvq3iKlKelzqXY
 mK/EK903WNGpJ0jeARDOHTEmeUdy6Ao2+DcztqriZCAFyPEj6+zT/zqPLZwofOWd
 cRtKcwiXs63RLymJj+koxlkhOId7NHgjFu1JiV+oIJbC2vpS0gU=
 =VH6z
 -----END PGP SIGNATURE-----

Merge tag 'memory-controller-drv-7.1' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl into soc/drivers

Memory controller drivers for v7.1

1. TegraMC:
 - Few fixes for older issues - missing clock on Tegra264,
   missing enabling of DLL for Tegra30 and Tegra124.
 - Simplify the code in a few places.
 - Rework handling interrupts on different variants and add support for
   error logging on Tegra 264.

2. Drop Baikal SoC bt1-l2-ctl driver, because SoC support is being
   removed tree-wide.

* tag 'memory-controller-drv-7.1' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl:
  memory: tegra: Add MC error logging support for Tegra264
  memory: tegra: Prepare for supporting multiple intmask registers
  memory: tegra: Group SoC specific fields
  memory: tegra: Add support for multiple IRQs
  memory: tegra: Group register and fields
  memory: tegra: Group error handling related registers
  memory: tegra-mc: Use %pe format
  memory: tegra-mc: Simplify printing PTR_ERR with dev_err_probe
  memory: tegra-mc: Drop tegra_mc_setup_latency_allowance() return value
  memory: renesas-rpc-if: Simplify printing PTR_ERR with dev_err_probe
  memory: brcmstb_memc: Expand LPDDR4 check to cover for LPDDR5
  dt-bindings: cache: bt1-l2-ctl: Remove unused bindings
  memory: bt1-l2-ctl: Remove not-going-to-be-supported code for Baikal SoC
  memory: tegra30-emc: Fix dll_change check
  memory: tegra124-emc: Fix dll_change check
  memory: tegra: Add support for DBB clock on Tegra264

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:44:56 +02:00
Arnd Bergmann
fb5fee1cbc Samsung SoC drivers for v7.1
Few cleanups in ACPM firmware drivers, used on Google GS101 and newer
 Samsung Exynos SoCs.  Notable change is removing 'const' in
 'struct acpm_handle' pointers, because even though the code does not
 modify pointed data, it immediately drops the const via cast.  Also code
 is not logically readable when a reference getters/putters (e.g.
 acpm_handle_put()) take a pointer to const, because the meaning of "get"
 and "put" implies changing the memory, even if that changeable field is
 outside of pointed data.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmnCiMEQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD1x0tD/4mDlUO7FilWlNO9WwQSlNDT5lAwejozMEr
 PhP/k5mfDKn0zwXvqjq7dAHE2VP9Odw6o2QpGZRY1+rSGXUPYu0BXP/t7J1Q//ND
 MQittsPNqwLdwdSBu88lzV+kzpGYLJumL+f4auIKDER/VyE0f8TRI5Ms61PH2xZ2
 ayXzAeJCj+OCG4Ib8bdzil7L0T48HEfDlhC6d0vjrU7sbnnuC1HtjMhUnzzTjuie
 3C0hd6/mYqRL84m9O0km+DZPkJwS8yXCXl5P2pZqdZsUc1d+BKrKpWuJDBfjugB6
 fw1dFpqIKtphONryMZ8BCJ2vQD/fi0JaUHzh774JVNjVchrKlxW0DF7h1JHzupeM
 uVeiU0nqpanWjkoO3KuKC5et7MBsN+HJ7rfb4BuXtoSYh8OMWdo3nNlLeevn6HeB
 BS6yGv7U7Pwq7eXH2mPPpOlu4Ub2ddwMxXYZHPf2W5f8zfGMzyVjeYqmty47tMYC
 RzNLfPZheNg6RhsyL7BzaU/guiFpLow6c3PYgJuVDrkPotMgK8L0/XR0+xxdVGpu
 Y1DLDdPMyReSPIrA0TwoHjD6TLqoODAehUH+TRrrzCNrRIYkJmJ1GV2VtK1Qpsck
 s76TEa5fE4OXbRA7jlZrK+CeybItl6a/Z/u96yBl/mLbQJ855g8gsZc5SSo7az0z
 lQvvxSb08w==
 =BDkF
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmnNkaAACgkQmmx57+YA
 GNmSQg//W+MuGGRlNQr5gZPzmDWhisuYj/rJK7I4Lc/Ukg5LTHWJDB9hpRkUPV1q
 5vdArhURcwWpP8tcqz6ouursLiZShOn4bIllb7wPg9dSSEfzW33jytj2tWgFKKXx
 oV3uKrPJcwglwEhPBv57/hC+nk2C5pWUxiwqMrni2L/NZZM7MeM0qtFPUadRVtE8
 SZ3RupwE/eQ2IvFXbAyM7dqzPTO0H0xVMNjnfbMkuVT75316/Oy/d+Eu2aHlL5x9
 T1AydFOTNdMygb3XNNBECTYdUTyJ4bodeKly0EHSZXIvzO3nzjbeY022vka2jLhM
 4wT8ussjGY+SWNc/nEsqdwQVcVRF1Gg6v8qEEyC5S8IG0Ug1x26FbU+iu2dWOkfD
 2MM2cEGsVE05rjlI9rFzPdu6UMl28GFqpGLTEzq4kIYLdutLr6kDnIs9azJbvHuR
 v2y/jJL3TrJlOQ24VsrLmvp/k0Aj14O1qO7BHiNcC9DVJMp8h4cwrgpauE5nJn8z
 kRoYvpAwSvL3A7xlBaiV8shX6LjQrltvYSFZnDFKMqArh0DuoVHrL3vuysiknKdP
 72ghXc17RkxTbvdv971ou/YxYoQ3DYbPA2YlJ7NFeE1SQdp09VK1BFBw5E1pfrN1
 MHSbxmqGKJME1rUTGdZUlbFl6Bf2RooStiwmDvfttIpgkLk9j40=
 =T6Y1
 -----END PGP SIGNATURE-----

Merge tag 'samsung-drivers-7.1' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/drivers

Samsung SoC drivers for v7.1

Few cleanups in ACPM firmware drivers, used on Google GS101 and newer
Samsung Exynos SoCs.  Notable change is removing 'const' in
'struct acpm_handle' pointers, because even though the code does not
modify pointed data, it immediately drops the const via cast.  Also code
is not logically readable when a reference getters/putters (e.g.
acpm_handle_put()) take a pointer to const, because the meaning of "get"
and "put" implies changing the memory, even if that changeable field is
outside of pointed data.

* tag 'samsung-drivers-7.1' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  firmware: exynos-acpm: Drop fake 'const' on handle pointer
  dt-bindings: firmware: google,gs101-acpm-ipc: add S2MPG11 secondary PMIC
  firmware: exynos-acpm: Count acpm_xfer buffers with __counted_by_ptr
  firmware: exynos-acpm: Count number of commands in acpm_xfer
  firmware: exynos-acpm: Use unsigned int for acpm_pmic_linux_errmap index

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-04-01 23:43:58 +02:00
Tommaso Merciai
f62fcdf8ab reset: rzv2h-usb2phy: Add support for VBUS mux controller registration
The RZ/V2H USB2 PHY requires control of the VBUS selection line
(VBENCTL) through a mux controller described in the device tree as
"mux-controller". This change adds support for registering the
rzv2h-usb-vbenctl auxiliary driver during probe.

This enables proper management of USB2.0 VBUS source selection on
platforms using the RZ/V2H SoC.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2026-04-01 18:16:09 +02:00
Tommaso Merciai
890628c8d0 reset: rzv2h-usb2phy: Convert to regmap API
Replace raw MMIO accesses (readl/writel) with regmap_read() and
regmap_multi_reg_write() via devm_regmap_init_mmio().
Drop the manual spinlock as regmap provides internal locking.

Replace the custom rzv2h_usb2phy_regval struct with the standard
reg_sequence, and encode assert/deassert sequences as reg_sequence
arrays rather than individual scalar fields in the of_data
descriptor.

Use the reg_sequence .delay_us field to encode the 11 µs post-assert
delay, replacing the explicit usleep_range(11, 20) call in
rzv2h_usbphy_reset_assert().

Select REGMAP_MMIO in Kconfig.

Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2026-04-01 18:15:59 +02:00
Tommaso Merciai
63be00249d dt-bindings: reset: renesas,rzv2h-usb2phy: Document RZ/G3E USB2PHY reset
Document USB2PHY reset controller bindings for RZ/G3E ("R9A09G047") SoC.

The RZ/G3E USB2PHY reset controller is functionally identical to the one
found on the RZ/V2H(P), so no driver changes are needed. The existing
"renesas,r9a09g057-usb2phy-reset" will be used as a fallback compatible
for this IP.

Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2026-04-01 18:13:55 +02:00
Tommaso Merciai
6a1b6f7e56 dt-bindings: reset: renesas,rzv2h-usb2phy: Add '#mux-state-cells' property
Add the '#mux-state-cells' property to support describing the USB VBUS_SEL
multiplexer as a mux-controller in the Renesas RZ/V2H(P) USB2PHY binding.

The mux-controller cannot be integrated into the parent USB2PHY node
because the VBUS source selector is part of a separate hardware block,
not the USB2PHY block itself.

This is required to properly configure USB PHY power selection on
RZ/V2H(P) and RZ/G3E SoCs.

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2026-04-01 18:13:55 +02:00
Thierry Reding
4b23febb6b MAINTAINERS: Change email address for Thierry Reding
Use the kernel.org email address as a level of indirection to enable
transparent switching of providers if necessary.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:41:07 +01:00
Jon Hunter
e8014b2c83 soc/tegra: pmc: Add IO pads for Tegra264
Populate the IO pads and pins for Tegra264. Tegra264 has internal 1.8V
and 0.6V regulators that must be enabled when selecting the 1.8V mode
for the sdmmc1-hv IO pad. To support this a new 'ena_1v8' member is
added to the 'tegra_io_pad_vctrl' structure to populate the bits that
need to be set to enable these internal regulators. Although this is
enabling 1.8V (bit 1) and 0.6V (bit 2) regulators, it is simply called
'ena_1v8' because these are both enabled for 1.8V operation. Note that
these internal regulators are disabled when not using 1.8V mode.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:39 +01:00
Jon Hunter
db3c16b2b9 soc/tegra: pmc: Rename has_impl_33v_pwr flag
The flag 'has_impl_33v_pwr' is now only used to determine if we need to
set the write-enable bit before we can set the bit to select if 3.3V IO
is used or not. Therefore, rename the flag to 'has_io_pad_wren' to
indicate that the SoC supports the write-enable register.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:39 +01:00
Jon Hunter
edded7a903 soc/tegra: pmc: Refactor IO pad voltage control
For Tegra devices, only a subset of IO pads can be configured for 1.8V
or 3.3V. Therefore, in the 'tegra_io_pad_soc' structure for Tegra SoCs
either all or most of the 'voltage' entries are set to UINT_MAX to
indicate the IO pad voltage cannot be configured. So for the majority of
IO pads this configuration is not applicable. However, refactoring the
IO pad data to move this parameter into a separate structure does not
make sense because the benefits are marginal.

Support for the Tegra264 IO pads is currently missing and the control
for configuring the voltage for the IO pads for Tegra264 has changed.
Instead of having a single register that is used for setting the IO pad
voltage for all IO pads, there is now a register associated with the
specific IO pad. For Tegra264, there is now only one IO pad that can be
configured for 1.8V or 3.3V which is the sdmmc1-hv. While we could make
this work with by adding a new SoC flag, the implementation will be a
bit cumbersome. Therefore, it now seems reasonable to refactor the IO
pad code. Hence, introduce a new 'tegra_io_pad_vctrl' structure that
contains the register offset and bit for enabling/disabling 3.3V mode
and move the existing voltage control data for supported SoCs to this
structure. This has an added benefit of simplifying the code in the
functions tegra_io_pad_get_voltage and tegra_io_pad_set_voltage.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:39 +01:00
Jon Hunter
91d5b17fd3 soc/tegra: pmc: Add Tegra264 wake events
Populate the various wake events for the Tegra264 device.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:39 +01:00
Jon Hunter
bc8b07878c soc/tegra: pmc: Add AOWAKE regs for Tegra264
Populate the AOWAKE register offsets for Tegra264.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:39 +01:00
Jon Hunter
5f87dac892 soc/tegra: pmc: Add support for SoC specific AOWAKE offsets
For Tegra264, some of the AOWAKE registers have different register
offsets. Prepare for adding the Tegra264 AOWAKE register by moving the
offsets for the AOWAKE registers that are different for Tegra264 into
the 'tegra_pmc_regs' structure and populate these offsets for the SoCs
that support these registers.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:39 +01:00
Jon Hunter
8b3e944ee1 soc/tegra: pmc: Remove unused AOWAKE definitions
For Tegra264, the offsets for the AOWAKE registers have changed. Before
adding support for the Tegra264 AOWAKE register offsets, remove the
unused AOWAKE definitions.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:39 +01:00
Jon Hunter
e6ad1988e5 soc/tegra: pmc: Add kerneldoc for wake-up variables
Commit e6d96073af ("soc/tegra: pmc: Fix unsafe generic_handle_irq()
call") added the variables 'wake_work' and 'wake_status' to the
'tegra_pmc' structure but did not add the associated kerneldoc for these
new variables. Add the kerneldoc for these variables.

Fixes: e6d96073af ("soc/tegra: pmc: Fix unsafe generic_handle_irq() call")
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:38 +01:00
Jon Hunter
ec0e4da5d6 soc/tegra: pmc: Correct function names in kerneldoc
Commit 70f752ebb0 ("soc/tegra: pmc: Add PMC contextual functions")
added the functions devm_tegra_pmc_get() and
tegra_pmc_io_pad_power_enable(), but the names of the functions in the
associated kerneldoc is incorrect. Update the kerneldoc for these
functions to correct their names.

Fixes: 70f752ebb0 ("soc/tegra: pmc: Add PMC contextual functions")
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:38 +01:00
Jon Hunter
21669619e4 soc/tegra: pmc: Add kerneldoc for reboot notifier
Commit 48b7f802fb ("soc/tegra: pmc: Embed reboot notifier in PMC
context") added the reboot_notifier structure to the PMC SoC structure
but did not update the kerneldoc accordingly. Add this missing kerneldoc
description to fix this.

Fixes: 48b7f802fb ("soc/tegra: pmc: Embed reboot notifier in PMC context")
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:38 +01:00
Svyatoslav Ryhel
656275069f soc/tegra: common: Add Tegra114 support to devm_tegra_core_dev_init_opp_table
Determine the Tegra114 hardware version using the SoC Speedo ID bit macro,
mirroring the approach already used for Tegra30 and Tegra124.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:38 +01:00
Svyatoslav Ryhel
8e2a2f5851 soc/tegra: pmc: Enable core domain support for Tegra114
Enable core domain support for Tegra114 since now it has power domains
fully configured.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-28 01:02:30 +01:00
Thierry Reding
e68d494b89 soc/tegra: bpmp: Use ENODEV instead of ENOTSUPP
ENOTSUPP is not a SUSV4 error code and checkpatch will warn about it.
It is also not very descriptive in the context of BPMP, so use the
ENODEV error code instead. For the stub implementations this is a more
accurate description of what the failure is.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-27 16:30:54 +01:00
Thierry Reding
7734411872 firmware: tegra: bpmp: Add tegra_bpmp_get_with_id() function
Some device tree bindings need to specify a parameter along with a BPMP
phandle reference to designate the ID associated with a given controller
that needs to interoperate with BPMP. Typically this is specified as an
extra cell in the nvidia,bpmp property, so add a helper to parse this ID
while resolving the phandle reference.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-27 16:24:36 +01:00
Thierry Reding
83c18a3245 soc/tegra: Update BPMP ABI header
This update primarily adds various new commands and MRQs for Tegra264,
but also contains a few new annotations and fixes.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-27 16:23:53 +01:00
Sumit Gupta
a5f51b04cb soc/tegra: cbb: Fix cross-fabric target timeout lookup
When a fabric receives an error interrupt, the error may have
occurred on a different fabric. The target timeout lookup was using
the wrong base address (cbb->regs) with offsets from a different
fabric's target map, causing a kernel page fault.

  Unable to handle kernel paging request at virtual address ffff80000954cc00
  pc : tegra234_cbb_get_tmo_slv+0xc/0x28
  Call trace:
   tegra234_cbb_get_tmo_slv+0xc/0x28
   print_err_notifier+0x6c0/0x7d0
   tegra234_cbb_isr+0xe4/0x1b4

Add tegra234_cbb_get_fabric() to look up the correct fabric device
using fab_id, and use its base address for accessing target timeout
registers.

Fixes: 25de5c8fe0 ("soc/tegra: cbb: Improve handling for per SoC fabric data")
Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-27 15:30:54 +01:00
Sumit Gupta
499f7e5ebb soc/tegra: cbb: Fix incorrect ARRAY_SIZE in fabric lookup tables
Fix incorrect ARRAY_SIZE usage in fabric lookup tables which could
cause out-of-bounds access during target timeout lookup.

Fixes: 25de5c8fe0 ("soc/tegra: cbb: Improve handling for per SoC fabric data")
Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-27 15:30:50 +01:00
Sumit Gupta
b6ff71c5d1 soc/tegra: cbb: Set ERD on resume for err interrupt
Set the Error Response Disable (ERD) bit to mask SError responses
and use interrupt-based error reporting. When the ERD bit is set,
inband error responses to the initiator via SError are suppressed,
and fabric errors are reported via an interrupt instead.

The register is set during boot but the info is lost during system
suspend and needs to be set again on resume.

Fixes: fc2f151d23 ("soc/tegra: cbb: Add driver for Tegra234 CBB 2.0")
Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-27 15:30:46 +01:00
Sumit Gupta
ad7ffe102a soc/tegra: cbb: Add support for CBB fabrics in Tegra238
Add support for CBB 2.0 based fabrics in Tegra238 SoC using DT.
Fabrics reporting errors are: CBB, AON, BPMP, APE.

Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2026-03-27 15:24:54 +01:00
Claudiu Beznea
ccef9ef0aa reset: core: Drop unnecessary double quote
Drop unnecessary double quote.

Reported-by: Pavel Machek <pavel@nabladev.com>
Closes: https://lore.kernel.org/all/acJbYxKGAB4lxGQr@duo.ucw.cz
Signed-off-by: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2026-03-27 13:44:49 +01:00
Tommaso Merciai
8889b289ce reset: rzv2h-usb2phy: Keep PHY clock enabled for entire device lifetime
The driver was disabling the USB2 PHY clock immediately after register
initialization in probe() and after each reset operation. This left the
PHY unclocked even though it must remain active for USB functionality.

The behavior appeared to work only when another driver
(e.g., USB controller) had already enabled the clock, making operation
unreliable and hardware-dependent. In configurations where this driver
is the sole clock user, USB functionality would fail.

Fix this by:
- Enabling the clock once in probe() via pm_runtime_resume_and_get()
- Removing all pm_runtime_put() calls from assert/deassert/status
- Registering a devm cleanup action to release the clock at removal
- Removed rzv2h_usbphy_assert_helper() and its call in
  rzv2h_usb2phy_reset_probe()

This ensures the PHY clock remains enabled for the entire device lifetime,
preventing instability and aligning with hardware requirements.

Cc: stable@vger.kernel.org
Fixes: e3911d7f86 ("reset: Add USB2PHY port reset driver for Renesas RZ/V2H(P)")
Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2026-03-27 13:27:15 +01:00
Ernest Van Hoecke
e54390aae6 dt-bindings: arm: fsl: add Verdin iMX95
Add DT compatible strings for the Verdin i.MX95 SoM and its supported
carrier boards: the Verdin Development Board, and the Dahlia, Ivy,
Mallow and Yavia carrier boards.

Link: https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx95
Link: https://www.toradex.com/products/carrier-board/verdin-development-board-kit
Link: https://www.toradex.com/products/carrier-board/dahlia-carrier-board-kit
Link: https://www.toradex.com/products/carrier-board/ivy-carrier-board
Link: https://www.toradex.com/products/carrier-board/mallow-carrier-board
Link: https://www.toradex.com/products/carrier-board/yavia
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
2026-03-26 12:17:45 -04:00
Martin Schmiedel
53210b46cd dt-bindings: arm: fsl: add MBa93xxLA-MINI
Adds support for the MBa93xxLA-MINI SBC.
https://www.tq-group.com/en/products/tq-embedded/arm-architecture/mba93xxla-mini/

Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
2026-03-26 12:11:52 -04:00
Markus Niebel
d44627c130 dt-bindings: arm: add bindings for TQMa95xxLA
TQMa95xxLA is a SOM using NXP i.MX95 CPU. MBa95xxCA is a carrier
reference design / starter kit board.

[1] https://www.tq-group.com/en/products/tq-embedded/arm-architecture/tqma95xxla/

Signed-off-by: Markus Niebel <Markus.Niebel@ew.tq-group.com>
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
2026-03-26 12:11:51 -04:00
Frank Li
43dcd2c99f dt-bindings: arm: lpc: add missed lpc43xx board
Add missed legancy lpc43xx board compatible string to fix below CHECK_DTB
warnings:
arch/arm/boot/dts/nxp/lpc/lpc4337-ciaa.dtb: /: failed to match any schema with compatible: ['ciaa,lpc4337', 'nxp,lpc4337', 'nxp,lpc4350']

Reviewed-by: Vladimir Zapolskiy <vz@mleia.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
2026-03-26 12:11:51 -04:00
Ciprian Marian Costea
bda4af7c78 dt-bindings: arm: fsl: Add NXP S32N79 SoC and RDB board
Add device tree binding documentation for the NXP S32N79 automotive SoC
and the S32N79 Reference Design Board (S32N79-RDB).

The S32N79 is an automotive-grade SoC featuring eight ARM Cortex-A78AE
cores organized for high-performance networking and gateway applications
in vehicles.

Co-developed-by: Larisa Grigore <larisa.grigore@nxp.com>
Signed-off-by: Larisa Grigore <larisa.grigore@nxp.com>
Signed-off-by: Ciprian Marian Costea <ciprianmarian.costea@oss.nxp.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
2026-03-26 12:11:50 -04:00
Ciprian Marian Costea
0b7973dfb7 dt-bindings: interrupt-controller: fsl,irqsteer: add S32N79 support
Add compatible string for the interrupt steering controller used in NXP
S32N79 SoC.

The S32N79 SoC differs from the i.MX version by not implementing the
CHANCTRL register, but otherwise maintains the same programming model and
register layout.

Co-developed-by: Larisa Grigore <larisa.grigore@nxp.com>
Signed-off-by: Larisa Grigore <larisa.grigore@nxp.com>
Signed-off-by: Ciprian Marian Costea <ciprianmarian.costea@oss.nxp.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
2026-03-26 12:11:49 -04:00
Shengjiu Wang
f2c05ff2fe dt-bindings: arm: fsl: Add compatible for i.MX8MP audio board (version 2)
Introduce a new DT compatible string for the NXP i.MX8MP audio board
(version 2).

i.MX Audio Board is a configurable and functional audio processing
platform. Integrating a variety of audio input and output interfaces into
the system, the i.MX Audio Board supports HDMI input, HDMI eARC,
S/PDIF I/O, 2-ch ADC line-in, 24-ch DAC line-out and more. Based on these
features, rich audio application cases can be realized.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
2026-03-26 12:11:49 -04:00
Josua Mayer
05452c58ef dt-bindings: arm: fsl: Add various solidrun i.MX8M boards
Add bindings for various SolidRun boards:

- i.MX8MP HummingBoard IIoT - based on the SolidRun i.MX8M Plus SoM
- SolidSense N8 - single-board design with i.MX8M Nano
- i.MX8M Mini System on Module
- i.MX8M Mini HummingBoard Ripple

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Josua Mayer <josua@solid-run.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
2026-03-26 12:11:35 -04:00
Gatien Chevallier
348741a97c pinctrl: stm32: add firewall checks before probing the HDP driver
Because the HDP peripheral both depends on debug and firewall
configuration, when CONFIG_STM32_FIREWALL is present, use the
stm32 firewall framework to be able to check these configuration against
the relevant controllers.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
Reviewed-by: Clément Le Goffic <legoffic.clement@gmail.com>
Reviewed-by: Linus Walleij <linusw@kernel.org>
Link: https://lore.kernel.org/r/20260226-debug_bus-v6-12-5d794697798d@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
2026-03-25 17:40:22 +01:00