| .. | .. |
|---|
| 1 | +// SPDX-License-Identifier: GPL-2.0+ |
|---|
| 1 | 2 | /* |
|---|
| 2 | | - * Copyright (C) 2012 Altera <www.altera.com> |
|---|
| 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 as published by |
|---|
| 6 | | - * the Free Software Foundation; either version 2 of the License, or |
|---|
| 7 | | - * (at your option) any later version. |
|---|
| 8 | | - * |
|---|
| 9 | | - * This program is distributed in the hope that it will be useful, |
|---|
| 10 | | - * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|---|
| 11 | | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|---|
| 12 | | - * GNU General Public License for more details. |
|---|
| 13 | | - * |
|---|
| 14 | | - * You should have received a copy of the GNU General Public License |
|---|
| 15 | | - * along with this program. If not, see <http://www.gnu.org/licenses/>. |
|---|
| 3 | + * Copyright (C) 2012 Altera <www.altera.com> |
|---|
| 16 | 4 | */ |
|---|
| 17 | 5 | |
|---|
| 18 | 6 | #include <dt-bindings/reset/altr,rst-mgr.h> |
|---|
| .. | .. |
|---|
| 22 | 10 | #size-cells = <1>; |
|---|
| 23 | 11 | |
|---|
| 24 | 12 | aliases { |
|---|
| 25 | | - ethernet0 = &gmac0; |
|---|
| 26 | | - ethernet1 = &gmac1; |
|---|
| 27 | 13 | serial0 = &uart0; |
|---|
| 28 | 14 | serial1 = &uart1; |
|---|
| 29 | 15 | timer0 = &timer0; |
|---|
| .. | .. |
|---|
| 98 | 84 | #dma-requests = <32>; |
|---|
| 99 | 85 | clocks = <&l4_main_clk>; |
|---|
| 100 | 86 | clock-names = "apb_pclk"; |
|---|
| 87 | + resets = <&rst DMA_RESET>; |
|---|
| 88 | + reset-names = "dma"; |
|---|
| 101 | 89 | }; |
|---|
| 102 | 90 | }; |
|---|
| 103 | 91 | |
|---|
| .. | .. |
|---|
| 114 | 102 | reg = <0xffc00000 0x1000>; |
|---|
| 115 | 103 | interrupts = <0 131 4>, <0 132 4>, <0 133 4>, <0 134 4>; |
|---|
| 116 | 104 | clocks = <&can0_clk>; |
|---|
| 105 | + resets = <&rst CAN0_RESET>; |
|---|
| 117 | 106 | status = "disabled"; |
|---|
| 118 | 107 | }; |
|---|
| 119 | 108 | |
|---|
| .. | .. |
|---|
| 122 | 111 | reg = <0xffc01000 0x1000>; |
|---|
| 123 | 112 | interrupts = <0 135 4>, <0 136 4>, <0 137 4>, <0 138 4>; |
|---|
| 124 | 113 | clocks = <&can1_clk>; |
|---|
| 114 | + resets = <&rst CAN1_RESET>; |
|---|
| 125 | 115 | status = "disabled"; |
|---|
| 126 | 116 | }; |
|---|
| 127 | 117 | |
|---|
| .. | .. |
|---|
| 483 | 473 | clk-gate = <0xa0 9>; |
|---|
| 484 | 474 | }; |
|---|
| 485 | 475 | |
|---|
| 476 | + nand_ecc_clk: nand_ecc_clk { |
|---|
| 477 | + #clock-cells = <0>; |
|---|
| 478 | + compatible = "altr,socfpga-gate-clk"; |
|---|
| 479 | + clocks = <&nand_x_clk>; |
|---|
| 480 | + clk-gate = <0xa0 9>; |
|---|
| 481 | + }; |
|---|
| 482 | + |
|---|
| 486 | 483 | nand_clk: nand_clk { |
|---|
| 487 | 484 | #clock-cells = <0>; |
|---|
| 488 | 485 | compatible = "altr,socfpga-gate-clk"; |
|---|
| 489 | | - clocks = <&f2s_periph_ref_clk>, <&main_nand_sdmmc_clk>, <&per_nand_mmc_clk>; |
|---|
| 486 | + clocks = <&nand_x_clk>; |
|---|
| 490 | 487 | clk-gate = <0xa0 10>; |
|---|
| 491 | 488 | fixed-divider = <4>; |
|---|
| 492 | 489 | }; |
|---|
| .. | .. |
|---|
| 534 | 531 | reg = <0xff400000 0x100000>; |
|---|
| 535 | 532 | resets = <&rst LWHPS2FPGA_RESET>; |
|---|
| 536 | 533 | clocks = <&l4_main_clk>; |
|---|
| 534 | + status = "disabled"; |
|---|
| 537 | 535 | }; |
|---|
| 538 | 536 | |
|---|
| 539 | 537 | fpga_bridge1: fpga_bridge@ff500000 { |
|---|
| .. | .. |
|---|
| 541 | 539 | reg = <0xff500000 0x10000>; |
|---|
| 542 | 540 | resets = <&rst HPS2FPGA_RESET>; |
|---|
| 543 | 541 | clocks = <&l4_main_clk>; |
|---|
| 542 | + status = "disabled"; |
|---|
| 543 | + }; |
|---|
| 544 | + |
|---|
| 545 | + fpga_bridge2: fpga-bridge@ff600000 { |
|---|
| 546 | + compatible = "altr,socfpga-fpga2hps-bridge"; |
|---|
| 547 | + reg = <0xff600000 0x100000>; |
|---|
| 548 | + resets = <&rst FPGA2HPS_RESET>; |
|---|
| 549 | + clocks = <&l4_main_clk>; |
|---|
| 550 | + status = "disabled"; |
|---|
| 551 | + }; |
|---|
| 552 | + |
|---|
| 553 | + fpga_bridge3: fpga-bridge@ffc25080 { |
|---|
| 554 | + compatible = "altr,socfpga-fpga2sdram-bridge"; |
|---|
| 555 | + reg = <0xffc25080 0x4>; |
|---|
| 556 | + status = "disabled"; |
|---|
| 544 | 557 | }; |
|---|
| 545 | 558 | |
|---|
| 546 | 559 | fpgamgr0: fpgamgr@ff706000 { |
|---|
| .. | .. |
|---|
| 592 | 605 | compatible = "snps,dw-apb-gpio"; |
|---|
| 593 | 606 | reg = <0xff708000 0x1000>; |
|---|
| 594 | 607 | clocks = <&l4_mp_clk>; |
|---|
| 608 | + resets = <&rst GPIO0_RESET>; |
|---|
| 595 | 609 | status = "disabled"; |
|---|
| 596 | 610 | |
|---|
| 597 | 611 | porta: gpio-controller@0 { |
|---|
| .. | .. |
|---|
| 612 | 626 | compatible = "snps,dw-apb-gpio"; |
|---|
| 613 | 627 | reg = <0xff709000 0x1000>; |
|---|
| 614 | 628 | clocks = <&l4_mp_clk>; |
|---|
| 629 | + resets = <&rst GPIO1_RESET>; |
|---|
| 615 | 630 | status = "disabled"; |
|---|
| 616 | 631 | |
|---|
| 617 | 632 | portb: gpio-controller@0 { |
|---|
| .. | .. |
|---|
| 632 | 647 | compatible = "snps,dw-apb-gpio"; |
|---|
| 633 | 648 | reg = <0xff70a000 0x1000>; |
|---|
| 634 | 649 | clocks = <&l4_mp_clk>; |
|---|
| 650 | + resets = <&rst GPIO2_RESET>; |
|---|
| 635 | 651 | status = "disabled"; |
|---|
| 636 | 652 | |
|---|
| 637 | 653 | portc: gpio-controller@0 { |
|---|
| .. | .. |
|---|
| 742 | 758 | #size-cells = <0>; |
|---|
| 743 | 759 | clocks = <&l4_mp_clk>, <&sdmmc_clk_divided>; |
|---|
| 744 | 760 | clock-names = "biu", "ciu"; |
|---|
| 761 | + resets = <&rst SDMMC_RESET>; |
|---|
| 745 | 762 | status = "disabled"; |
|---|
| 746 | 763 | }; |
|---|
| 747 | 764 | |
|---|
| 748 | 765 | nand0: nand@ff900000 { |
|---|
| 749 | 766 | #address-cells = <0x1>; |
|---|
| 750 | | - #size-cells = <0x1>; |
|---|
| 767 | + #size-cells = <0x0>; |
|---|
| 751 | 768 | compatible = "altr,socfpga-denali-nand"; |
|---|
| 752 | 769 | reg = <0xff900000 0x100000>, |
|---|
| 753 | 770 | <0xffb80000 0x10000>; |
|---|
| 754 | 771 | reg-names = "nand_data", "denali_reg"; |
|---|
| 755 | 772 | interrupts = <0x0 0x90 0x4>; |
|---|
| 756 | | - dma-mask = <0xffffffff>; |
|---|
| 757 | | - clocks = <&nand_x_clk>; |
|---|
| 773 | + clocks = <&nand_clk>, <&nand_x_clk>, <&nand_ecc_clk>; |
|---|
| 774 | + clock-names = "nand", "nand_x", "ecc"; |
|---|
| 775 | + resets = <&rst NAND_RESET>; |
|---|
| 758 | 776 | status = "disabled"; |
|---|
| 759 | 777 | }; |
|---|
| 760 | 778 | |
|---|
| .. | .. |
|---|
| 765 | 783 | |
|---|
| 766 | 784 | qspi: spi@ff705000 { |
|---|
| 767 | 785 | compatible = "cdns,qspi-nor"; |
|---|
| 768 | | - #address-cells = <1>; |
|---|
| 786 | + #address-cells = <1>; |
|---|
| 769 | 787 | #size-cells = <0>; |
|---|
| 770 | 788 | reg = <0xff705000 0x1000>, |
|---|
| 771 | 789 | <0xffa00000 0x1000>; |
|---|
| .. | .. |
|---|
| 774 | 792 | cdns,fifo-width = <4>; |
|---|
| 775 | 793 | cdns,trigger-address = <0x00000000>; |
|---|
| 776 | 794 | clocks = <&qspi_clk>; |
|---|
| 795 | + resets = <&rst QSPI_RESET>; |
|---|
| 777 | 796 | status = "disabled"; |
|---|
| 778 | 797 | }; |
|---|
| 779 | 798 | |
|---|
| .. | .. |
|---|
| 792 | 811 | sdr: sdr@ffc25000 { |
|---|
| 793 | 812 | compatible = "altr,sdr-ctl", "syscon"; |
|---|
| 794 | 813 | reg = <0xffc25000 0x1000>; |
|---|
| 814 | + resets = <&rst SDR_RESET>; |
|---|
| 795 | 815 | }; |
|---|
| 796 | 816 | |
|---|
| 797 | 817 | sdramedac { |
|---|
| .. | .. |
|---|
| 808 | 828 | interrupts = <0 154 4>; |
|---|
| 809 | 829 | num-cs = <4>; |
|---|
| 810 | 830 | clocks = <&spi_m_clk>; |
|---|
| 831 | + resets = <&rst SPIM0_RESET>; |
|---|
| 832 | + reset-names = "spi"; |
|---|
| 811 | 833 | status = "disabled"; |
|---|
| 812 | 834 | }; |
|---|
| 813 | 835 | |
|---|
| .. | .. |
|---|
| 819 | 841 | interrupts = <0 155 4>; |
|---|
| 820 | 842 | num-cs = <4>; |
|---|
| 821 | 843 | clocks = <&spi_m_clk>; |
|---|
| 844 | + resets = <&rst SPIM1_RESET>; |
|---|
| 845 | + reset-names = "spi"; |
|---|
| 822 | 846 | status = "disabled"; |
|---|
| 823 | 847 | }; |
|---|
| 824 | 848 | |
|---|
| .. | .. |
|---|
| 841 | 865 | reg = <0xffc08000 0x1000>; |
|---|
| 842 | 866 | clocks = <&l4_sp_clk>; |
|---|
| 843 | 867 | clock-names = "timer"; |
|---|
| 868 | + resets = <&rst SPTIMER0_RESET>; |
|---|
| 869 | + reset-names = "timer"; |
|---|
| 844 | 870 | }; |
|---|
| 845 | 871 | |
|---|
| 846 | 872 | timer1: timer1@ffc09000 { |
|---|
| .. | .. |
|---|
| 849 | 875 | reg = <0xffc09000 0x1000>; |
|---|
| 850 | 876 | clocks = <&l4_sp_clk>; |
|---|
| 851 | 877 | clock-names = "timer"; |
|---|
| 878 | + resets = <&rst SPTIMER1_RESET>; |
|---|
| 879 | + reset-names = "timer"; |
|---|
| 852 | 880 | }; |
|---|
| 853 | 881 | |
|---|
| 854 | 882 | timer2: timer2@ffd00000 { |
|---|
| .. | .. |
|---|
| 857 | 885 | reg = <0xffd00000 0x1000>; |
|---|
| 858 | 886 | clocks = <&osc1>; |
|---|
| 859 | 887 | clock-names = "timer"; |
|---|
| 888 | + resets = <&rst OSC1TIMER0_RESET>; |
|---|
| 889 | + reset-names = "timer"; |
|---|
| 860 | 890 | }; |
|---|
| 861 | 891 | |
|---|
| 862 | 892 | timer3: timer3@ffd01000 { |
|---|
| .. | .. |
|---|
| 865 | 895 | reg = <0xffd01000 0x1000>; |
|---|
| 866 | 896 | clocks = <&osc1>; |
|---|
| 867 | 897 | clock-names = "timer"; |
|---|
| 898 | + resets = <&rst OSC1TIMER1_RESET>; |
|---|
| 899 | + reset-names = "timer"; |
|---|
| 868 | 900 | }; |
|---|
| 869 | 901 | |
|---|
| 870 | 902 | uart0: serial0@ffc02000 { |
|---|
| .. | .. |
|---|
| 877 | 909 | dmas = <&pdma 28>, |
|---|
| 878 | 910 | <&pdma 29>; |
|---|
| 879 | 911 | dma-names = "tx", "rx"; |
|---|
| 912 | + resets = <&rst UART0_RESET>; |
|---|
| 880 | 913 | }; |
|---|
| 881 | 914 | |
|---|
| 882 | 915 | uart1: serial1@ffc03000 { |
|---|
| .. | .. |
|---|
| 889 | 922 | dmas = <&pdma 30>, |
|---|
| 890 | 923 | <&pdma 31>; |
|---|
| 891 | 924 | dma-names = "tx", "rx"; |
|---|
| 925 | + resets = <&rst UART1_RESET>; |
|---|
| 892 | 926 | }; |
|---|
| 893 | 927 | |
|---|
| 894 | 928 | usbphy0: usbphy { |
|---|
| .. | .. |
|---|
| 928 | 962 | reg = <0xffd02000 0x1000>; |
|---|
| 929 | 963 | interrupts = <0 171 4>; |
|---|
| 930 | 964 | clocks = <&osc1>; |
|---|
| 965 | + resets = <&rst L4WD0_RESET>; |
|---|
| 931 | 966 | status = "disabled"; |
|---|
| 932 | 967 | }; |
|---|
| 933 | 968 | |
|---|
| .. | .. |
|---|
| 936 | 971 | reg = <0xffd03000 0x1000>; |
|---|
| 937 | 972 | interrupts = <0 172 4>; |
|---|
| 938 | 973 | clocks = <&osc1>; |
|---|
| 974 | + resets = <&rst L4WD1_RESET>; |
|---|
| 939 | 975 | status = "disabled"; |
|---|
| 940 | 976 | }; |
|---|
| 941 | 977 | }; |
|---|