Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v5.5 1139 lines 29 kB view raw
1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright (C) 2013 Pavel Machek <pavel@ucw.cz> 4 * Copyright (C) 2013-2014 Aaro Koskinen <aaro.koskinen@iki.fi> 5 */ 6 7/dts-v1/; 8 9#include "omap34xx.dtsi" 10#include <dt-bindings/input/input.h> 11 12/* 13 * Default secure signed bootloader (Nokia X-Loader) does not enable L3 firewall 14 * for omap AES HW crypto support. When linux kernel try to access memory of AES 15 * blocks then kernel receive "Unhandled fault: external abort on non-linefetch" 16 * and crash. Until somebody fix omap-aes.c and omap_hwmod_3xxx_data.c code (no 17 * crash anymore) omap AES support will be disabled for all Nokia N900 devices. 18 * There is "unofficial" version of bootloader which enables AES in L3 firewall 19 * but it is not widely used and to prevent kernel crash rather AES is disabled. 20 * There is also no runtime detection code if AES is disabled in L3 firewall... 21 */ 22&aes { 23 status = "disabled"; 24}; 25 26/ { 27 model = "Nokia N900"; 28 compatible = "nokia,omap3-n900", "ti,omap3430", "ti,omap3"; 29 30 aliases { 31 i2c0; 32 i2c1 = &i2c1; 33 i2c2 = &i2c2; 34 i2c3 = &i2c3; 35 display0 = &lcd; 36 display1 = &tv; 37 }; 38 39 cpus { 40 cpu@0 { 41 cpu0-supply = <&vcc>; 42 }; 43 }; 44 45 leds { 46 compatible = "gpio-leds"; 47 heartbeat { 48 label = "debug::sleep"; 49 gpios = <&gpio6 2 GPIO_ACTIVE_HIGH>; /* 162 */ 50 linux,default-trigger = "default-on"; 51 pinctrl-names = "default"; 52 pinctrl-0 = <&debug_leds>; 53 }; 54 }; 55 56 memory@80000000 { 57 device_type = "memory"; 58 reg = <0x80000000 0x10000000>; /* 256 MB */ 59 }; 60 61 gpio_keys { 62 compatible = "gpio-keys"; 63 64 camera_lens_cover { 65 label = "Camera Lens Cover"; 66 gpios = <&gpio4 14 GPIO_ACTIVE_LOW>; /* 110 */ 67 linux,input-type = <EV_SW>; 68 linux,code = <SW_CAMERA_LENS_COVER>; 69 linux,can-disable; 70 }; 71 72 camera_focus { 73 label = "Camera Focus"; 74 gpios = <&gpio3 4 GPIO_ACTIVE_LOW>; /* 68 */ 75 linux,code = <KEY_CAMERA_FOCUS>; 76 linux,can-disable; 77 }; 78 79 camera_capture { 80 label = "Camera Capture"; 81 gpios = <&gpio3 5 GPIO_ACTIVE_LOW>; /* 69 */ 82 linux,code = <KEY_CAMERA>; 83 linux,can-disable; 84 }; 85 86 lock_button { 87 label = "Lock Button"; 88 gpios = <&gpio4 17 GPIO_ACTIVE_LOW>; /* 113 */ 89 linux,code = <KEY_SCREENLOCK>; 90 linux,can-disable; 91 }; 92 93 keypad_slide { 94 label = "Keypad Slide"; 95 gpios = <&gpio3 7 GPIO_ACTIVE_LOW>; /* 71 */ 96 linux,input-type = <EV_SW>; 97 linux,code = <SW_KEYPAD_SLIDE>; 98 linux,can-disable; 99 }; 100 101 proximity_sensor { 102 label = "Proximity Sensor"; 103 gpios = <&gpio3 25 GPIO_ACTIVE_HIGH>; /* 89 */ 104 linux,input-type = <EV_SW>; 105 linux,code = <SW_FRONT_PROXIMITY>; 106 linux,can-disable; 107 }; 108 }; 109 110 isp1707: isp1707 { 111 compatible = "nxp,isp1707"; 112 nxp,enable-gpio = <&gpio3 3 GPIO_ACTIVE_HIGH>; 113 usb-phy = <&usb2_phy>; 114 }; 115 116 tv: connector { 117 compatible = "composite-video-connector"; 118 label = "tv"; 119 120 port { 121 tv_connector_in: endpoint { 122 remote-endpoint = <&venc_out>; 123 }; 124 }; 125 }; 126 127 sound: n900-audio { 128 compatible = "nokia,n900-audio"; 129 130 nokia,cpu-dai = <&mcbsp2>; 131 nokia,audio-codec = <&tlv320aic3x>, <&tlv320aic3x_aux>; 132 nokia,headphone-amplifier = <&tpa6130a2>; 133 134 tvout-selection-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>; /* 40 */ 135 jack-detection-gpios = <&gpio6 17 GPIO_ACTIVE_HIGH>; /* 177 */ 136 eci-switch-gpios = <&gpio6 22 GPIO_ACTIVE_HIGH>; /* 182 */ 137 speaker-amplifier-gpios = <&twl_gpio 7 GPIO_ACTIVE_HIGH>; 138 }; 139 140 battery: n900-battery { 141 compatible = "nokia,n900-battery"; 142 io-channels = <&twl_madc 0>, <&twl_madc 4>, <&twl_madc 12>; 143 io-channel-names = "temp", "bsi", "vbat"; 144 }; 145 146 pwm9: dmtimer-pwm { 147 compatible = "ti,omap-dmtimer-pwm"; 148 #pwm-cells = <3>; 149 ti,timers = <&timer9>; 150 ti,clock-source = <0x00>; /* timer_sys_ck */ 151 }; 152 153 ir: n900-ir { 154 compatible = "nokia,n900-ir"; 155 pwms = <&pwm9 0 26316 0>; /* 38000 Hz */ 156 }; 157 158 rom_rng: rng { 159 compatible = "nokia,n900-rom-rng"; 160 clocks = <&rng_ick>; 161 clock-names = "ick"; 162 }; 163 164 /* controlled (enabled/disabled) directly by bcm2048 and wl1251 */ 165 vctcxo: vctcxo { 166 compatible = "fixed-clock"; 167 #clock-cells = <0>; 168 clock-frequency = <38400000>; 169 }; 170}; 171 172&isp { 173 vdds_csib-supply = <&vaux2>; 174 175 pinctrl-names = "default"; 176 pinctrl-0 = <&camera_pins>; 177 178 ports { 179 port@1 { 180 reg = <1>; 181 182 csi_isp: endpoint { 183 remote-endpoint = <&csi_cam1>; 184 bus-type = <3>; /* CCP2 */ 185 clock-lanes = <1>; 186 data-lanes = <0>; 187 lane-polarity = <0 0>; 188 /* Select strobe = <1> for back camera, <0> for front camera */ 189 strobe = <1>; 190 }; 191 }; 192 }; 193}; 194 195&omap3_pmx_core { 196 pinctrl-names = "default"; 197 198 uart2_pins: pinmux_uart2_pins { 199 pinctrl-single,pins = < 200 OMAP3_CORE1_IOPAD(0x2174, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts */ 201 OMAP3_CORE1_IOPAD(0x2176, PIN_OUTPUT | MUX_MODE0) /* uart2_rts */ 202 OMAP3_CORE1_IOPAD(0x2178, PIN_OUTPUT | MUX_MODE0) /* uart2_tx */ 203 OMAP3_CORE1_IOPAD(0x217a, PIN_INPUT | MUX_MODE0) /* uart2_rx */ 204 >; 205 }; 206 207 uart3_pins: pinmux_uart3_pins { 208 pinctrl-single,pins = < 209 OMAP3_CORE1_IOPAD(0x219e, PIN_INPUT | MUX_MODE0) /* uart3_rx */ 210 OMAP3_CORE1_IOPAD(0x21a0, PIN_OUTPUT | MUX_MODE0) /* uart3_tx */ 211 >; 212 }; 213 214 ethernet_pins: pinmux_ethernet_pins { 215 pinctrl-single,pins = < 216 OMAP3_CORE1_IOPAD(0x20b4, PIN_INPUT_PULLDOWN | MUX_MODE4) /* gpmc_ncs3.gpio_54 */ 217 OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE4) /* dss_data16.gpio_86 */ 218 OMAP3_CORE1_IOPAD(0x219c, PIN_OUTPUT | MUX_MODE4) /* uart3_rts_sd.gpio_164 */ 219 >; 220 }; 221 222 gpmc_pins: pinmux_gpmc_pins { 223 pinctrl-single,pins = < 224 225 /* address lines */ 226 OMAP3_CORE1_IOPAD(0x207a, PIN_OUTPUT | MUX_MODE0) /* gpmc_a1.gpmc_a1 */ 227 OMAP3_CORE1_IOPAD(0x207c, PIN_OUTPUT | MUX_MODE0) /* gpmc_a2.gpmc_a2 */ 228 OMAP3_CORE1_IOPAD(0x207e, PIN_OUTPUT | MUX_MODE0) /* gpmc_a3.gpmc_a3 */ 229 230 /* data lines, gpmc_d0..d7 not muxable according to TRM */ 231 OMAP3_CORE1_IOPAD(0x209e, PIN_INPUT | MUX_MODE0) /* gpmc_d8.gpmc_d8 */ 232 OMAP3_CORE1_IOPAD(0x20a0, PIN_INPUT | MUX_MODE0) /* gpmc_d9.gpmc_d9 */ 233 OMAP3_CORE1_IOPAD(0x20a2, PIN_INPUT | MUX_MODE0) /* gpmc_d10.gpmc_d10 */ 234 OMAP3_CORE1_IOPAD(0x20a4, PIN_INPUT | MUX_MODE0) /* gpmc_d11.gpmc_d11 */ 235 OMAP3_CORE1_IOPAD(0x20a6, PIN_INPUT | MUX_MODE0) /* gpmc_d12.gpmc_d12 */ 236 OMAP3_CORE1_IOPAD(0x20a8, PIN_INPUT | MUX_MODE0) /* gpmc_d13.gpmc_d13 */ 237 OMAP3_CORE1_IOPAD(0x20aa, PIN_INPUT | MUX_MODE0) /* gpmc_d14.gpmc_d14 */ 238 OMAP3_CORE1_IOPAD(0x20ac, PIN_INPUT | MUX_MODE0) /* gpmc_d15.gpmc_d15 */ 239 240 /* 241 * gpmc_ncs0, gpmc_nadv_ale, gpmc_noe, gpmc_nwe, gpmc_wait0 not muxable 242 * according to TRM. OneNAND seems to require PIN_INPUT on clock. 243 */ 244 OMAP3_CORE1_IOPAD(0x20b0, PIN_OUTPUT | MUX_MODE0) /* gpmc_ncs1.gpmc_ncs1 */ 245 OMAP3_CORE1_IOPAD(0x20be, PIN_INPUT | MUX_MODE0) /* gpmc_clk.gpmc_clk */ 246 >; 247 }; 248 249 i2c1_pins: pinmux_i2c1_pins { 250 pinctrl-single,pins = < 251 OMAP3_CORE1_IOPAD(0x21ba, PIN_INPUT | MUX_MODE0) /* i2c1_scl */ 252 OMAP3_CORE1_IOPAD(0x21bc, PIN_INPUT | MUX_MODE0) /* i2c1_sda */ 253 >; 254 }; 255 256 i2c2_pins: pinmux_i2c2_pins { 257 pinctrl-single,pins = < 258 OMAP3_CORE1_IOPAD(0x21be, PIN_INPUT | MUX_MODE0) /* i2c2_scl */ 259 OMAP3_CORE1_IOPAD(0x21c0, PIN_INPUT | MUX_MODE0) /* i2c2_sda */ 260 >; 261 }; 262 263 i2c3_pins: pinmux_i2c3_pins { 264 pinctrl-single,pins = < 265 OMAP3_CORE1_IOPAD(0x21c2, PIN_INPUT | MUX_MODE0) /* i2c3_scl */ 266 OMAP3_CORE1_IOPAD(0x21c4, PIN_INPUT | MUX_MODE0) /* i2c3_sda */ 267 >; 268 }; 269 270 debug_leds: pinmux_debug_led_pins { 271 pinctrl-single,pins = < 272 OMAP3_CORE1_IOPAD(0x2198, PIN_OUTPUT | MUX_MODE4) /* mcbsp1_clkx.gpio_162 */ 273 >; 274 }; 275 276 mcspi4_pins: pinmux_mcspi4_pins { 277 pinctrl-single,pins = < 278 OMAP3_CORE1_IOPAD(0x218c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_clk */ 279 OMAP3_CORE1_IOPAD(0x2192, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_somi */ 280 OMAP3_CORE1_IOPAD(0x2190, PIN_OUTPUT | MUX_MODE1) /* mcspi4_simo */ 281 OMAP3_CORE1_IOPAD(0x2196, PIN_OUTPUT | MUX_MODE1) /* mcspi4_cs0 */ 282 >; 283 }; 284 285 mmc1_pins: pinmux_mmc1_pins { 286 pinctrl-single,pins = < 287 OMAP3_CORE1_IOPAD(0x2144, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk */ 288 OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_cmd */ 289 OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat0 */ 290 OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat1 */ 291 OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat2 */ 292 OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3 */ 293 >; 294 }; 295 296 mmc2_pins: pinmux_mmc2_pins { 297 pinctrl-single,pins = < 298 OMAP3_CORE1_IOPAD(0x2158, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_clk */ 299 OMAP3_CORE1_IOPAD(0x215a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_cmd */ 300 OMAP3_CORE1_IOPAD(0x215c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat0 */ 301 OMAP3_CORE1_IOPAD(0x215e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat1 */ 302 OMAP3_CORE1_IOPAD(0x2160, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat2 */ 303 OMAP3_CORE1_IOPAD(0x2162, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat3 */ 304 OMAP3_CORE1_IOPAD(0x2164, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat4 */ 305 OMAP3_CORE1_IOPAD(0x2166, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat5 */ 306 OMAP3_CORE1_IOPAD(0x2168, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat6 */ 307 OMAP3_CORE1_IOPAD(0x216a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat7 */ 308 >; 309 }; 310 311 acx565akm_pins: pinmux_acx565akm_pins { 312 pinctrl-single,pins = < 313 OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE4) /* RX51_LCD_RESET_GPIO */ 314 >; 315 }; 316 317 dss_sdi_pins: pinmux_dss_sdi_pins { 318 pinctrl-single,pins = < 319 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE1) /* dss_data10.sdi_dat1n */ 320 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE1) /* dss_data11.sdi_dat1p */ 321 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE1) /* dss_data12.sdi_dat2n */ 322 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE1) /* dss_data13.sdi_dat2p */ 323 324 OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE1) /* dss_data22.sdi_clkp */ 325 OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE1) /* dss_data23.sdi_clkn */ 326 >; 327 }; 328 329 wl1251_pins: pinmux_wl1251 { 330 pinctrl-single,pins = < 331 OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE4) /* gpio 87 => wl1251 enable */ 332 OMAP3_CORE1_IOPAD(0x208a, PIN_INPUT | MUX_MODE4) /* gpio 42 => wl1251 irq */ 333 >; 334 }; 335 336 ssi_pins: pinmux_ssi { 337 pinctrl-single,pins = < 338 OMAP3_CORE1_IOPAD(0x2180, PIN_INPUT_PULLUP | MUX_MODE1) /* ssi1_rdy_tx */ 339 OMAP3_CORE1_IOPAD(0x217e, PIN_OUTPUT | MUX_MODE1) /* ssi1_flag_tx */ 340 OMAP3_CORE1_IOPAD(0x2182, PIN_INPUT | MUX_MODE4) /* ssi1_wake_tx (cawake) */ 341 OMAP3_CORE1_IOPAD(0x217c, PIN_OUTPUT | MUX_MODE1) /* ssi1_dat_tx */ 342 OMAP3_CORE1_IOPAD(0x2184, PIN_INPUT | MUX_MODE1) /* ssi1_dat_rx */ 343 OMAP3_CORE1_IOPAD(0x2186, PIN_INPUT | MUX_MODE1) /* ssi1_flag_rx */ 344 OMAP3_CORE1_IOPAD(0x2188, PIN_OUTPUT | MUX_MODE1) /* ssi1_rdy_rx */ 345 OMAP3_CORE1_IOPAD(0x218a, PIN_OUTPUT | MUX_MODE1) /* ssi1_wake */ 346 >; 347 }; 348 349 modem_pins: pinmux_modem { 350 pinctrl-single,pins = < 351 OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE4) /* gpio 70 => cmt_apeslpx */ 352 OMAP3_CORE1_IOPAD(0x20e0, PIN_INPUT | MUX_MODE4) /* gpio 72 => ape_rst_rq */ 353 OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE4) /* gpio 73 => cmt_rst_rq */ 354 OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE4) /* gpio 74 => cmt_en */ 355 OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE4) /* gpio 75 => cmt_rst */ 356 OMAP3_CORE1_IOPAD(0x218e, PIN_OUTPUT | MUX_MODE4) /* gpio 157 => cmt_bsi */ 357 >; 358 }; 359 360 camera_pins: pinmux_camera { 361 pinctrl-single,pins = < 362 OMAP3_CORE1_IOPAD(0x210c, PIN_OUTPUT | MUX_MODE7) /* cam_hs */ 363 OMAP3_CORE1_IOPAD(0x210e, PIN_OUTPUT | MUX_MODE7) /* cam_vs */ 364 OMAP3_CORE1_IOPAD(0x2110, PIN_OUTPUT | MUX_MODE0) /* cam_xclka */ 365 OMAP3_CORE1_IOPAD(0x211e, PIN_OUTPUT | MUX_MODE7) /* cam_d4 */ 366 OMAP3_CORE1_IOPAD(0x2122, PIN_INPUT | MUX_MODE0) /* cam_d6 */ 367 OMAP3_CORE1_IOPAD(0x2124, PIN_INPUT | MUX_MODE0) /* cam_d7 */ 368 OMAP3_CORE1_IOPAD(0x2126, PIN_INPUT | MUX_MODE0) /* cam_d8 */ 369 OMAP3_CORE1_IOPAD(0x2128, PIN_INPUT | MUX_MODE0) /* cam_d9 */ 370 OMAP3_CORE1_IOPAD(0x212a, PIN_OUTPUT | MUX_MODE7) /* cam_d10 */ 371 OMAP3_CORE1_IOPAD(0x212e, PIN_OUTPUT | MUX_MODE7) /* cam_xclkb */ 372 OMAP3_CORE1_IOPAD(0x2132, PIN_OUTPUT | MUX_MODE0) /* cam_strobe */ 373 >; 374 }; 375}; 376 377&i2c1 { 378 pinctrl-names = "default"; 379 pinctrl-0 = <&i2c1_pins>; 380 381 clock-frequency = <2200000>; 382 383 twl: twl@48 { 384 reg = <0x48>; 385 interrupts = <7>; /* SYS_NIRQ cascaded to intc */ 386 interrupt-parent = <&intc>; 387 }; 388}; 389 390#include "twl4030.dtsi" 391#include "twl4030_omap3.dtsi" 392 393&vaux1 { 394 regulator-name = "V28"; 395 regulator-min-microvolt = <2800000>; 396 regulator-max-microvolt = <2800000>; 397 regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */ 398 regulator-always-on; /* due to battery cover sensor */ 399}; 400 401&vaux2 { 402 regulator-name = "VCSI"; 403 regulator-min-microvolt = <1800000>; 404 regulator-max-microvolt = <1800000>; 405 regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */ 406}; 407 408&vaux3 { 409 regulator-name = "VMMC2_30"; 410 regulator-min-microvolt = <2800000>; 411 regulator-max-microvolt = <3000000>; 412 regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */ 413}; 414 415&vaux4 { 416 regulator-name = "VCAM_ANA_28"; 417 regulator-min-microvolt = <2800000>; 418 regulator-max-microvolt = <2800000>; 419 regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */ 420}; 421 422&vmmc1 { 423 regulator-name = "VMMC1"; 424 regulator-min-microvolt = <1850000>; 425 regulator-max-microvolt = <3150000>; 426 regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */ 427}; 428 429&vmmc2 { 430 regulator-name = "V28_A"; 431 regulator-min-microvolt = <2800000>; 432 regulator-max-microvolt = <3000000>; 433 regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */ 434 regulator-always-on; /* due VIO leak to AIC34 VDDs */ 435}; 436 437&vpll1 { 438 regulator-name = "VPLL"; 439 regulator-min-microvolt = <1800000>; 440 regulator-max-microvolt = <1800000>; 441 regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */ 442 regulator-always-on; 443}; 444 445&vpll2 { 446 regulator-name = "VSDI_CSI"; 447 regulator-min-microvolt = <1800000>; 448 regulator-max-microvolt = <1800000>; 449 regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */ 450 regulator-always-on; 451}; 452 453&vsim { 454 regulator-name = "VMMC2_IO_18"; 455 regulator-min-microvolt = <1800000>; 456 regulator-max-microvolt = <1800000>; 457 regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */ 458}; 459 460&vio { 461 regulator-name = "VIO"; 462 regulator-min-microvolt = <1800000>; 463 regulator-max-microvolt = <1800000>; 464}; 465 466&vintana1 { 467 regulator-name = "VINTANA1"; 468 /* fixed to 1500000 */ 469 regulator-always-on; 470}; 471 472&vintana2 { 473 regulator-name = "VINTANA2"; 474 regulator-min-microvolt = <2750000>; 475 regulator-max-microvolt = <2750000>; 476 regulator-always-on; 477}; 478 479&vintdig { 480 regulator-name = "VINTDIG"; 481 /* fixed to 1500000 */ 482 regulator-always-on; 483}; 484 485&twl { 486 twl_audio: audio { 487 compatible = "ti,twl4030-audio"; 488 ti,enable-vibra = <1>; 489 }; 490 491 twl_power: power { 492 compatible = "ti,twl4030-power-n900", "ti,twl4030-power-idle-osc-off"; 493 ti,use_poweroff; 494 }; 495}; 496 497&twl_keypad { 498 linux,keymap = < MATRIX_KEY(0x00, 0x00, KEY_Q) 499 MATRIX_KEY(0x00, 0x01, KEY_O) 500 MATRIX_KEY(0x00, 0x02, KEY_P) 501 MATRIX_KEY(0x00, 0x03, KEY_COMMA) 502 MATRIX_KEY(0x00, 0x04, KEY_BACKSPACE) 503 MATRIX_KEY(0x00, 0x06, KEY_A) 504 MATRIX_KEY(0x00, 0x07, KEY_S) 505 506 MATRIX_KEY(0x01, 0x00, KEY_W) 507 MATRIX_KEY(0x01, 0x01, KEY_D) 508 MATRIX_KEY(0x01, 0x02, KEY_F) 509 MATRIX_KEY(0x01, 0x03, KEY_G) 510 MATRIX_KEY(0x01, 0x04, KEY_H) 511 MATRIX_KEY(0x01, 0x05, KEY_J) 512 MATRIX_KEY(0x01, 0x06, KEY_K) 513 MATRIX_KEY(0x01, 0x07, KEY_L) 514 515 MATRIX_KEY(0x02, 0x00, KEY_E) 516 MATRIX_KEY(0x02, 0x01, KEY_DOT) 517 MATRIX_KEY(0x02, 0x02, KEY_UP) 518 MATRIX_KEY(0x02, 0x03, KEY_ENTER) 519 MATRIX_KEY(0x02, 0x05, KEY_Z) 520 MATRIX_KEY(0x02, 0x06, KEY_X) 521 MATRIX_KEY(0x02, 0x07, KEY_C) 522 MATRIX_KEY(0x02, 0x08, KEY_F9) 523 524 MATRIX_KEY(0x03, 0x00, KEY_R) 525 MATRIX_KEY(0x03, 0x01, KEY_V) 526 MATRIX_KEY(0x03, 0x02, KEY_B) 527 MATRIX_KEY(0x03, 0x03, KEY_N) 528 MATRIX_KEY(0x03, 0x04, KEY_M) 529 MATRIX_KEY(0x03, 0x05, KEY_SPACE) 530 MATRIX_KEY(0x03, 0x06, KEY_SPACE) 531 MATRIX_KEY(0x03, 0x07, KEY_LEFT) 532 533 MATRIX_KEY(0x04, 0x00, KEY_T) 534 MATRIX_KEY(0x04, 0x01, KEY_DOWN) 535 MATRIX_KEY(0x04, 0x02, KEY_RIGHT) 536 MATRIX_KEY(0x04, 0x04, KEY_LEFTCTRL) 537 MATRIX_KEY(0x04, 0x05, KEY_RIGHTALT) 538 MATRIX_KEY(0x04, 0x06, KEY_LEFTSHIFT) 539 MATRIX_KEY(0x04, 0x08, KEY_F10) 540 541 MATRIX_KEY(0x05, 0x00, KEY_Y) 542 MATRIX_KEY(0x05, 0x08, KEY_F11) 543 544 MATRIX_KEY(0x06, 0x00, KEY_U) 545 546 MATRIX_KEY(0x07, 0x00, KEY_I) 547 MATRIX_KEY(0x07, 0x01, KEY_F7) 548 MATRIX_KEY(0x07, 0x02, KEY_F8) 549 >; 550}; 551 552&twl_gpio { 553 ti,pullups = <0x0>; 554 ti,pulldowns = <0x03ff3f>; /* BIT(0..5) | BIT(8..17) */ 555}; 556 557&i2c2 { 558 pinctrl-names = "default"; 559 pinctrl-0 = <&i2c2_pins>; 560 561 clock-frequency = <100000>; 562 563 tlv320aic3x: tlv320aic3x@18 { 564 compatible = "ti,tlv320aic3x"; 565 reg = <0x18>; 566 reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; /* 60 */ 567 ai3x-gpio-func = < 568 0 /* AIC3X_GPIO1_FUNC_DISABLED */ 569 5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */ 570 >; 571 572 AVDD-supply = <&vmmc2>; 573 DRVDD-supply = <&vmmc2>; 574 IOVDD-supply = <&vio>; 575 DVDD-supply = <&vio>; 576 577 ai3x-micbias-vg = <1>; 578 }; 579 580 tlv320aic3x_aux: tlv320aic3x@19 { 581 compatible = "ti,tlv320aic3x"; 582 reg = <0x19>; 583 reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; /* 60 */ 584 585 AVDD-supply = <&vmmc2>; 586 DRVDD-supply = <&vmmc2>; 587 IOVDD-supply = <&vio>; 588 DVDD-supply = <&vio>; 589 590 ai3x-micbias-vg = <2>; 591 }; 592 593 tsl2563: tsl2563@29 { 594 compatible = "amstaos,tsl2563"; 595 reg = <0x29>; 596 597 amstaos,cover-comp-gain = <16>; 598 }; 599 600 adp1653: led-controller@30 { 601 compatible = "adi,adp1653"; 602 reg = <0x30>; 603 enable-gpios = <&gpio3 24 GPIO_ACTIVE_HIGH>; /* 88 */ 604 605 flash { 606 flash-timeout-us = <500000>; 607 flash-max-microamp = <320000>; 608 led-max-microamp = <50000>; 609 }; 610 indicator { 611 led-max-microamp = <17500>; 612 }; 613 }; 614 615 lp5523: lp5523@32 { 616 compatible = "national,lp5523"; 617 reg = <0x32>; 618 clock-mode = /bits/ 8 <0>; /* LP55XX_CLOCK_AUTO */ 619 enable-gpio = <&gpio2 9 GPIO_ACTIVE_HIGH>; /* 41 */ 620 621 chan0 { 622 chan-name = "lp5523:kb1"; 623 led-cur = /bits/ 8 <50>; 624 max-cur = /bits/ 8 <100>; 625 }; 626 627 chan1 { 628 chan-name = "lp5523:kb2"; 629 led-cur = /bits/ 8 <50>; 630 max-cur = /bits/ 8 <100>; 631 }; 632 633 chan2 { 634 chan-name = "lp5523:kb3"; 635 led-cur = /bits/ 8 <50>; 636 max-cur = /bits/ 8 <100>; 637 }; 638 639 chan3 { 640 chan-name = "lp5523:kb4"; 641 led-cur = /bits/ 8 <50>; 642 max-cur = /bits/ 8 <100>; 643 }; 644 645 chan4 { 646 chan-name = "lp5523:b"; 647 led-cur = /bits/ 8 <50>; 648 max-cur = /bits/ 8 <100>; 649 }; 650 651 chan5 { 652 chan-name = "lp5523:g"; 653 led-cur = /bits/ 8 <50>; 654 max-cur = /bits/ 8 <100>; 655 }; 656 657 chan6 { 658 chan-name = "lp5523:r"; 659 led-cur = /bits/ 8 <50>; 660 max-cur = /bits/ 8 <100>; 661 }; 662 663 chan7 { 664 chan-name = "lp5523:kb5"; 665 led-cur = /bits/ 8 <50>; 666 max-cur = /bits/ 8 <100>; 667 }; 668 669 chan8 { 670 chan-name = "lp5523:kb6"; 671 led-cur = /bits/ 8 <50>; 672 max-cur = /bits/ 8 <100>; 673 }; 674 }; 675 676 bq27200: bq27200@55 { 677 compatible = "ti,bq27200"; 678 reg = <0x55>; 679 power-supplies = <&bq24150a>; 680 }; 681 682 /* Stereo headphone amplifier */ 683 tpa6130a2: tpa6130a2@60 { 684 compatible = "ti,tpa6130a2"; 685 reg = <0x60>; 686 687 Vdd-supply = <&vmmc2>; 688 689 power-gpio = <&gpio4 2 GPIO_ACTIVE_HIGH>; /* 98 */ 690 }; 691 692 si4713: si4713@63 { 693 compatible = "silabs,si4713"; 694 reg = <0x63>; 695 696 interrupts-extended = <&gpio2 21 IRQ_TYPE_EDGE_FALLING>; /* 53 */ 697 reset-gpios = <&gpio6 3 GPIO_ACTIVE_HIGH>; /* 163 */ 698 vio-supply = <&vio>; 699 vdd-supply = <&vaux1>; 700 }; 701 702 bq24150a: bq24150a@6b { 703 compatible = "ti,bq24150a"; 704 reg = <0x6b>; 705 706 ti,current-limit = <100>; 707 ti,weak-battery-voltage = <3400>; 708 ti,battery-regulation-voltage = <4200>; 709 ti,charge-current = <650>; 710 ti,termination-current = <100>; 711 ti,resistor-sense = <68>; 712 713 ti,usb-charger-detection = <&isp1707>; 714 }; 715}; 716 717&i2c3 { 718 pinctrl-names = "default"; 719 pinctrl-0 = <&i2c3_pins>; 720 721 clock-frequency = <400000>; 722 723 lis302dl: lis3lv02d@1d { 724 compatible = "st,lis3lv02d"; 725 reg = <0x1d>; 726 727 Vdd-supply = <&vaux1>; 728 Vdd_IO-supply = <&vio>; 729 730 interrupt-parent = <&gpio6>; 731 interrupts = <21 20>; /* 181 and 180 */ 732 733 /* click flags */ 734 st,click-single-x; 735 st,click-single-y; 736 st,click-single-z; 737 738 /* Limits are 0.5g * value */ 739 st,click-threshold-x = <8>; 740 st,click-threshold-y = <8>; 741 st,click-threshold-z = <10>; 742 743 /* Click must be longer than time limit */ 744 st,click-time-limit = <9>; 745 746 /* Kind of debounce filter */ 747 st,click-latency = <50>; 748 749 /* Interrupt line 2 for click detection */ 750 st,irq2-click; 751 752 st,wakeup-x-hi; 753 st,wakeup-y-hi; 754 st,wakeup-threshold = <(800/18)>; /* millig-value / 18 to get HW values */ 755 756 st,wakeup2-z-hi; 757 st,wakeup2-threshold = <(900/18)>; /* millig-value / 18 to get HW values */ 758 759 st,hipass1-disable; 760 st,hipass2-disable; 761 762 st,axis-x = <1>; /* LIS3_DEV_X */ 763 st,axis-y = <(-2)>; /* LIS3_INV_DEV_Y */ 764 st,axis-z = <(-3)>; /* LIS3_INV_DEV_Z */ 765 766 st,min-limit-x = <(-32)>; 767 st,min-limit-y = <3>; 768 st,min-limit-z = <3>; 769 770 st,max-limit-x = <(-3)>; 771 st,max-limit-y = <32>; 772 st,max-limit-z = <32>; 773 }; 774 775 cam1: camera@3e { 776 compatible = "toshiba,et8ek8"; 777 reg = <0x3e>; 778 779 vana-supply = <&vaux4>; 780 781 clocks = <&isp 0>; 782 clock-names = "extclk"; 783 clock-frequency = <9600000>; 784 785 reset-gpio = <&gpio4 6 GPIO_ACTIVE_HIGH>; /* 102 */ 786 787 lens-focus = <&ad5820>; 788 789 port { 790 csi_cam1: endpoint { 791 bus-type = <3>; /* CCP2 */ 792 strobe = <1>; 793 clock-inv = <0>; 794 crc = <1>; 795 796 remote-endpoint = <&csi_isp>; 797 }; 798 }; 799 }; 800 801 /* D/A converter for auto-focus */ 802 ad5820: dac@c { 803 compatible = "adi,ad5820"; 804 reg = <0x0c>; 805 806 VANA-supply = <&vaux4>; 807 808 #io-channel-cells = <0>; 809 }; 810}; 811 812&mmc1 { 813 pinctrl-names = "default"; 814 pinctrl-0 = <&mmc1_pins>; 815 vmmc-supply = <&vmmc1>; 816 bus-width = <4>; 817 /* For debugging, it is often good idea to remove this GPIO. 818 It means you can remove back cover (to reboot by removing 819 battery) and still use the MMC card. */ 820 cd-gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; /* 160 */ 821}; 822 823/* most boards use vaux3, only some old versions use vmmc2 instead */ 824&mmc2 { 825 pinctrl-names = "default"; 826 pinctrl-0 = <&mmc2_pins>; 827 vmmc-supply = <&vaux3>; 828 vqmmc-supply = <&vsim>; 829 bus-width = <8>; 830 non-removable; 831 no-sdio; 832 no-sd; 833}; 834 835&mmc3 { 836 status = "disabled"; 837}; 838 839&gpmc { 840 ranges = <0 0 0x01000000 0x01000000>, /* 16 MB for OneNAND */ 841 <1 0 0x02000000 0x01000000>; /* 16 MB for smc91c96 */ 842 pinctrl-names = "default"; 843 pinctrl-0 = <&gpmc_pins>; 844 845 /* sys_ndmareq1 could be used by the driver, not as gpio65 though */ 846 onenand@0,0 { 847 #address-cells = <1>; 848 #size-cells = <1>; 849 compatible = "ti,omap2-onenand"; 850 reg = <0 0 0x20000>; /* CS0, offset 0, IO size 128K */ 851 852 gpmc,sync-read; 853 gpmc,sync-write; 854 gpmc,burst-length = <16>; 855 gpmc,burst-read; 856 gpmc,burst-wrap; 857 gpmc,burst-write; 858 gpmc,device-width = <2>; /* GPMC_DEVWIDTH_16BIT */ 859 gpmc,mux-add-data = <2>; /* GPMC_MUX_AD */ 860 gpmc,cs-on-ns = <0>; 861 gpmc,cs-rd-off-ns = <87>; 862 gpmc,cs-wr-off-ns = <87>; 863 gpmc,adv-on-ns = <0>; 864 gpmc,adv-rd-off-ns = <10>; 865 gpmc,adv-wr-off-ns = <10>; 866 gpmc,oe-on-ns = <15>; 867 gpmc,oe-off-ns = <87>; 868 gpmc,we-on-ns = <0>; 869 gpmc,we-off-ns = <87>; 870 gpmc,rd-cycle-ns = <112>; 871 gpmc,wr-cycle-ns = <112>; 872 gpmc,access-ns = <81>; 873 gpmc,page-burst-access-ns = <15>; 874 gpmc,bus-turnaround-ns = <0>; 875 gpmc,cycle2cycle-delay-ns = <0>; 876 gpmc,wait-monitoring-ns = <0>; 877 gpmc,clk-activation-ns = <5>; 878 gpmc,wr-data-mux-bus-ns = <30>; 879 gpmc,wr-access-ns = <81>; 880 gpmc,sync-clk-ps = <15000>; 881 882 /* 883 * MTD partition table corresponding to Nokia's 884 * Maemo 5 (Fremantle) release. 885 */ 886 partition@0 { 887 label = "bootloader"; 888 reg = <0x00000000 0x00020000>; 889 read-only; 890 }; 891 partition@1 { 892 label = "config"; 893 reg = <0x00020000 0x00060000>; 894 }; 895 partition@2 { 896 label = "log"; 897 reg = <0x00080000 0x00040000>; 898 }; 899 partition@3 { 900 label = "kernel"; 901 reg = <0x000c0000 0x00200000>; 902 }; 903 partition@4 { 904 label = "initfs"; 905 reg = <0x002c0000 0x00200000>; 906 }; 907 partition@5 { 908 label = "rootfs"; 909 reg = <0x004c0000 0x0fb40000>; 910 }; 911 }; 912 913 /* Ethernet is on some early development boards and qemu */ 914 ethernet@gpmc { 915 compatible = "smsc,lan91c94"; 916 interrupt-parent = <&gpio2>; 917 interrupts = <22 IRQ_TYPE_LEVEL_HIGH>; /* gpio54 */ 918 reg = <1 0 0xf>; /* 16 byte IO range */ 919 bank-width = <2>; 920 pinctrl-names = "default"; 921 pinctrl-0 = <&ethernet_pins>; 922 power-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>; /* gpio86 */ 923 reset-gpios = <&gpio6 4 GPIO_ACTIVE_HIGH>; /* gpio164 */ 924 gpmc,device-width = <2>; 925 gpmc,sync-clk-ps = <0>; 926 gpmc,cs-on-ns = <0>; 927 gpmc,cs-rd-off-ns = <48>; 928 gpmc,cs-wr-off-ns = <24>; 929 gpmc,adv-on-ns = <0>; 930 gpmc,adv-rd-off-ns = <0>; 931 gpmc,adv-wr-off-ns = <0>; 932 gpmc,we-on-ns = <12>; 933 gpmc,we-off-ns = <18>; 934 gpmc,oe-on-ns = <12>; 935 gpmc,oe-off-ns = <48>; 936 gpmc,page-burst-access-ns = <0>; 937 gpmc,access-ns = <42>; 938 gpmc,rd-cycle-ns = <180>; 939 gpmc,wr-cycle-ns = <180>; 940 gpmc,bus-turnaround-ns = <0>; 941 gpmc,cycle2cycle-delay-ns = <0>; 942 gpmc,wait-monitoring-ns = <0>; 943 gpmc,clk-activation-ns = <0>; 944 gpmc,wr-access-ns = <0>; 945 gpmc,wr-data-mux-bus-ns = <12>; 946 }; 947}; 948 949&mcspi1 { 950 /* 951 * For some reason, touchscreen is necessary for screen to work at 952 * all on real hw. It works well without it on emulator. 953 * 954 * Also... order in the device tree actually matters here. 955 */ 956 tsc2005@0 { 957 compatible = "ti,tsc2005"; 958 spi-max-frequency = <6000000>; 959 reg = <0>; 960 961 vio-supply = <&vio>; 962 963 reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>; /* 104 */ 964 interrupts-extended = <&gpio4 4 IRQ_TYPE_EDGE_RISING>; /* 100 */ 965 966 touchscreen-fuzz-x = <4>; 967 touchscreen-fuzz-y = <7>; 968 touchscreen-fuzz-pressure = <2>; 969 touchscreen-size-x = <4096>; 970 touchscreen-size-y = <4096>; 971 touchscreen-max-pressure = <2048>; 972 973 ti,x-plate-ohms = <280>; 974 ti,esd-recovery-timeout-ms = <8000>; 975 }; 976 977 lcd: acx565akm@2 { 978 compatible = "sony,acx565akm"; 979 spi-max-frequency = <6000000>; 980 reg = <2>; 981 982 pinctrl-names = "default"; 983 pinctrl-0 = <&acx565akm_pins>; 984 985 label = "lcd"; 986 reset-gpios = <&gpio3 26 GPIO_ACTIVE_HIGH>; /* 90 */ 987 988 port { 989 lcd_in: endpoint { 990 remote-endpoint = <&sdi_out>; 991 }; 992 }; 993 }; 994}; 995 996&mcspi4 { 997 pinctrl-names = "default"; 998 pinctrl-0 = <&mcspi4_pins>; 999 1000 wl1251@0 { 1001 pinctrl-names = "default"; 1002 pinctrl-0 = <&wl1251_pins>; 1003 1004 vio-supply = <&vio>; 1005 1006 compatible = "ti,wl1251"; 1007 reg = <0>; 1008 spi-max-frequency = <48000000>; 1009 1010 spi-cpol; 1011 spi-cpha; 1012 1013 ti,power-gpio = <&gpio3 23 GPIO_ACTIVE_HIGH>; /* 87 */ 1014 1015 interrupt-parent = <&gpio2>; 1016 interrupts = <10 IRQ_TYPE_NONE>; /* gpio line 42 */ 1017 1018 clocks = <&vctcxo>; 1019 }; 1020}; 1021 1022/* RNG not directly accessible on n900, see omap3-rom-rng instead */ 1023&rng_target { 1024 status = "disabled"; 1025}; 1026 1027&usb_otg_hs { 1028 interface-type = <0>; 1029 usb-phy = <&usb2_phy>; 1030 phys = <&usb2_phy>; 1031 phy-names = "usb2-phy"; 1032 mode = <2>; 1033 power = <50>; 1034}; 1035 1036&uart1 { 1037 status = "disabled"; 1038}; 1039 1040&uart2 { 1041 pinctrl-names = "default"; 1042 pinctrl-0 = <&uart2_pins>; 1043 1044 bcm2048: bluetooth { 1045 compatible = "brcm,bcm2048-nokia", "nokia,h4p-bluetooth"; 1046 reset-gpios = <&gpio3 27 GPIO_ACTIVE_LOW>; /* 91 */ 1047 host-wakeup-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; /* 101 */ 1048 bluetooth-wakeup-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; /* 37 */ 1049 clocks = <&vctcxo>; 1050 clock-names = "sysclk"; 1051 }; 1052}; 1053 1054&uart3 { 1055 interrupts-extended = <&intc 74 &omap3_pmx_core OMAP3_UART3_RX>; 1056 pinctrl-names = "default"; 1057 pinctrl-0 = <&uart3_pins>; 1058}; 1059 1060&dss { 1061 status = "ok" 1062 1063 pinctrl-names = "default"; 1064 pinctrl-0 = <&dss_sdi_pins>; 1065 1066 vdds_sdi-supply = <&vaux1>; 1067 1068 ports { 1069 #address-cells = <1>; 1070 #size-cells = <0>; 1071 1072 port@1 { 1073 reg = <1>; 1074 1075 sdi_out: endpoint { 1076 remote-endpoint = <&lcd_in>; 1077 datapairs = <2>; 1078 }; 1079 }; 1080 }; 1081}; 1082 1083&venc { 1084 status = "ok" 1085 1086 vdda-supply = <&vdac>; 1087 1088 port { 1089 venc_out: endpoint { 1090 remote-endpoint = <&tv_connector_in>; 1091 ti,channels = <1>; 1092 }; 1093 }; 1094}; 1095 1096&mcbsp2 { 1097 status = "ok" 1098}; 1099 1100&ssi_port1 { 1101 pinctrl-names = "default"; 1102 pinctrl-0 = <&ssi_pins>; 1103 1104 ti,ssi-cawake-gpio = <&gpio5 23 GPIO_ACTIVE_HIGH>; /* 151 */ 1105 1106 modem: hsi-client { 1107 compatible = "nokia,n900-modem"; 1108 1109 pinctrl-names = "default"; 1110 pinctrl-0 = <&modem_pins>; 1111 1112 hsi-channel-ids = <0>, <1>, <2>, <3>; 1113 hsi-channel-names = "mcsaab-control", 1114 "speech-control", 1115 "speech-data", 1116 "mcsaab-data"; 1117 hsi-speed-kbps = <55000>; 1118 hsi-mode = "frame"; 1119 hsi-flow = "synchronized"; 1120 hsi-arb-mode = "round-robin"; 1121 1122 interrupts-extended = <&gpio3 8 IRQ_TYPE_EDGE_FALLING>; /* 72 */ 1123 1124 gpios = <&gpio3 6 GPIO_ACTIVE_HIGH>, /* 70 */ 1125 <&gpio3 9 GPIO_ACTIVE_HIGH>, /* 73 */ 1126 <&gpio3 10 GPIO_ACTIVE_HIGH>, /* 74 */ 1127 <&gpio3 11 GPIO_ACTIVE_HIGH>, /* 75 */ 1128 <&gpio5 29 GPIO_ACTIVE_HIGH>; /* 157 */ 1129 gpio-names = "cmt_apeslpx", 1130 "cmt_rst_rq", 1131 "cmt_en", 1132 "cmt_rst", 1133 "cmt_bsi"; 1134 }; 1135}; 1136 1137&ssi_port2 { 1138 status = "disabled"; 1139};