Skip to content

Commit acb20d7

Browse files
David CohenH. Peter Anvin
authored andcommitted
x86, intel-mid: sfi_handle_*_dev() should check for pdata error code
When Intel MID finds a match between SFI table from FW and registered SFI devices, it will always register a device regardless the platform code was successful or not. This patch adds an extra option for platform code to return error code and abort device registration on SFI table parsing. This patch does not contain any functional changes for current intel mid platform code. Signed-off-by: David Cohen <david.a.cohen@linux.intel.com> Link: http://lkml.kernel.org/r/1389913624-9149-2-git-send-email-david.a.cohen@linux.intel.com Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
1 parent 4cb9b00 commit acb20d7

File tree

1 file changed

+6
-0
lines changed
  • arch/x86/platform/intel-mid

1 file changed

+6
-0
lines changed

arch/x86/platform/intel-mid/sfi.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -337,6 +337,8 @@ static void __init sfi_handle_ipc_dev(struct sfi_device_table_entry *pentry,
337337
pr_debug("IPC bus, name = %16.16s, irq = 0x%2x\n",
338338
pentry->name, pentry->irq);
339339
pdata = intel_mid_sfi_get_pdata(dev, pentry);
340+
if (IS_ERR(pdata))
341+
return;
340342

341343
pdev = platform_device_alloc(pentry->name, 0);
342344
if (pdev == NULL) {
@@ -370,6 +372,8 @@ static void __init sfi_handle_spi_dev(struct sfi_device_table_entry *pentry,
370372
spi_info.chip_select);
371373

372374
pdata = intel_mid_sfi_get_pdata(dev, &spi_info);
375+
if (IS_ERR(pdata))
376+
return;
373377

374378
spi_info.platform_data = pdata;
375379
if (dev->delay)
@@ -395,6 +399,8 @@ static void __init sfi_handle_i2c_dev(struct sfi_device_table_entry *pentry,
395399
i2c_info.addr);
396400
pdata = intel_mid_sfi_get_pdata(dev, &i2c_info);
397401
i2c_info.platform_data = pdata;
402+
if (IS_ERR(pdata))
403+
return;
398404

399405
if (dev->delay)
400406
intel_scu_i2c_device_register(pentry->host_num, &i2c_info);

0 commit comments

Comments
 (0)