[tip:x86/intel-mid] intel-mid: sfi: Allow struct devs_id.get_platform_data to be NULL

From: tip-bot for David Cohen
Date: Thu Oct 17 2013 - 20:35:14 EST


Commit-ID: 0e6fdb5f036338bc38bf660c65c931b3e92a31d7
Gitweb: http://git.kernel.org/tip/0e6fdb5f036338bc38bf660c65c931b3e92a31d7
Author: David Cohen <david.a.cohen@xxxxxxxxxxxxxxx>
AuthorDate: Thu, 17 Oct 2013 15:35:34 -0700
Committer: H. Peter Anvin <hpa@xxxxxxxxxxxxxxx>
CommitDate: Thu, 17 Oct 2013 16:40:59 -0700

intel-mid: sfi: Allow struct devs_id.get_platform_data to be NULL

Intel mid sfi code doesn't need struct devs_id.get_platform_data != NULL.
If the callback is not set, just assume there is no platform_data.

Signed-off-by: David Cohen <david.a.cohen@xxxxxxxxxxxxxxx>
Link: http://lkml.kernel.org/r/1382049336-21316-11-git-send-email-david.a.cohen@xxxxxxxxxxxxxxx
Cc: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@xxxxxxxxxxxxxxx>
Signed-off-by: H. Peter Anvin <hpa@xxxxxxxxxxxxxxx>
---
arch/x86/platform/intel-mid/sfi.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/arch/x86/platform/intel-mid/sfi.c b/arch/x86/platform/intel-mid/sfi.c
index 2f8196d..3f1c171 100644
--- a/arch/x86/platform/intel-mid/sfi.c
+++ b/arch/x86/platform/intel-mid/sfi.c
@@ -70,6 +70,9 @@ struct blocking_notifier_head intel_scu_notifier =
BLOCKING_NOTIFIER_INIT(intel_scu_notifier);
EXPORT_SYMBOL_GPL(intel_scu_notifier);

+#define intel_mid_sfi_get_pdata(dev, priv) \
+ ((dev)->get_platform_data ? (dev)->get_platform_data(priv) : NULL)
+
/* parse all the mtimer info to a static mtimer array */
int __init sfi_parse_mtmr(struct sfi_table_header *table)
{
@@ -334,7 +337,7 @@ static void __init sfi_handle_ipc_dev(struct sfi_device_table_entry *pentry,

pr_debug("IPC bus, name = %16.16s, irq = 0x%2x\n",
pentry->name, pentry->irq);
- pdata = dev->get_platform_data(pentry);
+ pdata = intel_mid_sfi_get_pdata(dev, pentry);

pdev = platform_device_alloc(pentry->name, 0);
if (pdev == NULL) {
@@ -367,7 +370,7 @@ static void __init sfi_handle_spi_dev(struct sfi_device_table_entry *pentry,
spi_info.max_speed_hz,
spi_info.chip_select);

- pdata = dev->get_platform_data(&spi_info);
+ pdata = intel_mid_sfi_get_pdata(dev, &spi_info);

spi_info.platform_data = pdata;
if (dev->delay)
@@ -391,7 +394,7 @@ static void __init sfi_handle_i2c_dev(struct sfi_device_table_entry *pentry,
i2c_info.type,
i2c_info.irq,
i2c_info.addr);
- pdata = dev->get_platform_data(&i2c_info);
+ pdata = intel_mid_sfi_get_pdata(dev, &i2c_info);
i2c_info.platform_data = pdata;

if (dev->delay)
@@ -450,7 +453,7 @@ static int __init sfi_parse_devs(struct sfi_table_header *table)

dev = get_device_id(pentry->type, pentry->name);

- if ((dev == NULL) || (dev->get_platform_data == NULL))
+ if (!dev)
continue;

if (dev->device_handler) {
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/