mirror of https://gitee.com/openkylin/linux.git
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
This commit is contained in:
commit
54c0a8a8f5
|
@ -99,44 +99,40 @@ static struct cpuidle_driver armada38x_idle_driver = {
|
|||
|
||||
static int mvebu_v7_cpuidle_probe(struct platform_device *pdev)
|
||||
{
|
||||
const struct platform_device_id *id = pdev->id_entry;
|
||||
|
||||
if (!id)
|
||||
return -EINVAL;
|
||||
|
||||
mvebu_v7_cpu_suspend = pdev->dev.platform_data;
|
||||
|
||||
if (!strcmp(pdev->dev.driver->name, "cpuidle-armada-xp"))
|
||||
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 cpuidle_register((struct cpuidle_driver *)id->driver_data, NULL);
|
||||
}
|
||||
|
||||
static struct platform_driver armadaxp_cpuidle_plat_driver = {
|
||||
.driver = {
|
||||
static const struct platform_device_id mvebu_cpuidle_ids[] = {
|
||||
{
|
||||
.name = "cpuidle-armada-xp",
|
||||
},
|
||||
.probe = mvebu_v7_cpuidle_probe,
|
||||
};
|
||||
|
||||
module_platform_driver(armadaxp_cpuidle_plat_driver);
|
||||
|
||||
static struct platform_driver armada370_cpuidle_plat_driver = {
|
||||
.driver = {
|
||||
.driver_data = (unsigned long)&armadaxp_idle_driver,
|
||||
}, {
|
||||
.name = "cpuidle-armada-370",
|
||||
},
|
||||
.probe = mvebu_v7_cpuidle_probe,
|
||||
};
|
||||
|
||||
module_platform_driver(armada370_cpuidle_plat_driver);
|
||||
|
||||
static struct platform_driver armada38x_cpuidle_plat_driver = {
|
||||
.driver = {
|
||||
.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(armada38x_cpuidle_plat_driver);
|
||||
static struct platform_driver mvebu_cpuidle_driver = {
|
||||
.probe = mvebu_v7_cpuidle_probe,
|
||||
.driver = {
|
||||
.name = "cpuidle-mbevu",
|
||||
.suppress_bind_attrs = true,
|
||||
},
|
||||
.id_table = mvebu_cpuidle_ids,
|
||||
};
|
||||
|
||||
builtin_platform_driver(mvebu_cpuidle_driver);
|
||||
|
||||
MODULE_AUTHOR("Gregory CLEMENT <gregory.clement@free-electrons.com>");
|
||||
MODULE_DESCRIPTION("Marvell EBU v7 cpuidle driver");
|
||||
|
|
Loading…
Reference in New Issue