Hi All,
This patch series aims to drop using platform_get_resource() for IRQ types
in preparation for removal of static setup of IRQ resource from DT core
code.
Dropping usage of platform_get_resource() was agreed based on
the discussion [0].
[0] https://patchwork.kernel.org/project/linux-renesas-soc/
patch/20211209001056.29774-1-prabhakar.mahadev-lad.rj@bp.renesas.com/
Note: I have just build tested the patches.
Cheers,
Prabhakar
Lad Prabhakar (2):
ASoC: xlnx: Use platform_get_irq() to get the interrupt
ASoC: bcm: Use platform_get_irq() to get the interrupt
sound/soc/bcm/bcm63xx-i2s.h | 1 -
sound/soc/bcm/bcm63xx-pcm-whistler.c | 12 +++++-------
sound/soc/xilinx/xlnx_spdif.c | 10 +++-------
3 files changed, 8 insertions(+), 15 deletions(-)
--
2.17.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
platform_get_resource(pdev, IORESOURCE_IRQ, ..) relies on static
allocation of IRQ resources in DT core code, this causes an issue
when using hierarchical interrupt domains using "interrupts" property
in the node as this bypasses the hierarchical setup and messes up the
irq chaining.
In preparation for removal of static setup of IRQ resource from DT core
code use platform_get_irq().
Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
---
sound/soc/xilinx/xlnx_spdif.c | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
platform_get_resource(pdev, IORESOURCE_IRQ, ..) relies on static
allocation of IRQ resources in DT core code, this causes an issue
when using hierarchical interrupt domains using "interrupts" property
in the node as this bypasses the hierarchical setup and messes up the
irq chaining.
In preparation for removal of static setup of IRQ resource from DT core
code use platform_get_irq().
While at it also drop "r_irq" member from struct bcm_i2s_priv as there
are no users of it.
Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
---
sound/soc/bcm/bcm63xx-i2s.h | 1 -
sound/soc/bcm/bcm63xx-pcm-whistler.c | 12 +++++-------
2 files changed, 5 insertions(+), 8 deletions(-)
@@ -387,14 +387,12 @@ int bcm63xx_soc_platform_probe(struct platform_device *pdev,{intret;-i2s_priv->r_irq=platform_get_resource(pdev,IORESOURCE_IRQ,0);-if(!i2s_priv->r_irq){-dev_err(&pdev->dev,"Unable to get register irq resource.\n");-return-ENODEV;-}+ret=platform_get_irq(pdev,0);+if(ret<0)+returnret;-ret=devm_request_irq(&pdev->dev,i2s_priv->r_irq->start,i2s_dma_isr,-i2s_priv->r_irq->flags,"i2s_dma",(void*)i2s_priv);+ret=devm_request_irq(&pdev->dev,ret,i2s_dma_isr,+irq_get_trigger_type(ret),"i2s_dma",(void*)i2s_priv);if(ret){dev_err(&pdev->dev,"i2s_init: failed to request interrupt.ret=%d\n",ret);
--
2.17.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
platform_get_resource(pdev, IORESOURCE_IRQ, ..) relies on static
allocation of IRQ resources in DT core code, this causes an issue
when using hierarchical interrupt domains using "interrupts" property
in the node as this bypasses the hierarchical setup and messes up the
irq chaining.
In preparation for removal of static setup of IRQ resource from DT core
code use platform_get_irq().
While at it also drop "r_irq" member from struct bcm_i2s_priv as there
are no users of it.
Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
From: Mark Brown <broonie@kernel.org> Date: 2021-12-20 18:30:24
On Sun, Dec 19, 2021 at 06:10:39PM +0000, Lad Prabhakar wrote:
platform_get_resource(pdev, IORESOURCE_IRQ, ..) relies on static
allocation of IRQ resources in DT core code, this causes an issue
when using hierarchical interrupt domains using "interrupts" property
in the node as this bypasses the hierarchical setup and messes up the
irq chaining.
This doesn't compile for at least x86_64 allmodconfig:
/mnt/kernel/sound/soc/bcm/bcm63xx-pcm-whistler.c: In function 'bcm63xx_soc_platform_probe':
/mnt/kernel/sound/soc/bcm/bcm63xx-pcm-whistler.c:395:11: error: implicit declaration of function 'irq_get_trigger_type' [-Werror=implicit-function-declaration]
395 | irq_get_trigger_type(ret), "i2s_dma", (void *)i2s_priv);
| ^~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
From: Mark Brown <broonie@kernel.org> Date: 2021-12-21 19:12:35
On Sun, 19 Dec 2021 18:10:37 +0000, Lad Prabhakar wrote:
This patch series aims to drop using platform_get_resource() for IRQ types
in preparation for removal of static setup of IRQ resource from DT core
code.
Dropping usage of platform_get_resource() was agreed based on
the discussion [0].
[...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
Thanks!
[1/2] ASoC: xlnx: Use platform_get_irq() to get the interrupt
commit: c2efaf8f2d53ffa2ecc487e21c62d13bbb8d88c3
[2/2] ASoC: bcm: Use platform_get_irq() to get the interrupt
commit: 5de035c270047e7ae754fbfb69031707aa5b54f7
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
Thanks,
Mark
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel