Messages in this thread Patch in this message | | | From | Aditya Pakki <> | Subject | [PATCH] x86/intel-mid: Add pr_warn when platform_device_add() fails | Date | Mon, 24 Dec 2018 10:47:37 -0600 |
| |
platform_device_add() may fail in intel_scu_devices_create and sfi_handle_ipc_dev. The fix checks for the return value in these cases and displays the failed device.
Signed-off-by: Aditya Pakki <pakki001@umn.edu> --- arch/x86/platform/intel-mid/sfi.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/arch/x86/platform/intel-mid/sfi.c b/arch/x86/platform/intel-mid/sfi.c index 7be1e1fe9ae3..e69511bafec5 100644 --- a/arch/x86/platform/intel-mid/sfi.c +++ b/arch/x86/platform/intel-mid/sfi.c @@ -278,9 +278,13 @@ static void __init intel_scu_i2c_device_register(int bus, void intel_scu_devices_create(void) { int i; + int ret; - for (i = 0; i < ipc_next_dev; i++) - platform_device_add(ipc_devs[i]); + for (i = 0; i < ipc_next_dev; i++) { + ret = platform_device_add(ipc_devs[i]); + if (ret) + pr_warn("can't add device %s\n", ipc_devs[i]); + } for (i = 0; i < spi_next_dev; i++) spi_register_board_info(spi_devs[i], 1); @@ -330,6 +334,7 @@ static void __init sfi_handle_ipc_dev(struct sfi_device_table_entry *pentry, { struct platform_device *pdev; void *pdata = NULL; + int ret; pr_debug("IPC bus, name = %16.16s, irq = 0x%2x\n", pentry->name, pentry->irq); @@ -360,8 +365,11 @@ static void __init sfi_handle_ipc_dev(struct sfi_device_table_entry *pentry, pdev->dev.platform_data = pdata; if (dev->delay) intel_scu_ipc_device_register(pdev); - else - platform_device_add(pdev); + else { + ret = platform_device_add(pdev); + if (ret) + pr_warn("can't add device %s\n", pdev); + } } static void __init sfi_handle_spi_dev(struct sfi_device_table_entry *pentry, -- 2.17.1
| |