1*79af73b3SMatthew Gerlach# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*79af73b3SMatthew Gerlach# Copyright (C) 2022, Intel Corporation
3*79af73b3SMatthew Gerlach%YAML 1.2
4*79af73b3SMatthew Gerlach---
5*79af73b3SMatthew Gerlach$id: "http://devicetree.org/schemas/soc/intel/intel,hps-copy-engine.yaml#"
6*79af73b3SMatthew Gerlach$schema: "http://devicetree.org/meta-schemas/core.yaml#"
7*79af73b3SMatthew Gerlach
8*79af73b3SMatthew Gerlachtitle: Intel HPS Copy Engine
9*79af73b3SMatthew Gerlach
10*79af73b3SMatthew Gerlachmaintainers:
11*79af73b3SMatthew Gerlach  - Matthew Gerlach <matthew.gerlach@linux.intel.com>
12*79af73b3SMatthew Gerlach
13*79af73b3SMatthew Gerlachdescription: |
14*79af73b3SMatthew Gerlach  The Intel Hard Processor System (HPS) Copy Engine is an IP block used to copy
15*79af73b3SMatthew Gerlach  a bootable image from host memory to HPS DDR.  Additionally, there is a
16*79af73b3SMatthew Gerlach  register the HPS can use to indicate the state of booting the copied image as
17*79af73b3SMatthew Gerlach  well as a keep-a-live indication to the host.
18*79af73b3SMatthew Gerlach
19*79af73b3SMatthew Gerlachproperties:
20*79af73b3SMatthew Gerlach  compatible:
21*79af73b3SMatthew Gerlach    const: intel,hps-copy-engine
22*79af73b3SMatthew Gerlach
23*79af73b3SMatthew Gerlach  '#dma-cells':
24*79af73b3SMatthew Gerlach    const: 1
25*79af73b3SMatthew Gerlach
26*79af73b3SMatthew Gerlach  reg:
27*79af73b3SMatthew Gerlach    maxItems: 1
28*79af73b3SMatthew Gerlach
29*79af73b3SMatthew Gerlachrequired:
30*79af73b3SMatthew Gerlach  - compatible
31*79af73b3SMatthew Gerlach  - reg
32*79af73b3SMatthew Gerlach
33*79af73b3SMatthew GerlachadditionalProperties: false
34*79af73b3SMatthew Gerlach
35*79af73b3SMatthew Gerlachexamples:
36*79af73b3SMatthew Gerlach  - |
37*79af73b3SMatthew Gerlach    bus@80000000 {
38*79af73b3SMatthew Gerlach        compatible = "simple-bus";
39*79af73b3SMatthew Gerlach        reg = <0x80000000 0x60000000>,
40*79af73b3SMatthew Gerlach              <0xf9000000 0x00100000>;
41*79af73b3SMatthew Gerlach        reg-names = "axi_h2f", "axi_h2f_lw";
42*79af73b3SMatthew Gerlach        #address-cells = <2>;
43*79af73b3SMatthew Gerlach        #size-cells = <1>;
44*79af73b3SMatthew Gerlach        ranges = <0x00000000 0x00000000 0xf9000000 0x00001000>;
45*79af73b3SMatthew Gerlach
46*79af73b3SMatthew Gerlach        dma-controller@0 {
47*79af73b3SMatthew Gerlach            compatible = "intel,hps-copy-engine";
48*79af73b3SMatthew Gerlach            reg = <0x00000000 0x00000000 0x00001000>;
49*79af73b3SMatthew Gerlach            #dma-cells = <1>;
50*79af73b3SMatthew Gerlach        };
51*79af73b3SMatthew Gerlach    };
52