Re: [PATCH] spi: bcm63xx: remove PM_SLEEP based conditional compilation

From: Guenter Roeck
Date: Tue Apr 25 2023 - 13:37:32 EST


On 4/25/23 10:18, Gole, Dhruva wrote:
Hi,

On 4/25/2023 8:38 PM, Guenter Roeck wrote:
On Thu, Apr 20, 2023 at 05:46:15PM +0530, Dhruva Gole wrote:
Get rid of conditional compilation based on CONFIG_PM_SLEEP because
it may introduce build issues with certain configs where it maybe disabled
This is because if above config is not enabled the suspend-resume
functions are never part of the code but the bcm63xx_spi_pm_ops struct
still inits them to non-existent suspend-resume functions.

Fixes: b42dfed83d95 ("spi: add Broadcom BCM63xx SPI controller driver")

Signed-off-by: Dhruva Gole <d-gole@xxxxxx>
This patch results in:

drivers/spi/spi-bcm63xx.c:632:12: error: 'bcm63xx_spi_resume' defined but not used [-Werror=unused-function]
632 | static int bcm63xx_spi_resume(struct device *dev)
| ^~~~~~~~~~~~~~~~~~
drivers/spi/spi-bcm63xx.c:620:12: error: 'bcm63xx_spi_suspend' defined but not used [-Werror=unused-function]
620 | static int bcm63xx_spi_suspend(struct device *dev)

on architectures with no PM support (alpha, csky, m68k, openrisc, parisc,
riscv, s390).

Thanks for pointing this out.

I could send a patch to address this as pointed here [0]

by adding a __maybe_unused.

However, do you think my other patch [1] could address this issue without the need for above?


Personally I would go for [0] as the least invasive solution, but I really
have no idea, sorry. I just hope that your (broken) patch doesn't make it
as-is into the upstream kernel.

Guenter

I think it would because DEFINE_SIMPLE_DEV_PM_OPS doesn't seem to be under any conditional CONFIG_PM.

However, I may have missed something, please do let me know what's the best way to fix.

[0] https://lore.kernel.org/all/24ec3728-9720-ae6a-9ff5-3e2e13a96f76@xxxxxxxxx/

[1] https://lore.kernel.org/all/20230424102546.1604484-1-d-gole@xxxxxx/


Guenter