1 /* SPDX-License-Identifier: GPL-2.0-only */
3 Device (\_SB.PCI0.PEG0)
5 Name (_ADR, 0x00010000)
11 // Convert a byte to a hex string, trimming extra parts
14 Local0 = ToHexString(Arg0)
15 Return (Mid(Local0, SizeOf(Local0) - 2, 2))
24 "%o%o%o%o-%o%o-%o%o-%o%o-%o%o%o%o%o%o",
25 BHEX(DerefOf(Arg0[3])),
26 BHEX(DerefOf(Arg0[2])),
27 BHEX(DerefOf(Arg0[1])),
28 BHEX(DerefOf(Arg0[0])),
29 BHEX(DerefOf(Arg0[5])),
30 BHEX(DerefOf(Arg0[4])),
31 BHEX(DerefOf(Arg0[7])),
32 BHEX(DerefOf(Arg0[6])),
33 BHEX(DerefOf(Arg0[8])),
34 BHEX(DerefOf(Arg0[9])),
35 BHEX(DerefOf(Arg0[10])),
36 BHEX(DerefOf(Arg0[11])),
37 BHEX(DerefOf(Arg0[12])),
38 BHEX(DerefOf(Arg0[13])),
39 BHEX(DerefOf(Arg0[14])),
40 BHEX(DerefOf(Arg0[15]))
45 // Safe hex conversion, checks type first
48 Local0 = ObjectType(Arg0)
49 If (Local0 == 1 || Local0 == 2 || Local0 == 3) {
50 Return (ToHexString(Arg0))
52 Return (Concatenate("Type: ", Arg0))
56 Method (_DSM, 4, Serialized)
59 Printf(" Arg0: %o", IDST(Arg0))
60 Printf(" Arg1: %o", SFST(Arg1))
61 Printf(" Arg2: %o", SFST(Arg2))
62 Printf(" Arg3: %o", SFST(Arg3))
64 If (Arg0 == ToUUID ("d4a50b75-65c7-46f7-bfb7-41514cea0244")) {
66 Printf(" Invalid Arg1, return 0x80000002")
71 Printf(" Arg2 == 0x00, return supported functions")
72 Return (Buffer (4) { 0x01, 0x00, 0x10, 0x00 })
76 Printf(" Arg2 == 0x14, return backlight package")
90 Printf(" Unknown Arg2, return 0x80000002")
94 Printf(" Unknown Arg0, return 0x80000001")
98 // _DOD: Display Output Devices
99 Method (_DOD, 0, NotSerialized)
101 Return (Package (3) {
110 Name (_ADR, 0x80008320)
115 Name (_ADR, 0x80006330)
120 Name (_ADR, 0x8000A450)