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