1/* 2 * Copyright (c) 2023 ITE Corporation. All Rights Reserved. 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7#include <ite/it8xxx2.dtsi> 8 9/ { 10 soc { 11 sram0: memory@80100000 { 12 compatible = "mmio-sram"; 13 reg = <0x80100000 DT_SIZE_K(256)>; 14 }; 15 16 intc: interrupt-controller@f03f00 { 17 compatible = "ite,it8xxx2-intc-v2"; 18 #address-cells = <0>; 19 #interrupt-cells = <2>; 20 interrupt-controller; 21 reg = <0x00f03f00 0x0100>; 22 }; 23 24 twd0: watchdog@f01f80 { 25 compatible = "ite,it8xxx2-watchdog"; 26 reg = <0x00f01f80 0x000f>; 27 interrupts = <IT8XXX2_IRQ_TIMER1 IRQ_TYPE_EDGE_RISING /* Warning timer */ 28 IT8XXX2_IRQ_TIMER2 IRQ_TYPE_EDGE_RISING>; /* One shot timer */ 29 interrupt-parent = <&intc>; 30 }; 31 32 gpiogcr: gpio-gcr@f03e00 { 33 compatible = "ite,it8xxx2-gpiogcr"; 34 reg = <0x00f03e00 0x2f>; 35 }; 36 37 gpioa: gpio@f01601 { 38 compatible = "ite,it8xxx2-gpio-v2"; 39 reg = <0x00f01601 1 /* GPDR (set) */ 40 0x00f01618 1 /* GPDMR (get) */ 41 0x00f01630 1 /* GPOTR */ 42 0x00f01648 1 /* P18SCR */ 43 0x00f01660 8>; /* GPCR */ 44 ngpios = <8>; 45 gpio-controller; 46 interrupts = <IT8XXX2_IRQ_WU91 IRQ_TYPE_LEVEL_HIGH 47 IT8XXX2_IRQ_WU92 IRQ_TYPE_LEVEL_HIGH 48 IT8XXX2_IRQ_WU93 IRQ_TYPE_LEVEL_HIGH 49 IT8XXX2_IRQ_WU80 IRQ_TYPE_LEVEL_HIGH 50 IT8XXX2_IRQ_WU81 IRQ_TYPE_LEVEL_HIGH 51 IT8XXX2_IRQ_WU82 IRQ_TYPE_LEVEL_HIGH 52 IT8XXX2_IRQ_WU83 IRQ_TYPE_LEVEL_HIGH 53 IT8XXX2_IRQ_WU100 IRQ_TYPE_LEVEL_HIGH>; 54 interrupt-parent = <&intc>; 55 wuc-base = <0xf01b20 0xf01b20 0xf01b20 0xf01b1c 56 0xf01b1c 0xf01b1c 0xf01b1c 0xf01b24>; 57 wuc-mask = <BIT(3) BIT(4) BIT(5) BIT(0) 58 BIT(1) BIT(2) BIT(3) BIT(4) >; 59 has-volt-sel = <1 1 1 1 1 1 1 1>; 60 #gpio-cells = <2>; 61 }; 62 63 gpiob: gpio@f01602 { 64 compatible = "ite,it8xxx2-gpio-v2"; 65 reg = <0x00f01602 1 /* GPDR (set) */ 66 0x00f01619 1 /* GPDMR (get) */ 67 0x00f01631 1 /* GPOTR */ 68 0x00f01649 1 /* P18SCR */ 69 0x00f01668 8>; /* GPCR */ 70 ngpios = <7>; 71 gpio-controller; 72 interrupts = <IT8XXX2_IRQ_WU101 IRQ_TYPE_LEVEL_HIGH 73 IT8XXX2_IRQ_WU102 IRQ_TYPE_LEVEL_HIGH 74 IT8XXX2_IRQ_WU84 IRQ_TYPE_LEVEL_HIGH 75 IT8XXX2_IRQ_WU103 IRQ_TYPE_LEVEL_HIGH 76 IT8XXX2_IRQ_WU94 IRQ_TYPE_LEVEL_HIGH 77 IT8XXX2_IRQ_WU104 IRQ_TYPE_LEVEL_HIGH 78 IT8XXX2_IRQ_WU105 IRQ_TYPE_LEVEL_HIGH 79 NO_FUNC 0>; 80 interrupt-parent = <&intc>; 81 wuc-base = <0xf01b24 0xf01b24 0xf01b1c 0xf01b24 82 0xf01b20 0xf01b28 0xf01b28 NO_FUNC >; 83 wuc-mask = <BIT(5) BIT(6) BIT(4) BIT(7) 84 BIT(6) BIT(0) BIT(1) 0 >; 85 has-volt-sel = <1 1 1 1 1 1 1 0>; 86 #gpio-cells = <2>; 87 }; 88 89 gpioc: gpio@f01603 { 90 compatible = "ite,it8xxx2-gpio-v2"; 91 reg = <0x00f01603 1 /* GPDR (set) */ 92 0x00f0161a 1 /* GPDMR (get) */ 93 0x00f01632 1 /* GPOTR */ 94 0x00f0164a 1 /* P18SCR */ 95 0x00f01670 8>; /* GPCR */ 96 ngpios = <8>; 97 gpio-controller; 98 interrupts = <IT8XXX2_IRQ_WU85 IRQ_TYPE_LEVEL_HIGH 99 IT8XXX2_IRQ_WU107 IRQ_TYPE_LEVEL_HIGH 100 IT8XXX2_IRQ_WU95 IRQ_TYPE_LEVEL_HIGH 101 IT8XXX2_IRQ_WU108 IRQ_TYPE_LEVEL_HIGH 102 IT8XXX2_IRQ_WU22 IRQ_TYPE_LEVEL_HIGH 103 IT8XXX2_IRQ_WU109 IRQ_TYPE_LEVEL_HIGH 104 IT8XXX2_IRQ_WU23 IRQ_TYPE_LEVEL_HIGH 105 IT8XXX2_IRQ_WU86 IRQ_TYPE_LEVEL_HIGH>; 106 interrupt-parent = <&intc>; 107 wuc-base = <0xf01b1c 0xf01b28 0xf01b20 0xf01b28 108 0xf01b04 0xf01b28 0xf01b04 0xf01b1c>; 109 wuc-mask = <BIT(5) BIT(3) BIT(7) BIT(4) 110 BIT(2) BIT(5) BIT(3) BIT(6) >; 111 has-volt-sel = <1 1 1 1 1 1 1 1>; 112 #gpio-cells = <2>; 113 }; 114 115 gpiod: gpio@f01604 { 116 compatible = "ite,it8xxx2-gpio-v2"; 117 reg = <0x00f01604 1 /* GPDR (set) */ 118 0x00f0161b 1 /* GPDMR (get) */ 119 0x00f01633 1 /* GPOTR */ 120 0x00f0164b 1 /* P18SCR */ 121 0x00f01678 8>; /* GPCR */ 122 ngpios = <8>; 123 gpio-controller; 124 interrupts = <IT8XXX2_IRQ_WU20 IRQ_TYPE_LEVEL_HIGH 125 IT8XXX2_IRQ_WU21 IRQ_TYPE_LEVEL_HIGH 126 IT8XXX2_IRQ_WU24 IRQ_TYPE_LEVEL_HIGH 127 IT8XXX2_IRQ_WU110 IRQ_TYPE_LEVEL_HIGH 128 IT8XXX2_IRQ_WU111 IRQ_TYPE_LEVEL_HIGH 129 IT8XXX2_IRQ_WU112 IRQ_TYPE_LEVEL_HIGH 130 IT8XXX2_IRQ_WU113 IRQ_TYPE_LEVEL_HIGH 131 IT8XXX2_IRQ_WU87 IRQ_TYPE_LEVEL_HIGH>; 132 interrupt-parent = <&intc>; 133 wuc-base = <0xf01b04 0xf01b04 0xf01b04 0xf01b28 134 0xf01b28 0xf01b2c 0xf01b2c 0xf01b1c>; 135 wuc-mask = <BIT(0) BIT(1) BIT(4) BIT(6) 136 BIT(7) BIT(0) BIT(1) BIT(7) >; 137 has-volt-sel = <1 1 1 1 1 1 1 1>; 138 #gpio-cells = <2>; 139 }; 140 141 gpioe: gpio@f01605 { 142 compatible = "ite,it8xxx2-gpio-v2"; 143 reg = <0x00f01605 1 /* GPDR (set) */ 144 0x00f0161c 1 /* GPDMR (get) */ 145 0x00f01634 1 /* GPOTR */ 146 0x00f0164c 1 /* P18SCR */ 147 0x00f01680 8>; /* GPCR */ 148 ngpios = <8>; 149 gpio-controller; 150 interrupts = <IT8XXX2_IRQ_WU70 IRQ_TYPE_LEVEL_HIGH 151 IT8XXX2_IRQ_WU71 IRQ_TYPE_LEVEL_HIGH 152 IT8XXX2_IRQ_WU72 IRQ_TYPE_LEVEL_HIGH 153 IT8XXX2_IRQ_WU73 IRQ_TYPE_LEVEL_HIGH 154 IT8XXX2_IRQ_WU114 IRQ_TYPE_LEVEL_HIGH 155 IT8XXX2_IRQ_WU40 IRQ_TYPE_LEVEL_HIGH 156 IT8XXX2_IRQ_WU45 IRQ_TYPE_LEVEL_HIGH 157 IT8XXX2_IRQ_WU46 IRQ_TYPE_LEVEL_HIGH>; 158 interrupt-parent = <&intc>; 159 wuc-base = <0xf01b18 0xf01b18 0xf01b18 0xf01b18 160 0xf01b2c 0xf01b0c 0xf01b0c 0xf01b0c>; 161 wuc-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 162 BIT(2) BIT(0) BIT(5) BIT(6) >; 163 has-volt-sel = <1 1 1 1 1 1 1 1>; 164 #gpio-cells = <2>; 165 }; 166 167 gpiof: gpio@f01606 { 168 compatible = "ite,it8xxx2-gpio-v2"; 169 reg = <0x00f01606 1 /* GPDR (set) */ 170 0x00f0161d 1 /* GPDMR (get) */ 171 0x00f01635 1 /* GPOTR */ 172 0x00f0164d 1 /* P18SCR */ 173 0x00f01688 8>; /* GPCR */ 174 ngpios = <8>; 175 gpio-controller; 176 interrupts = <IT8XXX2_IRQ_WU96 IRQ_TYPE_LEVEL_HIGH 177 IT8XXX2_IRQ_WU97 IRQ_TYPE_LEVEL_HIGH 178 IT8XXX2_IRQ_WU98 IRQ_TYPE_LEVEL_HIGH 179 IT8XXX2_IRQ_WU99 IRQ_TYPE_LEVEL_HIGH 180 IT8XXX2_IRQ_WU64 IRQ_TYPE_LEVEL_HIGH 181 IT8XXX2_IRQ_WU65 IRQ_TYPE_LEVEL_HIGH 182 IT8XXX2_IRQ_WU66 IRQ_TYPE_LEVEL_HIGH 183 IT8XXX2_IRQ_WU67 IRQ_TYPE_LEVEL_HIGH>; 184 interrupt-parent = <&intc>; 185 wuc-base = <0xf01b24 0xf01b24 0xf01b24 0xf01b24 186 0xf01b14 0xf01b14 0xf01b14 0xf01b14>; 187 wuc-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 188 BIT(4) BIT(5) BIT(6) BIT(7) >; 189 has-volt-sel = <1 1 1 1 1 1 1 1>; 190 #gpio-cells = <2>; 191 }; 192 193 gpiog: gpio@f01607 { 194 compatible = "ite,it8xxx2-gpio-v2"; 195 reg = <0x00f01607 1 /* GPDR (set) */ 196 0x00f0161e 1 /* GPDMR (get) */ 197 0x00f01636 1 /* GPOTR */ 198 0x00f0164e 1 /* P18SCR */ 199 0x00f01690 8>; /* GPCR */ 200 ngpios = <8>; 201 gpio-controller; 202 interrupts = <IT8XXX2_IRQ_WU115 IRQ_TYPE_LEVEL_HIGH 203 IT8XXX2_IRQ_WU116 IRQ_TYPE_LEVEL_HIGH 204 IT8XXX2_IRQ_WU117 IRQ_TYPE_LEVEL_HIGH 205 IT8XXX2_IRQ_WU123 IRQ_TYPE_LEVEL_HIGH 206 IT8XXX2_IRQ_WU124 IRQ_TYPE_LEVEL_HIGH 207 IT8XXX2_IRQ_WU125 IRQ_TYPE_LEVEL_HIGH 208 IT8XXX2_IRQ_WU118 IRQ_TYPE_LEVEL_HIGH 209 IT8XXX2_IRQ_WU126 IRQ_TYPE_LEVEL_HIGH>; 210 interrupt-parent = <&intc>; 211 wuc-base = <0xf01b2c 0xf01b2c 0xf01b2c 0xf01b30 212 0xf01b30 0xf01b30 0xf01b2c 0xf01b30>; 213 wuc-mask = <BIT(3) BIT(4) BIT(5) BIT(3) 214 BIT(4) BIT(5) BIT(6) BIT(6) >; 215 has-volt-sel = <1 1 1 0 0 0 1 0>; 216 #gpio-cells = <2>; 217 }; 218 219 gpioh: gpio@f01608 { 220 compatible = "ite,it8xxx2-gpio-v2"; 221 reg = <0x00f01608 1 /* GPDR (set) */ 222 0x00f0161f 1 /* GPDMR (get) */ 223 0x00f01637 1 /* GPOTR */ 224 0x00f0164f 1 /* P18SCR */ 225 0x00f01698 8>; /* GPCR */ 226 ngpios = <7>; 227 gpio-controller; 228 interrupts = <IT8XXX2_IRQ_WU60 IRQ_TYPE_LEVEL_HIGH 229 IT8XXX2_IRQ_WU61 IRQ_TYPE_LEVEL_HIGH 230 IT8XXX2_IRQ_WU62 IRQ_TYPE_LEVEL_HIGH 231 IT8XXX2_IRQ_WU63 IRQ_TYPE_LEVEL_HIGH 232 IT8XXX2_IRQ_WU88 IRQ_TYPE_LEVEL_HIGH 233 IT8XXX2_IRQ_WU89 IRQ_TYPE_LEVEL_HIGH 234 IT8XXX2_IRQ_WU90 IRQ_TYPE_LEVEL_HIGH 235 NO_FUNC 0>; 236 interrupt-parent = <&intc>; 237 wuc-base = <0xf01b14 0xf01b14 0xf01b14 0xf01b14 238 0xf01b20 0xf01b20 0xf01b20 NO_FUNC >; 239 wuc-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 240 BIT(0) BIT(1) BIT(2) 0 >; 241 has-volt-sel = <1 1 1 1 1 1 1 0>; 242 #gpio-cells = <2>; 243 }; 244 245 gpioi: gpio@f01609 { 246 compatible = "ite,it8xxx2-gpio-v2"; 247 reg = <0x00f01609 1 /* GPDR (set) */ 248 0x00f01620 1 /* GPDMR (get) */ 249 0x00f01638 1 /* GPOTR */ 250 0x00f01650 1 /* P18SCR */ 251 0x00f016a0 8>; /* GPCR */ 252 ngpios = <8>; 253 gpio-controller; 254 interrupts = <IT8XXX2_IRQ_WU119 IRQ_TYPE_LEVEL_HIGH 255 IT8XXX2_IRQ_WU120 IRQ_TYPE_LEVEL_HIGH 256 IT8XXX2_IRQ_WU121 IRQ_TYPE_LEVEL_HIGH 257 IT8XXX2_IRQ_WU122 IRQ_TYPE_LEVEL_HIGH 258 IT8XXX2_IRQ_WU74 IRQ_TYPE_LEVEL_HIGH 259 IT8XXX2_IRQ_WU75 IRQ_TYPE_LEVEL_HIGH 260 IT8XXX2_IRQ_WU76 IRQ_TYPE_LEVEL_HIGH 261 IT8XXX2_IRQ_WU77 IRQ_TYPE_LEVEL_HIGH>; 262 interrupt-parent = <&intc>; 263 wuc-base = <0xf01b2c 0xf01b30 0xf01b30 0xf01b30 264 0xf01b18 0xf01b18 0xf01b18 0xf01b18>; 265 wuc-mask = <BIT(7) BIT(0) BIT(1) BIT(2) 266 BIT(4) BIT(5) BIT(6) BIT(7) >; 267 has-volt-sel = <1 1 1 1 1 1 1 1>; 268 #gpio-cells = <2>; 269 }; 270 271 gpioj: gpio@f0160a { 272 compatible = "ite,it8xxx2-gpio-v2"; 273 reg = <0x00f0160a 1 /* GPDR (set) */ 274 0x00f01621 1 /* GPDMR (get) */ 275 0x00f01639 1 /* GPOTR */ 276 0x00f01651 1 /* P18SCR */ 277 0x00f016a8 8>; /* GPCR */ 278 ngpios = <8>; 279 gpio-controller; 280 interrupts = <IT8XXX2_IRQ_WU128 IRQ_TYPE_LEVEL_HIGH 281 IT8XXX2_IRQ_WU129 IRQ_TYPE_LEVEL_HIGH 282 IT8XXX2_IRQ_WU130 IRQ_TYPE_LEVEL_HIGH 283 IT8XXX2_IRQ_WU131 IRQ_TYPE_LEVEL_HIGH 284 IT8XXX2_IRQ_WU132 IRQ_TYPE_LEVEL_HIGH 285 IT8XXX2_IRQ_WU133 IRQ_TYPE_LEVEL_HIGH 286 IT8XXX2_IRQ_WU134 IRQ_TYPE_LEVEL_HIGH 287 IT8XXX2_IRQ_WU135 IRQ_TYPE_LEVEL_HIGH>; 288 interrupt-parent = <&intc>; 289 wuc-base = <0xf01b34 0xf01b34 0xf01b34 0xf01b34 290 0xf01b34 0xf01b34 0xf01b34 0xf01b34 >; 291 wuc-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 292 BIT(4) BIT(5) BIT(6) BIT(7)>; 293 has-volt-sel = <1 1 1 1 1 1 1 1>; 294 #gpio-cells = <2>; 295 }; 296 297 gpiok: gpio@f0160b { 298 compatible = "ite,it8xxx2-gpio-v2"; 299 reg = <0x00f0160b 1 /* GPDR (set) */ 300 0x00f01622 1 /* GPDMR (get) */ 301 0x00f0163a 1 /* GPOTR */ 302 0x00f01652 1 /* P18SCR */ 303 0x00f016b0 8>; /* GPCR */ 304 ngpios = <8>; 305 gpio-controller; 306 interrupts = <IT8XXX2_IRQ_WU50 IRQ_TYPE_LEVEL_HIGH 307 IT8XXX2_IRQ_WU51 IRQ_TYPE_LEVEL_HIGH 308 IT8XXX2_IRQ_WU52 IRQ_TYPE_LEVEL_HIGH 309 IT8XXX2_IRQ_WU53 IRQ_TYPE_LEVEL_HIGH 310 IT8XXX2_IRQ_WU54 IRQ_TYPE_LEVEL_HIGH 311 IT8XXX2_IRQ_WU55 IRQ_TYPE_LEVEL_HIGH 312 IT8XXX2_IRQ_WU56 IRQ_TYPE_LEVEL_HIGH 313 IT8XXX2_IRQ_WU57 IRQ_TYPE_LEVEL_HIGH>; 314 interrupt-parent = <&intc>; 315 wuc-base = <0xf01b10 0xf01b10 0xf01b10 0xf01b10 316 0xf01b10 0xf01b10 0xf01b10 0xf01b10>; 317 wuc-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 318 BIT(4) BIT(5) BIT(6) BIT(7) >; 319 has-volt-sel = <1 1 1 1 1 1 1 1>; 320 #gpio-cells = <2>; 321 }; 322 323 gpiol: gpio@f0160c { 324 compatible = "ite,it8xxx2-gpio-v2"; 325 reg = <0x00f0160c 1 /* GPDR (set) */ 326 0x00f01623 1 /* GPDMR (get) */ 327 0x00f0163b 1 /* GPOTR */ 328 0x00f01653 1 /* P18SCR */ 329 0x00f016b8 8>; /* GPCR */ 330 ngpios = <8>; 331 gpio-controller; 332 interrupts = <IT8XXX2_IRQ_WU136 IRQ_TYPE_LEVEL_HIGH 333 IT8XXX2_IRQ_WU137 IRQ_TYPE_LEVEL_HIGH 334 IT8XXX2_IRQ_WU138 IRQ_TYPE_LEVEL_HIGH 335 IT8XXX2_IRQ_WU139 IRQ_TYPE_LEVEL_HIGH 336 IT8XXX2_IRQ_WU140 IRQ_TYPE_LEVEL_HIGH 337 IT8XXX2_IRQ_WU141 IRQ_TYPE_LEVEL_HIGH 338 IT8XXX2_IRQ_WU142 IRQ_TYPE_LEVEL_HIGH 339 IT8XXX2_IRQ_WU143 IRQ_TYPE_LEVEL_HIGH>; 340 interrupt-parent = <&intc>; 341 wuc-base = <0xf01b38 0xf01b38 0xf01b38 0xf01b38 342 0xf01b38 0xf01b38 0xf01b38 0xf01b38>; 343 wuc-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 344 BIT(4) BIT(5) BIT(6) BIT(7) >; 345 has-volt-sel = <1 1 1 1 1 1 1 1>; 346 #gpio-cells = <2>; 347 }; 348 349 gpiom: gpio@f0160d { 350 compatible = "ite,it8xxx2-gpio-v2"; 351 reg = <0x00f0160d 1 /* GPDR (set) */ 352 0x00f01624 1 /* GPDMR (get) */ 353 0x00f0163c 1 /* GPOTR */ 354 0x00f01654 1 /* P18SCR */ 355 0x00f016c0 8>; /* GPCR */ 356 ngpios = <7>; 357 gpio-controller; 358 interrupts = <IT8XXX2_IRQ_WU144 IRQ_TYPE_LEVEL_HIGH 359 IT8XXX2_IRQ_WU145 IRQ_TYPE_LEVEL_HIGH 360 IT8XXX2_IRQ_WU146 IRQ_TYPE_LEVEL_HIGH 361 IT8XXX2_IRQ_WU147 IRQ_TYPE_LEVEL_HIGH 362 IT8XXX2_IRQ_WU148 IRQ_TYPE_LEVEL_HIGH 363 IT8XXX2_IRQ_WU149 IRQ_TYPE_LEVEL_HIGH 364 IT8XXX2_IRQ_WU150 IRQ_TYPE_LEVEL_HIGH 365 NO_FUNC 0>; 366 interrupt-parent = <&intc>; 367 wuc-base = <0xf01b3c 0xf01b3c 0xf01b3c 0xf01b3c 368 0xf01b3c 0xf01b3c 0xf01b3c NO_FUNC >; 369 wuc-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 370 BIT(4) BIT(5) BIT(6) 0 >; 371 has-volt-sel = <1 1 1 1 1 1 1 0>; 372 #gpio-cells = <2>; 373 }; 374 375 gpioksi: gpio@f01d08 { 376 compatible = "ite,it8xxx2-gpio-v2"; 377 reg = <0x00f01d08 1 /* GPDR (set) */ 378 0x00f01d09 1 /* GPDMR (get) */ 379 0x00f01d2c 1 /* GPOTR */ 380 NO_FUNC 1 /* P18SCR */ 381 0x00f01d40 8>; /* GPCR */ 382 ngpios = <8>; 383 gpio-controller; 384 interrupts = <NO_FUNC 0 385 NO_FUNC 0 386 NO_FUNC 0 387 NO_FUNC 0 388 NO_FUNC 0 389 NO_FUNC 0 390 NO_FUNC 0 391 NO_FUNC 0>; 392 interrupt-parent = <&intc>; 393 keyboard-controller; 394 #gpio-cells = <2>; 395 }; 396 397 gpioksoh: gpio@f01d01 { 398 compatible = "ite,it8xxx2-gpio-v2"; 399 reg = <0x00f01d01 1 /* GPDR (set) */ 400 0x00f01d0c 1 /* GPDMR (get) */ 401 0x00f01d2d 1 /* GPOTR */ 402 NO_FUNC 1 /* P18SCR */ 403 0x00f01d50 8>; /* GPCR */ 404 ngpios = <8>; 405 gpio-controller; 406 interrupts = <NO_FUNC 0 407 NO_FUNC 0 408 NO_FUNC 0 409 NO_FUNC 0 410 NO_FUNC 0 411 NO_FUNC 0 412 NO_FUNC 0 413 NO_FUNC 0>; 414 interrupt-parent = <&intc>; 415 keyboard-controller; 416 #gpio-cells = <2>; 417 }; 418 419 gpioksol: gpio@f01d00 { 420 compatible = "ite,it8xxx2-gpio-v2"; 421 reg = <0x00f01d00 1 /* GPDR (set) */ 422 0x00f01d0f 1 /* GPDMR (get) */ 423 0x00f01d2e 1 /* GPOTR */ 424 NO_FUNC 1 /* P18SCR */ 425 0x00f01d48 8>; /* GPCR */ 426 ngpios = <8>; 427 gpio-controller; 428 interrupts = <NO_FUNC 0 429 NO_FUNC 0 430 NO_FUNC 0 431 NO_FUNC 0 432 NO_FUNC 0 433 NO_FUNC 0 434 NO_FUNC 0 435 NO_FUNC 0>; 436 interrupt-parent = <&intc>; 437 keyboard-controller; 438 #gpio-cells = <2>; 439 }; 440 441 pinctrl: pin-controller { 442 compatible = "ite,it8xxx2-pinctrl"; 443 #address-cells = <1>; 444 #size-cells = <1>; 445 status = "okay"; 446 }; 447 448 pinctrla: pinctrl@f01660 { 449 compatible = "ite,it8xxx2-pinctrl-func"; 450 reg = <0x00f01660 8 /* GPCR */ 451 0x00f03e30 1>; /* PDSCA */ 452 func3-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 453 0xf02032 0xf02032 0xf03e10 0xf03e10>; 454 func3-en-mask = <0 0 0 0 455 0x02 0x02 0x10 0x0C >; 456 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 457 NO_FUNC NO_FUNC NO_FUNC NO_FUNC >; 458 func4-en-mask = <0 0 0 0 459 0 0 0 0 >; 460 volt-sel = <0xf01648 0xf01648 0xf01648 0xf01648 461 0xf01648 0xf01648 0xf01648 0xf01648>; 462 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 463 BIT(4) BIT(5) BIT(6) BIT(7) >; 464 #pinmux-cells = <2>; 465 gpio-group; 466 }; 467 468 pinctrlb: pinctrl@f01668 { 469 compatible = "ite,it8xxx2-pinctrl-func"; 470 reg = <0x00f01668 8 /* GPCR */ 471 0x00f03e31 1>; /* PDSCB */ 472 func3-gcr = <0xf03e15 0xf03e15 0xf03e11 NO_FUNC 473 NO_FUNC 0xf03e11 NO_FUNC NO_FUNC>; 474 func3-en-mask = <0x01 0x02 0x20 0 475 0 0x20 0 0 >; 476 func3-ext = <NO_FUNC NO_FUNC 0xf03e16 NO_FUNC 477 NO_FUNC 0xf03e16 NO_FUNC NO_FUNC>; 478 func3-ext-mask = <0 0 0x40 0 479 0 0x40 0 0 >; 480 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 481 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 482 func4-en-mask = <0 0 0 0 483 0 0 0 0 >; 484 volt-sel = <0xf01649 0xf01649 0xf01649 0xf01649 485 0xf01649 0xf01649 0xf01649 NO_FUNC>; 486 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 487 BIT(4) BIT(5) BIT(6) 0 >; 488 #pinmux-cells = <2>; 489 gpio-group; 490 }; 491 492 pinctrlc: pinctrl@f01670 { 493 compatible = "ite,it8xxx2-pinctrl-func"; 494 reg = <0x00f01670 8 /* GPCR */ 495 0x00f03e32 1>; /* PDSCC */ 496 func3-gcr = <NO_FUNC NO_FUNC NO_FUNC 0xf03e10 497 NO_FUNC 0xf03e10 NO_FUNC 0xf03e13>; 498 func3-en-mask = <0 0 0 0x10 499 0 0x10 0 0x02 >; 500 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 501 NO_FUNC NO_FUNC NO_FUNC 0xf03e16>; 502 func4-en-mask = <0 0 0 0 503 0 0 0 0x80 >; 504 volt-sel = <0xf0164a 0xf0164a 0xf0164a 0xf0164a 505 0xf0164a 0xf0164a 0xf0164a 0xf0164a>; 506 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 507 BIT(4) BIT(5) BIT(6) BIT(7) >; 508 #pinmux-cells = <2>; 509 gpio-group; 510 }; 511 512 pinctrld: pinctrl@f01678 { 513 compatible = "ite,it8xxx2-pinctrl-func"; 514 reg = <0x00f01678 8 /* GPCR */ 515 0x00f03e33 1>; /* PDSCD */ 516 func3-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 517 NO_FUNC 0xf03e10 NO_FUNC NO_FUNC>; 518 func3-en-mask = <0 0 0 0 519 0 0x02 0 0 >; 520 func4-gcr = <0xf03e16 NO_FUNC NO_FUNC NO_FUNC 521 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 522 func4-en-mask = <0x80 0 0 0 523 0 0 0 0 >; 524 volt-sel = <0xf0164b 0xf0164b 0xf0164b 0xf0164b 525 0xf0164b 0xf0164b 0xf0164b 0xf0164b>; 526 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 527 BIT(4) BIT(5) BIT(6) BIT(7) >; 528 #pinmux-cells = <2>; 529 gpio-group; 530 }; 531 532 pinctrle: pinctrl@f01680 { 533 compatible = "ite,it8xxx2-pinctrl-func"; 534 reg = <0x00f01680 8 /* GPCR */ 535 0x00f03e34 1>; /* PDSCE */ 536 func3-gcr = <NO_FUNC 0xf03e16 0xf03e16 NO_FUNC 537 NO_FUNC 0xf03e10 NO_FUNC NO_FUNC >; 538 func3-en-mask = <0 0x20 0x20 0 539 0 0x08 0 0 >; 540 func3-ext = <0xf02032 0xf02032 0xf02032 NO_FUNC 541 NO_FUNC NO_FUNC NO_FUNC 0xf02032>; 542 func3-ext-mask = <0x01 0x02 0x02 0 543 0 0 0 0x01 >; 544 func4-gcr = <0xf03e13 NO_FUNC NO_FUNC NO_FUNC 545 NO_FUNC NO_FUNC NO_FUNC NO_FUNC >; 546 func4-en-mask = <0x01 0 0 0 547 0 0 0 0 >; 548 volt-sel = <0xf0164c 0xf0164c 0xf0164c 0xf0164c 549 0xf0164c 0xf0164c 0xf0164c 0xf0164c>; 550 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 551 BIT(4) BIT(5) BIT(6) BIT(7) >; 552 #pinmux-cells = <2>; 553 gpio-group; 554 }; 555 556 pinctrlf: pinctrl@f01688 { 557 compatible = "ite,it8xxx2-pinctrl-func"; 558 reg = <0x00f01688 8 /* GPCR */ 559 0x00f03e35 1>; /* PDSCF */ 560 func3-gcr = <0xf03e15 0xf03e15 0xf03e10 0xf03e10 561 NO_FUNC NO_FUNC 0xf03e11 NO_FUNC>; 562 func3-en-mask = <0x04 0x08 0x02 0x02 563 0 0 0x10 0 >; 564 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 565 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 566 func4-en-mask = <0 0 0 0 567 0 0 0 0 >; 568 volt-sel = <0xf0164d 0xf0164d 0xf0164d 0xf0164d 569 0xf0164d 0xf0164d 0xf0164d 0xf0164d>; 570 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 571 BIT(4) BIT(5) BIT(6) BIT(7) >; 572 #pinmux-cells = <2>; 573 gpio-group; 574 }; 575 576 pinctrlg: pinctrl@f01690 { 577 compatible = "ite,it8xxx2-pinctrl-func"; 578 reg = <0x00f01690 8 /* GPCR */ 579 0x00f03e36 1>; /* PDSCG */ 580 func3-gcr = <0xf03e10 0xf03e10 0xf03e10 NO_FUNC 581 NO_FUNC NO_FUNC 0xf03e10 NO_FUNC>; 582 func3-en-mask = <0x20 0x08 0x10 0 583 0 0 0x02 0 >; 584 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 585 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 586 func4-en-mask = <0 0 0 0 587 0 0 0 0 >; 588 volt-sel = <0xf0164e 0xf0164e 0xf0164e NO_FUNC 589 NO_FUNC NO_FUNC 0xf0164e NO_FUNC >; 590 volt-sel-mask = <BIT(0) BIT(1) BIT(2) 0 591 0 0 BIT(6) 0 >; 592 #pinmux-cells = <2>; 593 gpio-group; 594 }; 595 596 pinctrlh: pinctrl@f01698 { 597 compatible = "ite,it8xxx2-pinctrl-func"; 598 reg = <0x00f01698 8 /* GPCR */ 599 0x00f03e37 1>; /* PDSCH */ 600 func3-gcr = <NO_FUNC 0xf03e11 0xf03e11 NO_FUNC 601 NO_FUNC 0 0 NO_FUNC>; 602 func3-en-mask = <0 0x20 0x20 0 603 0 0 0 0 >; 604 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 605 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 606 func4-en-mask = <0 0 0 0 607 0 0 0 0 >; 608 volt-sel = <0xf0164f 0xf0164f 0xf0164f 0xf0164f 609 0xf0164f 0xf0164f 0xf0164f NO_FUNC>; 610 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 611 BIT(4) BIT(5) BIT(6) 0 >; 612 #pinmux-cells = <2>; 613 gpio-group; 614 }; 615 616 pinctrli: pinctrl@f016a0 { 617 compatible = "ite,it8xxx2-pinctrl-func"; 618 reg = <0x00f016a0 8 /* GPCR */ 619 NO_FUNC 1>; 620 func3-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 621 NO_FUNC 0xf03e10 0xf03e10 0xf03e10>; 622 func3-en-mask = <0 0 0 0 623 0 0x08 0x08 0x08 >; 624 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 625 NO_FUNC NO_FUNC NO_FUNC NO_FUNC >; 626 func4-en-mask = <0 0 0 0 627 0 0 0 0 >; 628 volt-sel = <0xf01650 0xf01650 0xf01650 0xf01650 629 0xf01650 0xf01650 0xf01650 0xf01650>; 630 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 631 BIT(4) BIT(5) BIT(6) BIT(7) >; 632 #pinmux-cells = <2>; 633 gpio-group; 634 }; 635 636 pinctrlj: pinctrl@f016a8 { 637 compatible = "ite,it8xxx2-pinctrl-func"; 638 reg = <0x00f016a8 8 /* GPCR */ 639 0x00f03e39 1>; /* PDSCJ */ 640 func3-gcr = <0xf03e14 NO_FUNC 0xf03e14 0xf03e14 641 0xf03e10 0xf03e10 NO_FUNC NO_FUNC>; 642 func3-en-mask = <0x01 0 0x01 0x02 643 0x02 0x03 0 0 >; 644 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 645 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 646 func4-en-mask = <0 0 0 0 647 0 0 0 0 >; 648 volt-sel = <0xf01651 0xf01651 0xf01651 0xf01651 649 0xf01651 0xf01651 NO_FUNC NO_FUNC >; 650 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 651 BIT(4) BIT(5) 0 0 >; 652 #pinmux-cells = <2>; 653 gpio-group; 654 }; 655 656 pinctrlk: pinctrl@f016b0 { 657 compatible = "ite,it8xxx2-pinctrl-func"; 658 reg = <0x00f016b0 8 /* GPCR */ 659 0x00f03e3A 1>; /* PDSCK */ 660 func3-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 661 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 662 func3-en-mask = <0 0 0 0 663 0 0 0 0 >; 664 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 665 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 666 func4-en-mask = <0 0 0 0 667 0 0 0 0 >; 668 volt-sel = <0xf01652 0xf01652 0xf01652 0xf01652 669 0xf01652 0xf01652 0xf01652 0xf01652>; 670 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 671 BIT(4) BIT(5) BIT(6) BIT(7) >; 672 #pinmux-cells = <2>; 673 gpio-group; 674 }; 675 676 pinctrll: pinctrl@f016b8 { 677 compatible = "ite,it8xxx2-pinctrl-func"; 678 reg = <0x00f016b8 8 /* GPCR */ 679 0x00f03e3B 1>; /* PDSCL */ 680 func3-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 681 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 682 func3-en-mask = <0 0 0 0 683 0 0 0 0 >; 684 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 685 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 686 func4-en-mask = <0 0 0 0 687 0 0 0 0 >; 688 volt-sel = <0xf01653 0xf01653 0xf01653 0xf01653 689 0xf01653 0xf01653 0xf01653 0xf01653>; 690 volt-sel-mask = <BIT(0) BIT(1) BIT(2) BIT(3) 691 BIT(4) BIT(5) BIT(6) BIT(7) >; 692 #pinmux-cells = <2>; 693 gpio-group; 694 }; 695 696 pinctrlm: pinctrl@f016c0 { 697 compatible = "ite,it8xxx2-pinctrl-func"; 698 reg = <0x00f016c0 8 /* GPCR */ 699 NO_FUNC 1>; 700 func3-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 701 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 702 func3-en-mask = <0 0 0 0 703 0 0 0 0 >; 704 func4-gcr = <NO_FUNC NO_FUNC NO_FUNC NO_FUNC 705 NO_FUNC NO_FUNC NO_FUNC NO_FUNC>; 706 func4-en-mask = <0 0 0 0 707 0 0 0 0 >; 708 volt-sel = <0xf03e2d 0xf03e2d 0xf03e2d 0xf03e2d 709 0xf03e2d 0xf03e2d 0xf03e2d NO_FUNC >; 710 volt-sel-mask = <BIT(4) BIT(4) BIT(4) BIT(4) 711 BIT(4) BIT(4) BIT(4) 0 >; 712 #pinmux-cells = <2>; 713 gpio-group; 714 }; 715 716 pinctrlksi: pinctrl@f01d40 { 717 compatible = "ite,it8xxx2-pinctrl-func"; 718 reg = <0x00f01d40 8 /* KSIGCTRL */ 719 0x00f01d05 1>; /* KSICTRL */ 720 pp-od-mask = <NO_FUNC>; 721 pullup-mask = <BIT(2)>; 722 #pinmux-cells = <2>; 723 }; 724 725 pinctrlksol: pinctrl@f01d48 { 726 compatible = "ite,it8xxx2-pinctrl-func"; 727 reg = <0x00f01d48 8 /* KSOLGCTRL */ 728 0x00f01d02 1>; /* KSOCTRL */ 729 pp-od-mask = <BIT(0)>; 730 pullup-mask = <BIT(2)>; 731 #pinmux-cells = <2>; 732 }; 733 734 pinctrlksoh: pinctrl@f01d50 { 735 compatible = "ite,it8xxx2-pinctrl-func"; 736 reg = <0x00f01d50 8 /* KSOHGCTRL */ 737 0x00f01d02 1>; /* KSOCTRL */ 738 pp-od-mask = <BIT(0)>; 739 pullup-mask = <BIT(2)>; 740 #pinmux-cells = <2>; 741 }; 742 743 wuc1: wakeup-controller@f01b00 { 744 compatible = "ite,it8xxx2-wuc"; 745 reg = <0x00f01b00 1 /* WUEMR1 */ 746 0x00f01b01 1 /* WUESR1 */ 747 0x00f01b02 1 /* WUENR1 */ 748 0x00f01b03 1>; /* WUBEMR1 */ 749 wakeup-controller; 750 #wuc-cells = <1>; 751 }; 752 753 wuc2: wakeup-controller@f01b04 { 754 compatible = "ite,it8xxx2-wuc"; 755 reg = <0x00f01b04 1 /* WUEMR2 */ 756 0x00f01b05 1 /* WUESR2 */ 757 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR2 */ 758 0x00f01b07 1>; /* WUBEMR2 */ 759 wakeup-controller; 760 #wuc-cells = <1>; 761 }; 762 763 wuc3: wakeup-controller@f01b08 { 764 compatible = "ite,it8xxx2-wuc"; 765 reg = <0x00f01b08 1 /* WUEMR3 */ 766 0x00f01b09 1 /* WUESR3 */ 767 0x00f01b0a 1 /* WUENR3 */ 768 0x00f01b0b 1>; /* WUBEMR3 */ 769 wakeup-controller; 770 #wuc-cells = <1>; 771 }; 772 773 wuc4: wakeup-controller@f01b0c { 774 compatible = "ite,it8xxx2-wuc"; 775 reg = <0x00f01b0c 1 /* WUEMR4 */ 776 0x00f01b0d 1 /* WUESR4 */ 777 0x00f01b0e 1 /* WUENR4 */ 778 0x00f01b0f 1>; /* WUBEMR4 */ 779 wakeup-controller; 780 #wuc-cells = <1>; 781 }; 782 783 wuc5: wakeup-controller@f01b10 { 784 compatible = "ite,it8xxx2-wuc"; 785 reg = <0x00f01b10 1 /* WUEMR5 */ 786 0x00f01b11 1 /* WUESR5 */ 787 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR5 */ 788 0x00f01b13 1>; /* WUBEMR5 */ 789 wakeup-controller; 790 #wuc-cells = <1>; 791 }; 792 793 wuc6: wakeup-controller@f01b14 { 794 compatible = "ite,it8xxx2-wuc"; 795 reg = <0x00f01b14 1 /* WUEMR6 */ 796 0x00f01b15 1 /* WUESR6 */ 797 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR6 */ 798 0x00f01b17 1>; /* WUBEMR6 */ 799 wakeup-controller; 800 #wuc-cells = <1>; 801 }; 802 803 wuc7: wakeup-controller@f01b18 { 804 compatible = "ite,it8xxx2-wuc"; 805 reg = <0x00f01b18 1 /* WUEMR7 */ 806 0x00f01b19 1 /* WUESR7 */ 807 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR7 */ 808 0x00f01b1b 1>; /* WUBEMR7 */ 809 wakeup-controller; 810 #wuc-cells = <1>; 811 }; 812 813 wuc8: wakeup-controller@f01b1c { 814 compatible = "ite,it8xxx2-wuc"; 815 reg = <0x00f01b1c 1 /* WUEMR8 */ 816 0x00f01b1d 1 /* WUESR8 */ 817 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR8 */ 818 0x00f01b1f 1>; /* WUBEMR8 */ 819 wakeup-controller; 820 #wuc-cells = <1>; 821 }; 822 823 wuc9: wakeup-controller@f01b20 { 824 compatible = "ite,it8xxx2-wuc"; 825 reg = <0x00f01b20 1 /* WUEMR9 */ 826 0x00f01b21 1 /* WUESR9 */ 827 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR9 */ 828 0x00f01b23 1>; /* WUBEMR9 */ 829 wakeup-controller; 830 #wuc-cells = <1>; 831 }; 832 833 wuc10: wakeup-controller@f01b24 { 834 compatible = "ite,it8xxx2-wuc"; 835 reg = <0x00f01b24 1 /* WUEMR10 */ 836 0x00f01b25 1 /* WUESR10 */ 837 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR10 */ 838 0x00f01b27 1>; /* WUBEMR10 */ 839 wakeup-controller; 840 #wuc-cells = <1>; 841 }; 842 843 wuc11: wakeup-controller@f01b28 { 844 compatible = "ite,it8xxx2-wuc"; 845 reg = <0x00f01b28 1 /* WUEMR11 */ 846 0x00f01b29 1 /* WUESR11 */ 847 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR11 */ 848 0x00f01b2b 1>; /* WUBEMR11 */ 849 wakeup-controller; 850 #wuc-cells = <1>; 851 }; 852 853 wuc12: wakeup-controller@f01b2c { 854 compatible = "ite,it8xxx2-wuc"; 855 reg = <0x00f01b2c 1 /* WUEMR12 */ 856 0x00f01b2d 1 /* WUESR12 */ 857 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR12 */ 858 0x00f01b2f 1>; /* WUBEMR12 */ 859 wakeup-controller; 860 #wuc-cells = <1>; 861 }; 862 863 wuc13: wakeup-controller@f01b30 { 864 compatible = "ite,it8xxx2-wuc"; 865 reg = <0x00f01b30 1 /* WUEMR13 */ 866 0x00f01b31 1 /* WUESR13 */ 867 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR13 */ 868 0x00f01b33 1>; /* WUBEMR13 */ 869 wakeup-controller; 870 #wuc-cells = <1>; 871 }; 872 873 wuc14: wakeup-controller@f01b34 { 874 compatible = "ite,it8xxx2-wuc"; 875 reg = <0x00f01b34 1 /* WUEMR14 */ 876 0x00f01b35 1 /* WUESR14 */ 877 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR14 */ 878 0x00f01b37 1>; /* WUBEMR14 */ 879 wakeup-controller; 880 #wuc-cells = <1>; 881 }; 882 883 wuc15: wakeup-controller@f01b38 { 884 compatible = "ite,it8xxx2-wuc"; 885 reg = <0x00f01b38 1 /* WUEMR15 */ 886 0x00f01b39 1 /* WUESR15 */ 887 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR15 */ 888 0x00f01b3b 1>; /* WUBEMR15 */ 889 wakeup-controller; 890 #wuc-cells = <1>; 891 }; 892 893 wuc16: wakeup-controller@f01b3c { 894 compatible = "ite,it8xxx2-wuc"; 895 reg = <0x00f01b3c 1 /* WUEMR16 */ 896 0x00f01b3d 1 /* WUESR16 */ 897 IT8XXX2_WUC_UNUSED_REG 1 /* WUENR16 */ 898 0x00f01b3f 1>; /* WUBEMR16 */ 899 wakeup-controller; 900 #wuc-cells = <1>; 901 }; 902 903 i2c0: i2c@f04300 { 904 compatible = "ite,enhance-i2c"; 905 #address-cells = <1>; 906 #size-cells = <0>; 907 reg = <0x00f04300 0x0080>; 908 interrupts = <IT8XXX2_IRQ_SMB_A IRQ_TYPE_LEVEL_HIGH>; 909 interrupt-parent = <&intc>; 910 status = "disabled"; 911 port-num = <SMB_CHANNEL_A>; 912 channel-switch-sel = <I2C_CHA_LOCATE>; 913 scl-gpios = <&gpiob 3 0>; 914 sda-gpios = <&gpiob 4 0>; 915 clock-gate-offset = <CGC_OFFSET_SMBA>; 916 }; 917 918 i2c1: i2c@f04380 { 919 compatible = "ite,enhance-i2c"; 920 #address-cells = <1>; 921 #size-cells = <0>; 922 reg = <0x00f04380 0x0080>; 923 interrupts = <IT8XXX2_IRQ_SMB_B IRQ_TYPE_LEVEL_HIGH>; 924 interrupt-parent = <&intc>; 925 status = "disabled"; 926 port-num = <SMB_CHANNEL_B>; 927 channel-switch-sel = <I2C_CHB_LOCATE>; 928 scl-gpios = <&gpioc 1 0>; 929 sda-gpios = <&gpioc 2 0>; 930 clock-gate-offset = <CGC_OFFSET_SMBB>; 931 }; 932 933 i2c2: i2c@f04400 { 934 compatible = "ite,enhance-i2c"; 935 #address-cells = <1>; 936 #size-cells = <0>; 937 reg = <0x00f04400 0x0080>; 938 interrupts = <IT8XXX2_IRQ_SMB_C IRQ_TYPE_LEVEL_HIGH>; 939 interrupt-parent = <&intc>; 940 status = "disabled"; 941 port-num = <SMB_CHANNEL_C>; 942 channel-switch-sel = <I2C_CHC_LOCATE>; 943 scl-gpios = <&gpiof 6 0>; 944 sda-gpios = <&gpiof 7 0>; 945 clock-gate-offset = <CGC_OFFSET_SMBC>; 946 }; 947 948 i2c3: i2c@f04480 { 949 compatible = "ite,enhance-i2c"; 950 #address-cells = <1>; 951 #size-cells = <0>; 952 reg = <0x00f04480 0x0080>; 953 interrupts = <IT8XXX2_IRQ_SMB_D IRQ_TYPE_LEVEL_HIGH>; 954 interrupt-parent = <&intc>; 955 status = "disabled"; 956 port-num = <I2C_CHANNEL_D>; 957 channel-switch-sel = <I2C_CHD_LOCATE>; 958 scl-gpios = <&gpioh 1 0>; 959 sda-gpios = <&gpioh 2 0>; 960 clock-gate-offset = <CGC_OFFSET_SMBD>; 961 }; 962 963 i2c4: i2c@f04500 { 964 compatible = "ite,enhance-i2c"; 965 #address-cells = <1>; 966 #size-cells = <0>; 967 reg = <0x00f04500 0x0080>; 968 interrupts = <IT8XXX2_IRQ_SMB_E IRQ_TYPE_LEVEL_HIGH>; 969 interrupt-parent = <&intc>; 970 status = "disabled"; 971 port-num = <I2C_CHANNEL_E>; 972 channel-switch-sel = <I2C_CHE_LOCATE>; 973 scl-gpios = <&gpioe 0 0>; 974 sda-gpios = <&gpioe 7 0>; 975 clock-gate-offset = <CGC_OFFSET_SMBE>; 976 }; 977 978 i2c5: i2c@f04580 { 979 compatible = "ite,enhance-i2c"; 980 #address-cells = <1>; 981 #size-cells = <0>; 982 reg = <0x00f04580 0x0080>; 983 interrupts = <IT8XXX2_IRQ_SMB_F IRQ_TYPE_LEVEL_HIGH>; 984 interrupt-parent = <&intc>; 985 status = "disabled"; 986 port-num = <I2C_CHANNEL_F>; 987 channel-switch-sel = <I2C_CHF_LOCATE>; 988 scl-gpios = <&gpioa 4 0>; 989 sda-gpios = <&gpioa 5 0>; 990 clock-gate-offset = <CGC_OFFSET_SMBF>; 991 }; 992 993 ite_uart2_wrapper: uartwrapper@f02820 { 994 compatible = "ite,it8xxx2-uart"; 995 reg = <0x00f02820 0x0020>; 996 status = "disabled"; 997 port-num = <2>; 998 gpios = <&gpiof 0 0>; 999 uart-dev = <&uart2>; 1000 }; 1001 1002 usb0: usbd@f02f00 { 1003 compatible = "ite,it82xx2-usb"; 1004 interrupts = <IT8XXX2_IRQ_USB IRQ_TYPE_LEVEL_HIGH 1005 IT8XXX2_IRQ_WU90 IRQ_TYPE_LEVEL_HIGH>; 1006 interrupt-parent = <&intc>; 1007 wucctrl = <&wuc_wu90>; 1008 reg = <0x00f02f00 256>; 1009 status = "disabled"; 1010 num-bidir-endpoints = <1>; 1011 num-in-endpoints = <10>; 1012 num-out-endpoints = <5>; 1013 }; 1014 1015 sha0: crypto@f03c00 { 1016 compatible = "ite,it8xxx2-sha-v2"; 1017 reg = <0x00f03c00 0x5>; 1018 status = "disabled"; 1019 }; 1020 1021 spi0: spi@f02600 { 1022 #address-cells = <1>; 1023 #size-cells = <0>; 1024 compatible = "ite,it8xxx2-spi"; 1025 reg = <0x00f02600 0x34>; 1026 interrupt-parent = <&intc>; 1027 interrupts = <37 IRQ_TYPE_EDGE_RISING>; 1028 status = "disabled"; 1029 }; 1030 }; 1031}; 1032