1 // SPDX-License-Identifier: GPL-2.0 1 // SPDX-License-Identifier: GPL-2.0 2 /* 2 /* 3 * Check Point L-50 Board Description 3 * Check Point L-50 Board Description 4 * Copyright 2020 Pawel Dembicki <paweldembicki 4 * Copyright 2020 Pawel Dembicki <paweldembicki@gmail.com> 5 */ 5 */ 6 6 7 /dts-v1/; 7 /dts-v1/; 8 8 9 #include "kirkwood.dtsi" 9 #include "kirkwood.dtsi" 10 #include "kirkwood-6281.dtsi" 10 #include "kirkwood-6281.dtsi" 11 11 12 / { 12 / { 13 model = "Check Point L-50"; 13 model = "Check Point L-50"; 14 compatible = "checkpoint,l-50", "marve 14 compatible = "checkpoint,l-50", "marvell,kirkwood-88f6281", "marvell,kirkwood"; 15 15 16 memory { 16 memory { 17 device_type = "memory"; 17 device_type = "memory"; 18 reg = <0x00000000 0x20000000>; 18 reg = <0x00000000 0x20000000>; 19 }; 19 }; 20 20 21 chosen { 21 chosen { 22 bootargs = "console=ttyS0,1152 22 bootargs = "console=ttyS0,115200n8"; 23 stdout-path = &uart0; 23 stdout-path = &uart0; 24 }; 24 }; 25 25 26 ocp@f1000000 { 26 ocp@f1000000 { 27 pinctrl: pin-controller@10000 27 pinctrl: pin-controller@10000 { 28 pinctrl-0 = <&pmx_led3 28 pinctrl-0 = <&pmx_led38 &pmx_sysrst &pmx_button29>; 29 pinctrl-names = "defau 29 pinctrl-names = "default"; 30 30 31 pmx_sysrst: pmx-sysrst 31 pmx_sysrst: pmx-sysrst { 32 marvell,pins = 32 marvell,pins = "mpp6"; 33 marvell,functi 33 marvell,function = "sysrst"; 34 }; 34 }; 35 35 36 pmx_button29: pmx_butt 36 pmx_button29: pmx_button29 { 37 marvell,pins = 37 marvell,pins = "mpp29"; 38 marvell,functi 38 marvell,function = "gpio"; 39 }; 39 }; 40 40 41 pmx_led38: pmx_led38 { 41 pmx_led38: pmx_led38 { 42 marvell,pins = 42 marvell,pins = "mpp38"; 43 marvell,functi 43 marvell,function = "gpio"; 44 }; 44 }; 45 45 46 pmx_sdio_cd: pmx-sdio- 46 pmx_sdio_cd: pmx-sdio-cd { 47 marvell,pins = 47 marvell,pins = "mpp46"; 48 marvell,functi 48 marvell,function = "gpio"; 49 }; 49 }; 50 }; 50 }; 51 51 52 serial@12000 { 52 serial@12000 { 53 status = "okay"; 53 status = "okay"; 54 }; 54 }; 55 55 56 mvsdio@90000 { 56 mvsdio@90000 { 57 status = "okay"; 57 status = "okay"; 58 cd-gpios = <&gpio1 14 58 cd-gpios = <&gpio1 14 9>; 59 }; 59 }; 60 60 61 i2c@11000 { 61 i2c@11000 { 62 status = "okay"; 62 status = "okay"; 63 clock-frequency = <400 63 clock-frequency = <400000>; 64 64 65 gpio2: gpio-expander@2 65 gpio2: gpio-expander@20 { 66 #gpio-cells = 66 #gpio-cells = <2>; 67 #interrupt-cel 67 #interrupt-cells = <2>; 68 interrupt-cont 68 interrupt-controller; 69 compatible = " 69 compatible = "semtech,sx1505q"; 70 reg = <0x20>; 70 reg = <0x20>; 71 71 72 gpio-controlle 72 gpio-controller; 73 }; 73 }; 74 74 75 /* Three GPIOs from 0x 75 /* Three GPIOs from 0x21 exp. are undescribed in dts: 76 * 1: DSL module reset 76 * 1: DSL module reset (active low) 77 * 5: mPCIE reset (act 77 * 5: mPCIE reset (active low) 78 * 6: Express card res 78 * 6: Express card reset (active low) 79 */ 79 */ 80 gpio3: gpio-expander@2 80 gpio3: gpio-expander@21 { 81 #gpio-cells = 81 #gpio-cells = <2>; 82 #interrupt-cel 82 #interrupt-cells = <2>; 83 interrupt-cont 83 interrupt-controller; 84 compatible = " 84 compatible = "semtech,sx1505q"; 85 reg = <0x21>; 85 reg = <0x21>; 86 86 87 gpio-controlle 87 gpio-controller; 88 }; 88 }; 89 89 90 rtc@30 { 90 rtc@30 { 91 compatible = " 91 compatible = "s35390a"; 92 reg = <0x30>; 92 reg = <0x30>; 93 }; 93 }; 94 }; 94 }; 95 }; 95 }; 96 96 97 leds { 97 leds { 98 compatible = "gpio-leds"; 98 compatible = "gpio-leds"; 99 99 100 led-status-green { 100 led-status-green { 101 label = "l-50:green:st 101 label = "l-50:green:status"; 102 gpios = <&gpio1 6 GPIO 102 gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; 103 }; 103 }; 104 104 105 led-status-red { 105 led-status-red { 106 label = "l-50:red:stat 106 label = "l-50:red:status"; 107 gpios = <&gpio3 2 GPIO 107 gpios = <&gpio3 2 GPIO_ACTIVE_LOW>; 108 }; 108 }; 109 109 110 led-wifi { 110 led-wifi { 111 label = "l-50:green:wi 111 label = "l-50:green:wifi"; 112 gpios = <&gpio2 7 GPIO 112 gpios = <&gpio2 7 GPIO_ACTIVE_LOW>; 113 linux,default-trigger 113 linux,default-trigger = "phy0tpt"; 114 }; 114 }; 115 115 116 led-internet-green { 116 led-internet-green { 117 label = "l-50:green:in 117 label = "l-50:green:internet"; 118 gpios = <&gpio2 3 GPIO 118 gpios = <&gpio2 3 GPIO_ACTIVE_LOW>; 119 }; 119 }; 120 120 121 led-internet-red { 121 led-internet-red { 122 label = "l-50:red:inte 122 label = "l-50:red:internet"; 123 gpios = <&gpio2 1 GPIO 123 gpios = <&gpio2 1 GPIO_ACTIVE_LOW>; 124 }; 124 }; 125 125 126 led-usb1-green { 126 led-usb1-green { 127 label = "l-50:green:us 127 label = "l-50:green:usb1"; 128 gpios = <&gpio2 0 GPIO 128 gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; 129 linux,default-trigger 129 linux,default-trigger = "usbport"; 130 trigger-sources = <&hu 130 trigger-sources = <&hub_port3>; 131 }; 131 }; 132 132 133 led-usb1-red { 133 led-usb1-red { 134 label = "l-50:red:usb1 134 label = "l-50:red:usb1"; 135 gpios = <&gpio2 4 GPIO 135 gpios = <&gpio2 4 GPIO_ACTIVE_LOW>; 136 }; 136 }; 137 137 138 led-usb2-green { 138 led-usb2-green { 139 label = "l-50:green:us 139 label = "l-50:green:usb2"; 140 gpios = <&gpio2 2 GPIO 140 gpios = <&gpio2 2 GPIO_ACTIVE_LOW>; 141 linux,default-trigger 141 linux,default-trigger = "usbport"; 142 trigger-sources = <&hu 142 trigger-sources = <&hub_port1>; 143 }; 143 }; 144 144 145 led-usb2-red { 145 led-usb2-red { 146 label = "l-50:red:usb2 146 label = "l-50:red:usb2"; 147 gpios = <&gpio2 5 GPIO 147 gpios = <&gpio2 5 GPIO_ACTIVE_LOW>; 148 }; 148 }; 149 }; 149 }; 150 150 151 usb2_pwr { 151 usb2_pwr { 152 compatible = "regulator-fixed" 152 compatible = "regulator-fixed"; 153 regulator-name = "usb2_pwr"; 153 regulator-name = "usb2_pwr"; 154 154 155 regulator-min-microvolt = <500 155 regulator-min-microvolt = <5000000>; 156 regulator-max-microvolt = <500 156 regulator-max-microvolt = <5000000>; 157 gpio = <&gpio3 3 GPIO_ACTIVE_L 157 gpio = <&gpio3 3 GPIO_ACTIVE_LOW>; 158 regulator-always-on; 158 regulator-always-on; 159 }; 159 }; 160 160 161 usb1_pwr { 161 usb1_pwr { 162 compatible = "regulator-fixed" 162 compatible = "regulator-fixed"; 163 regulator-name = "usb1_pwr"; 163 regulator-name = "usb1_pwr"; 164 164 165 regulator-min-microvolt = <500 165 regulator-min-microvolt = <5000000>; 166 regulator-max-microvolt = <500 166 regulator-max-microvolt = <5000000>; 167 gpio = <&gpio3 4 GPIO_ACTIVE_L 167 gpio = <&gpio3 4 GPIO_ACTIVE_LOW>; 168 regulator-always-on; 168 regulator-always-on; 169 }; 169 }; 170 170 171 mpcie_pwr { 171 mpcie_pwr { 172 compatible = "regulator-fixed" 172 compatible = "regulator-fixed"; 173 regulator-name = "mpcie_pwr"; 173 regulator-name = "mpcie_pwr"; 174 174 175 regulator-min-microvolt = <330 175 regulator-min-microvolt = <3300000>; 176 regulator-max-microvolt = <330 176 regulator-max-microvolt = <3300000>; 177 gpio = <&gpio3 5 GPIO_ACTIVE_H 177 gpio = <&gpio3 5 GPIO_ACTIVE_HIGH>; 178 enable-active-high; 178 enable-active-high; 179 regulator-always-on; 179 regulator-always-on; 180 }; 180 }; 181 181 182 express_card_pwr { 182 express_card_pwr { 183 compatible = "regulator-fixed" 183 compatible = "regulator-fixed"; 184 regulator-name = "express_card 184 regulator-name = "express_card_pwr"; 185 185 186 regulator-min-microvolt = <330 186 regulator-min-microvolt = <3300000>; 187 regulator-max-microvolt = <330 187 regulator-max-microvolt = <3300000>; 188 gpio = <&gpio3 7 GPIO_ACTIVE_H 188 gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>; 189 enable-active-high; 189 enable-active-high; 190 regulator-always-on; 190 regulator-always-on; 191 }; 191 }; 192 192 193 keys { 193 keys { 194 compatible = "gpio-keys"; 194 compatible = "gpio-keys"; 195 195 196 button-factory-defaults { 196 button-factory-defaults { 197 label = "factory_defau 197 label = "factory_defaults"; 198 gpios = <&gpio0 29 GPI 198 gpios = <&gpio0 29 GPIO_ACTIVE_LOW>; 199 linux,code = <KEY_REST 199 linux,code = <KEY_RESTART>; 200 }; 200 }; 201 }; 201 }; 202 }; 202 }; 203 203 204 &mdio { 204 &mdio { 205 status = "okay"; 205 status = "okay"; 206 206 207 ethphy8: ethernet-phy@8 { 207 ethphy8: ethernet-phy@8 { 208 reg = <0x08>; 208 reg = <0x08>; 209 }; 209 }; 210 210 211 switch0: switch@10 { 211 switch0: switch@10 { 212 compatible = "marvell,mv88e608 212 compatible = "marvell,mv88e6085"; 213 #address-cells = <1>; 213 #address-cells = <1>; 214 #size-cells = <0>; 214 #size-cells = <0>; 215 reg = <0x10>; 215 reg = <0x10>; 216 dsa,member = <0 0>; 216 dsa,member = <0 0>; 217 217 218 ports { 218 ports { 219 #address-cells = <1>; 219 #address-cells = <1>; 220 #size-cells = <0>; 220 #size-cells = <0>; 221 221 222 port@0 { 222 port@0 { 223 reg = <0>; 223 reg = <0>; 224 label = "lan5" 224 label = "lan5"; 225 }; 225 }; 226 226 227 port@1 { 227 port@1 { 228 reg = <1>; 228 reg = <1>; 229 label = "lan1" 229 label = "lan1"; 230 }; 230 }; 231 231 232 port@2 { 232 port@2 { 233 reg = <2>; 233 reg = <2>; 234 label = "lan6" 234 label = "lan6"; 235 }; 235 }; 236 236 237 port@3 { 237 port@3 { 238 reg = <3>; 238 reg = <3>; 239 label = "lan2" 239 label = "lan2"; 240 }; 240 }; 241 241 242 port@4 { 242 port@4 { 243 reg = <4>; 243 reg = <4>; 244 label = "lan7" 244 label = "lan7"; 245 }; 245 }; 246 246 247 switch0port5: port@5 { 247 switch0port5: port@5 { 248 reg = <5>; 248 reg = <5>; 249 phy-mode = "rg 249 phy-mode = "rgmii-txid"; 250 link = <&switc 250 link = <&switch1port5>; 251 fixed-link { 251 fixed-link { 252 speed 252 speed = <1000>; 253 full-d 253 full-duplex; 254 }; 254 }; 255 }; 255 }; 256 256 257 port@6 { 257 port@6 { 258 reg = <6>; 258 reg = <6>; 259 phy-mode = "rg 259 phy-mode = "rgmii-id"; 260 ethernet = <&e 260 ethernet = <ð1port>; 261 fixed-link { 261 fixed-link { 262 speed 262 speed = <1000>; 263 full-d 263 full-duplex; 264 }; 264 }; 265 }; 265 }; 266 }; 266 }; 267 }; 267 }; 268 268 269 switch@11 { 269 switch@11 { 270 compatible = "marvell,mv88e608 270 compatible = "marvell,mv88e6085"; 271 #address-cells = <1>; 271 #address-cells = <1>; 272 #size-cells = <0>; 272 #size-cells = <0>; 273 reg = <0x11>; 273 reg = <0x11>; 274 dsa,member = <0 1>; 274 dsa,member = <0 1>; 275 275 276 ports { 276 ports { 277 #address-cells = <1>; 277 #address-cells = <1>; 278 #size-cells = <0>; 278 #size-cells = <0>; 279 279 280 port@0 { 280 port@0 { 281 reg = <0>; 281 reg = <0>; 282 label = "lan3" 282 label = "lan3"; 283 }; 283 }; 284 284 285 port@1 { 285 port@1 { 286 reg = <1>; 286 reg = <1>; 287 label = "lan8" 287 label = "lan8"; 288 }; 288 }; 289 289 290 port@2 { 290 port@2 { 291 reg = <2>; 291 reg = <2>; 292 label = "lan4" 292 label = "lan4"; 293 }; 293 }; 294 294 295 port@3 { 295 port@3 { 296 reg = <3>; 296 reg = <3>; 297 label = "dmz"; 297 label = "dmz"; 298 }; 298 }; 299 299 300 switch1port5: port@5 { 300 switch1port5: port@5 { 301 reg = <5>; 301 reg = <5>; 302 phy-mode = "rg 302 phy-mode = "rgmii-txid"; 303 link = <&switc 303 link = <&switch0port5>; 304 fixed-link { 304 fixed-link { 305 speed 305 speed = <1000>; 306 full-d 306 full-duplex; 307 }; 307 }; 308 }; 308 }; 309 309 310 port@6 { 310 port@6 { 311 reg = <6>; 311 reg = <6>; 312 label = "dsl"; 312 label = "dsl"; 313 fixed-link { 313 fixed-link { 314 speed 314 speed = <100>; 315 full-d 315 full-duplex; 316 }; 316 }; 317 }; 317 }; 318 }; 318 }; 319 }; 319 }; 320 }; 320 }; 321 321 322 ð0 { 322 ð0 { 323 status = "okay"; 323 status = "okay"; 324 ethernet0-port@0 { 324 ethernet0-port@0 { 325 phy-handle = <ðphy8>; 325 phy-handle = <ðphy8>; 326 }; 326 }; 327 }; 327 }; 328 328 329 ð1 { 329 ð1 { 330 status = "okay"; 330 status = "okay"; 331 ethernet1-port@0 { 331 ethernet1-port@0 { 332 speed = <1000>; 332 speed = <1000>; 333 duplex = <1>; 333 duplex = <1>; 334 phy-mode = "rgmii"; 334 phy-mode = "rgmii"; 335 }; 335 }; 336 }; 336 }; 337 337 338 &nand { 338 &nand { 339 status = "okay"; 339 status = "okay"; 340 pinctrl-0 = <&pmx_nand>; 340 pinctrl-0 = <&pmx_nand>; 341 pinctrl-names = "default"; 341 pinctrl-names = "default"; 342 342 343 partition@0 { 343 partition@0 { 344 label = "u-boot"; 344 label = "u-boot"; 345 reg = <0x00000000 0x000c0000>; 345 reg = <0x00000000 0x000c0000>; 346 }; 346 }; 347 347 348 partition@a0000 { 348 partition@a0000 { 349 label = "bootldr-env"; 349 label = "bootldr-env"; 350 reg = <0x000c0000 0x00040000>; 350 reg = <0x000c0000 0x00040000>; 351 }; 351 }; 352 352 353 partition@100000 { 353 partition@100000 { 354 label = "kernel-1"; 354 label = "kernel-1"; 355 reg = <0x00100000 0x00800000>; 355 reg = <0x00100000 0x00800000>; 356 }; 356 }; 357 357 358 partition@900000 { 358 partition@900000 { 359 label = "rootfs-1"; 359 label = "rootfs-1"; 360 reg = <0x00900000 0x07100000>; 360 reg = <0x00900000 0x07100000>; 361 }; 361 }; 362 362 363 partition@7a00000 { 363 partition@7a00000 { 364 label = "kernel-2"; 364 label = "kernel-2"; 365 reg = <0x07a00000 0x00800000>; 365 reg = <0x07a00000 0x00800000>; 366 }; 366 }; 367 367 368 partition@8200000 { 368 partition@8200000 { 369 label = "rootfs-2"; 369 label = "rootfs-2"; 370 reg = <0x08200000 0x07100000>; 370 reg = <0x08200000 0x07100000>; 371 }; 371 }; 372 372 373 partition@f300000 { 373 partition@f300000 { 374 label = "default_sw"; 374 label = "default_sw"; 375 reg = <0x0f300000 0x07900000>; 375 reg = <0x0f300000 0x07900000>; 376 }; 376 }; 377 377 378 partition@16c00000 { 378 partition@16c00000 { 379 label = "logs"; 379 label = "logs"; 380 reg = <0x16c00000 0x01800000>; 380 reg = <0x16c00000 0x01800000>; 381 }; 381 }; 382 382 383 partition@18400000 { 383 partition@18400000 { 384 label = "preset_cfg"; 384 label = "preset_cfg"; 385 reg = <0x18400000 0x00100000>; 385 reg = <0x18400000 0x00100000>; 386 }; 386 }; 387 387 388 partition@18500000 { 388 partition@18500000 { 389 label = "adsl"; 389 label = "adsl"; 390 reg = <0x18500000 0x00100000>; 390 reg = <0x18500000 0x00100000>; 391 }; 391 }; 392 392 393 partition@18600000 { 393 partition@18600000 { 394 label = "storage"; 394 label = "storage"; 395 reg = <0x18600000 0x07a00000>; 395 reg = <0x18600000 0x07a00000>; 396 }; 396 }; 397 }; 397 }; 398 398 399 &rtc { 399 &rtc { 400 status = "disabled"; 400 status = "disabled"; 401 }; 401 }; 402 402 403 &pciec { 403 &pciec { 404 status = "okay"; 404 status = "okay"; 405 }; 405 }; 406 406 407 &pcie0 { 407 &pcie0 { 408 status = "okay"; 408 status = "okay"; 409 }; 409 }; 410 410 411 &sata_phy0 { 411 &sata_phy0 { 412 status = "disabled"; 412 status = "disabled"; 413 }; 413 }; 414 414 415 &sata_phy1 { 415 &sata_phy1 { 416 status = "disabled"; 416 status = "disabled"; 417 }; 417 }; 418 418 419 &usb0 { 419 &usb0 { 420 #address-cells = <1>; 420 #address-cells = <1>; 421 #size-cells = <0>; 421 #size-cells = <0>; 422 status = "okay"; 422 status = "okay"; 423 423 424 port@1 { 424 port@1 { 425 #address-cells = <1>; 425 #address-cells = <1>; 426 #size-cells = <0>; 426 #size-cells = <0>; 427 reg = <1>; 427 reg = <1>; 428 #trigger-source-cells = <0>; 428 #trigger-source-cells = <0>; 429 429 430 hub_port1: port@1 { 430 hub_port1: port@1 { 431 reg = <1>; 431 reg = <1>; 432 #trigger-source-cells 432 #trigger-source-cells = <0>; 433 }; 433 }; 434 434 435 hub_port3: port@3 { 435 hub_port3: port@3 { 436 reg = <3>; 436 reg = <3>; 437 #trigger-source-cells 437 #trigger-source-cells = <0>; 438 }; 438 }; 439 }; 439 }; 440 }; 440 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.