2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00
Commit Graph

4159 Commits

Author SHA1 Message Date
Andrew Jeffery
56448e78a6 soc: aspeed: lpc-snoop: Don't disable channels that aren't enabled
Mitigate e.g. the following:

    # echo 1e789080.lpc-snoop > /sys/bus/platform/drivers/aspeed-lpc-snoop/unbind
    ...
    [  120.363594] Unable to handle kernel NULL pointer dereference at virtual address 00000004 when write
    [  120.373866] [00000004] *pgd=00000000
    [  120.377910] Internal error: Oops: 805 [#1] SMP ARM
    [  120.383306] CPU: 1 UID: 0 PID: 315 Comm: sh Not tainted 6.15.0-rc1-00009-g926217bc7d7d-dirty #20 NONE
    ...
    [  120.679543] Call trace:
    [  120.679559]  misc_deregister from aspeed_lpc_snoop_remove+0x84/0xac
    [  120.692462]  aspeed_lpc_snoop_remove from platform_remove+0x28/0x38
    [  120.700996]  platform_remove from device_release_driver_internal+0x188/0x200
    ...

Fixes: 9f4f9ae81d ("drivers/misc: add Aspeed LPC snoop driver")
Cc: stable@vger.kernel.org
Cc: Jean Delvare <jdelvare@suse.de>
Acked-by: Jean Delvare <jdelvare@suse.de>
Link: https://patch.msgid.link/20250616-aspeed-lpc-snoop-fixes-v2-2-3cdd59c934d3@codeconstruct.com.au
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
2025-07-02 11:05:20 +09:30
Andrew Jeffery
8481d59be6 soc: aspeed: lpc-snoop: Cleanup resources in stack-order
Free the kfifo after unregistering the miscdev in
aspeed_lpc_disable_snoop() as the kfifo is initialised before the
miscdev in aspeed_lpc_enable_snoop().

Fixes: 3772e5da44 ("drivers/misc: Aspeed LPC snoop output using misc chardev")
Cc: stable@vger.kernel.org
Cc: Jean Delvare <jdelvare@suse.de>
Acked-by: Jean Delvare <jdelvare@suse.de>
Link: https://patch.msgid.link/20250616-aspeed-lpc-snoop-fixes-v2-1-3cdd59c934d3@codeconstruct.com.au
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
2025-07-02 11:05:20 +09:30
Linus Torvalds
297d9111e9 soc: drivers for 6.16
Updates are across the usual driver subsystems with SoC specific drivers:
 
  - added soc specicific drivers for sophgo cv1800 and sg2044, qualcomm
    sm8750, and amlogic c3 and s4 chips.
 
  - cache controller updates for sifive chips, plus binding changes for
    other cache descriptions.
 
  - memory controller drivers for mediatek mt6893, stm32 and cleanups for a
    few more drivers
 
  - reset controller drivers for T-Head TH1502, Sophgo sg2044 and
    Renesas RZ/V2H(P)
 
  - SCMI firmware updates to better deal with buggy firmware, plus better
    support for Qualcomm X1E and NXP i.MX specific interfaces
 
  - a new platform driver for the crypto firmware on Cznic Turris Omnia/MOX
 
  - cleanups for the TEE firmware subsystem and amdtee driver
 
  - minor updates and fixes for freescale/nxp, qualcomm, google, aspeed,
    wondermedia, ti, nxp, renesas, hisilicon, mediatek, broadcom and samsung
    SoCs
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmg51FsACgkQmmx57+YA
 GNnJ0w//Y2OzxBE/Mek7n7d4ibrdlSF9SX8JbL2W++o8Mb3YEJwCtGyhD7OQVYn3
 ZuaiY0aHi9PugoHYrfqT8Q6o0GgYrPMgWwHRH+cPvzRng1FKFObdPqpv2+xXdEcu
 zhMM0AkhQ3/kegXOydBWaDETSc9dc74RWegKAc2onxD51NkjbP1MJMOO+gdSnwGq
 +NeDe4omberJR/2He9K0XDxK0wtIsNVZ+CYXF0gQlGwmxkKcTgJQnUm6gqChYR9T
 KhZedI0f61XTk54LTX3OCcbMpdQHxl8l7qI25+HHnMaUuqUSNj+ZKm8YeboywkLW
 T8J0oS6Dyaiypv1oYrmtEPbtCniullSpfE7mrMljlljuLYMIWkFllSXAlC5EjjOG
 GkNcW0k13cRGZ0sBliWoorzXB5qQRkQhQn1KBPBA/n8fEuFFf+GTbmjE2Q+BixkN
 Jthhyk+PZbZIOid7Y7ecxTEs/RR8SLRmTYwWr/szVUW7WRp3NqWvyZl9X/nYylf8
 aw3ugwcRCNKd4ba35y0XR0x8jy4wRQtlQqqxpkiJgREAmS9U9WBWH8bxSj3i5jGu
 nvMMtHmcDZ3gDGdUT6is7susOZLRuc8E7Y5dyn+NB4UoAxUDqRAn8ZGSNiOCcjQa
 07vWhT4NTLEJeexm3gdfTU1sRtrIjas+qxNg8IpPvRyGOoefJ7w=
 =RhpA
 -----END PGP SIGNATURE-----

Merge tag 'soc-drivers-6.16' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull SoC driver updates from Arnd Bergmann:
 "Updates are across the usual driver subsystems with SoC specific
  drivers:

   - added soc specicific drivers for sophgo cv1800 and sg2044, qualcomm
     sm8750, and amlogic c3 and s4 chips.

   - cache controller updates for sifive chips, plus binding changes for
     other cache descriptions.

   - memory controller drivers for mediatek mt6893, stm32 and cleanups
     for a few more drivers

   - reset controller drivers for T-Head TH1502, Sophgo sg2044 and
     Renesas RZ/V2H(P)

   - SCMI firmware updates to better deal with buggy firmware, plus
     better support for Qualcomm X1E and NXP i.MX specific interfaces

   - a new platform driver for the crypto firmware on Cznic Turris
     Omnia/MOX

   - cleanups for the TEE firmware subsystem and amdtee driver

   - minor updates and fixes for freescale/nxp, qualcomm, google,
     aspeed, wondermedia, ti, nxp, renesas, hisilicon, mediatek,
     broadcom and samsung SoCs"

* tag 'soc-drivers-6.16' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (133 commits)
  soc: aspeed: Add NULL check in aspeed_lpc_enable_snoop()
  soc: aspeed: lpc: Fix impossible judgment condition
  ARM: aspeed: Don't select SRAM
  docs: firmware: qcom_scm: Fix kernel-doc warning
  soc: fsl: qe: Consolidate chained IRQ handler install/remove
  firmware: qcom: scm: Allow QSEECOM for HP EliteBook Ultra G1q
  dt-bindings: mfd: qcom,tcsr: Add compatible for ipq5018
  dt-bindings: cache: add QiLai compatible to ax45mp
  memory: stm32_omm: Fix error handling in stm32_omm_disable_child()
  dt-bindings: cache: Convert marvell,tauros2-cache to DT schema
  dt-bindings: cache: Convert marvell,{feroceon,kirkwood}-cache to DT schema
  soc: samsung: exynos-pmu: enable CPU hotplug support for gs101
  MAINTAINERS: Add google,gs101-pmu-intr-gen.yaml binding file
  dt-bindings: soc: samsung: exynos-pmu: gs101: add google,pmu-intr-gen phandle
  dt-bindings: soc: google: Add gs101-pmu-intr-gen binding documentation
  bus: fsl-mc: Use strscpy() instead of strscpy_pad()
  soc: fsl: qbman: Remove const from portal->cgrs allocation type
  bus: fsl_mc: Fix driver_managed_dma check
  bus: fsl-mc: increase MC_CMD_COMPLETION_TIMEOUT_MS value
  bus: fsl-mc: drop useless cleanup
  ...
2025-05-31 07:53:30 -07:00
Linus Torvalds
f66bc387ef SCSI misc on 20250529
Updates to the usual drivers (smartpqi, ufs, lpfc, scsi_debug, target,
 hisi_sas) with the only substantive core change being the removal of
 the stream_status member from the scsi_stream_status_header (to get
 rid of flex array members).
 
 Signed-off-by: James E.J. Bottomley <James.Bottomley@HansenPartnership.com>
 -----BEGIN PGP SIGNATURE-----
 
 iJwEABMIAEQWIQTnYEDbdso9F2cI+arnQslM7pishQUCaDiQ2CYcamFtZXMuYm90
 dG9tbGV5QGhhbnNlbnBhcnRuZXJzaGlwLmNvbQAKCRDnQslM7pishWtDAP9p0Jd/
 H4VMpYT5iETyq3TeAXTm1jVXL9Gnux5JMfskGwEA9kST8O6gorVOVKck+Eq0Hc9r
 w8NDnBK91hknIai5kE8=
 =/1L9
 -----END PGP SIGNATURE-----

Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi

Pull SCSI updates from James Bottomley:
 "Updates to the usual drivers (smartpqi, ufs, lpfc, scsi_debug, target,
  hisi_sas) with the only substantive core change being the removal of
  the stream_status member from the scsi_stream_status_header (to get
  rid of flex array members)"

* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (77 commits)
  scsi: target: core: Constify struct target_opcode_descriptor
  scsi: target: core: Constify enabled() in struct target_opcode_descriptor
  scsi: hisi_sas: Fix warning detected by sparse
  scsi: mpt3sas: Fix _ctl_get_mpt_mctp_passthru_adapter() to return IOC pointer
  scsi: sg: Remove unnecessary NULL check before unregister_sysctl_table()
  scsi: ufs: mcq: Delete ufshcd_release_scsi_cmd() in ufshcd_mcq_abort()
  scsi: ufs: qcom: dt-bindings: Document the SM8750 UFS Controller
  scsi: mvsas: Fix typos in SAS/SATA VSP register comments
  scsi: fnic: Replace memset() with eth_zero_addr()
  scsi: ufs: core: Support updating device command timeout
  scsi: ufs: core: Change hwq_id type and value
  scsi: ufs: core: Increase the UIC command timeout further
  scsi: zfcp: Simplify workqueue allocation
  scsi: ufs: core: Print error value as hex format in ufshcd_err_handler()
  scsi: sd: Remove the stream_status member from scsi_stream_status_header
  scsi: docs: Clean up some style in scsi_mid_low_api
  scsi: core: Remove unused scsi_dev_info_list_del_keyed()
  scsi: isci: Remove unused sci_remote_device_reset()
  scsi: scsi_debug: Reduce DEF_ATOMIC_WR_MAX_LENGTH
  scsi: smartpqi: Delete a stray tab in pqi_is_parity_write_stream()
  ...
2025-05-29 22:17:52 -07:00
Linus Torvalds
11147c16a6 pwm: Changes for v6.16-rc1
This time around the pwm changes for the next release contain three new
 drivers (loongson, mc33xs2410 and rzg2l-gpt) and the usual collection of
 cleanups in both the core and drivers, support for new variants in
 existing drivers, conversion of dt bindings to yaml and documentation
 updates.
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEP4GsaTp6HlmJrf7Tj4D7WH0S/k4FAmgzfgYACgkQj4D7WH0S
 /k5nJggAoGbk5rGkAMzTNvrQxJLkS2MFQclHyiW+QQu3pOmIcK9rDYP7GI7LNHl5
 PBfFGkeWmabdVyMwej87kNarrHLQxHvCfS8Ooc1rGYgaARhJhE2N2/xKLxNQPnhe
 ZL95O6jcubdllOdHpaWHGaMkPvw4QVMZD9uRuy7ikuf+EiuUhqsqdMQix3x6RXc4
 43XLJ1N5SNeHDdF8LVNEwnNwzYFjtLK94dEajPPw+EsiHQ/DyAEohl3vA6k4duxX
 OnN5BA39SadBWLD4zZLj8LWZC38/1mEx+FUat5ub2q/Buj2/2rxg60Gp+0jyrDMK
 44t3wlIM/VHpTzLN1Zh1UpY0bM8eIg==
 =Y7Ef
 -----END PGP SIGNATURE-----

Merge tag 'pwm/for-6.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ukleinek/linux

Pull pwm updates from Uwe Kleine-König:
 "This time around the pwm changes for the next release contain three
  new drivers (loongson, mc33xs2410 and rzg2l-gpt) and the usual
  collection of cleanups in both the core and drivers, support for new
  variants in existing drivers, conversion of dt bindings to yaml and
  documentation updates.

  Thanks for contributions and reviews go to Alexey Charkov,
  AngeloGioacchino Del Regno, Bartosz Golaszewski, Biju Das, Binbin
  Zhou, Dan Carpenter, Dimitri Fedrau, Geert Uytterhoeven, George Stark,
  Huacai Chen, Juxin Gao, Krzysztof Kozlowski, Kuninori Morimoto,
  Laurent Pinchart, Neil Armstrong, Nuno Sá, Rob Herring, and Trevor
  Gamblin"

* tag 'pwm/for-6.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ukleinek/linux: (39 commits)
  dt-bindings: timer: renesas,tpu: remove binding documentation
  pwm: adp5585: make sure to include mod_devicetable.h
  pwm: Tidyup PWM menu for Renesas
  pwm: Restore alphabetic ordering in Kconfig and Makefile
  pwm: Formally describe the procedure used to pick a hardware waveform setting
  pwm: Let pwm_set_waveform_might_sleep() return 0 instead of 1 after rounding up
  pwm: Let pwm_set_waveform_might_sleep() fail for exact but impossible requests
  ARM: shmobile: defconfig: Enable more support for RZN1D-DB/EB
  arm64: defconfig: Add Renesas MSIOF sound support
  arm64: defconfig: Enable Renesas RZ/G2L GPT config
  pwm: add support for NXPs high-side switch MC33XS2410
  dt-bindings: pwm: add support for MC33XS2410
  pwm: rzg2l-gpt: Accept requests for too high period length
  dt-bindings: pwm: vt8500-pwm: Convert to YAML
  dt-bindings: pwm: mediatek,pwm-disp: Add compatible for MT6893
  pwm: Fix various formatting issues in kernel-doc
  pwm: Add support for RZ/G2L GPT
  dt-bindings: pwm: Add RZ/G2L GPT binding
  pwm: Better document return value of pwm_round_waveform_might_sleep()
  pwm: loongson: Fix an error code in probe()
  ...
2025-05-27 15:01:47 -07:00
Linus Torvalds
44ed0f35df Updates for the MSI subsystem (core code and PCI):
- Switch the MSI decriptor locking to lock guards
 
   - Replace a broken and naive implementation of PCI/MSI-X control word
     updates in the PCI/TPH driver with a properly serialized variant in the
     PCI/MSI core code.
 
   - Remove the MSI descriptor abuse in the SCCI/UFS/QCOM driver by
     replacing the direct access to the MSI descriptors with the proper API
     function calls. People will never understand that APIs exist for a
     reason...
 
   - Provide core infrastructre for the upcoming PCI endpoint library
     extensions. Currently limited to ARM GICv3+, but in theory extensible
     to other architectures.
 
   - Provide a MSI domain::teardown() callback, which allows drivers to undo
     the effects of the prepare() callback.
 
   - Move the MSI domain::prepare() callback invocation to domain creation
     time to avoid redundant (and in case of ARM/GIC-V3-ITS confusing)
     invocations on every allocation.
 
     In combination with the new teardown callback this removes some ugly
     hacks in the GIC-V3-ITS driver, which pretended to work around the
     short comings of the core code so far. With this update the code is
     correct by design and implementation.
 
   - Make the irqchip MSI library globally available, provide a MSI parent
     domain creation helper and convert a bunch of (PCI/)MSI drivers over to
     the modern MSI parent mechanism. This is the first step to get rid of
     at least one incarnation of the three PCI/MSI management schemes.
 
   - The usual small cleanups and improvements
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmgzgFsTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoR0KD/402K12tlI/D70H2aTG25dbTx+dkVk+
 pKpJz0985uUlLJiPCR54dZL0ofcfRU+CdjEIf1I+6TPshtg6IWLJCfqu7OWVPYzz
 2lJDO0yeUGwJqc0CIa1vttvJWvcUcxfWBX/ZSkOIM5avaXqSwRwsFNfd7TQ+T+eG
 79VS1yyW197mUva53ekSF2voa8EEPWfEslAjoX1dRg5d4viAxaLtKm/KpBqo1oPh
 Eb+E67xEWiIonvWNdr1AOisxnbi19PyDo1xnftgBToaeXXYBodNrNIAfAkx40YUZ
 IZQLHvhZ91x15hXYIS4Cz1RXqPECbu/tHxs4AFUgGvqdgJUF89wzI3C21ymrKA6E
 tDlWfpIcuE3vV/bsqj1gHGL5G5m1tyBRgIdIAOOmMoTHvwp5rrQtuZzpuqzGmEzj
 iVIHnn5m08kRpOZQc7+PlxQMh3eunEyj9WWG49EJgoAnJPb5lou4shTwBUheHcKm
 NXxKsfo4x5C+WehGTxv80UlnMcK3Yh/TuWf2OPR6QuT2iHP2VL5jyHjIs0ICn0cp
 1tvSJtdc1rgvk/4Vn4lu5eyVaTx5ZAH8ZXNQfwwBTWTp3ZyAW+7GkaCq3LPaNJoZ
 4LWpgZ5gs6wT+1XNT3boKdns81VolmeTI8P1ciQKpUtaTt6Cy9P/i2az/J+BCS4U
 Fn5Qqk08PHGrUQ==
 =OBMj
 -----END PGP SIGNATURE-----

Merge tag 'irq-msi-2025-05-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull MSI updates from Thomas Gleixner:
 "Updates for the MSI subsystem (core code and PCI):

   - Switch the MSI descriptor locking to lock guards

   - Replace a broken and naive implementation of PCI/MSI-X control word
     updates in the PCI/TPH driver with a properly serialized variant in
     the PCI/MSI core code.

   - Remove the MSI descriptor abuse in the SCCI/UFS/QCOM driver by
     replacing the direct access to the MSI descriptors with the proper
     API function calls. People will never understand that APIs exist
     for a reason...

   - Provide core infrastructre for the upcoming PCI endpoint library
     extensions. Currently limited to ARM GICv3+, but in theory
     extensible to other architectures.

   - Provide a MSI domain::teardown() callback, which allows drivers to
     undo the effects of the prepare() callback.

   - Move the MSI domain::prepare() callback invocation to domain
     creation time to avoid redundant (and in case of ARM/GIC-V3-ITS
     confusing) invocations on every allocation.

     In combination with the new teardown callback this removes some
     ugly hacks in the GIC-V3-ITS driver, which pretended to work around
     the short comings of the core code so far. With this update the
     code is correct by design and implementation.

   - Make the irqchip MSI library globally available, provide a MSI
     parent domain creation helper and convert a bunch of (PCI/)MSI
     drivers over to the modern MSI parent mechanism. This is the first
     step to get rid of at least one incarnation of the three PCI/MSI
     management schemes.

   - The usual small cleanups and improvements"

* tag 'irq-msi-2025-05-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (33 commits)
  PCI/MSI: Use bool for MSI enable state tracking
  PCI: tegra: Convert to MSI parent infrastructure
  PCI: xgene: Convert to MSI parent infrastructure
  PCI: apple: Convert to MSI parent infrastructure
  irqchip/msi-lib: Honour the MSI_FLAG_NO_AFFINITY flag
  irqchip/mvebu: Convert to msi_create_parent_irq_domain() helper
  irqchip/gic: Convert to msi_create_parent_irq_domain() helper
  genirq/msi: Add helper for creating MSI-parent irq domains
  irqchip: Make irq-msi-lib.h globally available
  irqchip/gic-v3-its: Use allocation size from the prepare call
  genirq/msi: Engage the .msi_teardown() callback on domain removal
  genirq/msi: Move prepare() call to per-device allocation
  irqchip/gic-v3-its: Implement .msi_teardown() callback
  genirq/msi: Add .msi_teardown() callback as the reverse of .msi_prepare()
  irqchip/gic-v3-its: Add support for device tree msi-map and msi-mask
  dt-bindings: PCI: pci-ep: Add support for iommu-map and msi-map
  irqchip/gic-v3-its: Set IRQ_DOMAIN_FLAG_MSI_IMMUTABLE for ITS
  irqdomain: Add IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and irq_domain_is_msi_immutable()
  platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all()
  genirq/msi: Rename msi_[un]lock_descs()
  ...
2025-05-27 08:15:26 -07:00
Linus Torvalds
2bd1bea5fa A set of cleanups for the generic interrupt subsystem:
- Consolidate on one set of functions for the interrupt domain code to
     get rid of pointlessly duplicated code with only marginal different
     semantics.
 
   - Update the documentation accordingly and consolidate the coding style
     of the irqdomain header.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmgzd+MTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYodTRD/0RmG5tngCbEJmTw6lPDQzRZH4OO3ja
 yRYlyBipemoRmvJRGjV4uHqN2QPrdOuoqMuyBO1aWcMdkpww5bAHcbgSFrlGM1lW
 kqtaxVMbufPiLQSGYe7OQf478CE1ykoBd5Va8whFKrtA73qEUdEMfWT0stspg780
 7BlmQOemL91p7Ytf03FbDdo8tZ5Xu9uXGAulwY9FZsFtsCNyvhl7nOv5Sk8ZQtGO
 xHRCeunjZLWR+IaK59hdakvQybXwSnjT6jODp96nlyKABEKSPShGSPFDWd3g9px7
 4911QwgnvTbcrsk6YmQEmPIOgXZzypjbnjpJr8tFpTbkVIy+6chi5cBJzXoqsUaM
 ylTwFcUQNvcP8yF447qb+nyPFKM5xsC07W0UpZMuJUDmhhPRtDm5pK0jpsif96GP
 l4aMsWe65PUmXHQqLdE89RJXAa8XQ2qspKVtNKq9DmEVgTviQ09Z9SSQIx4U0yIx
 w+YPde8kH2+O+YtMUn/MmfHhUP4MKya7j5zd8Bnv8wLBi7XGPPA5EKKh9I0dz9m+
 X94lweNXyH+Q8U9mt2cQf8VG8Yzgk0eeC0sliJIlybwRgEgRcQbVWw0VvZUA1ySa
 VBlaj3SinO90FEQ0CctT51ss2mUJ/XsGCnxpiGZXfqIZzFbyD1YfZQnXJH0H67DI
 CqdHw22I27Mu/A==
 =9nLp
 -----END PGP SIGNATURE-----

Merge tag 'irq-cleanups-2025-05-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull irq cleanups from Thomas Gleixner:
 "A set of cleanups for the generic interrupt subsystem:

   - Consolidate on one set of functions for the interrupt domain code
     to get rid of pointlessly duplicated code with only marginal
     different semantics.

   - Update the documentation accordingly and consolidate the coding
     style of the irqdomain header"

* tag 'irq-cleanups-2025-05-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (46 commits)
  irqdomain: Consolidate coding style
  irqdomain: Fix kernel-doc and add it to Documentation
  Documentation: irqdomain: Update it
  Documentation: irq-domain.rst: Simple improvements
  Documentation: irq/concepts: Minor improvements
  Documentation: irq/concepts: Add commas and reflow
  irqdomain: Improve kernel-docs of functions
  irqdomain: Make struct irq_domain_info variables const
  irqdomain: Use irq_domain_instantiate()'s return value as initializers
  irqdomain: Drop irq_linear_revmap()
  pinctrl: keembay: Switch to irq_find_mapping()
  irqchip/armada-370-xp: Switch to irq_find_mapping()
  gpu: ipu-v3: Switch to irq_find_mapping()
  gpio: idt3243x: Switch to irq_find_mapping()
  sh: Switch to irq_find_mapping()
  powerpc: Switch to irq_find_mapping()
  irqdomain: Drop irq_domain_add_*() functions
  powerpc: Switch irq_domain_add_nomap() to use fwnode
  thermal: Switch to irq_domain_create_linear()
  soc: Switch to irq_domain_create_*()
  ...
2025-05-27 08:07:32 -07:00
Linus Torvalds
c0f182c979 Update for interrupt chip drivers:
- Convert the generic interrupt chip to lock guards to remove copy &
     pasta boilerplate code and gotos.
 
   - A new driver fot the interrupt controller in the EcoNet EN751221 MIPS SoC.
 
   - Extend the SG2042-MSI driver to support the new SG2044 SoC
 
   - Updates and cleanups for the (ancient) VT8500 driver
 
   - Improve the scalability of the ARM GICV4.1 ITS driver by utilizing node
     local copies a VM's interrupt translation table when possible. This
     results in a 12% reduction of VM IPI latency in certain workloads.
 
   - The usual cleanups and improvements all over the place
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmgzfSwTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoc4lD/0U24B8okpp2PxVVZOtNzWgl7kcAQSJ
 2U834ep1DhqJPNW0JjT+5Lb55NfAEN/uCuirjLZDsKYNNel4LXhAY951BCJMytYX
 ebH/J7wGjEphRogxn9QTGGC/mguThwFnOiqOLq4aU0Sq/oRH6Uj+P6hMod7ym9bn
 P+bZv9WWhLQQ3x/RimcauReCEDW6pW2soQV+zhN+xTxTW+R1zRcksz1x4+b/B7Vk
 ZH6KFBpZJyC34T0aXOJFhrEo01z2iZWifgmX1zz2ZgZjeUklFxtW9vGqBRS0mU2P
 9bW/qXDsSdOStyfuXbG7Q3s2z9s5Voj9okgBiA5DUD3DuplVHG/3x8do8ZHrvMoV
 k59ORecx29g0nBaVMjT13gH1XfaqI3W52qff6yksqqByh+5urhGXeYzvQ07M9ldm
 eUA8NxNad+6Gir6AcMN+COA+W8oOP17gvoSuFlUhdM/MZvPP0Gb8GkNk3o2Kfil/
 JjvcHJHCAZv6x1L7jhFhAmTUvR9ibmMJDmXJM2tIHvS1HrHNfKAIyxy00GAVg7TN
 f5Iv0+vqB7C6PHzMYIIQpZ3hrJL2GR6jdToPdAWIfr5BzugglDIRUlhEIsxhSXQn
 WMmoif5bKS8wxQRyP2F3FPv+eKYT2XVlVri3LHBkqKbkJW/sqJWHHFGIdaDrwVhX
 vZlmkT07PD3jbQ==
 =OS2H
 -----END PGP SIGNATURE-----

Merge tag 'irq-drivers-2025-05-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull irq controller updates from Thomas Gleixner:
 "Update for interrupt chip drivers:

   - Convert the generic interrupt chip to lock guards to remove copy &
     pasta boilerplate code and gotos.

   - A new driver fot the interrupt controller in the EcoNet EN751221
     MIPS SoC.

   - Extend the SG2042-MSI driver to support the new SG2044 SoC

   - Updates and cleanups for the (ancient) VT8500 driver

   - Improve the scalability of the ARM GICV4.1 ITS driver by utilizing
     node local copies a VM's interrupt translation table when possible.
     This results in a 12% reduction of VM IPI latency in certain
     workloads.

   - The usual cleanups and improvements all over the place"

* tag 'irq-drivers-2025-05-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (25 commits)
  irqchip/irq-pruss-intc: Simplify chained interrupt handler setup
  irqchip/gic-v4.1: Use local 4_1 ITS to generate VSGI
  irqchip/econet-en751221: Switch to of_fwnode_handle()
  irqchip/irq-vt8500: Switch to irq_domain_create_*()
  irqchip/econet-en751221: Switch to irq_domain_create_linear()
  irqchip/irq-vt8500: Use fewer global variables and add error handling
  irqchip/irq-vt8500: Use a dedicated chained handler function
  irqchip/irq-vt8500: Don't require 8 interrupts from a chained controller
  irqchip/irq-vt8500: Drop redundant copy of the device node pointer
  irqchip/irq-vt8500: Split up ack/mask functions
  irqchip/sg2042-msi: Fix wrong type cast in sg2044_msi_irq_ack()
  irqchip/sg2042-msi: Add the Sophgo SG2044 MSI interrupt controller
  irqchip/sg2042-msi: Introduce configurable chipinfo for SG2042
  irqchip/sg2042-msi: Rename functions and data structures to be SG2042 agnostic
  dt-bindings: interrupt-controller: Add Sophgo SG2044 MSI controller
  genirq/generic-chip: Fix incorrect lock guard conversions
  genirq/generic-chip: Remove unused lock wrappers
  irqchip: Convert generic irqchip locking to guards
  gpio: mvebu: Convert generic irqchip locking to guard()
  ARM: orion/gpio:: Convert generic irqchip locking to guard()
  ...
2025-05-27 08:00:46 -07:00
Arnd Bergmann
5963edd98a FSL SOC Changes for 6.16:
- Various fixes and cleanups from Ioana on fsl-mc bus driver
   - Other misc fixes on fsl-mc bus driver
   - A build fix on DPAA2 driver
   - Some preparation work from Kees on qbman driver
   - Some cleanup on FSL qe interrupt driver init
 -----BEGIN PGP SIGNATURE-----
 
 iJIEABYKADoWIQQQ/+b4s5DeF6zCYyNoqS/rAbjdeAUCaChUGBwcY2hyaXN0b3Bo
 ZS5sZXJveUBjc2dyb3VwLmV1AAoJEGipL+sBuN14P8cBAIWy+9x5gfkg7ndHDYQk
 4DKYVuAC2ox4HRgQr/lAAyRzAP9zhtL/r8xjSeomn0Uk/vGbzdRNqQo5/l3vbp5i
 Tj8KDw==
 =lpqg
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmgvCN8ACgkQmmx57+YA
 GNmAFQ//e6MoQofsMrBvJWDOD20puXPYRJze7w34lzloAjffsU5qPDC+ggLdMogI
 9HLm+Fh0QUC7z8bfjTTGKMmE2nV0+apZE227orcvTzgSq/EV0VVPCEkPXmg+I3CK
 7bjP6BoTTZCZg1sxesEVnPz82Z0kGqKBSoG73pGYCw4VAkOXkbi1fFSTDGmlz1lY
 F6Yc54J32mTFni2IKw65wO5l2NOTGPXMUMkdjITyMjQqo8fjPfmenkp73qjBLPc2
 ansDK0ULiUtSNP+jTNDOxvRPHWowiKdUnK3SQwWPpngmhWUJyvtM+IhtsKpWyuPI
 g8i8xS+FI+hw5I0fd9vzbzlRzSyL0c0ryqcIuWyXnhS8O5h7gvgVqlSHamp0TrQ/
 ps1yTbeI0hHmcGWOHhJeNTnPal6o2zOSGqWBGxzXJ+iooAEP12xNh1/yE/BPcs+c
 lE39Y93I9kNvP28UptbOU3Z8Xpf9kj1hSV7W8c6alYCUcbZsuPL7qtf0cP6um/j2
 NtiRfCsIT+jvwgfsiVBJtA311qN3WGiJETMpAh5COm39SqBcaLWh9tUXNDx+pvjF
 FuO6w78E2BWofgEAq9jxg255CKCZD7mIq1590WY4ntviZw/tqHE/gMJP0c0jQr+3
 58d+NY7vLjPoF0fZpkVwNyPc9Yp3oyH0XuEZvTNb9fvSGVdHdj8=
 =StL6
 -----END PGP SIGNATURE-----

Merge tag 'soc_fsl-6.16-1' of https://github.com/chleroy/linux into soc/drivers

FSL SOC Changes for 6.16:
  - Various fixes and cleanups from Ioana on fsl-mc bus driver
  - Other misc fixes on fsl-mc bus driver
  - A build fix on DPAA2 driver
  - Some preparation work from Kees on qbman driver
  - Some cleanup on FSL qe interrupt driver init

* tag 'soc_fsl-6.16-1' of https://github.com/chleroy/linux:
  soc: fsl: qe: Consolidate chained IRQ handler install/remove
  bus: fsl-mc: Use strscpy() instead of strscpy_pad()
  soc: fsl: qbman: Remove const from portal->cgrs allocation type
  bus: fsl_mc: Fix driver_managed_dma check
  bus: fsl-mc: increase MC_CMD_COMPLETION_TIMEOUT_MS value
  bus: fsl-mc: drop useless cleanup
  bus: fsl-mc: add the dprc_get_mem() command to the whitelist
  bus: fsl-mc: fix GET/SET_TAILDROP command ids
  bus: fsl-mc: do not add a device-link for the UAPI used DPMCP device
  bus: fsl-mc: fix double-free on mc_dev
  soc: fsl: Do not enable DPAA2_CONSOLE by default during compile testing

Link: https://lore.kernel.org/r/9e5b3e8e-3280-4ff9-915b-9a8b934bac22@csgroup.eu
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-22 13:22:07 +02:00
Arnd Bergmann
7148b42e85 Samsung SoC drivers for v6.16, part two
Add CPU hotplug support on Google GS101 by toggling respective bits in
 secondary PMU intr block (Power Management Unit (PMU) Interrupt
 Generation) from the main PMU driver.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmgm9QsQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD15dgD/4oYhj8BVQP/cpb912oeBiLF3Gu1bKtv/mi
 rpPPmAirDH+xgwBwPGYH6TitUTv4ah+NKHguLMJCHv3IkYeBBZoT+6RWflDz2lZU
 lK/n1vcj0X5iWomH5d355xyNqR7SLbqWSHRadCavN9oKk9X46IZyuABnHtLwnaeI
 evKf+rIbXgyXd1Sa4eDPpepzrOatcWy9mb++gAjLVaCof1EAUcRmUH52rvIjC7eP
 mv/VKVi4fyEyC3aCss7Lz0P+S9ba1rZ5Sx6iyv/EtT/V7LNpLit1ewDr/uV3LaFi
 vkoPVovRby5Dc/18HUJBDOJppF35iM34Uto0kZvFZKtrHo8srPbczUQVekTgYr5F
 W2H0JFB32K02tgWJBSOg1sPPHqnMaUYu8fbX5jax5Tnz3oqnDqSlSJzHnTq/aDNN
 lhJHxzqb+DTNKZxkXIBhbnQtTBmOI5Mk2L0kt3WwNZuryT5UClSP9jEkvTrqSrym
 uQwpV4LuNQNHQ7ctvbZKY3/nWRXsU/VEH6oNMIouoUt+5Cok4wMZ9Gx95/by4wLL
 51K0773lLrZM3jXP0cHhL+JH0nBS+Bc5w7XViMZSgmXH9W94bi+WzmJYvCBFwqUp
 BT3BLPL7t2D1+Gya/W0ZkMSxcvQaeuCPkrF4AtpDdFrC756eIJLJOCppfcmVyyLp
 fhN2H0tdmA==
 =5fbP
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguQcQACgkQmmx57+YA
 GNn0LQ/9G0OZmOouvCPTjOmgB3k3ecBKGQUFtoLerLa5caRQstZT7z8xb1CUzh31
 +P1KcRO/2PhkKEhUj7zoIDm2k2kLYq0HeIRKv2mZhcUnQ1Iac11Z++OWcchPUOtV
 WX/bbp9uX9QcuL0DEfsfoBgdPwXwo04Tg5u/uPluDgvlopbtp8Xq5mXP/TZmaiKY
 OC6UVIqZBB2l4um+B85L+FUJUqL7jtOiOwKUJs8RUh6GCdPM4r4f/QAFj8oca7Eg
 pkcjTkIur+dIPFbtuIggy+1pIVE8FIZ0NMr8kJkCfg39ohpdrRZuowu44jBKHP3x
 azyRM/rTpkOajowpZvNW6Kuxfll/amJRDtpX5/nJYPnfvF/f1ildRSfJxS9Ao4MN
 FKI7vtnOvjCZ33Z7PVug4zmY8Bj4y93M5jkPxIdUetj6drBDMgmRVDVusdvmlpLj
 +WcLOkOj+x8rPV/HZ9LVT0I+IhTQqf4KwkorzB6JLb/2i3/F8g2zLCgGPLxIrxPE
 0tHUpJe8B6woneenfMw8dbOI5W5eH9HT3P89bTgdkYLqJUTgpErOTvfCjgAdsRDI
 eigo1X37lCToIYIZ+RJmbS6F5Wvms8SH9n96WaRxMuA4MGx2/o5zjIdvuAgaKa8Y
 ne6n0rJmUste7T6yKD0Vad+f0B0uuSo1g2H59lJQdq6B67p3vtQ=
 =u6x7
 -----END PGP SIGNATURE-----

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

Samsung SoC drivers for v6.16, part two

Add CPU hotplug support on Google GS101 by toggling respective bits in
secondary PMU intr block (Power Management Unit (PMU) Interrupt
Generation) from the main PMU driver.

* tag 'samsung-drivers-6.16-2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  soc: samsung: exynos-pmu: enable CPU hotplug support for gs101
  MAINTAINERS: Add google,gs101-pmu-intr-gen.yaml binding file
  dt-bindings: soc: samsung: exynos-pmu: gs101: add google,pmu-intr-gen phandle
  dt-bindings: soc: google: Add gs101-pmu-intr-gen binding documentation

Link: https://lore.kernel.org/r/20250516082037.7248-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 23:12:36 +02:00
Henry Martin
f1706e0e1a
soc: aspeed: Add NULL check in aspeed_lpc_enable_snoop()
devm_kasprintf() returns NULL when memory allocation fails. Currently,
aspeed_lpc_enable_snoop() does not check for this case, which results in a
NULL pointer dereference.

Add NULL check after devm_kasprintf() to prevent this issue.

Fixes: 3772e5da44 ("drivers/misc: Aspeed LPC snoop output using misc chardev")
Signed-off-by: Henry Martin <bsdhenrymartin@gmail.com>
Link: https://patch.msgid.link/20250401074647.21300-1-bsdhenrymartin@gmail.com
[arj: Fix Fixes: tag to use subject from 3772e5da44]
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 23:07:23 +02:00
Su Hui
d9f0a97e85
soc: aspeed: lpc: Fix impossible judgment condition
smatch error:
drivers/soc/aspeed/aspeed-lpc-snoop.c:169
aspeed_lpc_snoop_config_irq() warn: platform_get_irq() does not return zero

platform_get_irq() return non-zero IRQ number or negative error code,
change '!lpc_snoop->irq' to 'lpc_snoop->irq < 0' to fix this.

Fixes: 9f4f9ae81d ("drivers/misc: add Aspeed LPC snoop driver")
Signed-off-by: Su Hui <suhui@nfschina.com>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
Link: https://lore.kernel.org/r/20231027020703.1231875-1-suhui@nfschina.com
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 23:07:18 +02:00
Arnd Bergmann
6333f2974c RISC-V SoC for v6.16
Sophgo:
 
 Add support for SG2044 TOP syscon device. The SG2044 TOP
 device provide PLL clock function in its area.
 
 Add RTC support for CV1800 series SoC. The device
 is called RTC, but contains control registers of other
 HW blocks in its address space, most notably of
 Power-on-Reset (PoR) module, DW8051 IP (MCU core),
 accompanying SRAM, hence putting it in SoC subsystem.
 
 Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
 -----BEGIN PGP SIGNATURE-----
 
 iQGzBAABCgAdFiEEdoBX2jyDC9ZCTwZjDCzASqG0i0IFAmgkDx8ACgkQDCzASqG0
 i0KzNgwAuwEFXfJZYnWWraIx4+gr7v7tdjfnOz6qw/1Pp3B36R9DIgNe/dNkloGh
 ZXUw7wU6FmRu+VYvA9xIbrOjp5o+VEb9lRBIlQDOXtIGwSb3agMpCgein5XwbdrF
 78hfVZ95/2v/YkfIJsIWLG3S6t1XIZPiCBDKdZYSEBcXKXhtAINUm7BkO8JpLivS
 5a/lV9SYPGILXFou+ca5cgEov0BaIiA/OIJxKx5kylKBAidCRG+tmQcvz1TOGfim
 Kap0zjiaS6w+J7jPqIZT3lICk+24qXCrPDMObNCNov7tZMMw+bmCZntAEuleh5nu
 VEnigl5Wiuv+V6xo4m4yXzklMhq/y0ESOVSW12qGTRxh/Nvv9SlKfmjEyhTzugkb
 RcMojb5udrVeFdx7goT5LJwrkgc4P5ZbOZZXI2HouoU2+Ms8h0wr+LwQ2ls2v1Kr
 qiQ1Q0OB3n2elBz/AZ9zLXrLXumroestml/fFqd9ZqoqSyMiK/yJWL8IcH6uOx/R
 nKKwLcre
 =83uO
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguDHQACgkQmmx57+YA
 GNm+Hw/7BYmkOJkpY51RrloRC+HMlJDs+oQJ+g0iii+FFh4Pfaxa6Lsgxmby0d+X
 J5LsERLMJ9TSWVfS3EQkhner4O+CxXqIZjnsu1sslDpYNXb9U3xTDLaDgHnFdt0P
 X7TThm92ZDJf8Z8E8Xec6zxIkJ/xfZByJZwjiTzCI2xOXjpINwZ6KCbJ9lne9cWW
 qoNJ3uPAqco2lgFhxvb5qnYIk3xf5NL0ZFa51rUfuMpIJtPVLab1A8ZgllXFDVqK
 7p3ayFaa5rMmJTgt/1gtpbOUKY+TvA9Ox6eMyoMvUHfG33pwSJTgW0IdbfFb74eg
 AYvuN1SL47XULhqz4Nmgc4msK63+3mVxcQUufc27O9Uu876wA/1ulLAjcFZZjzpU
 I7VBvlaBpPQmHkMiBODz5nrlpcfQld1VCxdIcHoP0v7Zsv5/93/EfFszEtm4tgkH
 S4rCP7YnWmot3IJsUXCZu+zd/tgULqBKKzaDuATYKidm/G9zWDBbgwzuZW2iUvFd
 1nXBXWRTHIizP0WzG2LsT0xIwt1XfXnEct2Zb1pPcp1uxaGzM6EBQ+AMdm+cPAW0
 UiYhi6Uv/86QEHDqU3WJ2iK9dtqmz965PTkzZGAy7AlkIeJdFqIflWVfAFjGF1Rs
 DW7M/nM55fGlWVO2WYZlPJlaXfzWxEeiMPkOMKIhW4ymay7uWoE=
 =yVfo
 -----END PGP SIGNATURE-----

Merge tag 'riscv-sophgo-soc-for-v6.16' of https://github.com/sophgo/linux into soc/drivers

RISC-V SoC for v6.16

Sophgo:

Add support for SG2044 TOP syscon device. The SG2044 TOP
device provide PLL clock function in its area.

Add RTC support for CV1800 series SoC. The device
is called RTC, but contains control registers of other
HW blocks in its address space, most notably of
Power-on-Reset (PoR) module, DW8051 IP (MCU core),
accompanying SRAM, hence putting it in SoC subsystem.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>

* tag 'riscv-sophgo-soc-for-v6.16' of https://github.com/sophgo/linux:
  soc: sophgo: cv1800: rtcsys: New driver (handling RTC only)
  dt-bindings: soc: sophgo: add RTC support for Sophgo CV1800 series
  soc: sophgo: sg2044: Add support for SG2044 TOP syscon device

Link: https://lore.kernel.org/r/MA0P287MB2262B041A26A0F5EAD1E296CFE91A@MA0P287MB2262.INDP287.PROD.OUTLOOK.COM
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 19:25:08 +02:00
Arnd Bergmann
3fc5aea250 Qualcomm driver updates for v6.16
Allow list QSEECOM for EFI variable services on on the Asus Zenbook A14,
 and block list TZMEM on the SM7150 platform to avoid issues with rmtfs.
 
 Extend the last-level cache (llcc) driver to support version 6 of the
 hardware and enable SM8750 support.
 Also add socinfo for the SM8750 platform.
 
 Re-enable UCSI support on SC8280XP, now that the reported crash has been
 dealt with, and filter the altmode notifications to avoid spurious
 hotplug events being propagated to user space.
 
 Add SM7150 support to pd-mapper.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmgjv/wVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3F8RkP/jD+a9ye68m4BLZHsROA1CQ1ntpH
 tsIDPZ+L2ojrjECPpAqdVYUhXMllKVXhzNFFVpQ+DTuOn5Ny8yDV6V4m1YJou612
 CzgtmhHph/MfPo/JxHFEK3qgOp9jIICXAk87WjrFFimOtgQ2v9W0QDPZj0ReoBkG
 gQILjam1tOlm7jv0eODQFoY5qgtsCWm2ZDQ+nwwV5vrsA6pp7IM5lLx515jb72NO
 EI7YLKWcLm2JL5v+zTKfprN0CM8+g3ZAfSCZJUH6mONYXrDeqOolFjPT+PTOcRba
 SuvYJ7044YbLhswFMQcR6EVSFWWGNxQbvm9J46k3K5D6VOETe4DTsIbfzZ8cRzDK
 A4yqOI8q41GYw2kDJUgEBOhiClDIYdVaoVYppwjr3IDrb9lwrkZxRqpDGyVxEp9U
 h16vXGP+DBxHL07H6QbytdsMz5tz/CCHEFr7tmpOZt+cdD6y4PZ+sj4kxWq5UXWF
 eQ7n0bHXJZHYZa6OWbR/czhVtj+aijpf9Q+sHnVkZHFkihyj9KDu11g9cdGmF1du
 8Yz+zZkB0LqtIU8I4a7K+DJI4R0u/6D2ef6BWFjVcc7a1yEudLBBnsJilhxwLLog
 166SBXq200GNz7TPVjNlaIQf0ulLzl0mdotLJhIb2i9TT+FHYOIoy0vdamsjHxzs
 /O/AHFiD13d/Mxvl
 =6aIm
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguDB8ACgkQmmx57+YA
 GNlqaA/8DcsemHeTJqNMxCfwX59JcbPKKAISb/JuREi3BnZKWnIsInDnvkqynNpI
 QrUyVX+AC6mzGbnIMD/HQfKFtNAmrFgssLe7+FFlmz5IHSSc3pu9J3HJWLhBlRoT
 58sXMVvJ2F1leiZocr7fsD54NNpyAPRUyGMAk3uW1qqxzyS3tu8M3luIUAKrSRrO
 nWSm2O9lUDQTblYz9dInAZLYx8X7fILSRy4jNGfy8DPl8EKpdbla3K/BLFI7gOUn
 OKc+24sfCSezZUaKGU48NnH4I9f9N5iUnoBOWeAL6Hpu8yy7JNsHzTrKy+oxpRAI
 xRzO1KjrVAmlXH7z9WUAkyLxF3NrPbK9gw/6Cd6hFaAp/kXmHNyarPXFgrYBJwjm
 wkES+nBryiYxyPpEu0BpxAsf83ppLrJn1Fb6jxxE6tm32/kznBMt7XQM9e9RqAk3
 HYyGzmq5gX2r8Cf0GNq8+4n3WYiLecg5vDwhl7Jgj/A3/vVuw4YCxBAAMIt4WGuc
 /gJVZK0aPZJq1IH2RAw9Z+UIJ7K1LCR3kQNMkA/Txxp0MYsvIyFnR5LO2925t/QC
 SYxLL7BOjg7Zhax0NqUQauiZDX92kzr9ZM91Xhj5QjznPXmmxVDplEHxkEZmZsO0
 pZJBj1shnG/etOJsbT+ciDKIfS6W8fGlIOniYdTnXd0YTsWtg/g=
 =AXtY
 -----END PGP SIGNATURE-----

Merge tag 'qcom-drivers-for-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/drivers

Qualcomm driver updates for v6.16

Allow list QSEECOM for EFI variable services on on the Asus Zenbook A14,
and block list TZMEM on the SM7150 platform to avoid issues with rmtfs.

Extend the last-level cache (llcc) driver to support version 6 of the
hardware and enable SM8750 support.
Also add socinfo for the SM8750 platform.

Re-enable UCSI support on SC8280XP, now that the reported crash has been
dealt with, and filter the altmode notifications to avoid spurious
hotplug events being propagated to user space.

Add SM7150 support to pd-mapper.

* tag 'qcom-drivers-for-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  soc: qcom: llcc-qcom: Add support for SM8750
  soc: qcom: llcc-qcom: Add support for LLCC V6
  dt-bindings: cache: qcom,llcc: Document SM8750 LLCC block
  soc: qcom: socinfo: add SM8750 SoC ID
  dt-bindings: arm: qcom,ids: add SoC ID for SM8750
  dt-bindings: soc: qcom: qcom,rpm: add missing clock/-names properties
  dt-bindings: soc: qcom,rpm: add missing clock-controller node
  soc: qcom: smem: Update max processor count
  firmware: qcom: tzmem: disable sm7150 platform
  soc: qcom: pd-mapper: Add support for SM7150
  soc: qcom: pmic_glink_altmode: fix spurious DP hotplug events
  soc: qcom: smp2p: Fix fallback to qcom,ipc parse
  soc: qcom: pmic_glink: enable UCSI on sc8280xp
  firmware: qcom: scm: Allow QSEECOM on Asus Zenbook A14
  dt-bindings: soc: qcom,rpmh-rsc: Limit power-domains requirement

Link: https://lore.kernel.org/r/20250513215656.44448-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 19:23:43 +02:00
Arnd Bergmann
5bba2c4675 VT8500 (and FSL) SoC drivers for v6.16
1. VT8500: Add SCC socinfo/hwinfo driver.
 2. Cleanup unused function in PowerPC Freescale QE driver to have W=1
    builds warnings free.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmgjIYoQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD18JUEACTXFpQjEK3AUpWP4liNGOY/qJnCGpQTgIZ
 4WDw3FXgYzvPLFpvBaD0aJ7MNvA3px598OwU8WPTkGHUOMwHrDbEORJ9PUY+21WX
 CamGmF/GheI3ek87fszM7U6/YQpejPO3evAY9e4Izfzwvb+C+ODj/RtC2dvHtWWe
 fD0mHZXJtNGc79xnpM63TxuemVsOESBioW6axO/d+PV9aJW35IcFtvvIGLDD/WEY
 2X8zyOkXDy0E/c4Ub1TVrVkL1JA0WtuuDPlf2oYC67fCBiXQ4PAUDwV9rAsZCGpV
 k1LVTyN8keXTqCKN2eVOC3NhRkKA6h+nc1Htx3XPlH7MUIXfcd5s+X4Jc0T5LBK4
 nbJQY9WX/v1HBs7vr7gXiCnAviysyq0f8i//PRLQ8z/RjTeR+qQvqbMFpRnrLRjg
 tUkfrDC724STQ28cd1VdvsXVswxjlynzr9aBXyUQ7KnjUNynH9U9PpMFGooSjWig
 XPLF0WMsC+EKwOHiQvQ3RRZoZ0crCsnmeaV+DnPNnT76MUd/Hiyj26YOaNig2WY9
 /+jSHhG+dxAidJA/T3NeKtE/pnVDYrp+oJeTq9AjmScks6iG1KlIl66GTl272l30
 tDrRgxPKtGJ8gvXiN7MlUTRnZ5f3tRE7zgxQFHInNK25E28ib4EiiMrVaqXEray4
 vSwZ9/58WQ==
 =6hU1
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguC8YACgkQmmx57+YA
 GNlR0BAAsQGpiQO7x7emmI894OvdZjZPiW+MO+j3kJRvr9KphufAwIS9spiHhaV2
 mElqQBFfmzmfsx6PYaQEzRnb0oDrbmDBBcv23fH7gh+WXsBd0ZMHFs98GspPuriV
 U6p2SGK/EL7h7siIE/9fxgQK+DtgPsbTI1ehrHDrGE9J1OwjI1cpzfvT7KVvMiBl
 eLuMp+lFw9GZfPq5q8HnNdEADF5bNREkiSOY4omUOU4RFfVPmwzhD4yh7S4zHEeZ
 uz2D5jRum33rimCk7CpCAHimVmCUcSwS6RZ8Mozr0eDa80f9yWXF0/OCtp2Q59iO
 jINVnLDdgNlqehmioR7SrFT3hh02jeDroNJ7bA8JNKlZlr5JQCtG0Z39siu8ixYM
 Hd4WrBHbhNH29+lhyrztIofakOHdoKs+aRSFXan3C07VMJ9wzmQuM9+NshdncVlY
 LvMDVKri3mB3aemucsMx7Mf1ltBX1nwWejzl4bgy7zA3b40SvxXF/X2Tr6F7rEhK
 WPQDIOuK6g4h/4b2p7jOShageVmMkBiCvRUnEa1yjBBWN0LKXREL/zFRnouk6gm9
 4tMojE43moN2ca23k0eVo4rwKcJkFmQkfypsUtZzz5jkJ5E7VNrLkmLjg91krRv1
 /Wi7qZ4k4xFNhc2oDRIo9M966AMMcVaUMXVTzG1WktVJEbFek4U=
 =XZ7C
 -----END PGP SIGNATURE-----

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

VT8500 (and FSL) SoC drivers for v6.16

1. VT8500: Add SCC socinfo/hwinfo driver.
2. Cleanup unused function in PowerPC Freescale QE driver to have W=1
   builds warnings free.

* tag 'soc-drivers-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt:
  soc: fsl: qe: remove unused qe_ic_from_irq function
  ARM: vt8500: MAINTAINERS: Include vt8500 soc driver in maintainers entry
  soc: Add VIA/WonderMedia SoC identification driver
  dt-bindings: hwinfo: Add VIA/WonderMedia SoC identification

Link: https://lore.kernel.org/r/20250513104216.25803-6-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 19:22:14 +02:00
Arnd Bergmann
382af529be Amlogic Driver for v6.16:
- Amlogic clk measure memory usage optimization
 - Amlogic clk measure support for S4 & C3 Socs
 - Amlogic A4/A5 reset controller bindings
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmgjGksACgkQd9zb2sjI
 SdF3wBAAkaqgDrUhCR3CcQCZdWJ+kov/G1f1HhB2DpJ+D8FgUw5P6S4bbD+vJMXV
 6aLbk6fyQpAeo6fMrb9ognp7TiRNoTL2Y2gsfVdk/RGvwy5eXN4gcmvWLfwlXtOB
 Pv36CzQVn2AFFq0g5o8LagQd4/pC4vsdY0kOCrjGTda4gAlkdz9cqjtNLwsZORpE
 tA9zzyjRnVFtnrU64XdNjShsdGMW7rOK2eLyQgk1dErTG+8+wWutJXK+Ag65KWeT
 FfP8oJjPdkNPxdEuF2oWIQx+KEaG83vt9mKtuL1KcvP63Jzs/T8eQCZIHVT8h5kT
 RJquMfoMBYqIcuFDLinVdkyutFaPgGMWTB5xRLUBlEi5cZ7pP44E93MB68Tea5VZ
 Qm1Kz5ZwCpp0x/rScZp3M4AK4KgM/9VoWhx/PTvczb/WJNumWZOXkk1VYgSNohXU
 JY48FZe7sGjsabDuiCIxy7kEumW+5lxZYfClADVsidE14DTT0iDm+fiBcNm3/fAz
 M8Q0UafNwKII/b5bfAGXhCi3VFgwKBNXfbFKTukdepBCnnIzb+/9LHfbhihX7NM4
 t2pfjWSxSiUD9FeJdfe0lHHFJoSDqBSS2GvtZVvwKUox++JuF3sDkGdKTJY8Cd0q
 YW3fNg2kAM2P5YawuoBrO0+6dOf48LkWH1d8NuYlDBFD/n2GGuQ=
 =EwMW
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguC5QACgkQmmx57+YA
 GNlX6RAAm6q2ktnbtmZiBOd3hNEF2eAKhjezGp+SXfNF8ElgfTMWG+m7IkZUc01n
 0+0VMZVamvEFl9WdWxG0cOotDI4j6cLFGinh0BXtLhFHN9GpBsW/u45jIP2hBjc+
 h0okOcG3ZtnzuiVBq0DCy4v9R1ofBVmJmEE5keVqIB4Vu5VI4SypG4Swe5TpnaaM
 YpyWWpiIUy6TWvmOhNCSf5mLvVbhGfpKMiRoqXoC7VWCO0fhwmBQpbw9eXbXHCUt
 Kf2B3EmBjZJyWc4ZHrK/HmzokhlPXG++kvqOeTgmUU5zL3femx2niOocNjB6u7qR
 U1H/ABeGIWh1svWjJVHiVawrGolJ2nylDmQ2MufU8+Y87ahK4fnPG1b8apJ3WUGG
 lfGdH4rINTrJSrYyAkFooNQ1hL3P61eQDAWeRbNj3+vGlK05G+TX5cG4mwt0rjdB
 unKP66WrargoGrhEmedIfyB63/yO6OdonhTqI0Q/B77wa9V1OKgueF/ZvIoUUVo8
 j3W8//CR1NkL3EwsSNNdKzitCoEsMkWklV4GyXOkqGTVealHRtbC6K99RmX1AsGZ
 DhWdelhf8HIT3Hc+87swvxaq36WyOqHS+/GQeeovJknpe+uXdrqudv8s3mWot0Bx
 ZzN9hNPphMWOa08iJPEbtNJgC1AM8zqWQ0U+ql2/aGO55K7gyPs=
 =fdcZ
 -----END PGP SIGNATURE-----

Merge tag 'amlogic-driver-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux into soc/drivers

Amlogic Driver for v6.16:
- Amlogic clk measure memory usage optimization
- Amlogic clk measure support for S4 & C3 Socs
- Amlogic A4/A5 reset controller bindings

* tag 'amlogic-driver-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
  dt-bindings: reset: Add compatible for Amlogic A4/A5 Reset Controller
  soc: amlogic: clk-measure: Add support for S4
  soc: amlogic: clk-measure: Add support for C3
  dt-bindings: soc: amlogic: S4 supports clk-measure
  dt-bindings: soc: amlogic: C3 supports clk-measure
  soc: amlogic: clk-measure: Define MSR_CLK's register offset separately
  soc: amlogic: clk-measure: Optimize the memory size of clk-measure

Link: https://lore.kernel.org/r/04908842-4c55-44a0-b74c-3aca82a1f204@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 19:21:24 +02:00
Arnd Bergmann
50c77033bc TI SoC driver updates for v6.16
- ti_sci: Bug fix in CPU latency conversion from us to ms for TISCI protocol
 - k3-socinfo: Add JTAG ID for AM62LX
 - Code cleanups: wkup_m3_ipc: Use dev_err_probe, k3-ringacc: use
   device_match_of_probe and knav_qmss_queue: drop unnecessary NULL check
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE+KKGk1TrgjIXoxo03bWEnRc2JJ0FAmgiA5oACgkQ3bWEnRc2
 JJ2pfQ//ZwfZ9/QifyvND6E1/xIVe2pk3zCc0Yh5MDCNq0sEC7sw7gHWMW2rwGoQ
 6UTLJzqqdjB4FEmr/rWb2ZhYELvlESNrxESrDFULqh//t7J/L9OIqOhxBg2eyADn
 PHXYizgICKt5FF4K6v5DOGeSYKhk5QOzTVxbdKMnrU6OPrefbV8wnp2gqbvjtRWh
 CPh2xpx8MZgI2y7Joy/vV9XQkNpLOSSqFg59JiT8zA0gLV6OEikXSSbnxbHgKcSg
 t30C+7GyUcTQ47cKMPyHzap76vZ707h+CMSJ5UMzjhgJCM1WepquYqE4b+5CWJal
 9pajrgLqFABpMXyzGitpv2+MhIfyc8jGY3VY3IsWeezmXucIe8X9AbFb3zvOazVy
 qmytSADnYcEV2d9ugIwbmBr0ksXNIG0bKmhHzThxSs0nep2Ezzk7O6A6ujL7dQyy
 8SogQtfdZSSaDvTVMVIV1QMvF2SJnUUIJgL2obIj8vv2GSsFP4R8uKZaPxevv2tI
 f6Lb5gUlxLJCFXuyUa7uya4l8QgO+OFW7ln+C31R1jJOOWmsUtfxAhjJXGL8rUL+
 lhWOmQs/XCu9AxqH3QNEoTHl0A4JtSk0TbqvnuajguQB1IQHO2TGvgzv9f0nRIM3
 6BreADgLQkaFi9YE19SHJxHdXhR4zIQDdcNMCUK6v63yV2SUztc=
 =2TQF
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguB6IACgkQmmx57+YA
 GNk5Xw//WM1CTqM/MgXDImqDR0u41T1rW6vzwo3CKSlh9+qo3JLAApP1cmfN0LLB
 0lip3XUvItb72XqgB28GfUF+9dU7jn8FvhsMzE0tF9gfG9D+2zRtpZoPTt8wUX1b
 MMGiIlQXErfSAeBlzHlQ+dujOD2vYbhFf5YXptv3eQZ1XyTOwF3eOuURbiCBQfAJ
 Ki8klH/+9p1fVhgyCYXcOrWYJ3IIbGzDj/kwFOYf/kP1FdnfLiG4Fl3uShKzZE4v
 twwqEPYDNwcw47rYR3Y/jhLsQmfpLvd2tHt7wJS+Rl29QMzFJ0oSIn8Y84YiWdDQ
 hU5QLqIo4NlEZ+0+VqaBm3ulVypBkMXAKwiGUG+GZyCzNTaq2lGxBPrirXRojjsK
 1uMYXPJWG9gdBBDiwDu+lVP/nxZtMgU4Vwo0XtbSNOAQ3eW4/4Dz4jmgw5vGwLe7
 a8O3cTr1V4DuvpETp4Meo8pwZHoi/3iw6k3fveGfxYlYNWYx2uP7AoRGbDr5dXPz
 SYsL5592FCpC6aXLD8+LRJ04PszDAeVx1kyss3/SWwAFeTx6EH0qPLinWrwHi77L
 Fi5E45Rk9WWslSMFKEwBRJqGuxtbkyPOtuyATmOmnLPz1Ip2puJCBznCipoBULDr
 lVMbkzkMcoLOLJtm7W51Ng+hJIcg4zykITw4SxZDMCFCB7DxEos=
 =N/zC
 -----END PGP SIGNATURE-----

Merge tag 'ti-driver-soc-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into soc/drivers

TI SoC driver updates for v6.16

- ti_sci: Bug fix in CPU latency conversion from us to ms for TISCI protocol
- k3-socinfo: Add JTAG ID for AM62LX
- Code cleanups: wkup_m3_ipc: Use dev_err_probe, k3-ringacc: use
  device_match_of_probe and knav_qmss_queue: drop unnecessary NULL check

* tag 'ti-driver-soc-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux:
  soc: ti: wkup_m3_ipc: Use dev_err_probe
  firmware: ti_sci: Convert CPU latency constraint from us to ms
  soc: ti: k3-socinfo: Add JTAG ID for AM62LX
  soc: ti: knav_qmss_queue: Remove unnecessary NULL check before free_percpu()
  soc: ti: k3-ringacc: Use device_match_of_node()

Link: https://lore.kernel.org/r/20250512144719.mpkyw2jbyzslb5hy@yearly
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 19:04:34 +02:00
Chen Ni
695d702f42 soc: fsl: qe: Consolidate chained IRQ handler install/remove
Chained irq handlers usually set up handler data as well.
irq_set_chained_handler_and_data() can set both under irq_desc->lock.
Replace the two calls with one.

Signed-off-by: Chen Ni <nichen@iscas.ac.cn>
Link: https://lore.kernel.org/r/20250515083919.3811473-1-nichen@iscas.ac.cn
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
2025-05-17 11:01:55 +02:00
Jiri Slaby (SUSE)
6e4e30d70a soc: Switch to irq_domain_create_*()
irq_domain_add_*() interfaces are going away as being obsolete now.
Switch to the preferred irq_domain_create_*() ones. Those differ in the
node parameter: They take more generic struct fwnode_handle instead of
struct device_node. Therefore, of_fwnode_handle() is added around the
original parameter.

Note some of the users can likely use dev->fwnode directly instead of
indirect of_fwnode_handle(dev->of_node). But dev->fwnode is not
guaranteed to be set for all, so this has to be investigated on case to
case basis (by people who can actually test with the HW).

[ tglx: Fix up subject prefix ]

Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Christophe Leroy <christophe.leroy@csgroup.eu> # For soc/fsl
Link: https://lore.kernel.org/all/20250319092951.37667-35-jirislaby@kernel.org
2025-05-16 21:06:11 +02:00
Peter Griffin
598995027b soc: samsung: exynos-pmu: enable CPU hotplug support for gs101
Some additional register writes are required when hotplugging CPUs
on gs101, without these the system hangs when hotplugging.

Specifically a CPU_INFORM register needs to be programmed with
a hint value which is used by the EL3 firmware (el3mon) and the
pmu-intr-gen registers need to be programmed.

With this patch applied, and corresponding DT update CPU hotplug
now works as expected. e.g.

echo 0 > /sys/devices/system/cpu/cpu6/online
echo 1 > /sys/devices/system/cpu/cpu6/online

Note: to maintain compatibility with older DTs that didn't specify
pmu-intr-gen phandle only a warning is issued if the syscon can't
be obtained.

Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
Link: https://lore.kernel.org/r/20250506-contrib-pg-cpu-hotplug-suspend2ram-fixes-v1-v4-5-9f64a2657316@linaro.org
[krzk: few blank line and white-space alignment fixes from checkpatch]
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
2025-05-13 10:02:29 +02:00
Kees Cook
5ddac92be4 soc: fsl: qbman: Remove const from portal->cgrs allocation type
In preparation for making the kmalloc family of allocators type aware,
we need to make sure that the returned type from the allocation matches
the type of the variable being assigned. (Before, the allocator would
always return "void *", which can be implicitly cast to any pointer type.)

The assigned type is "struct qman_cgrs *", but the returned type,
while technically matching, is const qualified. As there is no general
way to remove const qualifiers, adjust the allocation type to match
the assignment.

Signed-off-by: Kees Cook <kees@kernel.org>
Link: https://lore.kernel.org/r/20250426062040.work.047-kees@kernel.org
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
2025-05-13 01:38:56 +02:00
Krzysztof Kozlowski
617a7ed073 soc: fsl: Do not enable DPAA2_CONSOLE by default during compile testing
Enabling the compile test should not cause automatic enabling of such
drivers.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Link: https://lore.kernel.org/r/20250404112407.255126-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
2025-05-13 01:34:12 +02:00
Melody Olvera
2c04e58e30 soc: qcom: llcc-qcom: Add support for SM8750
Add system cache table and configs for SM8750 SoCs.

Signed-off-by: Melody Olvera <melody.olvera@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250512-sm8750_llcc_master-v5-3-d78dca6282a5@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-12 22:26:21 +01:00
Melody Olvera
9186a0f3e4 soc: qcom: llcc-qcom: Add support for LLCC V6
Add support for LLCC V6. V6 adds several additional usecase IDs,
rearrages several registers and offsets, and supports slice IDs
over 31, so add a new function for programming LLCC V6.

Signed-off-by: Melody Olvera <melody.olvera@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250512-sm8750_llcc_master-v5-2-d78dca6282a5@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-12 22:26:21 +01:00
Arnd Bergmann
b892924264 i.MX drivers change for 6.16:
- A series from Peng Fan to dump full 128-bits UID for i.MX8MP
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmghimgUHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM5aJggAlDCcQsA4z24IPWb8FRKWb4r48sSv
 4Jpn1lkr42rIkGO/VwuBuPRbRWCz+zBulT9YDfLanSNUj5BCjhfHg+EUCjoy/KWz
 pdXNeRCQyQs9M4n0X6tyyRtNDhp/z9e7K5ZironWcJ8zKIvhtFqbzjh6fywne1Gl
 zc8rcrdgh44FsvRjrOudv1fQo7aVcURDnFAZMKT6m6VYtMa7dwb2zm+UETxvrOH/
 6GQst0q6bqG+SLljTjVGplUG0cV5gWvsAbO2ilTTq56bSXGaKNeZPJa2kNq5XCsA
 cb/OEJMBsVcM7YgpKr/Vl3/uqIamCKdMCt8QofZkj7muUVJrp6QxDsiafg==
 =J+MT
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgh5pYACgkQYKtH/8kJ
 UieatA/9E6Gz84sqWnBLshOI9FlyTLYL3emk/yOo9YwUr2lQHg4inPce7eMBE3k3
 4pEcHh8pZK8G/on8TthK+UgVZfBA6UD9HYdIQ78fpkbaZsED30zWZDF99f13lGuq
 L7zj329q1YkNgYP3Un9LFHM51jmXJS1R2DKmEvXymQgOUasGOzAuFVCjeeX3zra6
 IJc56KYjR2DdIcKiRzL1pt8FcOQag2K6AZOMjXEFAqTv/hiNvg371Rkdb2tl0RY4
 GQa+z13gcnVXwYOyruXXvxW1+pdWY9bOLWNnHTPMZ7dKhSDtOsffZMz9HlOcopXB
 IrRpVu5x9o+e/lwvjmJFME0io9Yos6qhxW7i9XfsvpY4pak58YAYMBF+ni+heWJ8
 Z/i+3NQOoWQ+cpeuB89xz+txvKNF16DUPeMjU6Rk5sEcG8A98dj3ZsoyfQiqfuym
 LacgWVawX0CrubgzKFLS36V+M5p5jv/922WmCSnQqjYLKMM4zNVC3ZXIttAaj6Qy
 N0D3Tg0CLVqr8gA9yYdvBWki4lL6k23vUpjCU4DAc8lCXPqtNglIXkMj9aAkpI8O
 dG5LYp2C9PYKtrGc8Y43muh33YQ/Eb6EvRxeKIolo7t6y48LPowa8vu3T+xMGrQp
 415nJCDIwr/1+wuASzCEv87FcbJUIecYvbKJhYWFMD4fyxJYllw=
 =yyBZ
 -----END PGP SIGNATURE-----

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

i.MX drivers change for 6.16:

- A series from Peng Fan to dump full 128-bits UID for i.MX8MP

* tag 'imx-drivers-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  soc: imx8m: Dump higher 64bits UID
  soc: imx8m: Introduce soc_uid hook
  soc: imx8m: Cleanup with adding imx8m_soc_[un]prepare

Link: https://lore.kernel.org/r/20250512103858.50501-1-shawnguo@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-12 14:16:22 +02:00
Mukesh Ojha
b7fc42fb0e soc: qcom: socinfo: add SM8750 SoC ID
Update soc_id table for the Qualcomm SM8750 SoC to represent
SM8750 machine.

Signed-off-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
Reviewed-by: Melody Olvera <melody.olvera@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250508134635.1627031-1-mukesh.ojha@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-11 17:31:07 -05:00
Unnathi Chalicheemala
acda397ad5 soc: qcom: smem: Update max processor count
Update max processor count to reflect the number of co-processors on
upcoming SoC.

Signed-off-by: Unnathi Chalicheemala <unnathi.chalicheemala@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250424-smem_count-v1-1-931cf68f71a8@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Jens Reidel
7dc837b556 soc: qcom: pd-mapper: Add support for SM7150
SM7150 protection domains are the same as SC7180, with the subtle
difference that SM7150 has a CDSP.

Signed-off-by: Jens Reidel <adrian@mainlining.org>
Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250422213137.80366-11-danila@jiaxyga.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Johan Hovold
5090ac9191 soc: qcom: pmic_glink_altmode: fix spurious DP hotplug events
The PMIC GLINK driver is currently generating DisplayPort hotplug
notifications whenever something is connected to (or disconnected from)
a port regardless of the type of notification sent by the firmware.

These notifications are forwarded to user space by the DRM subsystem as
connector "change" uevents:

    KERNEL[1556.223776] change   /devices/platform/soc@0/ae00000.display-subsystem/ae01000.display-controller/drm/card0 (drm)
    ACTION=change
    DEVPATH=/devices/platform/soc@0/ae00000.display-subsystem/ae01000.display-controller/drm/card0
    SUBSYSTEM=drm
    HOTPLUG=1
    CONNECTOR=36
    DEVNAME=/dev/dri/card0
    DEVTYPE=drm_minor
    SEQNUM=4176
    MAJOR=226
    MINOR=0

On the Lenovo ThinkPad X13s and T14s, the PMIC GLINK firmware sends two
identical notifications with orientation information when connecting a
charger, each generating a bogus DRM hotplug event. On the X13s, two
such notification are also sent every 90 seconds while a charger remains
connected, which again are forwarded to user space:

    port = 1, svid = ff00, mode = 255, hpd_state = 0
    payload = 01 00 00 00 00 00 00 ff 00 00 00 00 00 00 00 00

Note that the firmware only sends on of these when connecting an
ethernet adapter.

Fix the spurious hotplug events by only forwarding hotplug notifications
for the Type-C DisplayPort service id. This also reduces the number of
uevents from four to two when an actual DisplayPort altmode device is
connected:

    port = 0, svid = ff01, mode = 2, hpd_state = 0
    payload = 00 01 02 00 f2 0c 01 ff 03 00 00 00 00 00 00 00
    port = 0, svid = ff01, mode = 2, hpd_state = 1
    payload = 00 01 02 00 f2 0c 01 ff 43 00 00 00 00 00 00 00

Fixes: 080b4e2485 ("soc: qcom: pmic_glink: Introduce altmode support")
Cc: stable@vger.kernel.org	# 6.3
Cc: Bjorn Andersson <andersson@kernel.org>
Reported-by: Clayton Craft <clayton@craftyguy.net>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Acked-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Tested-by: Clayton Craft <clayton@craftyguy.net>
Link: https://lore.kernel.org/r/20250324132448.6134-1-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Barnabás Czémán
421777a02b soc: qcom: smp2p: Fix fallback to qcom,ipc parse
mbox_request_channel() returning value was changed in case of error.
It uses returning value of of_parse_phandle_with_args().
It is returning with -ENOENT instead of -ENODEV when no mboxes property
exists.

Fixes: 24fdd5074b ("mailbox: use error ret code of of_parse_phandle_with_args()")
Signed-off-by: Barnabás Czémán <barnabas.czeman@mainlining.org>
Reviewed-by: Stephan Gerhold <stephan.gerhold@linaro.org>
Tested-by: Stephan Gerhold <stephan.gerhold@linaro.org> # msm8939
Link: https://lore.kernel.org/r/20250421-fix-qcom-smd-v1-2-574d071d3f27@mainlining.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Arnd Bergmann
85751585e4 Renesas driver updates for v6.16 (take two)
- Cover all R-Car drivers in the ARM/RISC-V/RENESAS ARCHITECTURE
     maintainer entry,
   - Identify the Renesas RZ/V2N (R9A09G056) SoC.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCaB4BwQAKCRCKwlD9ZEnx
 cAXDAPwOkxe5T9eXY3lzH84sEez4pGyWP1ZmoSJz/yy7iNxPbwEA5cF9HRWdIz3U
 4tD0Rc18zSsiTrzlaEC1sTpv/UhcaA4=
 =mVTN
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgecHEACgkQYKtH/8kJ
 UiekSQ//ZAkNvLxKJyU1zgJ4ahb/baJiGofb9JEM8bfuEnZPlhe2mycTF4dJ93f3
 j2gFK8HMshvL/0aXTPV7DhGXwuRW7mXvd+1ttc/ZWZn9vDf+cbhL+nVE+XCQBOzG
 dHesSEyAeALajozefw+qPKdgmtwua/9P8Xf417BeHDbq9xoRKt6r7LZ+z1wVfsoC
 /32U5Cyr6M089YHaRDOYPc8zJPBpsS40zbTlkdgwZGqBnrQtNnp6/BXNxvcRS9z7
 Dedu9+iKBO9HOlGBUWHDsnAWOnoHL4CwYhp5LMmNBmXUgUcuRcgkYcQoF7KaHbm8
 bglIIsKu8aFD2c7rdn89tCyZzLGLs2o5ufYp2bEh2XefV1PRIMOSOUPS/B3OmhEB
 9Tq7t0nBil474Dx9yY2fIJtOBws4eKnCvcvX63ZP/wiV1QFut/fLPEMm+SkF9NoW
 0jdAJLIxhsihtzsneb+glZ3p7xPWhPFCs2ioM56upm4VEHUptwEmJmyZXN2Fh/fm
 IL89sKBsbuGqzleI4iIjT9Zsybbu1mMdtcsy9+5amPyOwi88/VEMr02WwpBLmozl
 43xht1GLTJvtu+ONetlg0oWJ7nYOUYYLOalnj0KH2v9VbEdHCvj7/DE0JMyRmjje
 atfmY1YIVOVt8jXrdk36jKezYHF/e8I11QqrVihdNSMgQgwGlxQ=
 =t+Fy
 -----END PGP SIGNATURE-----

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

Renesas driver updates for v6.16 (take two)

  - Cover all R-Car drivers in the ARM/RISC-V/RENESAS ARCHITECTURE
    maintainer entry,
  - Identify the Renesas RZ/V2N (R9A09G056) SoC.

* tag 'renesas-drivers-for-v6.16-tag2' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  soc: renesas: rz-sysc: Add SoC identification for RZ/V2N SoC
  MAINTAINERS: Generalize ARM/RISC-V/RENESAS ARCHITECTURE

Link: https://lore.kernel.org/r/cover.1746798752.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:15:29 +02:00
Arnd Bergmann
fd11231a7d HiSilicon driver updates for v6.16
- Simplify PCC shared memory region handling in HCCS driver
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCgAzFiEEQeMYD8qOQTc1R/snC8hXbtmJZlwFAmgbHqAVHHh1d2VpNUBo
 aXNpbGljb24uY29tAAoJEAvIV27ZiWZcLdQQAJMNmTBZYgPPmcDdYnLEa2XRBmMq
 Te1ZXRYC6ymqCwEFpRQxfKq7xTNjftEih6eMdHWdj8ZdgIFHlXLLMZs6QBTjaGnl
 Y4Cp0/dYvaE2jh2LDZcXX/UqLI3BwT/XXo9n57BWFAwvqbHKVIbaYm1oZCzC65ir
 jIlsiL+WJkyTS8u1xqlbpgOzE2YVek4/ZKLa661qluaX+9LBOV2cYy3POlrzL7q4
 BZyZ2ZUw22MAoALis9fGGKB7ylnaC95/Jr9YD2ldmR/U/FYMTnZvnOGJiNtefnwR
 F2P6Q7LzqvV2YgVyTEIq6IAb4DLdaHZXxAvGCEyyyCtm4YBRJB6utZaUTZgsxPCc
 hDAzIYnteEVBrYN9fbJH5bF5VyA79ozltDhSKR534Lle9hKk0+1ZbAxMNZZm2Sjy
 O5dQB4DlmcIsVub3Spd+9wM84ErbfYh2APxns2hhAcHV5zjjCBeLFsmLjNCKRmv0
 E6Dq89NHmFW5s3zegTIpAor++ePAE37TQOdMJi2irkwIAnJLhcKNBziKFWbZ7+pt
 KHhy+K9t6yfdmQEK5QzQgWbEFw9YjFVFYhBGLQYS61QdpoEfdPkkW2sH7D9hnk8H
 OuR41LgwCIJDDgthy001WsWHyADpBUPbgS5ueM2nutoNKo0OHCqaHwdYkYKyduoV
 TNhEzCLQVGaW4SET
 =AKB9
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgeb8YACgkQYKtH/8kJ
 UifYpw//UnVYcCnKOss3Fnr65+8DFdstn0ZqxmNVLWpRIM9cN3O2l6Wz7QmGDI6I
 +03uokSfuoBy9NaU1bLqRnX1/GF5wRrsOUXMCmCttkynDHDC1SlLp0SEjiV3gyg0
 245RG5/XUPOPguAfcDc1siky9OnSYXoO4m+rGUfqgizbZC7iOWM5tLujtfQih9el
 RGBwv77n/VqtKGiD3RN0bQv+icAizUZp/s/PoYqGHkE9DWQF/te0vbPM8po4DHex
 Rxh40x5uZe1gjuR9pduqIVDKifm03Oi8yzHHXnGAlUgxwFz7yclfqPEsJHAz6HXk
 93poApxP3bE8lzMkOTmOTmzBdZOmLAVmCUg0ZU8wJAl11VQYU1vscyQrQ5sAz2ze
 s4gO0lmKAvkJk+TWOzn/n379aZRPdY9H9SjpHOMWeLvZ7uisrhIhvS9+CxGrF7IG
 QuS7bies/FmnCDIJNmZbDQ2HdhFVYuaPPv6haFCqczSvnV5jL2/bkyaQTZ73nbbz
 nkS4uEM9rNcur0JpxWn2J7s8EWMHN3/PgIUB+tx0SBQu0ZbysC310GNiNVybitVi
 YWv/w5uc62mXlyJJAsxYlIgHNDxpyv2QNHO1lB1tbAyG0158gzmhC3i68h3Z7yhz
 9fNYswXM+6+pzqlxGKzegOv0GkCEGsQxeZwq/00btcnVnpGAAi0=
 =Vnns
 -----END PGP SIGNATURE-----

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

HiSilicon driver updates for v6.16

- Simplify PCC shared memory region handling in HCCS driver

* tag 'hisi-drivers-for-6.16' of https://github.com/hisilicon/linux-hisi:
  soc: hisilicon: kunpeng_hccs: Simplify PCC shared memory region handling

Link: https://lore.kernel.org/r/681D9FC4.6080508@hisilicon.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:12:38 +02:00
Arnd Bergmann
5dcee6dd09 MediaTek driver updates for v6.16
This brings some cleanups to the MediaTek DVFSRC driver, commonizing
 the bandwidth constraints platform data, and also adds support for
 the DVFSRC hardware found in the MediaTek Dimensity 1200 MT6893 SoC.
 -----BEGIN PGP SIGNATURE-----
 
 iJ4EABYKAEYWIQQn3Xxr56ypAcSHzXSaNgTPrZeEeAUCaBnSnygcYW5nZWxvZ2lv
 YWNjaGluby5kZWxyZWdub0Bjb2xsYWJvcmEuY29tAAoJEJo2BM+tl4R4zW0BANwa
 3TZaLlpViiOcMixnIHO4GJRdAbBfCasRmUPfAbJ3AQDLxIYC7o5Z6VTtv/QOfsVW
 wA8RcvwJUdJ0ASsOcm5AAA==
 =ggB+
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgebrUACgkQYKtH/8kJ
 UicR/xAApFaq0hRkYSHRTiNMfCgJhCFMfouD+fmJEJlHwnn6i9997phb/eJlJGeL
 u4a3ti3aizZUXFzKWrbXspeZB2RvrujLS2ensQzkLo4Bb9P1D+qLU+wVa3BxvLjX
 h1pKXN0kbNOJhEbN0xDHPQjPHsaEMLhyKjOuHsSBkpM2pvz+xytVSmbvhFNu4Jj7
 lBbkUFinSRnnhPKqwfMlJBxlW2BcWTlaMtXz/h/wM27Jb2THhkVmypgmilYj+ErA
 NE1jlYgDM1GZ4gNPFYWK2RvjEx1/Vr1PXaJBPs4pACpd4ovyStuacSeYbSI2USkt
 AKiqm8P96YtLb0HckMoxR7fQWsHsKEyrlzdgVxpYCdHbxZSefjbBtlXGfuL9XJ7q
 UC80AIBGQ5bTU/8e+TVn6tmBjBIRV+OINoQl0L7x+AiUKUAVFo5qwbJcT691Cxap
 a0dhfqJQlJF4bmHZQc5CJIj6y0pOgAGSGyNV/5kj0BuD4DI2Z2fozB3T3sUXCL1I
 t/aLNU1EloxF1ukvepPqc7jpZIvJdjC+5iZ8p/rM6DJcNbBB7JAje17BY28j6kOL
 1fhNOSlOLqP/0n6yfoYwld1WsqEyQjsUXoIv/E0E1XOuAqHl2pCHh0KXrHLyRD+Z
 dn5TFXEu8ZrtJPZ/GynFAZVuWaMBddKX8KbI5cywCCw0YqzypcA=
 =Qf5M
 -----END PGP SIGNATURE-----

Merge tag 'mtk-soc-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux into soc/drivers

MediaTek driver updates for v6.16

This brings some cleanups to the MediaTek DVFSRC driver, commonizing
the bandwidth constraints platform data, and also adds support for
the DVFSRC hardware found in the MediaTek Dimensity 1200 MT6893 SoC.

* tag 'mtk-soc-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux:
  soc: mediatek: mtk-dvfsrc: remove an unused variable
  soc: mediatek: mtk-dvfsrc: Add support for Dimensity 1200 MT6893
  soc: mediatek: mtk-dvfsrc: Rename and move bw constraints data
  dt-bindings: soc: mediatek: dvfsrc: Add support for MT6893

Link: https://lore.kernel.org/r/20250506091736.125733-2-angelogioacchino.delregno@collabora.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:08:05 +02:00
Tom Rix
d47f123337 soc: fsl: qe: remove unused qe_ic_from_irq function
clang with W=1 reports
drivers/soc/fsl/qe/qe_ic.c:235:29: error: unused function  'qe_ic_from_irq' [-Werror,-Wunused-function]

The use of this function was removed with
commit d7c2878cfc ("soc: fsl: qe: remove unused qe_ic_set_* functions")

Signed-off-by: Tom Rix <trix@redhat.com>
Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Link: https://lore.kernel.org/r/20230320125202.1721775-1-trix@redhat.com
Link: https://lore.kernel.org/all/1619002613-18216-1-git-send-email-jiapeng.chong@linux.alibaba.com/
[krzk: Adjust commit msg]
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
2025-05-09 16:26:58 +02:00
Alexander Stein
877afe1ee3 soc: ti: wkup_m3_ipc: Use dev_err_probe
During probe the mailbox channel might not yet be available. Use
dev_err_probe to silence this deferred probe error message:
wkup_m3_ipc 44e11324.wkup_m3_ipc: IPC Request for A8->M3 Channel failed! -517

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Link: https://lore.kernel.org/r/20250509093652.1866566-1-alexander.stein@ew.tq-group.com
Signed-off-by: Nishanth Menon <nm@ti.com>
2025-05-09 06:34:27 -05:00
Peng Fan
fd0bf2bb32 soc: imx8m: Dump higher 64bits UID
i.MX8MP UID is actually 128bits and partitioned into two parts.
The 1st 64bits are at 0x410 and 0x420, and 2nd 64bits are at 0xE00
and 0xE10.

Dump the whole 128bits for i.MX8MP, by set soc_uid as an array with two
u64.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-05-09 18:16:28 +08:00
Peng Fan
6981050139 soc: imx8m: Introduce soc_uid hook
Cleanup code by introducing soc_uid hook, i.MX8MQ/M/N could reuse
one function imx8m_soc_uid, i.MX8MP could have its own one.

With this patch, it will easy to add 128bits UID support for i.MX8MP.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-05-09 18:16:28 +08:00
Peng Fan
390c01073f soc: imx8m: Cleanup with adding imx8m_soc_[un]prepare
There is a common flow to i.MX8M family, map OCOTP register base and
enable ocotp clk first before read Unique ID from OCOTP.

So introduce imx8m_soc_prepare to do ioremap and enable the ocotp clk,
and introduce imx8m_soc_unprepare to disable the clk and do iounmap.

With this patch, no need to spread the ioremap and clk handling in
each soc_revision hook.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-05-09 18:16:28 +08:00
Johan Hovold
4d7ee0e277 soc: qcom: pmic_glink: enable UCSI on sc8280xp
Commit ad3dd9592b ("soc: qcom: pmic_glink: disable UCSI on sc8280xp")
disabled UCSI shortly after it had been enabled to fix a regression that
was observed on the Lenovo ThinkPad X13s.

Specifically, disconnecting an external display would trigger a system
error and hypervisor reset but no one cared enough to track down the bug
at the time.

The same issue was recently observed on X Elite machines, and commit
f47eba045e ("usb: typec: ucsi: Set orientation as none when connector
is unplugged") worked around the underlying issue by setting the
connector orientation to 'none' on disconnect events to avoid having the
PHY driver crash the machine in one orientation.

Enable UCSI support also on sc8280xp now that the DisplayPort disconnect
crashes are gone.

Cc: Abel Vesa <abel.vesa@linaro.org>
Cc: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Abel Vesa <abel.vesa@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250326124944.6338-1-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-07 09:39:33 -07:00
Alexander Sverdlin
c8754c7dea soc: sophgo: cv1800: rtcsys: New driver (handling RTC only)
Add driver for Sophgo CV1800 series SoC RTC subsystem. The RTC module
comprises a 32kHz oscillator, Power-on-Reset (PoR) sub-module, HW state
machine to control chip power-on, power-off and reset. Furthermore, the
8051 subsystem is located within RTCSYS including associated SRAM block.

This patch only populates RTC sub-device.

Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Reviewed-by: Inochi Amaoto <inochiama@gmail.com>
Link: https://lore.kernel.org/r/20250315224921.3627852-3-alexander.sverdlin@gmail.com
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
Signed-off-by: Chen Wang <wangchen20@iscas.ac.cn>
2025-05-07 08:40:02 +08:00
Inochi Amaoto
f18198c0de soc: sophgo: sg2044: Add support for SG2044 TOP syscon device
The SG2044 TOP device provide PLL clock function in its area.
Add a mfd definition for it.

Link: https://lore.kernel.org/r/20250418020325.421257-3-inochiama@gmail.com
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
Signed-off-by: Chen Wang <wangchen20@iscas.ac.cn>
2025-05-07 07:48:34 +08:00
Lad Prabhakar
3903b4701b soc: renesas: rz-sysc: Add SoC identification for RZ/V2N SoC
Add SoC identification for the RZ/V2N SoC using the System Controller
(SYS) block.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/20250415085438.83856-1-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
2025-05-05 10:54:02 +02:00
Alexey Charkov
96f94587d7 soc: Add VIA/WonderMedia SoC identification driver
Add a small SOC bus driver to parse the chip ID and revision made
available on VIA/WonderMedia SoCs via their system configuration
controller's SCC_ID register.

This is intended to select appropriate sets of on-chip device quirks
at runtime, as it has been found that even within the same SoC
version there can be register-incompatible differences, such as
with the SDMMC controller on WM8505 rev. A0-A1 vs. rev. A2.

The list of SoC versions is compiled from various vendor source dumps
and not all of them have corresponding mainline driver support.
Some of them also have been seen with varying on-chip markings while
sharing the same hardware chip ID's (as is the case with e.g. WM8850
vs. WM8950). In such cases the selection of names to use here among
those seen in various source dumps and chip markings was arbitrary.

Suggested by Krzysztof at [1] - thanks a lot!

[1] https://lore.kernel.org/all/14de236b-e2a7-4bde-986d-1e5ffddd01b4@kernel.org/

Signed-off-by: Alexey Charkov <alchark@gmail.com>
Link: https://lore.kernel.org/r/20250503-wmt-soc-driver-v3-2-2daa9056fa10@gmail.com
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
2025-05-04 19:27:01 +02:00
Arnd Bergmann
69d63d19ed
soc: mediatek: mtk-dvfsrc: remove an unused variable
This structure was left unused by a previous patch:

drivers/soc/mediatek/mtk-dvfsrc.c:542:43: error: unused variable 'dvfsrc_bw_constr_mt8195' [-Werror,-Wunused-const-variable]

Fixes: b06785283e ("soc: mediatek: mtk-dvfsrc: Rename and move bw constraints data")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20250423162958.2223689-1-arnd@kernel.org
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
2025-04-24 09:15:01 +02:00
Chuan Liu
0acf15d0a9 soc: amlogic: clk-measure: Add support for S4
Add the clk-measurer clocks IDs for the Amlogic S4 SoC family.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Chuan Liu <chuan.liu@amlogic.com>
Link: https://lore.kernel.org/r/20250415-clk-measure-v3-5-9b8551dd33b4@amlogic.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2025-04-22 14:15:19 +02:00
Chuan Liu
57c1da8516 soc: amlogic: clk-measure: Add support for C3
Add the clk-measurer clocks IDs for the Amlogic C3 SoC family.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Chuan Liu <chuan.liu@amlogic.com>
Link: https://lore.kernel.org/r/20250415-clk-measure-v3-4-9b8551dd33b4@amlogic.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2025-04-22 14:15:18 +02:00
Chuan Liu
7f1e9e813a soc: amlogic: clk-measure: Define MSR_CLK's register offset separately
Since the MSR_CLK register offset differs between chip variants, we
replace the macro-based definition with chip-specific assignments.

Change the max_register in regmap_config to be retrieved from DTS.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Chuan Liu <chuan.liu@amlogic.com>
Link: https://lore.kernel.org/r/20250415-clk-measure-v3-1-9b8551dd33b4@amlogic.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2025-04-22 14:15:18 +02:00
Chuan Liu
ae3e19c273 soc: amlogic: clk-measure: Optimize the memory size of clk-measure
Drop "CLK_MSR_MAX" and replace it with adding a member "msr_count" in
the structure to specify the count of msr_id.

Mark the table of msr_id as const.

Signed-off-by: Chuan Liu <chuan.liu@amlogic.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20250205-optimize_memory_size_of_clk_measure-v2-1-4f546053495d@amlogic.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2025-04-22 09:26:12 +02:00
Vignesh Raghavendra
c62bc66d53 soc: ti: k3-socinfo: Add JTAG ID for AM62LX
Add JTAG ID information for AM62Lx SoC so as to enable SoC detection in
kernel.

Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
Link: https://lore.kernel.org/r/20250417084904.2869369-1-vigneshr@ti.com
Signed-off-by: Nishanth Menon <nm@ti.com>
2025-04-21 07:51:18 -05:00
Sudeep Holla
49da910578 soc: hisilicon: kunpeng_hccs: Simplify PCC shared memory region handling
The PCC driver now handles mapping and unmapping of shared memory
areas as part of pcc_mbox_{request,free}_channel(). Without these before,
this Kunpeng HCCS driver did handling of those mappings like several
other PCC mailbox client drivers.

There were redundant operations, leading to unnecessary code. Maintaining
the consistency across these driver was harder due to scattered handling
of shmem.

Just use the mapped shmem and remove all redundant operations from this
driver.

Cc: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Reviewed-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
2025-04-21 12:00:27 +00:00