hc
2024-03-25 edb30157bad0c0001c32b854271ace01d3b9a16a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
/** @file
 * Copyright (c) 2019, Linaro Limited. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-2-Clause-Patent
 */
 
#include "Secure96.h"
 
DefinitionBlock ("Secure96.aml", "SSDT", 2, "96BRDS", "SECURE96", 1)
{
    Scope (_SB)
    {
        Device (LD96)
        {
            Name (_HID, "LNRO9601")
            Name (_UID, 0x0)
            Name (_CID, "PRP0001")
            Name (_DSD, Package () {
                ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
                Package () { Package () { "compatible", "gpio-leds" }, }
            })
            Name (_CRS, ResourceTemplate() {
                GpioIo (Exclusive, PullDefault, 0, 0, IoRestrictionOutputOnly, SECURE96_ACPI_GPIO)
                {
                    FixedPcdGet32 (PcdGpioPinG),
                    FixedPcdGet32 (PcdGpioPinF),
                    FixedPcdGet32 (PcdGpioPinI),
                    FixedPcdGet32 (PcdGpioPinH),
                }
            })
 
            Device (LDU1)
            {
                Name (_ADR, 0x1)
                Name (_DSD, Package () {
                    ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
                    Package () {
                        Package () { "label", "secure96-u1" },
                        Package () { "gpios", Package () { ^^LD96, 0, 0, 0 }, },
                    }
                })
            }
 
            Device (LDU2)
            {
                Name (_ADR, 0x2)
                Name (_DSD, Package () {
                    ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
                    Package () {
                        Package () { "label", "secure96-u2" },
                        Package () { "gpios", Package () { ^^LD96, 0, 1, 0 }, },
                    }
                })
            }
 
            Device (LDU3)
            {
                Name (_ADR, 0x3)
                Name (_DSD, Package () {
                    ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
                    Package () {
                        Package () { "label", "secure96-u3" },
                        Package () { "gpios", Package () { ^^LD96, 0, 2, 0 }, },
                    }
                })
            }
 
            Device (LDU4)
            {
                Name (_ADR, 0x4)
                Name (_DSD, Package () {
                    ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
                    Package () {
                        Package () { "label", "secure96-u4" },
                        Package () { "gpios", Package () { ^^LD96, 0, 3, 0 }, },
                    }
                })
            }
        }
 
        Device (SH96)
        {
            Name (_HID, "LNRO9602")
            Name (_UID, 0x0)
            Name (_CID, "PRP0001")
            Name (_DSD, Package () {
                ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
                Package () { Package () { "compatible", "atmel,atsha204a" }, }
            })
            Name (_CRS, ResourceTemplate() {
                I2CSerialBus (ATSHA204A_SLAVE_ADDRESS,, 100000,, SECURE96_ACPI_I2C0,,,,)
            })
        }
 
        Device (EC96)
        {
            Name (_HID, "LNRO9603")
            Name (_UID, 0x0)
            Name (_CID, "PRP0001")
            Name (_DSD, Package () {
                ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
                Package () { Package () { "compatible", "atmel,atecc508a" }, }
            })
            Name (_CRS, ResourceTemplate() {
                I2CSerialBus (ATECC508A_SLAVE_ADDRESS,, 100000,, SECURE96_ACPI_I2C0,,,,)
            })
        }
 
        Device (TP96)
        {
            Name (_ADR, SECURE96_SPI0_CS)
            Name (_CID, "SMO0768")
            Name (_CRS, ResourceTemplate() {
                SpiSerialBus (SECURE96_SPI0_CS, PolarityLow, FourWireMode,
                              8, ControllerInitiated, 5000000, ClockPolarityLow,
                              ClockPhaseFirst, SECURE96_ACPI_SPI0, 0,
                              ResourceConsumer)
            })
        }
    }
}