- A series from NXP i.MX developers (Peng Fan, etc.) to update imx-scu
and imx-scu-irq firmware drivers.
- Add dedicated lockdep class for nested genpd locks to fix a lockdep
warning in imx93-blk-ctrl driver.
- A change from Rob to explicitly include correct DT headers for i.MX
SoC drivers.
- Use devm_platform_ioremap_resource() in imx-weim bus driver.
-----BEGIN PGP SIGNATURE-----
iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmTYNCAUHHNoYXduZ3Vv
QGtlcm5lbC5vcmcACgkQUFdYWoewfM7x+wgAsB65MMhY74a8pjuO0q1nJierjc46
of2ayxR8I1jXQK/3IUijBZpg+8bnQkhXiVK1uyzvLmUc28iw1y6B2dWec/hXRld8
mc516IWjGa0Re+dOeliKPFNWzj6TZRi3TmqKIfg5XIb0poBtxBiXm7tvjm1oYRQl
ijkCqauOXJmK3yMMTQqxknGQG+B8wQDTPnbssk0A46ShD4RrYXmC3wjTEb27WoGk
nw18XT5XpS+LomctRcqza3Bcdry6YPmI0hOt9Oy9db2sBtXbz+bf9tLGKztvfxGz
44R0+Rz/XncJHwRXGgUNR71ps0+WP55qKsqoTw/zHhkS2BPl8gMxhBtQbQ==
=T2Uo
-----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTaT8sACgkQYKtH/8kJ
UieFHQ//YrvUhNJjVtQeUcZ4s43MKKJsq7HNnki02ZRlIOdcG+vM7JzWe6PsRDbK
8jeV1tM3ZE67VBeIZU1+ELshebiU01VQY4ZobmGOPMajDFXZmu1Znzr8O6RASrmd
u+aFhpTGleg4SQQ2avdaQIQ4gpw19ciellxCTx37Y/hae06nANXzFFTlnPO4qseW
rzJzgh2h3Z1Gv/LdqtlfMAeI2aEQy/+hfKmZs4f20/Rs8wwH7lzrNLSUideY6cqt
RM1nX3F97b+glRJ4siqRoUISVSW6naWkb5qZ+VZXN4e7xrczuV/1Sp2dqINWXxKp
dR3WpOfb2V9sIGQOiAb8XSFBkxvDVG6ze6l2RkXA0szqpVBRMOTGshykMqt2I2tN
8Eeek9+XXZHZxNR6omFX4cvTjRW7hvhB0W35UdoZr1qteC8jV/H1DBYV3v8ri1d8
z17Y0JGBFrtQFBF/jq1yK0WND4RIb2aHYxrojDQ3/mtqsMailIuogwGpMQyhsCll
nX2NeKpaKe3MwEtKPOSTkUD5k8TLBfDOn/fcoLRQ6Ys6fsBAcplJ+6Sp3Hv/mgWQ
W9eWaeBAh0BllI66twAxeTKdy/1IsGpsLyNVDJliAExW3Z1ISPUMw6pI4M+H/QZY
W+joqcvJYAAiOfIvRqQWvyt40I/2JYx6otsJKN4JB9Qlh3QRvxg=
=2iHc
-----END PGP SIGNATURE-----
Merge tag 'imx-drivers-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/drivers
i.MX drivers update for 6.6:
- A series from NXP i.MX developers (Peng Fan, etc.) to update imx-scu
and imx-scu-irq firmware drivers.
- Add dedicated lockdep class for nested genpd locks to fix a lockdep
warning in imx93-blk-ctrl driver.
- A change from Rob to explicitly include correct DT headers for i.MX
SoC drivers.
- Use devm_platform_ioremap_resource() in imx-weim bus driver.
* tag 'imx-drivers-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
firmware: imx: scu-irq: support identifying SCU wakeup source from sysfs
firmware: imx: scu-irq: enlarge the IMX_SC_IRQ_NUM_GROUP
firmware: imx: scu-irq: add imx_scu_irq_get_status
firmware: imx: scu-irq: fix RCU complaint after M4 partition reset
firmware: imx: scu: use EOPNOTSUPP
firmware: imx: scu: use soc name for soc_id
firmware: imx: scu: increase RPC timeout
firmware: imx: scu: change init level to subsys_initcall_sync
soc: imx: Explicitly include correct DT includes
bus: imx-weim: use devm_platform_ioremap_resource
soc: imx: imx93-blk-ctrl: Add dedicated lockdep class for nested genpd locks
Link: https://lore.kernel.org/r/20230813133354.847010-1-shawnguo@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
When the mailbox subsystem is disabled, the driver fails to link, so add
an explicit dependency. Some other drivers use 'select' here, but the
dependency seems more logical and more common.
Fixes: 886bdf9c88 ("soc: hisilicon: Support HCCS driver on Kunpeng SoC")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Due to lack of maintenance and stall of development for a few years now,
and since no new features will ever be added upstream, remove MAINTAINERS
entry for OXNAS files.
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Daniel Golle <daniel@makrotopia.org>
Acked-by: Andy Shevchenko <andy@kernel.org>
Link: https://lore.kernel.org/r/20230814-topic-oxnas-upstream-remove-v3-3-e2ba579a49d3@linaro.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Due to lack of maintenance and stall of development for a few years now,
and since no new features will ever be added upstream, mark the
OX810 and OX820 IRQ compatible as deprecated.
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Daniel Golle <daniel@makrotopia.org>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20230814-topic-oxnas-upstream-remove-v3-2-e2ba579a49d3@linaro.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Due to lack of maintenance and stall of development for a few years now,
and since no new features will ever be added upstream, remove support
for OX810 and OX820 IRQ controller.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Daniel Golle <daniel@makrotopia.org>
Acked-by: Marc Zyngier <maz@kernel.org>
Acked-by: Andy Shevchenko <andy@kernel.org>
Link: https://lore.kernel.org/r/20230814-topic-oxnas-upstream-remove-v3-1-e2ba579a49d3@linaro.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Printing a size_t using the %lu format string causes a warning on
architectures that define the type as 'unsigned int':
In file included from include/linux/device.h:15,
from include/linux/acpi.h:14,
from drivers/soc/hisilicon/kunpeng_hccs.c:25:
drivers/soc/hisilicon/kunpeng_hccs.c: In function 'hccs_get_bd_info':
drivers/soc/hisilicon/kunpeng_hccs.c:441:25: error: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'size_t' {aka 'unsigned int'} [-Werror=format=]
Use the correct %zu format instead.
Fixes: 886bdf9c88 ("soc: hisilicon: Support HCCS driver on Kunpeng SoC")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Clean up DT includes and remove unneeded platform_set_drvdata() calls
across reset drivers, add support for the Versal NET platform to the
zynqmp driver, and let the hisilicon driver use dev_err_probe().
-----BEGIN PGP SIGNATURE-----
iI0EABYIADUWIQRRO6F6WdpH1R0vGibVhaclGDdiwAUCZNJX4RcccC56YWJlbEBw
ZW5ndXRyb25peC5kZQAKCRDVhaclGDdiwHzTAQCA8iBvxFJ0eZbTpXUlEyJCqFJR
Or6nNEwk5ogG3c51pQEAw+l3N0v5+65K7DCXWPOVtMtg/e3GIagP3POXiWNHHgw=
=RuSy
-----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTXWisACgkQYKtH/8kJ
Uifa1BAAldB2vOw2huUGT2Utd95Ta3Os05y4TujIBuK/VSsAK6hWqhcoEFjzpvzs
k7viGxD1tqAt8s+3q4gRDb74cQxSZhH489xAbvbEWCJ5BAHBjtwnG8Ox2EzXYrib
xNwHEFg3WCe6N+NOKcqBBNKeZDjBDoy0qq5dJ3tS79k+39QH8hT6VXrGSyDGh2pY
P7g68k8FQ7BsFOK9ga9Ksjtommd5ylClBrFLnWtKlLhE7jeg1XoQtZsemLm5xREh
M17zyYjzu3XvhhRgyA12aDp9Ca9L5np5PJ26FwafazKi5Fhr5QQYdnQYxzgZlbja
W5VfaF180y4UKfflpN54cyNT7bMdU31Gg7M4b4un+xgaDt2izFL4PHuDWcA+fXz2
J5RUjE0Ty4XjhDciLNtdJGEs1+F9kkyDH7uGafWlenJsKwxM8tIKx9de9TTw/A//
RyT8tKsF7UWkakqlFfUl/FrxBBGl8NziUnSHkVV0jZFa8T018Zw2gcJFmAWzMnc0
iEzUT21dq/c/ndmINXou3A7WprnJ870iIU2rbF4/+EGIas9S7SV0aHQMCiW9fbRG
ql+TOpkazT48k/9f/mZD5niahei7j0eUsXv4NU+VUugrsRwqdG2e5xHVY/1TSPDg
b1zjOjWeGT2VubIuw5EdjI4tv5qPMI4Tc6qkiENxXfs6LMrCOvA=
=H1wH
-----END PGP SIGNATURE-----
Merge tag 'reset-for-v6.6' of git://git.pengutronix.de/pza/linux into soc/drivers
Reset controller updates for v6.6
Clean up DT includes and remove unneeded platform_set_drvdata() calls
across reset drivers, add support for the Versal NET platform to the
zynqmp driver, and let the hisilicon driver use dev_err_probe().
* tag 'reset-for-v6.6' of git://git.pengutronix.de/pza/linux:
reset: ti: syscon: remove unneeded call to platform_set_drvdata()
reset: zynqmp: removed unneeded call to platform_set_drvdata()
reset: zynq: remove unneeded call to platfrom_set_drvdata()
reset: uniphier-glue: remove unneeded call to platform_set_drvdata()
reset: npcm: remove unneeded call to platform_set_drvdata()
reset: meson: remove unneeded call to platform_set_drvdata()
reset: lpc18xx: remove unneeded call to platform_set_drvdata()
reset: lantiq: remove unneeded call to platform_set_drvdata()
reset: bcm6345: remove unneeded call to platform_set_drvdata()
reset: ath79: remove unneeded call to platform_set_drvdata()
reset: hisilicon: Use dev_err_probe instead of dev_err
reset: reset-zynqmp: add support for Versal NET platform
dt-bindings: reset: Updated binding for Versal-NET reset driver
reset: Explicitly include correct DT includes
Link: https://lore.kernel.org/r/20230808145950.3057250-1-p.zabel@pengutronix.de
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
- Add C3 Power Domains
- Explicitly include correct DT includes in Amlogic SoC drivers
- fix to avoid potential NULL pointer dereference in meson_sm
- Merge of genpd-v6.5-rc1-1 to move genpd amlogic drivers
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmTM+6IACgkQd9zb2sjI
SdHRHg//YW+Xj0fK9braP1COux5mKmqltYokFL3wWz7nBKYNsQwzUtY9VS187/hM
FST60rV+X175yOibNgspN76oK6dDQGkiNtNFZlD6N5HeN/UyiziCucN8GR8reVDK
NDyv8gkO5aiXHAi9TUGuyMhFE38O8GGln7p05czDpKA4teRAUfWnafixupo/e8/r
grLVSyNnmWECB5jF077LzgHuHBhXbHeFVQVLUaq5NClucSsqbaq4o21tYLkGAo67
eqQ7Mnlu0/080V2oBeuaWPJMWgLoAEmmarUFI02l7jc5ar717gu4Dqv9wu9F89rc
jTKv+YtMiTq7vYyUQtaWZlqGDq/sEU19hWmqS7CqLC4eEOEkiWY2Sn5FH8SnkN8F
NuuB12LJ8tFvczL07Q6Hv1fHe4UfyXe77GlKDgtn/GFqYCUmZop6wUhap0l+S/2S
lbDpiDRo+kq02vsGrEUE9vimiL3FBCjr6r45tutnG0icTF0kE73WRuhYB3mkiJ0R
Hz+4TrcjciTVLaBBKgJsGqomUb6qb7XEsUw11WehYW1IJAoEKCLhTK7S6ij88gaD
UHphUkPFxGDIbjE79PrGw91pG3NStwXDBntH9vu8RwTEKLgBATdCK893rzH0hRJY
RreFHYHWEicaBj3kpxXtXhXy0RSgN5b4VBB3/gfqqqUxTW4aIn4=
=eBDR
-----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTXWaIACgkQYKtH/8kJ
Uic6aw//S4F9FArxHq8iGNFgfEpvXITdniqIxSsGBFXuKA/Vkl2QlffjmEbmkRvv
t/AIJTNAy/PGr8FhYoW00O+9MiDbCVcMZDdl5aT252kGYCm2DfqF5C2/28ZorBtk
LAJs9UyyHIlDZvCZL7aRDvoLojKVGuId33uRKzUI9DTRA6SIRGiHvhqLJYRf9AGo
6dR6lqcwCD4FiJNJ07loAsUbMY5p3lnDV/hwS5uu3q4Z1kMpfwcgP61GszlSU0Z8
20yOUnDjZhOdz5Oprm6jAn0gNY0up5Ndd3wHSlScu9fUrN/BHY+Lbp4qa2hSFOMa
tyGJPHE2EJG+zFdQpoWTDFuUwqbXyAQ4qyQyZwYqUbz1dW4oCwbtwINVtdQfVrQP
IGuiRx9ZweahUYp6CdiG7EyH2FUir08hjUQuNwFOQZV2RVya73cF+AGrqyvA/zbn
mUrMk8XD8rb+4WBbKFwMsRGFQ3CosDt5fsKdHGXljBBAMbSHP3PIsQKu+ejHQmVJ
txMDN/s30iOJ7lU3W9LpqYhhxjh72OLL4iG+hI2faz+mp0qsKhV/k9iOrpvWY4it
InNvKXiV/mxIDe0/qudde9vXBV8R5WEt1yyF7aTZDdnm1QzRncXy6kBBA1GSy12S
gdDN/YwiFDsVOZIgXYp/qW7dKmhpt9KIoGLWSLyK/hbfZ+WBbLk=
=jJE/
-----END PGP SIGNATURE-----
Merge tag 'amlogic-drivers-for-v6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux into soc/drivers
Amlogic drivers changes for v6.6:
- Add C3 Power Domains
- Explicitly include correct DT includes in Amlogic SoC drivers
- fix to avoid potential NULL pointer dereference in meson_sm
- Merge of genpd-v6.5-rc1-1 to move genpd amlogic drivers
* tag 'amlogic-drivers-for-v6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
firmware: meson_sm: fix to avoid potential NULL pointer dereference
soc: amlogic: Explicitly include correct DT includes
soc: c3: Add support for power domains controller
dt-bindings: power: add Amlogic C3 power domains
soc: amlogic: use name instead of index as criterion
Link: https://lore.kernel.org/r/77e328b5-0d47-36e8-f62d-c745df06fb87@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
The main addition this time is the support for SCMI v3.2 perf level
indexing mode. SCMI v3.2 adds support for hardware which works on
performance indices, instead of levels. Certain platforms use indices
to identify performance levels. Level Indexing Mode is used to describe
such platform behavior. All commands which utilize performance level
as a parameter need to specify the corresponding level index instead of
the performance level when Level Indexing Mode is used.
While at it, these changes also include hardening of all the internal
accesses to the performance domain information.
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmTM6soACgkQAEG6vDF+
4piIAQ//aPJ50AqQAoGAcPsYxfiwGVk6iEoC//2/sxoZ8BqH5+x3ksLzMGzGn4uf
aCH5ZDWf99iikWIijbHCFMoupzoTiDw5HjHx3Ud+MxpUW3pi/p1jTNQqhGqnmxts
BS18uPxzVpLTZEZoFQeEkgyzAZ9nBDchqpT4JOW/PGIc1flICqdzBru38eMXFdHa
rQ4Dx1pS3LR4wzp8+0ZpEncDBlu6ms+9SQu2YOtrhvxWNPkoXEY7C7qGHjUkPzy6
5ppU3/i87gYwIp13WzfPTqpYZpSVhpDO8/tc7Nhq5agbflRin5aBOxBhfVpDI7dE
G3zZMPKwrbnyeipwSh77D1tWkz/pRRjT1vf4xusV89a+DjCglPTHgc3jsnTzGUsS
OfZctep3mRn+YAUcbmJ7XblsvF5A1FnjoZfOk+cfhN/r6SuSNjWuVpDOdAVZC3Xq
UePa0SapLPRsh1cDck+AUbiy1OR6+/8Jh2qpW1VjmpBNDF18LFkCVjnnf0J9oXul
xlN34cmMe6c2PSSqdr9tp8wtMPbjQCQQ1JgHQUtAmbhYJLaTjDiazhf/bw2YRngv
vLSOiWSP+A0cLyGrVdM3LLy4tX4loV6jay/tvT/9wnRkssJcM3EqQhyMmQbYUvJr
u2cZqV+8fzwLoaSGa6L79XkjRelFG67YtfX+7u0Y7IIH8qvSeqc=
=91AL
-----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
iQIyBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTXWUUACgkQYKtH/8kJ
UieRQA/41XgUXBHmFnZXOa3pyOOpNoGP+opgwE4enSYavrnNa0F3kJKJp3fkXVuy
4z8qmEUkX6FcpmJF8mEJxLaF7TebDYznLdDWlPd0RJ+ge1ujbu2xIAI8ZKhUzyL6
evMYKP3np6J1KPwy8UbvqHezA8cQJObegV+GoMcR9xkcg5jW/VOB+4tFKF+CvxPU
kmdMcaAfbBFNcqNI+3ZTc1F2kODzpCAIT9+HY6HYcEAgjWfFQsOuQsk84di3vHTJ
47nBaesUOP/0OoSBFiUwLGmSfDfYnIy72Qocczmh0iXSazbaj5+Np+khQaAviKt1
LqhzVKIN6rpUT3rDTFVi5jTg5keS+7u2zDQVTNkGPwQsnJkZ/Fe5Olmvz7b0Co0d
9f9dI0rGReiZxO1OPt/BOvAXzCBV0A6vQ5P/0L+ook3U1uPpPcTFAc/kJ/PNSlpg
0WJPqYvvYUOHB+my3hmL7o0P2qTNuXZbVGN4EWMx8Y/s+xrYL3Qz9Xa3mcX0pkul
vp/vy7EpHtumc8LxeAjazqRnApk64sjJlxR2sCPGmD+R5UdnTCPaAhiyVbPMAzLM
NPG+AkcFZ9NCVtvXmkH4SdGK3Mjw96JeNF2eaSAsjNFLLa/coc/8pTBtal0idJwV
sPP8XGUC2pAdklMw45egVKgy0oiSASjpnW0qP3ZAEVT56UbBew==
=eQuM
-----END PGP SIGNATURE-----
Merge tag 'scmi-updates-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers
Arm SCMI updates for v6.6
The main addition this time is the support for SCMI v3.2 perf level
indexing mode. SCMI v3.2 adds support for hardware which works on
performance indices, instead of levels. Certain platforms use indices
to identify performance levels. Level Indexing Mode is used to describe
such platform behavior. All commands which utilize performance level
as a parameter need to specify the corresponding level index instead of
the performance level when Level Indexing Mode is used.
While at it, these changes also include hardening of all the internal
accesses to the performance domain information.
* tag 'scmi-updates-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
firmware: arm_scmi: Add v3.2 perf level indexing mode support
firmware: arm_scmi: Harden perf domain info access
Link: https://lore.kernel.org/r/20230804123231.3258141-1-sudeep.holla@arm.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Couple of minor updates: Code simplification in the vexpress config bus
driver with the use of devm_platform_ioremap_resource() and simplification
of Arm Vexpress platform and related drivers entries in MAINTAINERS file.
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmTM1OQACgkQAEG6vDF+
4pg8IBAAzLxEVqsNc+uR12rQSIHU19pO3bsWgPpSgZ0lph6ilnNkCra1LPotjWSP
RNfW/AFJ8z8KRXeZzAq06lNoiGcZ/iusiScRNfIumjnNgcKM3bOV+TdBI6XT7BXA
HWlL3cKkX2RVQ4TXB6DgSnhdfogPq1GkUI9mdU3wwWo6bvq8+zVeLYbhJzXeW7UR
IByhE/53io8o22IodtkDGVc56nDVioFJxvdE8BW0pSiD6Qxcj02maBRHioGMWstM
bs63kIcf4hmzNLGO1TuO0zCUZsXKc2dbyKZ2czrB0hhgSGx1Nh+Y4OBjrrfDZkcp
Jb/ICpVzdFhhz0rmxj1sgoD3VTvb+iNZ2dA7tsZFtPXZc6fHyW9bJycfLQKDTN7C
dd5zCJPco+qKvGEaSuxg/mFMc7ZyvWVAaPo75RSr3UafSscdV7re+4x6CQZAWwwo
L2C3MMkGJ62LjXfc58Hs9TxS4cBTw8JM8DHlGzjxMMxDwVVpkcD/Oq42Bp6+QHp8
xF68qCmO0WXPKYqWW7vlT81P74QOtSwlqfhuX14Z8RR4uN+FBFKyNqWFq7aRMsgj
Rq5XJTDUUcf5q1w4g43WEYE3XH4FlzriuxMOz8uvnkjw9DnVukZa9ZVUeQ+oYPho
H7nGJmimBJ0gildthj3c7vxZy+VmotgmNn9FfPyIW7X01oTyiKY=
=gL1v
-----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTXWQIACgkQYKtH/8kJ
Uiek4hAAxlBLJCXNkT2/q12wQ5RvebldfYrigD6JSX+jU6mgtCfBqh7jxwyyQFaH
vyCCtAG/G4Q0tuCZdevy2qVtWrAu337g5LhX2PdI7sQnXa0NqhjYd4V4/ft2+YLe
UFuZI9sW9hJ04LKSIcTlyLdOqWd8Y6aGMpZPCcbBkpC1AjPkN5eizuAQHVBo/FN9
CQ0iC75Mm/WIirT54IJzni1M8rRrQV5zJpRVtjQMPA7phQYShEMQdKcALdb3wXMd
RJspQWRUpJgr+Bh30sEZZF1MXme++WE2b7mkDSuQYVoXXP1padKAxEwwbA33CXYk
bFbvcGauqX6nycccqEsBtmP9w4LNq6D9k+wxQyRvfpwz35Tb/NHL+jkrN2xp1vWn
xetXI+T2yPagWZ40q+9g705x6y9GGOHfvANlkEL4sJZiWDVE/5aIF6sCps03LgvC
kNfwRUzNxxRaNo7qpjpPNmIu/nn+pMowOjbkXRb4NnqqmZTGooSzpDjuDHZXDuji
HphJWA3Tw5BrABqf3jPT0v9mfsukVkKhPtHmspoK24FssDkG+vJaUzr3/F131Cfo
DblMbTjySV1TsskUBfMnJdyx3FMoIOewZn5ktTiPvp8c5oixv8tcwSLIxIm76VYT
/1jM/m06Rxd4BHqQHnXYYedtlP2SetPXWVSTQSM2DPeqdBblDrc=
=B1eB
-----END PGP SIGNATURE-----
Merge tag 'vexpress-updates-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers
Arm Vexpress updates for v6.6
Couple of minor updates: Code simplification in the vexpress config bus
driver with the use of devm_platform_ioremap_resource() and simplification
of Arm Vexpress platform and related drivers entries in MAINTAINERS file.
* tag 'vexpress-updates-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
MAINTAINERS: Simplify entries for Arm Vexpress platform and related drivers
bus: vexpress-config: Convert to devm_platform_ioremap_resource()
Link: https://lore.kernel.org/r/20230804123214.3258032-1-sudeep.holla@arm.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
- Cleanup remove callback in event driver
- Explicitly include correct DT header in power driver
- Fix logic around irq = 0 in power driver
-----BEGIN PGP SIGNATURE-----
iF0EABECAB0WIQQbPNTMvXmYlBPRwx7KSWXLKUoMIQUCZMzgwgAKCRDKSWXLKUoM
IRRjAJ4kS4jzkdR/UN4xha2v9fhLQIEtOwCgheqMzg553ap53DXFOsHobL7WGvY=
=rkA5
-----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTXWM0ACgkQYKtH/8kJ
UidLUA//WVgeFb05d9UogRyouiKpHpsaCdcMN5PMfWgdgmbkfnDoYxeywpoT6J2j
U7wSpcBa4Uf7y3S/6VEShsSYDHJSQSAzIDLbK2Mb+7Sf+DCYm+2HXc9bUQaItt7b
+6iNOLVPOifAM+U2p8kmJTcPB/suTuA7P2w6KrA9R/Lk359/w9XI142zPhGCE3aj
jBmK2om68lwGK61G2x7fHsHPDTyDFhIHAuM7QpPInOMhPl9e71k63hwa3bDy79V5
emTb4aMLIueU7MqSUwjiwYHAH9k/eYltOlYUyo1x1HP3hnGi58v/wkLNaP4Guwnb
RvYvCuUD1ZkMfP8fxqFPEsXcshEQSK/D+9yMoD02VGnrZjeRl+jc4B4COQ2a4BFC
1ZzeAL13SX8f19Z/HoiHwRzCpoPNnpHf3npEPelqX/j2duGX/dA+XbmOsGVVwSC2
Fw2Jj9NId0qqd5wQosnB3neLhLMyQqAKx7sA4iD/maKC2fluvvDCz+nBYxQcdDZP
4QXjEfU+5n3in8S4uUBjZV2rxK/3YfOhQWB0Mrrr+IF1Wp/HTWdfVyX5w8wZ7ezz
EBzTBrSxB84aQRFNHCbSAL+GopJhAa6Zp1krT0XCvxS0EfzIAeY8x890EzmEuQMo
DxUoxTcY4kTO9Jkd5WWvgfmUYXmwLUHuoCD4yzvP8CfXjMXKrpM=
=yxvn
-----END PGP SIGNATURE-----
Merge tag 'zynqmp-soc-for-6.6' of https://github.com/Xilinx/linux-xlnx into soc/drivers
arm64: ZynqMP SoC changes for 6.6
- Cleanup remove callback in event driver
- Explicitly include correct DT header in power driver
- Fix logic around irq = 0 in power driver
* tag 'zynqmp-soc-for-6.6' of https://github.com/Xilinx/linux-xlnx:
soc: xilinx: Do not check for 0 return after calling platform_get_irq()
soc: xilinx: Explicitly include correct DT includes
driver: soc: xilinx: Convert to platform remove callback returning void
Link: https://lore.kernel.org/r/399efa45-df0a-4ec7-e25c-774bb8bf6fb4@monstr.eu
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This adds JTAG ID info for the AM62PX so as to enable SoC detection in
kernel.
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Praneeth Bajjuri <praneeth@ti.com>
Link: https://lore.kernel.org/r/20230811170127.250733-1-vigneshr@ti.com
Signed-off-by: Nishanth Menon <nm@ti.com>
Record SCU wakeup interrupt in /sys/power/pm_wakeup_irq
The user can further identify the exact wakeup source by using the
following interface:
cat /sys/firmware/scu_wakeup_source/wakeup_src
The above will print the wake groups and the irqs that could have
contributed to waking up the kernel. For example if ON/OFF button was the
wakeup source:
cat /sys/firmware/scu_wakeup_source/wakeup_src
Wakeup source group = 3, irq = 0x1
The user can refer to the SCFW API documentation to identify all the
wake groups and irqs.
Signed-off-by: Ranjani Vaidyanathan <ranjani.vaidyanathan@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Extract the scu irq get status code from imx_scu_irq_work_handler and
make into a new function imx_scu_irq_get_status which could be used
by others, such as SECO.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Use blocking_notifier_chain instead of atomic_notifier_chain, otherwise
there will be RCU complaint, because unregister/register_virtio_device()
will issue mbox message.
mbox_send_message() is blocking again after received M4 partition reset.
Actually, no need atomic notifier for scu irq notification since this
notifier is called in worker instead of interrupt handler.
[ 389.706645] i2c-rpmsg virtio0.rpmsg-i2c-channel.-1.2: i2c rpmsg driver is removed
[ 389.767362] Wait for remote ready timeout, use first_notify.
[ 389.774084] ------------[ cut here ]------------
[ 389.778729] WARNING: CPU: 0 PID: 397 at kernel/rcu/tree_plugin.h:293 rcu_note_context_switch+0x34/0x338
[ 389.788131] Modules linked in:
[ 389.791195] CPU: 0 PID: 397 Comm: kworker/0:13 Not tainted 5.4.0-rc5-02977-g08f78722f07b #26
[ 389.799633] Hardware name: Freescale i.MX8DXL MEK (DT)
[ 389.805481] Workqueue: events imx_scu_irq_work_handler
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Per checkpatch.pl, "ENOTSUPP is not a SUSV4 error code, prefer EOPNOTSUPP"
So use EOPNOTSUPP to replace ENOTSUPP.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Same as soc-imx8m and soc-imx driver, use soc name for soc_id which is
user friendly.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
When system loading is high, we can meet some command timeout
issue occasionally, so increase the timeout to a safe value.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Change firmware init level to subsys_initcall_sync to ensure it's
probed before most devices to avoid unnecessary defer probe.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
platform_get_resource_byname() and devm_ioremap_resource() can be
replaced by devm_platform_ioremap_resource_byname(), which can
simplify the code logic a bit, No functional change here.
Signed-off-by: Zhang Zekun <zhangzekun11@huawei.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Link: https://lore.kernel.org/r/20230809081523.26196-1-zhangzekun11@huawei.com
Signed-off-by: Nishanth Menon <nm@ti.com>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Acked-by: Andrew Davis <afd@ti.com>
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Link: https://lore.kernel.org/r/20230807111534.12392-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Link: https://lore.kernel.org/r/20230807114344.15076-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Link: https://lore.kernel.org/r/20230807113545.14743-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Link: https://lore.kernel.org/r/20230807112705.12862-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Link: https://lore.kernel.org/r/20230807105630.11638-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Link: https://lore.kernel.org/r/20230807105400.11560-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Link: https://lore.kernel.org/r/20230807104549.11225-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Link: https://lore.kernel.org/r/20230803104225.29740-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Link: https://lore.kernel.org/r/20230803104142.29694-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This function call was found to be unnecessary as there is no equivalent
platform_get_drvdata() call to access the private data of the driver. Also,
the private data is defined in this driver, so there is no risk of it being
accessed outside of this driver file.
Reviewed-by: Alexandru Ardelean <alex@shruggie.ro>
Signed-off-by: Andrei Coardos <aboutphysycs@gmail.com>
Link: https://lore.kernel.org/r/20230803104102.29647-1-aboutphysycs@gmail.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Document the sysfs attributes description provided by HCCS driver on
Kunpeng SoC.
Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
This patch creates chip, die and port directory based on the actual
hardware implementation of platform. Some sysfs entries under these
directories are created to query the health status and port information
of HCCS.
Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
The Huawei Cache Coherence System (HCCS) is a multi-chip interconnection
bus protocol. This driver is aimed to support some features about HCCS on
Kunpeng SoC, like, querying the health status of HCCS.
This patch adds the probing of HCCS driver, and obtains all HCCS port
information by the dimension of chip and die on platform.
Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
The DT of_device.h and of_platform.h date back to the separate
of_platform_bus_type before it as merged into the regular platform bus.
As part of that merge prepping Arm DT support 13 years ago, they
"temporarily" include each other. They also include platform_device.h
and of.h. As a result, there's a pretty much random mix of those include
files used throughout the tree. In order to detangle these headers and
replace the implicit includes with struct declarations, users need to
explicitly include the correct includes.
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20230803-dt-header-cleanups-for-soc-v2-21-d8de2cc88bff@kernel.org
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
of_match_device() may fail and returns a NULL pointer.
Fix this by checking the return value of of_match_device.
Fixes: 8cde3c2153 ("firmware: meson_sm: Rework driver as a proper platform driver")
Signed-off-by: Zhang Shurong <zhang_shurong@foxmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/tencent_AA08AAA6C4F34D53ADCE962E188A879B8206@qq.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
The DT of_device.h and of_platform.h date back to the separate
of_platform_bus_type before it as merged into the regular platform bus.
As part of that merge prepping Arm DT support 13 years ago, they
"temporarily" include each other. They also include platform_device.h
and of.h. As a result, there's a pretty much random mix of those include
files used throughout the tree. In order to detangle these headers and
replace the implicit includes with struct declarations, users need to
explicitly include the correct includes.
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230714175124.4066972-1-robh@kernel.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
SCMI v3.2 adds PERF protocol support to optionally define performance
domains that cannot be represented on a linear scale; the platform firmware
can declare the performance levels of a domain as being 'level indexed' and
provide an indicative frequency associated to each of those levels, with
such indexes not required anymore to be contiguous nor to satisfy any
linear-scaling constraint: when level-indexing is available for a domain,
the platform will expect to deal with SCMI requests using indexes instead
of performance levels for that domain.
Add level-indexing mode support to the PERF protocol implementation while
maintaining unchanged the protocol operations interface exposed by PERF;
all the required mapping from performamce levels/frequencies to the
corresponding level indexes is carried out transparently by the core PERF
protocol support: as a consequence no change is either required in any
SCMI driver using the PERF protocol, even when using level indexing.
Signed-off-by: Cristian Marussi <cristian.marussi@arm.com>
Link: https://lore.kernel.org/r/20230717161246.1761777-3-cristian.marussi@arm.com
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Currently the entries have regexs but in absolute paths. The "N:" entries
can deal with all files and directories irrespective of the depth/path
matching the regex patterns.
Simplifies the entry by making using "N:" and dropping "F:" with absolute
paths.
Cc: Liviu Dudau <liviu.dudau@arm.com>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Suggested-by: Tom Rini <trini@konsulko.com>
Acked-by: Liviu Dudau <liviu.dudau@arm.com>
Link: https://lore.kernel.org/r/20230727133551.648390-1-sudeep.holla@arm.com
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
The DT of_device.h and of_platform.h date back to the separate
of_platform_bus_type before it as merged into the regular platform bus.
As part of that merge prepping Arm DT support 13 years ago, they
"temporarily" include each other. They also include platform_device.h
and of.h. As a result, there's a pretty much random mix of those include
files used throughout the tree. In order to detangle these headers and
replace the implicit includes with struct declarations, users need to
explicitly include the correct includes.
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20230803-dt-header-cleanups-for-soc-v2-22-d8de2cc88bff@kernel.org
Signed-off-by: Michal Simek <michal.simek@amd.com>
Drop the non-fatal probe deferral log for getting MSI domain.
This makes the kernel log clean and we do not get recurring logs
stating: "Failed to get MSI domain".
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
Link: https://lore.kernel.org/r/20230728053356.31044-1-j-choudhary@ti.com
Signed-off-by: Nishanth Menon <nm@ti.com>
There are currently ~60 users of the genpd provider interface, which
implementations are sprinkled across various subsystems. To help out with
maintenance and to gain a bit better control, this creates a new subsystem
(drivers/genpd) and moves some of the soc/platform specific providers in
here.
-----BEGIN PGP SIGNATURE-----
iQJLBAABCgA1FiEEugLDXPmKSktSkQsV/iaEJXNYjCkFAmSxEMwXHHVsZi5oYW5z
c29uQGxpbmFyby5vcmcACgkQ/iaEJXNYjCnn1A//TkHKlHnQQ1roR0uGxcEwI3rz
TVUwv4fSNxHNhceQ/bRPEwkBn7wSRCakf2s0tBNh0FIr+/nsRD8UI82CDVSZK1Bt
rC319gt6mq6E4HFkdS5zreDMz97GCcFbJapBoclDmFfJLtRG6CtDkg0zkp2cd5az
6qfbCytM2kZIWrFevEPtEmry5Qvv+HUyMlXc35OzLzuqNZbhG42N2oV1YOMwQKJi
999VbiWETjA0vJ6qFrXmna4G4UTZdfTkf8vn7jig/4ZNegd8ELGFShPozvjqdWvM
3wYwyCGU1fxeCJbT2GhUi3ZYWYeEAS+wwzFOWktQ7523DNQZtol6BQEQt6QKw4/2
YHpCd9rK4EXY3z4JZ7JZzsp3gUfmHKWoRz6DXunSysnbPCQJaGJiXHMoH/WN5l3a
r0vqjNMx4uLUgTShmsXET8Jpxa7kIQBZJMxByKkwdGKt5hM2fDf7JJycxcVTbNT1
AW1Yz3xXvm3q/JAcLB3k95K/5YD08kHjONFBGT7U1CcsKYSRNDqaV4276r+vVpfC
SgHtbsoMUXhfqiaHG6mfq97EeUnAEz2ZVelNvr9nZ1OuutWwZD2gXYSYJ+JyP00n
K0fUqMdYIvFrdaWcLtrmY1SQqzrh3S4mBmvCQJufThM8/KX11b1edKvmUGdVA9fp
PQ6PeN1RAbahepJJelI=
=eku7
-----END PGP SIGNATURE-----
Merge tag 'genpd-v6.5-rc1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm into v6.6/drivers-genpd
Create the new genpd subsystem and start moving providers
There are currently ~60 users of the genpd provider interface, which
implementations are sprinkled across various subsystems. To help out with
maintenance and to gain a bit better control, this creates a new subsystem
(drivers/genpd) and moves some of the soc/platform specific providers in
here.