• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* SPDX-License-Identifier: GPL-2.0-only */
2
3#include <soc/iomap.h>
4#include <soc/irq.h>
5
6/* GPIO SouthWest Community */
7Device (GPSW)
8{
9	Name (_HID, "INT33FF")
10	Name (_CID, "INT33FF")
11	Name (_UID, 1)
12
13	Name (RBUF, ResourceTemplate()
14	{
15		Memory32Fixed (ReadWrite, 0, 0x8000, RMEM)
16		Interrupt (ResourceConsumer, Level, ActiveLow, Shared,,,)
17		{
18			GPIO_SW_IRQ
19		}
20	})
21
22	Method (_CRS)
23	{
24		CreateDwordField (^RBUF, ^RMEM._BAS, RBAS)
25		RBAS = IO_BASE_ADDRESS + COMMUNITY_OFFSET_GPSOUTHWEST
26		Return (^RBUF)
27	}
28
29	Method (_STA)
30	{
31		Return (0xF)
32	}
33}
34
35/* GPIO North Community */
36Device (GPNC)
37{
38	Name (_HID, "INT33FF")
39	Name (_CID, "INT33FF")
40	Name (_UID, 2)
41
42	Name (RBUF, ResourceTemplate()
43	{
44		Memory32Fixed (ReadWrite, 0, 0x8000, RMEM)
45		Interrupt (ResourceConsumer, Level, ActiveLow, Shared,,,)
46		{
47			GPIO_N_IRQ
48		}
49	})
50
51	Method (_CRS)
52	{
53		CreateDwordField (^RBUF, ^RMEM._BAS, RBAS)
54		RBAS = IO_BASE_ADDRESS + COMMUNITY_OFFSET_GPNORTH
55		Return (^RBUF)
56	}
57
58	Method (_STA)
59	{
60		Return (0xF)
61	}
62}
63
64/* GPIO East Community */
65Device (GPEC)
66{
67	Name (_HID, "INT33FF")
68	Name (_CID, "INT33FF")
69	Name (_UID, 3)
70
71	Name (RBUF, ResourceTemplate()
72	{
73		Memory32Fixed (ReadWrite, 0, 0x8000, RMEM)
74		Interrupt (ResourceConsumer, Level, ActiveLow, Shared,,,)
75		{
76			GPIO_E_IRQ
77		}
78	})
79
80	Method (_CRS)
81	{
82		CreateDwordField (^RBUF, ^RMEM._BAS, RBAS)
83		RBAS = IO_BASE_ADDRESS + COMMUNITY_OFFSET_GPEAST
84		Return (^RBUF)
85	}
86
87	Method (_STA)
88	{
89		Return (0xF)
90	}
91}
92
93/* GPIO SouthEast Community */
94Device (GPSE)
95{
96	Name (_HID, "INT33FF")
97	Name (_CID, "INT33FF")
98	Name (_UID, 4)
99
100	Name (RBUF, ResourceTemplate()
101	{
102		Memory32Fixed (ReadWrite, 0, 0x8000, RMEM)
103		Interrupt (ResourceConsumer, Level, ActiveLow, Shared,,,)
104		{
105			GPIO_SE_IRQ
106		}
107	})
108
109	Method (_CRS)
110	{
111		CreateDwordField (^RBUF, ^RMEM._BAS, RBAS)
112		RBAS = IO_BASE_ADDRESS + COMMUNITY_OFFSET_GPSOUTHEAST
113		Return (^RBUF)
114	}
115
116	Method (_STA)
117	{
118		Return (0xF)
119	}
120}
121