2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-23 04:34:11 +08:00

Qualcomm fixes for v4.3-rc1

* Add SCM function call stubs on ARM64
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJWAttJAAoJEFKiBbHx2RXVjVUP/3RnPCv9shctWtPonXj3fYJO
 ntUcN6xtCOdWbkZj9viOkRkeNfU0KhSRUOZWoNR8e9emDLndwShIRU24a7MB/evC
 j3WHK/KUjulanIvx0FJy5k0idwprwR/JPaHPa8LVPxbl3pNKGHs609M+aJh+Ldif
 UIGghM4st4jAhsVUKCwMMfuIMUPGpIegLVKqco8b2Hc6NxuLZU7coH3z42NVjNH5
 4zj7Y7LYJvqWWrPNsPOYlTUDEhhF/exEmlUwMryw7ITWAX2LdPDkyx/9970hZ7Op
 Q4VNwyNMPx9Q4AdXEzo5pUPOGDNi5jjQLQxNZFj05ruTvQ+ag9oP92Q/L8hPwuKv
 bm/eYNwDSlU7/NtRtSg3Pci6rp42HdIfTrOvZpPlsXWjkCvKhGqR9bOqQWL0Lnlp
 3mkJ23dL1VBtebY25YyNJe0219KPJ3+7LdVuNNNhsLvQp+XTb5YUSe8NMcYWvIR2
 vqNHA/d0wUZQVahteB9z4LhfHds3ezT98YDCPqEoIayGzmzGtYrD3w6mlckwl8KC
 7f0KZmsNvydfemf7Kzdi7Xe7lP101K6YK3VG65+mtqLU1/yadM+BvzW2tJ+8uSUk
 eMxbioZY3kPrZXXejQjC6FaQd0b9umUQvCz0J4zWIlj3XSZjCw02Ky/uVKD6cK6+
 OgZrMsQL+ndVQxZbGtKs
 =baVt
 -----END PGP SIGNATURE-----

Merge tag 'qcom-fixes-for-4.3-rc1' of git://codeaurora.org/quic/kernel/agross-msm into fixes

Qualcomm fixes for v4.3-rc1

* Add SCM function call stubs on ARM64

* tag 'qcom-fixes-for-4.3-rc1' of git://codeaurora.org/quic/kernel/agross-msm:
  firmware: qcom: scm: Add function stubs for ARM64

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2015-09-24 16:48:43 -07:00
commit bc13b23323
3 changed files with 73 additions and 1 deletions

View File

@ -139,6 +139,14 @@ config QCOM_SCM
bool
depends on ARM || ARM64
config QCOM_SCM_32
def_bool y
depends on QCOM_SCM && ARM
config QCOM_SCM_64
def_bool y
depends on QCOM_SCM && ARM64
source "drivers/firmware/broadcom/Kconfig"
source "drivers/firmware/google/Kconfig"
source "drivers/firmware/efi/Kconfig"

View File

@ -13,7 +13,8 @@ obj-$(CONFIG_ISCSI_IBFT_FIND) += iscsi_ibft_find.o
obj-$(CONFIG_ISCSI_IBFT) += iscsi_ibft.o
obj-$(CONFIG_FIRMWARE_MEMMAP) += memmap.o
obj-$(CONFIG_QCOM_SCM) += qcom_scm.o
obj-$(CONFIG_QCOM_SCM) += qcom_scm-32.o
obj-$(CONFIG_QCOM_SCM_64) += qcom_scm-64.o
obj-$(CONFIG_QCOM_SCM_32) += qcom_scm-32.o
CFLAGS_qcom_scm-32.o :=$(call as-instr,.arch_extension sec,-DREQUIRES_SEC=1)
obj-y += broadcom/

View File

@ -0,0 +1,63 @@
/* Copyright (c) 2015, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <linux/io.h>
#include <linux/errno.h>
#include <linux/qcom_scm.h>
/**
* qcom_scm_set_cold_boot_addr() - Set the cold boot address for cpus
* @entry: Entry point function for the cpus
* @cpus: The cpumask of cpus that will use the entry point
*
* Set the cold boot address of the cpus. Any cpu outside the supported
* range would be removed from the cpu present mask.
*/
int __qcom_scm_set_cold_boot_addr(void *entry, const cpumask_t *cpus)
{
return -ENOTSUPP;
}
/**
* qcom_scm_set_warm_boot_addr() - Set the warm boot address for cpus
* @entry: Entry point function for the cpus
* @cpus: The cpumask of cpus that will use the entry point
*
* Set the Linux entry point for the SCM to transfer control to when coming
* out of a power down. CPU power down may be executed on cpuidle or hotplug.
*/
int __qcom_scm_set_warm_boot_addr(void *entry, const cpumask_t *cpus)
{
return -ENOTSUPP;
}
/**
* qcom_scm_cpu_power_down() - Power down the cpu
* @flags - Flags to flush cache
*
* This is an end point to power down cpu. If there was a pending interrupt,
* the control would return from this function, otherwise, the cpu jumps to the
* warm boot entry point set for this cpu upon reset.
*/
void __qcom_scm_cpu_power_down(u32 flags)
{
}
int __qcom_scm_is_call_available(u32 svc_id, u32 cmd_id)
{
return -ENOTSUPP;
}
int __qcom_scm_hdcp_req(struct qcom_scm_hdcp_req *req, u32 req_cnt, u32 *resp)
{
return -ENOTSUPP;
}