// SPDX-License-Identifier: GPL-2.0+ OR X11 /* * Copyright (C) 2016-2017 Intel Corporation * * * This code was generated by a tool based on * handoffs from both Qsys and Quartus. * * Changes to this file may be lost if * the code is regenerated. * */ / { #address-cells = <1>; #size-cells = <1>; model = "SOCFPGA Arria10 Dev Kit"; /* Bootloader setting: uboot.model */ /* Clock sources */ clocks { #address-cells = <1>; #size-cells = <1>; /* Clock source: altera_arria10_hps_eosc1 */ altera_arria10_hps_eosc1: altera_arria10_hps_eosc1 { compatible = "fixed-clock"; #clock-cells = <0>; clock-frequency = <25000000>; clock-output-names = "altera_arria10_hps_eosc1-clk"; }; /* Clock source: altera_arria10_hps_cb_intosc_ls */ altera_arria10_hps_cb_intosc_ls: altera_arria10_hps_cb_intosc_ls { compatible = "fixed-clock"; #clock-cells = <0>; clock-frequency = <60000000>; clock-output-names = "altera_arria10_hps_cb_intosc_ls-clk"; }; /* Clock source: altera_arria10_hps_f2h_free */ altera_arria10_hps_f2h_free: altera_arria10_hps_f2h_free { compatible = "fixed-clock"; #clock-cells = <0>; clock-frequency = <200000000>; clock-output-names = "altera_arria10_hps_f2h_free-clk"; }; }; /* * Driver: altera_arria10_soc_clock_manager_arria10_uboot_driver * Version: 1.0 * Binding: device */ i_clk_mgr: clock_manager@0xffd04000 { compatible = "altr,socfpga-a10-clk-init"; reg = <0xffd04000 0x00000200>; reg-names = "soc_clock_manager_OCP_SLV"; /* Address Block: soc_clock_manager_OCP_SLV.i_clk_mgr_mainpllgrp */ mainpll { vco0-psrc = <0>; /* Field: vco0.psrc */ vco1-denom = <1>; /* Field: vco1.denom */ vco1-numer = <191>; /* Field: vco1.numer */ mpuclk-cnt = <0>; /* Field: mpuclk.cnt */ mpuclk-src = <0>; /* Field: mpuclk.src */ nocclk-cnt = <0>; /* Field: nocclk.cnt */ nocclk-src = <0>; /* Field: nocclk.src */ cntr2clk-cnt = <900>; /* Field: cntr2clk.cnt */ cntr3clk-cnt = <900>; /* Field: cntr3clk.cnt */ cntr4clk-cnt = <900>; /* Field: cntr4clk.cnt */ cntr5clk-cnt = <900>; /* Field: cntr5clk.cnt */ cntr6clk-cnt = <900>; /* Field: cntr6clk.cnt */ cntr7clk-cnt = <900>; /* Field: cntr7clk.cnt */ cntr7clk-src = <0>; /* Field: cntr7clk.src */ cntr8clk-cnt = <900>; /* Field: cntr8clk.cnt */ cntr9clk-cnt = <900>; /* Field: cntr9clk.cnt */ cntr9clk-src = <0>; /* Field: cntr9clk.src */ cntr15clk-cnt = <900>; /* Field: cntr15clk.cnt */ nocdiv-l4mainclk = <0>; /* Field: nocdiv.l4mainclk */ nocdiv-l4mpclk = <0>; /* Field: nocdiv.l4mpclk */ nocdiv-l4spclk = <2>; /* Field: nocdiv.l4spclk */ nocdiv-csatclk = <0>; /* Field: nocdiv.csatclk */ nocdiv-cstraceclk = <1>; /* Field: nocdiv.cstraceclk */ nocdiv-cspdbgclk = <1>; /* Field: nocdiv.cspdbgclk */ }; /* Address Block: soc_clock_manager_OCP_SLV.i_clk_mgr_perpllgrp */ perpll { vco0-psrc = <0>; /* Field: vco0.psrc */ vco1-denom = <1>; /* Field: vco1.denom */ vco1-numer = <159>; /* Field: vco1.numer */ cntr2clk-cnt = <7>; /* Field: cntr2clk.cnt */ cntr2clk-src = <1>; /* Field: cntr2clk.src */ cntr3clk-cnt = <900>; /* Field: cntr3clk.cnt */ cntr3clk-src = <1>; /* Field: cntr3clk.src */ cntr4clk-cnt = <19>; /* Field: cntr4clk.cnt */ cntr4clk-src = <1>; /* Field: cntr4clk.src */ cntr5clk-cnt = <499>; /* Field: cntr5clk.cnt */ cntr5clk-src = <1>; /* Field: cntr5clk.src */ cntr6clk-cnt = <9>; /* Field: cntr6clk.cnt */ cntr6clk-src = <1>; /* Field: cntr6clk.src */ cntr7clk-cnt = <900>; /* Field: cntr7clk.cnt */ cntr8clk-cnt = <900>; /* Field: cntr8clk.cnt */ cntr8clk-src = <0>; /* Field: cntr8clk.src */ cntr9clk-cnt = <900>; /* Field: cntr9clk.cnt */ emacctl-emac0sel = <0>; /* Field: emacctl.emac0sel */ emacctl-emac1sel = <0>; /* Field: emacctl.emac1sel */ emacctl-emac2sel = <0>; /* Field: emacctl.emac2sel */ gpiodiv-gpiodbclk = <32000>; /* Field: gpiodiv.gpiodbclk */ }; /* Address Block: soc_clock_manager_OCP_SLV.i_clk_mgr_alteragrp */ alteragrp { nocclk = <0x0384000b>; /* Register: nocclk */ mpuclk = <0x03840001>; /* Register: mpuclk */ }; }; /* * Driver: altera_arria10_soc_3v_io48_pin_mux_arria10_uboot_driver * Version: 1.0 * Binding: pinmux */ i_io48_pin_mux: pinmux@0xffd07000 { #address-cells = <1>; #size-cells = <1>; compatible = "pinctrl-single"; reg = <0xffd07000 0x00000800>; reg-names = "soc_3v_io48_pin_mux_OCP_SLV"; /* Address Block: soc_3v_io48_pin_mux_OCP_SLV.i_io48_pin_mux_shared_3v_io_grp */ shared { reg = <0xffd07000 0x00000200>; pinctrl-single,register-width = <32>; pinctrl-single,function-mask = <0x0000000f>; pinctrl-single,pins = <0x00000000 0x00000008>, /* Register: pinmux_shared_io_q1_1 */ <0x00000004 0x00000008>, /* Register: pinmux_shared_io_q1_2 */ <0x00000008 0x00000008>, /* Register: pinmux_shared_io_q1_3 */ <0x0000000c 0x00000008>, /* Register: pinmux_shared_io_q1_4 */ <0x00000010 0x00000008>, /* Register: pinmux_shared_io_q1_5 */ <0x00000014 0x00000008>, /* Register: pinmux_shared_io_q1_6 */ <0x00000018 0x00000008>, /* Register: pinmux_shared_io_q1_7 */ <0x0000001c 0x00000008>, /* Register: pinmux_shared_io_q1_8 */ <0x00000020 0x00000008>, /* Register: pinmux_shared_io_q1_9 */ <0x00000024 0x00000008>, /* Register: pinmux_shared_io_q1_10 */ <0x00000028 0x00000008>, /* Register: pinmux_shared_io_q1_11 */ <0x0000002c 0x00000008>, /* Register: pinmux_shared_io_q1_12 */ <0x00000030 0x00000004>, /* Register: pinmux_shared_io_q2_1 */ <0x00000034 0x00000004>, /* Register: pinmux_shared_io_q2_2 */ <0x00000038 0x00000004>, /* Register: pinmux_shared_io_q2_3 */ <0x0000003c 0x00000004>, /* Register: pinmux_shared_io_q2_4 */ <0x00000040 0x00000004>, /* Register: pinmux_shared_io_q2_5 */ <0x00000044 0x00000004>, /* Register: pinmux_shared_io_q2_6 */ <0x00000048 0x00000004>, /* Register: pinmux_shared_io_q2_7 */ <0x0000004c 0x00000004>, /* Register: pinmux_shared_io_q2_8 */ <0x00000050 0x00000004>, /* Register: pinmux_shared_io_q2_9 */ <0x00000054 0x00000004>, /* Register: pinmux_shared_io_q2_10 */ <0x00000058 0x00000004>, /* Register: pinmux_shared_io_q2_11 */ <0x0000005c 0x00000004>, /* Register: pinmux_shared_io_q2_12 */ <0x00000060 0x00000003>, /* Register: pinmux_shared_io_q3_1 */ <0x00000064 0x00000003>, /* Register: pinmux_shared_io_q3_2 */ <0x00000068 0x00000003>, /* Register: pinmux_shared_io_q3_3 */ <0x0000006c 0x00000003>, /* Register: pinmux_shared_io_q3_4 */ <0x00000070 0x00000003>, /* Register: pinmux_shared_io_q3_5 */ <0x00000074 0x0000000f>, /* Register: pinmux_shared_io_q3_6 */ <0x00000078 0x0000000a>, /* Register: pinmux_shared_io_q3_7 */ <0x0000007c 0x0000000a>, /* Register: pinmux_shared_io_q3_8 */ <0x00000080 0x0000000a>, /* Register: pinmux_shared_io_q3_9 */ <0x00000084 0x0000000a>, /* Register: pinmux_shared_io_q3_10 */ <0x00000088 0x00000001>, /* Register: pinmux_shared_io_q3_11 */ <0x0000008c 0x00000001>, /* Register: pinmux_shared_io_q3_12 */ <0x00000090 0x00000000>, /* Register: pinmux_shared_io_q4_1 */ <0x00000094 0x00000000>, /* Register: pinmux_shared_io_q4_2 */ <0x00000098 0x0000000f>, /* Register: pinmux_shared_io_q4_3 */ <0x0000009c 0x0000000c>, /* Register: pinmux_shared_io_q4_4 */ <0x000000a0 0x0000000f>, /* Register: pinmux_shared_io_q4_5 */ <0x000000a4 0x0000000f>, /* Register: pinmux_shared_io_q4_6 */ <0x000000a8 0x0000000a>, /* Register: pinmux_shared_io_q4_7 */ <0x000000ac 0x0000000a>, /* Register: pinmux_shared_io_q4_8 */ <0x000000b0 0x0000000c>, /* Register: pinmux_shared_io_q4_9 */ <0x000000b4 0x0000000c>, /* Register: pinmux_shared_io_q4_10 */ <0x000000b8 0x0000000c>, /* Register: pinmux_shared_io_q4_11 */ <0x000000bc 0x0000000c>; /* Register: pinmux_shared_io_q4_12 */ }; /* Address Block: soc_3v_io48_pin_mux_OCP_SLV.i_io48_pin_mux_dedicated_io_grp */ dedicated { reg = <0xffd07200 0x00000200>; pinctrl-single,register-width = <32>; pinctrl-single,function-mask = <0x0000000f>; pinctrl-single,pins = <0x0000000c 0x00000008>, /* Register: pinmux_dedicated_io_4 */ <0x00000010 0x00000008>, /* Register: pinmux_dedicated_io_5 */ <0x00000014 0x00000008>, /* Register: pinmux_dedicated_io_6 */ <0x00000018 0x00000008>, /* Register: pinmux_dedicated_io_7 */ <0x0000001c 0x00000008>, /* Register: pinmux_dedicated_io_8 */ <0x00000020 0x00000008>, /* Register: pinmux_dedicated_io_9 */ <0x00000024 0x0000000a>, /* Register: pinmux_dedicated_io_10 */ <0x00000028 0x0000000a>, /* Register: pinmux_dedicated_io_11 */ <0x0000002c 0x00000008>, /* Register: pinmux_dedicated_io_12 */ <0x00000030 0x00000008>, /* Register: pinmux_dedicated_io_13 */ <0x00000034 0x00000008>, /* Register: pinmux_dedicated_io_14 */ <0x00000038 0x00000008>, /* Register: pinmux_dedicated_io_15 */ <0x0000003c 0x0000000d>, /* Register: pinmux_dedicated_io_16 */ <0x00000040 0x0000000d>; /* Register: pinmux_dedicated_io_17 */ }; /* Address Block: soc_3v_io48_pin_mux_OCP_SLV.i_io48_pin_mux_dedicated_io_grp */ dedicated_cfg { reg = <0xffd07200 0x00000200>; pinctrl-single,register-width = <32>; pinctrl-single,function-mask = <0x003f3f3f>; pinctrl-single,pins = <0x00000100 0x00000101>, /* Register: configuration_dedicated_io_bank */ <0x00000104 0x000b080a>, /* Register: configuration_dedicated_io_1 */ <0x00000108 0x000b080a>, /* Register: configuration_dedicated_io_2 */ <0x0000010c 0x000b080a>, /* Register: configuration_dedicated_io_3 */ <0x00000110 0x000a282a>, /* Register: configuration_dedicated_io_4 */ <0x00000114 0x000a282a>, /* Register: configuration_dedicated_io_5 */ <0x00000118 0x0008282a>, /* Register: configuration_dedicated_io_6 */ <0x0000011c 0x000a282a>, /* Register: configuration_dedicated_io_7 */ <0x00000120 0x000a282a>, /* Register: configuration_dedicated_io_8 */ <0x00000124 0x000a282a>, /* Register: configuration_dedicated_io_9 */ <0x00000128 0x00090000>, /* Register: configuration_dedicated_io_10 */ <0x0000012c 0x00090000>, /* Register: configuration_dedicated_io_11 */ <0x00000130 0x000b282a>, /* Register: configuration_dedicated_io_12 */ <0x00000134 0x000b282a>, /* Register: configuration_dedicated_io_13 */ <0x00000138 0x000b282a>, /* Register: configuration_dedicated_io_14 */ <0x0000013c 0x000b282a>, /* Register: configuration_dedicated_io_15 */ <0x00000140 0x0008282a>, /* Register: configuration_dedicated_io_16 */ <0x00000144 0x000a282a>; /* Register: configuration_dedicated_io_17 */ }; /* Address Block: soc_3v_io48_pin_mux_OCP_SLV.i_io48_pin_mux_fpga_interface_grp */ fpga { reg = <0xffd07400 0x00000100>; pinctrl-single,register-width = <32>; pinctrl-single,function-mask = <0x00000001>; pinctrl-single,pins = <0x00000000 0x00000000>, /* Register: pinmux_emac0_usefpga */ <0x00000004 0x00000000>, /* Register: pinmux_emac1_usefpga */ <0x00000008 0x00000000>, /* Register: pinmux_emac2_usefpga */ <0x0000000c 0x00000000>, /* Register: pinmux_i2c0_usefpga */ <0x00000010 0x00000000>, /* Register: pinmux_i2c1_usefpga */ <0x00000014 0x00000000>, /* Register: pinmux_i2c_emac0_usefpga */ <0x00000018 0x00000000>, /* Register: pinmux_i2c_emac1_usefpga */ <0x0000001c 0x00000000>, /* Register: pinmux_i2c_emac2_usefpga */ <0x00000020 0x00000000>, /* Register: pinmux_nand_usefpga */ <0x00000024 0x00000000>, /* Register: pinmux_qspi_usefpga */ <0x00000028 0x00000000>, /* Register: pinmux_sdmmc_usefpga */ <0x0000002c 0x00000000>, /* Register: pinmux_spim0_usefpga */ <0x00000030 0x00000000>, /* Register: pinmux_spim1_usefpga */ <0x00000034 0x00000000>, /* Register: pinmux_spis0_usefpga */ <0x00000038 0x00000000>, /* Register: pinmux_spis1_usefpga */ <0x0000003c 0x00000000>, /* Register: pinmux_uart0_usefpga */ <0x00000040 0x00000000>; /* Register: pinmux_uart1_usefpga */ }; }; /* * Driver: altera_arria10_soc_noc_arria10_uboot_driver * Version: 1.0 * Binding: device */ i_noc: noc@0xffd10000 { compatible = "altr,socfpga-a10-noc"; reg = <0xffd10000 0x00008000>; reg-names = "mpu_m0"; firewall { /* * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.mpuregion0addr.base * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.mpuregion0addr.limit */ mpu0 = <0x00000000 0x0000ffff>; /* * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_l3_ddr_scr.hpsregion0addr.base * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_l3_ddr_scr.hpsregion0addr.limit */ l3-0 = <0x00000000 0x0000ffff>; /* * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.fpga2sdram0region0addr.base * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.fpga2sdram0region0addr.limit */ fpga2sdram0-0 = <0x00000000 0x0000ffff>; /* * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.fpga2sdram1region0addr.base * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.fpga2sdram1region0addr.limit */ fpga2sdram1-0 = <0x00000000 0x0000ffff>; /* * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.fpga2sdram2region0addr.base * Driver setting: altera_arria10_soc_noc_arria10_uboot_driver.I_NOC.mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.fpga2sdram2region0addr.limit */ fpga2sdram2-0 = <0x00000000 0x0000ffff>; }; }; hps_fpgabridge0: fpgabridge@0 { compatible = "altr,socfpga-hps2fpga-bridge"; init-val = <1>; }; hps_fpgabridge1: fpgabridge@1 { compatible = "altr,socfpga-lwhps2fpga-bridge"; init-val = <1>; }; hps_fpgabridge2: fpgabridge@2 { compatible = "altr,socfpga-fpga2hps-bridge"; init-val = <1>; }; hps_fpgabridge3: fpgabridge@3 { compatible = "altr,socfpga-fpga2sdram0-bridge"; init-val = <1>; }; hps_fpgabridge4: fpgabridge@4 { compatible = "altr,socfpga-fpga2sdram1-bridge"; init-val = <0>; }; hps_fpgabridge5: fpgabridge@5 { compatible = "altr,socfpga-fpga2sdram2-bridge"; init-val = <1>; }; };