Some of the platform devices rely on the name of their driver to match with. In the current implementation, if platform id table is needed, they have to add the name to the platform id table which sounds alogical. The patch adjustes the logic of the id table matching to make sure we will fall-back to match by the driver name. This will make it similar to the DT or ACPI cases.
Signed-off-by: Andy Shevchenko <[email protected]> Reported-by: Mika Westerberg <[email protected]> Cc: Eric Miao <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> --- drivers/base/platform.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/base/platform.c b/drivers/base/platform.c index c0b8df3..452ba4b 100644 --- a/drivers/base/platform.c +++ b/drivers/base/platform.c @@ -732,8 +732,8 @@ static int platform_match(struct device *dev, struct device_driver *drv) return 1; /* Then try to match against the id table */ - if (pdrv->id_table) - return platform_match_id(pdrv->id_table, pdev) != NULL; + if (pdrv->id_table && platform_match_id(pdrv->id_table, pdev)) + return 1; /* fall-back to driver name match */ return (strcmp(pdev->name, drv->name) == 0); -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

