Commit 54c0a8a8 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki

Merge branch 'cpuidle/4.4' of http://git.linaro.org/people/daniel.lezcano/linux into pm-cpuidle

Pull ARM cpuidle changes for v4.4 from Daniel Lezcano.

* 'cpuidle/4.4' of http://git.linaro.org/people/daniel.lezcano/linux:
  cpuidle: mvebu: disable the bind/unbind attributes and use builtin_platform_driver
  cpuidle: mvebu: clean up multiple platform drivers
parents 32b88194 ab319939
...@@ -99,44 +99,40 @@ static struct cpuidle_driver armada38x_idle_driver = { ...@@ -99,44 +99,40 @@ static struct cpuidle_driver armada38x_idle_driver = {
static int mvebu_v7_cpuidle_probe(struct platform_device *pdev) static int mvebu_v7_cpuidle_probe(struct platform_device *pdev)
{ {
mvebu_v7_cpu_suspend = pdev->dev.platform_data; const struct platform_device_id *id = pdev->id_entry;
if (!strcmp(pdev->dev.driver->name, "cpuidle-armada-xp")) if (!id)
return cpuidle_register(&armadaxp_idle_driver, NULL);
else if (!strcmp(pdev->dev.driver->name, "cpuidle-armada-370"))
return cpuidle_register(&armada370_idle_driver, NULL);
else if (!strcmp(pdev->dev.driver->name, "cpuidle-armada-38x"))
return cpuidle_register(&armada38x_idle_driver, NULL);
else
return -EINVAL; return -EINVAL;
}
static struct platform_driver armadaxp_cpuidle_plat_driver = { mvebu_v7_cpu_suspend = pdev->dev.platform_data;
.driver = {
.name = "cpuidle-armada-xp",
},
.probe = mvebu_v7_cpuidle_probe,
};
module_platform_driver(armadaxp_cpuidle_plat_driver); return cpuidle_register((struct cpuidle_driver *)id->driver_data, NULL);
}
static struct platform_driver armada370_cpuidle_plat_driver = { static const struct platform_device_id mvebu_cpuidle_ids[] = {
.driver = { {
.name = "cpuidle-armada-xp",
.driver_data = (unsigned long)&armadaxp_idle_driver,
}, {
.name = "cpuidle-armada-370", .name = "cpuidle-armada-370",
.driver_data = (unsigned long)&armada370_idle_driver,
}, {
.name = "cpuidle-armada-38x",
.driver_data = (unsigned long)&armada38x_idle_driver,
}, },
.probe = mvebu_v7_cpuidle_probe, {}
}; };
module_platform_driver(armada370_cpuidle_plat_driver); static struct platform_driver mvebu_cpuidle_driver = {
.probe = mvebu_v7_cpuidle_probe,
static struct platform_driver armada38x_cpuidle_plat_driver = {
.driver = { .driver = {
.name = "cpuidle-armada-38x", .name = "cpuidle-mbevu",
.suppress_bind_attrs = true,
}, },
.probe = mvebu_v7_cpuidle_probe, .id_table = mvebu_cpuidle_ids,
}; };
module_platform_driver(armada38x_cpuidle_plat_driver); builtin_platform_driver(mvebu_cpuidle_driver);
MODULE_AUTHOR("Gregory CLEMENT <gregory.clement@free-electrons.com>"); MODULE_AUTHOR("Gregory CLEMENT <gregory.clement@free-electrons.com>");
MODULE_DESCRIPTION("Marvell EBU v7 cpuidle driver"); MODULE_DESCRIPTION("Marvell EBU v7 cpuidle driver");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment