]> git.baikalelectronics.ru Git - kernel.git/commit
irqchip: Provide stronger type checking for IRQCHIP_MATCH/IRQCHIP_DECLARE
authorMarc Zyngier <maz@kernel.org>
Wed, 20 Oct 2021 08:33:21 +0000 (09:33 +0100)
committerMarc Zyngier <maz@kernel.org>
Wed, 20 Oct 2021 18:33:53 +0000 (19:33 +0100)
commit9b73feb76fea81dab65d33c99ff22028873af089
tree95894a3dec47034acfca58a1e9b72aa8216cea27
parent87a799989d15ec119f470890374f7bd919def84c
irqchip: Provide stronger type checking for IRQCHIP_MATCH/IRQCHIP_DECLARE

Both IRQCHIP_DECLARE() and IRQCHIP_MATCH() use an underlying of_device_id()
structure to encode the matching property and the init callback.
However, this callback is stored in as a void * pointer, which obviously
defeat any attempt at stronger type checking.

Work around this by providing a new macro that builds on top of the
__typecheck() primitive, and that can be used to warn when there is
a discrepency between the drivers and core code.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211020104527.3066268-1-maz@kernel.org
include/linux/irqchip.h