1/* 2 * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License version 2 and 6 * only version 2 as published by the Free Software Foundation. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 */ 13 14&msmgpio { 15 16 blsp1_uart1_default: blsp1_uart1_default { 17 pinmux { 18 function = "blsp_uart1"; 19 // TX, RX, CTS_N, RTS_N 20 pins = "gpio0", "gpio1", 21 "gpio2", "gpio3"; 22 }; 23 pinconf { 24 pins = "gpio0", "gpio1", 25 "gpio2", "gpio3"; 26 drive-strength = <16>; 27 bias-disable; 28 }; 29 }; 30 31 blsp1_uart1_sleep: blsp1_uart1_sleep { 32 pinmux { 33 function = "gpio"; 34 pins = "gpio0", "gpio1", 35 "gpio2", "gpio3"; 36 }; 37 pinconf { 38 pins = "gpio0", "gpio1", 39 "gpio2", "gpio3"; 40 drive-strength = <2>; 41 bias-pull-down; 42 }; 43 }; 44 45 blsp1_uart2_default: blsp1_uart2_default { 46 pinmux { 47 function = "blsp_uart2"; 48 pins = "gpio4", "gpio5"; 49 }; 50 pinconf { 51 pins = "gpio4", "gpio5"; 52 drive-strength = <16>; 53 bias-disable; 54 }; 55 }; 56 57 blsp1_uart2_sleep: blsp1_uart2_sleep { 58 pinmux { 59 function = "gpio"; 60 pins = "gpio4", "gpio5"; 61 }; 62 pinconf { 63 pins = "gpio4", "gpio5"; 64 drive-strength = <2>; 65 bias-pull-down; 66 }; 67 }; 68 69 spi1_default: spi1_default { 70 pinmux { 71 function = "blsp_spi1"; 72 pins = "gpio0", "gpio1", "gpio3"; 73 }; 74 pinmux_cs { 75 function = "gpio"; 76 pins = "gpio2"; 77 }; 78 pinconf { 79 pins = "gpio0", "gpio1", "gpio3"; 80 drive-strength = <12>; 81 bias-disable; 82 }; 83 pinconf_cs { 84 pins = "gpio2"; 85 drive-strength = <16>; 86 bias-disable; 87 output-high; 88 }; 89 }; 90 91 spi1_sleep: spi1_sleep { 92 pinmux { 93 function = "gpio"; 94 pins = "gpio0", "gpio1", "gpio2", "gpio3"; 95 }; 96 pinconf { 97 pins = "gpio0", "gpio1", "gpio2", "gpio3"; 98 drive-strength = <2>; 99 bias-pull-down; 100 }; 101 }; 102 103 spi2_default: spi2_default { 104 pinmux { 105 function = "blsp_spi2"; 106 pins = "gpio4", "gpio5", "gpio7"; 107 }; 108 pinmux_cs { 109 function = "gpio"; 110 pins = "gpio6"; 111 }; 112 pinconf { 113 pins = "gpio4", "gpio5", "gpio7"; 114 drive-strength = <12>; 115 bias-disable; 116 }; 117 pinconf_cs { 118 pins = "gpio6"; 119 drive-strength = <16>; 120 bias-disable; 121 output-high; 122 }; 123 }; 124 125 spi2_sleep: spi2_sleep { 126 pinmux { 127 function = "gpio"; 128 pins = "gpio4", "gpio5", "gpio6", "gpio7"; 129 }; 130 pinconf { 131 pins = "gpio4", "gpio5", "gpio6", "gpio7"; 132 drive-strength = <2>; 133 bias-pull-down; 134 }; 135 }; 136 137 spi3_default: spi3_default { 138 pinmux { 139 function = "blsp_spi3"; 140 pins = "gpio8", "gpio9", "gpio11"; 141 }; 142 pinmux_cs { 143 function = "gpio"; 144 pins = "gpio10"; 145 }; 146 pinconf { 147 pins = "gpio8", "gpio9", "gpio11"; 148 drive-strength = <12>; 149 bias-disable; 150 }; 151 pinconf_cs { 152 pins = "gpio10"; 153 drive-strength = <16>; 154 bias-disable; 155 output-high; 156 }; 157 }; 158 159 spi3_sleep: spi3_sleep { 160 pinmux { 161 function = "gpio"; 162 pins = "gpio8", "gpio9", "gpio10", "gpio11"; 163 }; 164 pinconf { 165 pins = "gpio8", "gpio9", "gpio10", "gpio11"; 166 drive-strength = <2>; 167 bias-pull-down; 168 }; 169 }; 170 171 spi4_default: spi4_default { 172 pinmux { 173 function = "blsp_spi4"; 174 pins = "gpio12", "gpio13", "gpio15"; 175 }; 176 pinmux_cs { 177 function = "gpio"; 178 pins = "gpio14"; 179 }; 180 pinconf { 181 pins = "gpio12", "gpio13", "gpio15"; 182 drive-strength = <12>; 183 bias-disable; 184 }; 185 pinconf_cs { 186 pins = "gpio14"; 187 drive-strength = <16>; 188 bias-disable; 189 output-high; 190 }; 191 }; 192 193 spi4_sleep: spi4_sleep { 194 pinmux { 195 function = "gpio"; 196 pins = "gpio12", "gpio13", "gpio14", "gpio15"; 197 }; 198 pinconf { 199 pins = "gpio12", "gpio13", "gpio14", "gpio15"; 200 drive-strength = <2>; 201 bias-pull-down; 202 }; 203 }; 204 205 spi5_default: spi5_default { 206 pinmux { 207 function = "blsp_spi5"; 208 pins = "gpio16", "gpio17", "gpio19"; 209 }; 210 pinmux_cs { 211 function = "gpio"; 212 pins = "gpio18"; 213 }; 214 pinconf { 215 pins = "gpio16", "gpio17", "gpio19"; 216 drive-strength = <12>; 217 bias-disable; 218 }; 219 pinconf_cs { 220 pins = "gpio18"; 221 drive-strength = <16>; 222 bias-disable; 223 output-high; 224 }; 225 }; 226 227 spi5_sleep: spi5_sleep { 228 pinmux { 229 function = "gpio"; 230 pins = "gpio16", "gpio17", "gpio18", "gpio19"; 231 }; 232 pinconf { 233 pins = "gpio16", "gpio17", "gpio18", "gpio19"; 234 drive-strength = <2>; 235 bias-pull-down; 236 }; 237 }; 238 239 spi6_default: spi6_default { 240 pinmux { 241 function = "blsp_spi6"; 242 pins = "gpio20", "gpio21", "gpio23"; 243 }; 244 pinmux_cs { 245 function = "gpio"; 246 pins = "gpio22"; 247 }; 248 pinconf { 249 pins = "gpio20", "gpio21", "gpio23"; 250 drive-strength = <12>; 251 bias-disable; 252 }; 253 pinconf_cs { 254 pins = "gpio22"; 255 drive-strength = <16>; 256 bias-disable; 257 output-high; 258 }; 259 }; 260 261 spi6_sleep: spi6_sleep { 262 pinmux { 263 function = "gpio"; 264 pins = "gpio20", "gpio21", "gpio22", "gpio23"; 265 }; 266 pinconf { 267 pins = "gpio20", "gpio21", "gpio22", "gpio23"; 268 drive-strength = <2>; 269 bias-pull-down; 270 }; 271 }; 272 273 i2c2_default: i2c2_default { 274 pinmux { 275 function = "blsp_i2c2"; 276 pins = "gpio6", "gpio7"; 277 }; 278 pinconf { 279 pins = "gpio6", "gpio7"; 280 drive-strength = <16>; 281 bias-disable = <0>; 282 }; 283 }; 284 285 i2c2_sleep: i2c2_sleep { 286 pinmux { 287 function = "gpio"; 288 pins = "gpio6", "gpio7"; 289 }; 290 pinconf { 291 pins = "gpio6", "gpio7"; 292 drive-strength = <2>; 293 bias-disable = <0>; 294 }; 295 }; 296 297 i2c4_default: i2c4_default { 298 pinmux { 299 function = "blsp_i2c4"; 300 pins = "gpio14", "gpio15"; 301 }; 302 pinconf { 303 pins = "gpio14", "gpio15"; 304 drive-strength = <16>; 305 bias-disable = <0>; 306 }; 307 }; 308 309 i2c4_sleep: i2c4_sleep { 310 pinmux { 311 function = "gpio"; 312 pins = "gpio14", "gpio15"; 313 }; 314 pinconf { 315 pins = "gpio14", "gpio15"; 316 drive-strength = <2>; 317 bias-disable = <0>; 318 }; 319 }; 320 321 i2c6_default: i2c6_default { 322 pinmux { 323 function = "blsp_i2c6"; 324 pins = "gpio22", "gpio23"; 325 }; 326 pinconf { 327 pins = "gpio22", "gpio23"; 328 drive-strength = <16>; 329 bias-disable = <0>; 330 }; 331 }; 332 333 i2c6_sleep: i2c6_sleep { 334 pinmux { 335 function = "gpio"; 336 pins = "gpio22", "gpio23"; 337 }; 338 pinconf { 339 pins = "gpio22", "gpio23"; 340 drive-strength = <2>; 341 bias-disable = <0>; 342 }; 343 }; 344 345 sdhc2_cd_pin { 346 sdc2_cd_on: cd_on { 347 pinmux { 348 function = "gpio"; 349 pins = "gpio38"; 350 }; 351 pinconf { 352 pins = "gpio38"; 353 drive-strength = <2>; 354 bias-pull-up; 355 }; 356 }; 357 sdc2_cd_off: cd_off { 358 pinmux { 359 function = "gpio"; 360 pins = "gpio38"; 361 }; 362 pinconf { 363 pins = "gpio38"; 364 drive-strength = <2>; 365 bias-disable; 366 }; 367 }; 368 }; 369 370 pmx_sdc1_clk { 371 sdc1_clk_on: clk_on { 372 pinmux { 373 pins = "sdc1_clk"; 374 }; 375 pinconf { 376 pins = "sdc1_clk"; 377 bias-disable; 378 drive-strength = <16>; 379 }; 380 }; 381 sdc1_clk_off: clk_off { 382 pinmux { 383 pins = "sdc1_clk"; 384 }; 385 pinconf { 386 pins = "sdc1_clk"; 387 bias-disable; 388 drive-strength = <2>; 389 }; 390 }; 391 }; 392 393 pmx_sdc1_cmd { 394 sdc1_cmd_on: cmd_on { 395 pinmux { 396 pins = "sdc1_cmd"; 397 }; 398 pinconf { 399 pins = "sdc1_cmd"; 400 bias-pull-up; 401 drive-strength = <10>; 402 }; 403 }; 404 sdc1_cmd_off: cmd_off { 405 pinmux { 406 pins = "sdc1_cmd"; 407 }; 408 pinconf { 409 pins = "sdc1_cmd"; 410 bias-pull-up; 411 drive-strength = <2>; 412 }; 413 }; 414 }; 415 416 pmx_sdc1_data { 417 sdc1_data_on: data_on { 418 pinmux { 419 pins = "sdc1_data"; 420 }; 421 pinconf { 422 pins = "sdc1_data"; 423 bias-pull-up; 424 drive-strength = <10>; 425 }; 426 }; 427 sdc1_data_off: data_off { 428 pinmux { 429 pins = "sdc1_data"; 430 }; 431 pinconf { 432 pins = "sdc1_data"; 433 bias-pull-up; 434 drive-strength = <2>; 435 }; 436 }; 437 }; 438 439 pmx_sdc2_clk { 440 sdc2_clk_on: clk_on { 441 pinmux { 442 pins = "sdc2_clk"; 443 }; 444 pinconf { 445 pins = "sdc2_clk"; 446 bias-disable; 447 drive-strength = <16>; 448 }; 449 }; 450 sdc2_clk_off: clk_off { 451 pinmux { 452 pins = "sdc2_clk"; 453 }; 454 pinconf { 455 pins = "sdc2_clk"; 456 bias-disable; 457 drive-strength = <2>; 458 }; 459 }; 460 }; 461 462 pmx_sdc2_cmd { 463 sdc2_cmd_on: cmd_on { 464 pinmux { 465 pins = "sdc2_cmd"; 466 }; 467 pinconf { 468 pins = "sdc2_cmd"; 469 bias-pull-up; 470 drive-strength = <10>; 471 }; 472 }; 473 sdc2_cmd_off: cmd_off { 474 pinmux { 475 pins = "sdc2_cmd"; 476 }; 477 pinconf { 478 pins = "sdc2_cmd"; 479 bias-pull-up; 480 drive-strength = <2>; 481 }; 482 }; 483 }; 484 485 pmx_sdc2_data { 486 sdc2_data_on: data_on { 487 pinmux { 488 pins = "sdc2_data"; 489 }; 490 pinconf { 491 pins = "sdc2_data"; 492 bias-pull-up; 493 drive-strength = <10>; 494 }; 495 }; 496 sdc2_data_off: data_off { 497 pinmux { 498 pins = "sdc2_data"; 499 }; 500 pinconf { 501 pins = "sdc2_data"; 502 bias-pull-up; 503 drive-strength = <2>; 504 }; 505 }; 506 }; 507 508 ext-codec-lines { 509 ext_codec_lines_act: lines_on { 510 pinmux { 511 function = "gpio"; 512 pins = "gpio67"; 513 }; 514 pinconf { 515 pins = "gpio67"; 516 drive-strength = <8>; 517 bias-disable; 518 output-high; 519 }; 520 }; 521 ext_codec_lines_sus: lines_off { 522 pinmux { 523 function = "gpio"; 524 pins = "gpio67"; 525 }; 526 pinconf { 527 pins = "gpio67"; 528 drive-strength = <2>; 529 bias-disable; 530 }; 531 }; 532 }; 533 534 cdc-pdm-lines { 535 cdc_pdm_lines_act: pdm_lines_on { 536 pinmux { 537 function = "cdc_pdm0"; 538 pins = "gpio63", "gpio64", "gpio65", "gpio66", 539 "gpio67", "gpio68"; 540 }; 541 pinconf { 542 pins = "gpio63", "gpio64", "gpio65", "gpio66", 543 "gpio67", "gpio68"; 544 drive-strength = <8>; 545 bias-pull-none; 546 }; 547 }; 548 cdc_pdm_lines_sus: pdm_lines_off { 549 pinmux { 550 function = "cdc_pdm0"; 551 pins = "gpio63", "gpio64", "gpio65", "gpio66", 552 "gpio67", "gpio68"; 553 }; 554 pinconf { 555 pins = "gpio63", "gpio64", "gpio65", "gpio66", 556 "gpio67", "gpio68"; 557 drive-strength = <2>; 558 bias-disable; 559 }; 560 }; 561 }; 562 563 ext-pri-tlmm-lines { 564 ext_pri_tlmm_lines_act: ext_pa_on { 565 pinmux { 566 function = "pri_mi2s"; 567 pins = "gpio113", "gpio114", "gpio115", 568 "gpio116"; 569 }; 570 pinconf { 571 pins = "gpio113", "gpio114", "gpio115", 572 "gpio116"; 573 drive-strength = <8>; 574 bias-pull-none; 575 }; 576 }; 577 578 ext_pri_tlmm_lines_sus: ext_pa_off { 579 pinmux { 580 function = "pri_mi2s"; 581 pins = "gpio113", "gpio114", "gpio115", 582 "gpio116"; 583 }; 584 pinconf { 585 pins = "gpio113", "gpio114", "gpio115", 586 "gpio116"; 587 drive-strength = <2>; 588 bias-disable; 589 }; 590 }; 591 }; 592 593 ext-pri-ws-line { 594 ext_pri_ws_act: ext_pa_on { 595 pinmux { 596 function = "pri_mi2s_ws"; 597 pins = "gpio110"; 598 }; 599 pinconf { 600 pins = "gpio110"; 601 drive-strength = <8>; 602 bias-pull-none; 603 }; 604 }; 605 606 ext_pri_ws_sus: ext_pa_off { 607 pinmux { 608 function = "pri_mi2s_ws"; 609 pins = "gpio110"; 610 }; 611 pinconf { 612 pins = "gpio110"; 613 drive-strength = <2>; 614 bias-disable; 615 }; 616 }; 617 }; 618 619 ext-mclk-tlmm-lines { 620 ext_mclk_tlmm_lines_act: mclk_lines_on { 621 pinmux { 622 function = "pri_mi2s"; 623 pins = "gpio116"; 624 }; 625 pinconf { 626 pins = "gpio116"; 627 drive-strength = <8>; 628 bias-pull-none; 629 }; 630 }; 631 ext_mclk_tlmm_lines_sus: mclk_lines_off { 632 pinmux { 633 function = "pri_mi2s"; 634 pins = "gpio116"; 635 }; 636 pinconf { 637 pins = "gpio116"; 638 drive-strength = <2>; 639 bias-disable; 640 }; 641 }; 642 }; 643 644 /* secondary Mi2S */ 645 ext-sec-tlmm-lines { 646 ext_sec_tlmm_lines_act: tlmm_lines_on { 647 pinmux { 648 function = "sec_mi2s"; 649 pins = "gpio112", "gpio117", "gpio118", 650 "gpio119"; 651 }; 652 pinconf { 653 pins = "gpio112", "gpio117", "gpio118", 654 "gpio119"; 655 drive-strength = <8>; 656 bias-pull-none; 657 }; 658 }; 659 ext_sec_tlmm_lines_sus: tlmm_lines_off { 660 pinmux { 661 function = "sec_mi2s"; 662 pins = "gpio112", "gpio117", "gpio118", 663 "gpio119"; 664 }; 665 pinconf { 666 pins = "gpio112", "gpio117", "gpio118", 667 "gpio119"; 668 drive-strength = <2>; 669 bias-disable; 670 }; 671 }; 672 }; 673 674 cdc-dmic-lines { 675 cdc_dmic_lines_act: dmic_lines_on { 676 pinmux_dmic0_clk { 677 function = "dmic0_clk"; 678 pins = "gpio0"; 679 }; 680 pinmux_dmic0_data { 681 function = "dmic0_data"; 682 pins = "gpio1"; 683 }; 684 pinconf { 685 pins = "gpio0", "gpio1"; 686 drive-strength = <8>; 687 }; 688 }; 689 cdc_dmic_lines_sus: dmic_lines_off { 690 pinconf { 691 pins = "gpio0", "gpio1"; 692 drive-strength = <2>; 693 bias-disable; 694 }; 695 }; 696 }; 697 698 cross-conn-det { 699 cross_conn_det_act: lines_on { 700 pinmux { 701 function = "gpio"; 702 pins = "gpio120"; 703 }; 704 pinconf { 705 pins = "gpio120"; 706 drive-strength = <8>; 707 output-low; 708 bias-pull-down; 709 }; 710 }; 711 cross_conn_det_sus: lines_off { 712 pinmux { 713 function = "gpio"; 714 pins = "gpio120"; 715 }; 716 pinconf { 717 pins = "gpio120"; 718 drive-strength = <2>; 719 bias-disable; 720 }; 721 }; 722 }; 723}; 724