Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d50cfdc3 authored by Konstantin Dorfman's avatar Konstantin Dorfman
Browse files

soc: qcom: add secure processor subsystem (spss) utils driver



The spss-util driver provides utilities required for the Secure
Processor Subsystem (SPSS). It provides the fuse state for key selection
and the SPSS HW version.

Add snapshot for spss-util driver from msm-4.19 commit a7793b40172f
("soc: qcom: spss_utils: fix spss SSR when IAR not active").

Change-Id: I6531cae56cec9d062fa03c573bcd70207d10f1a2
Signed-off-by: default avatarKonstantin Dorfman <kdorfman@codeaurora.org>
parent 86cb2da5
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -44,6 +44,17 @@ config QCOM_GLINK_SSR
	  implements the SSR protocol for notifying the remote processor about
	  neighboring subsystems going up or down.

config MSM_SPSS_UTILS
	depends on MSM_PIL
	bool "Secure Processor Utilities"
	help
	  spss-utils driver selects Secure Processor firmware file name.name
	  The firmware file name for dev, test or production is selected
	  based on two fuses.fuses
	  Different file name is used for differnt SPSS HW versions,versions
	  because the SPSS firmware size is too small to support multiple
	  HW versions.

config QCOM_GSBI
        tristate "QCOM General Serial Bus Interface"
        depends on ARCH_QCOM || COMPILE_TEST
+1 −0
Original line number Diff line number Diff line
@@ -50,5 +50,6 @@ obj-$(CONFIG_QCOM_GLINK) += glink_probe.o
obj-$(CONFIG_MSM_GLINK_SSR) += msm_glink_ssr.o
obj-$(CONFIG_QTI_DDR_STATS_LOG) += ddr_stats.o
obj-$(CONFIG_QTI_SYSTEM_PM) += system_pm.o
obj-$(CONFIG_MSM_SPSS_UTILS) += spss_utils.o
obj-$(CONFIG_MSM_IDLE_STATS)	+= lpm-stats.o
obj-$(CONFIG_QTI_RPM_STATS_LOG) += rpmh_master_stat.o
+1062 −0

File added.

Preview size limit exceeded, changes collapsed.

+30 −0
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/*
 * Copyright (c) 2019, The Linux Foundation. All rights reserved.
 */

#ifndef _UAPI_SPSS_UTILS_H_
#define _UAPI_SPSS_UTILS_H_

#include <linux/types.h>    /* uint32_t, bool */
#include <linux/ioctl.h>    /* ioctl() */

/**
 * @brief - Secure Processor Utilities interface to user space
 *
 * The kernel spss_utils driver interface to user space via IOCTL
 * and SYSFS (device attributes).
 */

#define SPSS_IOC_MAGIC  'S'
#define NUM_SPU_UEFI_APPS   3

struct spss_ioc_set_fw_cmac {
	uint32_t cmac[4];
	uint32_t app_cmacs[NUM_SPU_UEFI_APPS][4];
} __packed;

#define SPSS_IOC_SET_FW_CMAC \
	_IOWR(SPSS_IOC_MAGIC, 1, struct spss_ioc_set_fw_cmac)

#endif /* _UAPI_SPSS_UTILS_H_ */