Since loongson_sysconf.suspend_addr is unsigned long, use "unsigned long" instead of "u64" for casting, so as to avoid build warnings for 32BIT: drivers/soc/loongson/loongson2_pm.c: In function 'loongson2_pm_probe': >> drivers/soc/loongson/loongson2_pm.c:178:49: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 178 | loongson_sysconf.suspend_addr = (u64)phys_to_virt(suspend_addr); | Cc: stable@vger.kernel.org Fixes: 3d9aba6618d1 ("LoongArch: Adjust build infrastructure for 32BIT/64BIT") Closes: https://lore.kernel.org/oe-kbuild-all/202610190549.WM2PO3vO-lkp@intel.com/ Reported-by: kernel test robot Signed-off-by: Huacai Chen --- drivers/soc/loongson/loongson2_pm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/soc/loongson/loongson2_pm.c b/drivers/soc/loongson/loongson2_pm.c index b8e5e1e3528a..1e2c897d055b 100644 --- a/drivers/soc/loongson/loongson2_pm.c +++ b/drivers/soc/loongson/loongson2_pm.c @@ -175,7 +175,7 @@ static int loongson2_pm_probe(struct platform_device *pdev) return irq; if (!device_property_read_u64(dev, "loongson,suspend-address", &suspend_addr)) - loongson_sysconf.suspend_addr = (u64)phys_to_virt(suspend_addr); + loongson_sysconf.suspend_addr = (unsigned long)phys_to_virt(suspend_addr); else dev_err(dev, "No loongson,suspend-address, could not support S3!\n"); -- 2.52.0