s390/cio: use basic blocks for i/o inline assemblies
[linux-2.6/btrfs-unstable.git] / drivers / firmware / qcom_scm-64.c
blobbb6555f6d63b849d4bb3330fed5de6d01e31edd2
1 /* Copyright (c) 2015, The Linux Foundation. All rights reserved.
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 and
5 * only version 2 as published by the Free Software Foundation.
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
13 #include <linux/io.h>
14 #include <linux/errno.h>
15 #include <linux/qcom_scm.h>
17 /**
18 * qcom_scm_set_cold_boot_addr() - Set the cold boot address for cpus
19 * @entry: Entry point function for the cpus
20 * @cpus: The cpumask of cpus that will use the entry point
22 * Set the cold boot address of the cpus. Any cpu outside the supported
23 * range would be removed from the cpu present mask.
25 int __qcom_scm_set_cold_boot_addr(void *entry, const cpumask_t *cpus)
27 return -ENOTSUPP;
30 /**
31 * qcom_scm_set_warm_boot_addr() - Set the warm boot address for cpus
32 * @entry: Entry point function for the cpus
33 * @cpus: The cpumask of cpus that will use the entry point
35 * Set the Linux entry point for the SCM to transfer control to when coming
36 * out of a power down. CPU power down may be executed on cpuidle or hotplug.
38 int __qcom_scm_set_warm_boot_addr(void *entry, const cpumask_t *cpus)
40 return -ENOTSUPP;
43 /**
44 * qcom_scm_cpu_power_down() - Power down the cpu
45 * @flags - Flags to flush cache
47 * This is an end point to power down cpu. If there was a pending interrupt,
48 * the control would return from this function, otherwise, the cpu jumps to the
49 * warm boot entry point set for this cpu upon reset.
51 void __qcom_scm_cpu_power_down(u32 flags)
55 int __qcom_scm_is_call_available(u32 svc_id, u32 cmd_id)
57 return -ENOTSUPP;
60 int __qcom_scm_hdcp_req(struct qcom_scm_hdcp_req *req, u32 req_cnt, u32 *resp)
62 return -ENOTSUPP;