| .. | .. |
|---|
| 61 | 61 | |
|---|
| 62 | 62 | gpio-keys { |
|---|
| 63 | 63 | compatible = "gpio-keys-polled"; |
|---|
| 64 | | - pinctrl-names = "default"; |
|---|
| 65 | | - pinctrl-0 = <&key_pins_inet9f>; |
|---|
| 66 | 64 | poll-interval = <20>; |
|---|
| 67 | 65 | |
|---|
| 68 | 66 | left-joystick-left { |
|---|
| .. | .. |
|---|
| 70 | 68 | linux,code = <ABS_X>; |
|---|
| 71 | 69 | linux,input-type = <EV_ABS>; |
|---|
| 72 | 70 | linux,input-value = <0xffffffff>; /* -1 */ |
|---|
| 73 | | - gpios = <&pio 0 6 GPIO_ACTIVE_LOW>; /* PA6 */ |
|---|
| 71 | + gpios = <&pio 0 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA6 */ |
|---|
| 74 | 72 | }; |
|---|
| 75 | 73 | |
|---|
| 76 | 74 | left-joystick-right { |
|---|
| .. | .. |
|---|
| 78 | 76 | linux,code = <ABS_X>; |
|---|
| 79 | 77 | linux,input-type = <EV_ABS>; |
|---|
| 80 | 78 | linux,input-value = <1>; |
|---|
| 81 | | - gpios = <&pio 0 5 GPIO_ACTIVE_LOW>; /* PA5 */ |
|---|
| 79 | + gpios = <&pio 0 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA5 */ |
|---|
| 82 | 80 | }; |
|---|
| 83 | 81 | |
|---|
| 84 | 82 | left-joystick-up { |
|---|
| .. | .. |
|---|
| 86 | 84 | linux,code = <ABS_Y>; |
|---|
| 87 | 85 | linux,input-type = <EV_ABS>; |
|---|
| 88 | 86 | linux,input-value = <0xffffffff>; /* -1 */ |
|---|
| 89 | | - gpios = <&pio 0 8 GPIO_ACTIVE_LOW>; /* PA8 */ |
|---|
| 87 | + gpios = <&pio 0 8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA8 */ |
|---|
| 90 | 88 | }; |
|---|
| 91 | 89 | |
|---|
| 92 | 90 | left-joystick-down { |
|---|
| .. | .. |
|---|
| 94 | 92 | linux,code = <ABS_Y>; |
|---|
| 95 | 93 | linux,input-type = <EV_ABS>; |
|---|
| 96 | 94 | linux,input-value = <1>; |
|---|
| 97 | | - gpios = <&pio 0 9 GPIO_ACTIVE_LOW>; /* PA9 */ |
|---|
| 95 | + gpios = <&pio 0 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA9 */ |
|---|
| 98 | 96 | }; |
|---|
| 99 | 97 | |
|---|
| 100 | 98 | right-joystick-left { |
|---|
| .. | .. |
|---|
| 102 | 100 | linux,code = <ABS_Z>; |
|---|
| 103 | 101 | linux,input-type = <EV_ABS>; |
|---|
| 104 | 102 | linux,input-value = <0xffffffff>; /* -1 */ |
|---|
| 105 | | - gpios = <&pio 0 1 GPIO_ACTIVE_LOW>; /* PA1 */ |
|---|
| 103 | + gpios = <&pio 0 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA1 */ |
|---|
| 106 | 104 | }; |
|---|
| 107 | 105 | |
|---|
| 108 | 106 | right-joystick-right { |
|---|
| .. | .. |
|---|
| 110 | 108 | linux,code = <ABS_Z>; |
|---|
| 111 | 109 | linux,input-type = <EV_ABS>; |
|---|
| 112 | 110 | linux,input-value = <1>; |
|---|
| 113 | | - gpios = <&pio 0 0 GPIO_ACTIVE_LOW>; /* PA0 */ |
|---|
| 111 | + gpios = <&pio 0 0 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA0 */ |
|---|
| 114 | 112 | }; |
|---|
| 115 | 113 | |
|---|
| 116 | 114 | right-joystick-up { |
|---|
| .. | .. |
|---|
| 118 | 116 | linux,code = <ABS_RZ>; |
|---|
| 119 | 117 | linux,input-type = <EV_ABS>; |
|---|
| 120 | 118 | linux,input-value = <0xffffffff>; /* -1 */ |
|---|
| 121 | | - gpios = <&pio 0 3 GPIO_ACTIVE_LOW>; /* PA3 */ |
|---|
| 119 | + gpios = <&pio 0 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA3 */ |
|---|
| 122 | 120 | }; |
|---|
| 123 | 121 | |
|---|
| 124 | 122 | right-joystick-down { |
|---|
| .. | .. |
|---|
| 126 | 124 | linux,code = <ABS_RZ>; |
|---|
| 127 | 125 | linux,input-type = <EV_ABS>; |
|---|
| 128 | 126 | linux,input-value = <1>; |
|---|
| 129 | | - gpios = <&pio 0 4 GPIO_ACTIVE_LOW>; /* PA4 */ |
|---|
| 127 | + gpios = <&pio 0 4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA4 */ |
|---|
| 130 | 128 | }; |
|---|
| 131 | 129 | |
|---|
| 132 | 130 | dpad-left { |
|---|
| .. | .. |
|---|
| 134 | 132 | linux,code = <ABS_HAT0X>; |
|---|
| 135 | 133 | linux,input-type = <EV_ABS>; |
|---|
| 136 | 134 | linux,input-value = <0xffffffff>; /* -1 */ |
|---|
| 137 | | - gpios = <&pio 7 23 GPIO_ACTIVE_LOW>; /* PH23 */ |
|---|
| 135 | + gpios = <&pio 7 23 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PH23 */ |
|---|
| 138 | 136 | }; |
|---|
| 139 | 137 | |
|---|
| 140 | 138 | dpad-right { |
|---|
| .. | .. |
|---|
| 142 | 140 | linux,code = <ABS_HAT0X>; |
|---|
| 143 | 141 | linux,input-type = <EV_ABS>; |
|---|
| 144 | 142 | linux,input-value = <1>; |
|---|
| 145 | | - gpios = <&pio 7 24 GPIO_ACTIVE_LOW>; /* PH24 */ |
|---|
| 143 | + gpios = <&pio 7 24 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PH24 */ |
|---|
| 146 | 144 | }; |
|---|
| 147 | 145 | |
|---|
| 148 | 146 | dpad-up { |
|---|
| .. | .. |
|---|
| 150 | 148 | linux,code = <ABS_HAT0Y>; |
|---|
| 151 | 149 | linux,input-type = <EV_ABS>; |
|---|
| 152 | 150 | linux,input-value = <0xffffffff>; /* -1 */ |
|---|
| 153 | | - gpios = <&pio 7 25 GPIO_ACTIVE_LOW>; /* PH25 */ |
|---|
| 151 | + gpios = <&pio 7 25 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PH25 */ |
|---|
| 154 | 152 | }; |
|---|
| 155 | 153 | |
|---|
| 156 | 154 | dpad-down { |
|---|
| .. | .. |
|---|
| 158 | 156 | linux,code = <ABS_HAT0Y>; |
|---|
| 159 | 157 | linux,input-type = <EV_ABS>; |
|---|
| 160 | 158 | linux,input-value = <1>; |
|---|
| 161 | | - gpios = <&pio 7 26 GPIO_ACTIVE_LOW>; /* PH26 */ |
|---|
| 159 | + gpios = <&pio 7 26 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PH26 */ |
|---|
| 162 | 160 | }; |
|---|
| 163 | 161 | |
|---|
| 164 | 162 | x { |
|---|
| 165 | 163 | label = "Button X"; |
|---|
| 166 | 164 | linux,code = <BTN_X>; |
|---|
| 167 | | - gpios = <&pio 0 16 GPIO_ACTIVE_LOW>; /* PA16 */ |
|---|
| 165 | + gpios = <&pio 0 16 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA16 */ |
|---|
| 168 | 166 | }; |
|---|
| 169 | 167 | |
|---|
| 170 | 168 | y { |
|---|
| 171 | 169 | label = "Button Y"; |
|---|
| 172 | 170 | linux,code = <BTN_Y>; |
|---|
| 173 | | - gpios = <&pio 0 14 GPIO_ACTIVE_LOW>; /* PA14 */ |
|---|
| 171 | + gpios = <&pio 0 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA14 */ |
|---|
| 174 | 172 | }; |
|---|
| 175 | 173 | |
|---|
| 176 | 174 | a { |
|---|
| 177 | 175 | label = "Button A"; |
|---|
| 178 | 176 | linux,code = <BTN_A>; |
|---|
| 179 | | - gpios = <&pio 0 17 GPIO_ACTIVE_LOW>; /* PA17 */ |
|---|
| 177 | + gpios = <&pio 0 17 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA17 */ |
|---|
| 180 | 178 | }; |
|---|
| 181 | 179 | |
|---|
| 182 | 180 | b { |
|---|
| 183 | 181 | label = "Button B"; |
|---|
| 184 | 182 | linux,code = <BTN_B>; |
|---|
| 185 | | - gpios = <&pio 0 15 GPIO_ACTIVE_LOW>; /* PA15 */ |
|---|
| 183 | + gpios = <&pio 0 15 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA15 */ |
|---|
| 186 | 184 | }; |
|---|
| 187 | 185 | |
|---|
| 188 | 186 | select { |
|---|
| 189 | 187 | label = "Select Button"; |
|---|
| 190 | 188 | linux,code = <BTN_SELECT>; |
|---|
| 191 | | - gpios = <&pio 0 11 GPIO_ACTIVE_LOW>; /* PA11 */ |
|---|
| 189 | + gpios = <&pio 0 11 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA11 */ |
|---|
| 192 | 190 | }; |
|---|
| 193 | 191 | |
|---|
| 194 | 192 | start { |
|---|
| 195 | 193 | label = "Start Button"; |
|---|
| 196 | 194 | linux,code = <BTN_START>; |
|---|
| 197 | | - gpios = <&pio 0 12 GPIO_ACTIVE_LOW>; /* PA12 */ |
|---|
| 195 | + gpios = <&pio 0 12 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA12 */ |
|---|
| 198 | 196 | }; |
|---|
| 199 | 197 | |
|---|
| 200 | 198 | top-left { |
|---|
| 201 | 199 | label = "Top Left Button"; |
|---|
| 202 | 200 | linux,code = <BTN_TL>; |
|---|
| 203 | | - gpios = <&pio 7 22 GPIO_ACTIVE_LOW>; /* PH22 */ |
|---|
| 201 | + gpios = <&pio 7 22 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PH22 */ |
|---|
| 204 | 202 | }; |
|---|
| 205 | 203 | |
|---|
| 206 | 204 | top-right { |
|---|
| 207 | 205 | label = "Top Right Button"; |
|---|
| 208 | 206 | linux,code = <BTN_TR>; |
|---|
| 209 | | - gpios = <&pio 0 13 GPIO_ACTIVE_LOW>; /* PA13 */ |
|---|
| 207 | + gpios = <&pio 0 13 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PA13 */ |
|---|
| 210 | 208 | }; |
|---|
| 211 | 209 | }; |
|---|
| 212 | 210 | }; |
|---|
| .. | .. |
|---|
| 306 | 304 | status = "okay"; |
|---|
| 307 | 305 | }; |
|---|
| 308 | 306 | |
|---|
| 309 | | -&pio { |
|---|
| 310 | | - key_pins_inet9f: key-pins { |
|---|
| 311 | | - pins = "PA0", "PA1", "PA3", "PA4", |
|---|
| 312 | | - "PA5", "PA6", "PA8", "PA9", |
|---|
| 313 | | - "PA11", "PA12", "PA13", |
|---|
| 314 | | - "PA14", "PA15", "PA16", "PA17", |
|---|
| 315 | | - "PH22", "PH23", "PH24", "PH25", "PH26"; |
|---|
| 316 | | - function = "gpio_in"; |
|---|
| 317 | | - bias-pull-up; |
|---|
| 318 | | - }; |
|---|
| 319 | | - |
|---|
| 320 | | - usb0_id_detect_pin: usb0-id-detect-pin { |
|---|
| 321 | | - pins = "PH4"; |
|---|
| 322 | | - function = "gpio_in"; |
|---|
| 323 | | - bias-pull-up; |
|---|
| 324 | | - }; |
|---|
| 325 | | - |
|---|
| 326 | | - usb0_vbus_detect_pin: usb0-vbus-detect-pin { |
|---|
| 327 | | - pins = "PH5"; |
|---|
| 328 | | - function = "gpio_in"; |
|---|
| 329 | | - bias-pull-down; |
|---|
| 330 | | - }; |
|---|
| 331 | | -}; |
|---|
| 332 | | - |
|---|
| 333 | 307 | ®_dcdc2 { |
|---|
| 334 | 308 | regulator-always-on; |
|---|
| 335 | 309 | regulator-min-microvolt = <1000000>; |
|---|
| .. | .. |
|---|
| 375 | 349 | }; |
|---|
| 376 | 350 | |
|---|
| 377 | 351 | &usbphy { |
|---|
| 378 | | - pinctrl-names = "default"; |
|---|
| 379 | | - pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>; |
|---|
| 380 | | - usb0_id_det-gpio = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */ |
|---|
| 381 | | - usb0_vbus_det-gpio = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */ |
|---|
| 352 | + usb0_id_det-gpios = <&pio 7 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PH4 */ |
|---|
| 353 | + usb0_vbus_det-gpios = <&pio 7 5 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; /* PH5 */ |
|---|
| 382 | 354 | usb0_vbus-supply = <®_usb0_vbus>; |
|---|
| 383 | 355 | usb2_vbus-supply = <®_usb2_vbus>; |
|---|
| 384 | 356 | status = "okay"; |
|---|