mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-27 06:34:11 +08:00
32 lines
724 B
C
32 lines
724 B
C
|
/*
|
||
|
* ARM64 CPU idle arch support
|
||
|
*
|
||
|
* Copyright (C) 2014 ARM Ltd.
|
||
|
* Author: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
|
||
|
*
|
||
|
* This program is free software; you can redistribute it and/or modify
|
||
|
* it under the terms of the GNU General Public License version 2 as
|
||
|
* published by the Free Software Foundation.
|
||
|
*/
|
||
|
|
||
|
#include <linux/of.h>
|
||
|
#include <linux/of_device.h>
|
||
|
|
||
|
#include <asm/cpuidle.h>
|
||
|
#include <asm/cpu_ops.h>
|
||
|
|
||
|
int cpu_init_idle(unsigned int cpu)
|
||
|
{
|
||
|
int ret = -EOPNOTSUPP;
|
||
|
struct device_node *cpu_node = of_cpu_device_node_get(cpu);
|
||
|
|
||
|
if (!cpu_node)
|
||
|
return -ENODEV;
|
||
|
|
||
|
if (cpu_ops[cpu] && cpu_ops[cpu]->cpu_init_idle)
|
||
|
ret = cpu_ops[cpu]->cpu_init_idle(cpu_node, cpu);
|
||
|
|
||
|
of_node_put(cpu_node);
|
||
|
return ret;
|
||
|
}
|