Path: blob/master/Documentation/devicetree/bindings/firmware/intel,stratix10-svc.yaml
26308 views
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)1%YAML 1.22---3$id: http://devicetree.org/schemas/firmware/intel,stratix10-svc.yaml#4$schema: http://devicetree.org/meta-schemas/core.yaml#56title: Intel Service Layer Driver for Stratix10 SoC78maintainers:9- Dinh Nguyen <dinguyen@kernel.org>10- Mahesh Rao <mahesh.rao@altera.com>1112description: >13Intel Stratix10 SoC is composed of a 64 bit quad-core ARM Cortex A53 hard14processor system (HPS) and Secure Device Manager (SDM). When the FPGA is15configured from HPS, there needs to be a way for HPS to notify SDM the16location and size of the configuration data. Then SDM will get the17configuration data from that location and perform the FPGA configuration.1819To meet the whole system security needs and support virtual machine requesting20communication with SDM, only the secure world of software (EL3, Exception21Layer 3) can interface with SDM. All software entities running on other22exception layers must channel through the EL3 software whenever it needs23service from SDM.2425Intel Stratix10 service layer driver, running at privileged exception level26(EL1, Exception Layer 1), interfaces with the service providers and provides27the services for FPGA configuration, QSPI, Crypto and warm reset. Service layer28driver also manages secure monitor call (SMC) to communicate with secure monitor29code running in EL3.3031properties:32compatible:33enum:34- intel,stratix10-svc35- intel,agilex-svc3637method:38description: |39Supervisory call method to be used to communicate with the40secure service layer.41Permitted values are:42- "smc" : SMC #0, following the SMCCC43- "hvc" : HVC #0, following the SMCCC4445$ref: /schemas/types.yaml#/definitions/string-array46enum:47- smc48- hvc4950memory-region:51maxItems: 152description:53reserved memory region for the service layer driver to54communicate with the secure device manager.5556fpga-mgr:57$ref: /schemas/fpga/intel,stratix10-soc-fpga-mgr.yaml58description: Optional child node for fpga manager to perform fabric configuration.5960required:61- compatible62- method63- memory-region6465additionalProperties: false6667examples:68- |69reserved-memory {70#address-cells = <2>;71#size-cells = <2>;7273service_reserved: svcbuffer@0 {74compatible = "shared-dma-pool";75reg = <0x0 0x0 0x0 0x1000000>;76alignment = <0x1000>;77no-map;78};79};8081firmware {82svc {83compatible = "intel,stratix10-svc";84method = "smc";85memory-region = <&service_reserved>;8687fpga-mgr {88compatible = "intel,stratix10-soc-fpga-mgr";89};90};91};92939495