From ffd6a6f70f901ad9a7c02bcf979ee649dbb6a6f9 Mon Sep 17 00:00:00 2001 From: Sathya Priya Kumar Date: Wed, 5 Aug 2026 11:17:18 +0530 Subject: [PATCH 1/3] misc: amd-apml: fix invalid returns in void stub functions Remove "return 0;" from the void inline stubs apml_unregister_sbrmi_device(), apml_unregister_sbtsi_device(), and apml_put_device_node() Reviewed-by: Akshay Gupta Signed-off-by: Sathya Priya Kumar --- drivers/misc/amd-apml/apml_common.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/misc/amd-apml/apml_common.h b/drivers/misc/amd-apml/apml_common.h index a028e75f9be2fb..eba33ef8eb1da1 100644 --- a/drivers/misc/amd-apml/apml_common.h +++ b/drivers/misc/amd-apml/apml_common.h @@ -46,7 +46,6 @@ static inline int apml_register_sbrmi_device(struct apml_sbrmi_device *rmi_dev) static inline void apml_unregister_sbrmi_device(struct apml_sbrmi_device *rmi_dev) { - return 0; } static inline int apml_register_sbtsi_device(struct apml_sbtsi_device *tsi_dev) @@ -56,7 +55,6 @@ static inline int apml_register_sbtsi_device(struct apml_sbtsi_device *tsi_dev) static inline void apml_unregister_sbtsi_device(struct apml_sbtsi_device *tsi_dev) { - return 0 } static inline struct apml_device_node *apml_get_device_node(struct apml_device_node *node) @@ -66,7 +64,6 @@ static inline struct apml_device_node *apml_get_device_node(struct apml_device_n static inline void apml_put_device_node(struct apml_device_node *node) { - return 0; } #endif /* IS_ENABLED(CONFIG_APML_COMMON) */ From a23888152069df2fa131dfd210754a1e75da38ff Mon Sep 17 00:00:00 2001 From: Sathya Priya Kumar Date: Wed, 5 Aug 2026 11:34:10 +0530 Subject: [PATCH 2/3] misc: amd-apml: Fix modular SBRMI build misc: amd-apml: fix modular SBRMI build Build sbrmi.o and sbrmi-common.o into one apml_sbrmi.ko module instead of two separate modules, fixing modpost unresolved symbols. No driver logic changes; only the module packaging is corrected. Reviewed-by: Akshay Gupta Signed-off-by: Sathya Priya Kumar --- drivers/misc/amd-apml/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/misc/amd-apml/Makefile b/drivers/misc/amd-apml/Makefile index a8884a496e490a..e344d691113187 100644 --- a/drivers/misc/amd-apml/Makefile +++ b/drivers/misc/amd-apml/Makefile @@ -5,6 +5,7 @@ # obj-$(CONFIG_APML_COMMON) += apml_common.o -obj-$(CONFIG_APML_SBRMI) += sbrmi.o sbrmi-common.o +obj-$(CONFIG_APML_SBRMI) += apml_sbrmi.o +apml_sbrmi-y := sbrmi.o sbrmi-common.o obj-$(CONFIG_APML_SBTSI) += apml_sbtsi.o obj-$(CONFIG_APML_ALERTL) += apml_alertl.o From cee1bc42cd7e2b2f10152633913335b372fd8995 Mon Sep 17 00:00:00 2001 From: Sathya Priya Kumar Date: Sun, 28 Jun 2026 22:06:08 +0530 Subject: [PATCH 3/3] misc: amd-apml: fix bus_num and status types in apml_alertl Use int for bus_num and unsigned int for regmap status reads/writes to match I2C/I3C bus identifiers and the regmap API. Reviewed-by: Akshay Gupta Signed-off-by: Sathya Priya Kumar --- drivers/misc/amd-apml/apml_alertl.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/drivers/misc/amd-apml/apml_alertl.c b/drivers/misc/amd-apml/apml_alertl.c index fc54972916ee8f..1b6d2acb04cd1f 100644 --- a/drivers/misc/amd-apml/apml_alertl.c +++ b/drivers/misc/amd-apml/apml_alertl.c @@ -41,7 +41,7 @@ MODULE_ALIAS("apml_alertl:" DRIVER_NAME); * Event data contains address, bus number, PID (for I3C devices; 0 otherwise), and alert * source information. See amd-apml.h for alert source details. */ -static int send_uevent(u8 address, u8 bus_num, u32 alert_src, +static int send_uevent(u8 address, int bus_num, u32 alert_src, u64 pid, struct device *dev) { char *alert_source[NUM_ENVP]; @@ -49,7 +49,7 @@ static int send_uevent(u8 address, u8 bus_num, u32 alert_src, int i; alert_source[ENVP_SRC_INDX] = kasprintf(GFP_KERNEL, "SOURCE=0x%08x", alert_src); - alert_source[ENVP_BUS_NUM_INDX] = kasprintf(GFP_KERNEL, "BUS_NUM=%u", bus_num); + alert_source[ENVP_BUS_NUM_INDX] = kasprintf(GFP_KERNEL, "BUS_NUM=%d", bus_num); alert_source[ENVP_PID_INDX] = kasprintf(GFP_KERNEL, "PID=0x%016llx", pid); alert_source[ENVP_ADDR_INDX] = kasprintf(GFP_KERNEL, "ADDRESS=0x%02x", address); alert_source[NUM_ENVP - 1] = NULL; @@ -62,7 +62,7 @@ static int send_uevent(u8 address, u8 bus_num, u32 alert_src, } dev_dbg(dev, "Sending uevent: Addr:0x%x Src:0x%08x\n bus:%d pid: 0x%llx\n", - address, alert_src, bus_num, pid); + address, alert_src, bus_num, pid); kobject_uevent_env(&dev->kobj, KOBJ_CHANGE, alert_source); out_free: @@ -74,8 +74,9 @@ static int send_uevent(u8 address, u8 bus_num, u32 alert_src, static int handle_rmi_device_alert(struct apml_device_node *device_node, struct device *dev) { - int status = 0, ret; - u8 addr, bus_num; + unsigned int status = 0; + int ret, bus_num; + u8 addr; u64 pid; if (!device_node->rmi_dev || !device_node->rmi_dev->regmap) { @@ -140,8 +141,9 @@ static int handle_rmi_device_alert(struct apml_device_node *device_node, struct /* Handle TSI device alerts */ static int handle_tsi_device_alert(struct apml_device_node *device_node, struct device *dev) { - int status = 0, ret; - u8 addr, bus_num; + unsigned int status = 0; + int ret, bus_num; + u8 addr; u64 pid; if (!device_node->tsi_dev || !device_node->tsi_dev->regmap) { @@ -266,7 +268,7 @@ static int apml_alertl_probe(struct platform_device *pdev) oob_alert->irq_num = ret; - /* Try to read socket-id property from DTS */ + /* Try to read socket-num property from DTS */ ret = of_property_read_u8(np, "socket-num", &socket_num); if (!ret) { irq_name = devm_kasprintf(dev, GFP_KERNEL, "apml_irq%u", socket_num);