/dts-v1/; / { #address-cells = <1>; #size-cells = <1>; compatible = "xlnx,microblaze"; model = "Xilinx-KC705-TRD"; ddr3_sdram: memory@80000000 { device_type = "memory"; reg = < 0x80000000 0x40000000 >; } ; aliases { ethernet0 = &soft_ethernet_mac; serial0 = &rs232_uart_1; } ; chosen { bootargs = "console=ttyS0,115200 root=/dev/ram rw udev.children-max=1"; linux,stdout-path = "/axi@2/serial@40400000"; } ; cpus { #address-cells = <1>; #cpus = <0x1>; #size-cells = <0>; microblaze_0: cpu@0 { bus-handle = <&axi_mm_mb>, <&axi4_0>, <&axi4lite_0>; clock-frequency = <150000000>; clocks = <&clk_cpu>; compatible = "xlnx,microblaze-8.50.a"; d-cache-baseaddr = <0x80000000>; d-cache-highaddr = <0xffffffff>; d-cache-line-size = <0x20>; d-cache-size = <0x2000>; device_type = "cpu"; i-cache-baseaddr = <0x80000000>; i-cache-highaddr = <0xffffffff>; i-cache-line-size = <0x20>; i-cache-size = <0x2000>; model = "microblaze,8.50.a"; reg = <0>; timebase-frequency = <150000000>; xlnx,addr-tag-bits = <0x12>; xlnx,allow-dcache-wr = <0x1>; xlnx,allow-icache-wr = <0x1>; xlnx,area-optimized = <0x0>; xlnx,avoid-primitives = <0x0>; xlnx,base-vectors = <0x0>; xlnx,branch-target-cache-size = <0x0>; xlnx,cache-byte-size = <0x2000>; xlnx,d-axi = <0x1>; xlnx,d-lmb = <0x1>; xlnx,d-plb = <0x0>; xlnx,data-size = <0x20>; xlnx,dcache-addr-tag = <0x12>; xlnx,dcache-always-used = <0x1>; xlnx,dcache-byte-size = <0x2000>; xlnx,dcache-data-width = <0x0>; xlnx,dcache-force-tag-lutram = <0x1>; xlnx,dcache-interface = <0x0>; xlnx,dcache-line-len = <0x8>; xlnx,dcache-use-fsl = <0x0>; xlnx,dcache-use-writeback = <0x0>; xlnx,dcache-victims = <0x0>; xlnx,debug-enabled = <0x1>; xlnx,div-zero-exception = <0x0>; xlnx,dynamic-bus-sizing = <0x1>; xlnx,ecc-use-ce-exception = <0x0>; xlnx,edge-is-positive = <0x1>; xlnx,endianness = <0x1>; xlnx,family = "kintex7"; xlnx,fault-tolerant = <0x0>; xlnx,fpu-exception = <0x0>; xlnx,freq = <0x8f0d180>; xlnx,fsl-data-size = <0x20>; xlnx,fsl-exception = <0x0>; xlnx,fsl-links = <0x0>; xlnx,i-axi = <0x0>; xlnx,i-lmb = <0x1>; xlnx,i-plb = <0x0>; xlnx,icache-always-used = <0x1>; xlnx,icache-data-width = <0x0>; xlnx,icache-force-tag-lutram = <0x1>; xlnx,icache-interface = <0x0>; xlnx,icache-line-len = <0x8>; xlnx,icache-streams = <0x0>; xlnx,icache-use-fsl = <0x0>; xlnx,icache-victims = <0x0>; xlnx,ill-opcode-exception = <0x1>; xlnx,instance = "microblaze_0"; xlnx,interconnect = <0x2>; xlnx,interrupt-is-edge = <0x0>; xlnx,lockstep-slave = <0x0>; xlnx,mmu-dtlb-size = <0x2>; xlnx,mmu-itlb-size = <0x2>; xlnx,mmu-privileged-instr = <0x0>; xlnx,mmu-tlb-access = <0x3>; xlnx,mmu-zones = <0x2>; xlnx,number-of-pc-brk = <0x1>; xlnx,number-of-rd-addr-brk = <0x0>; xlnx,number-of-wr-addr-brk = <0x0>; xlnx,opcode-0x0-illegal = <0x1>; xlnx,optimization = <0x0>; xlnx,pc-width = <0x20>; xlnx,pvr = <0x2>; xlnx,pvr-user1 = <0x0>; xlnx,pvr-user2 = <0x0>; xlnx,reset-msr = <0x0>; xlnx,sco = <0x0>; xlnx,stream-interconnect = <0x0>; xlnx,unaligned-exceptions = <0x1>; xlnx,use-barrel = <0x1>; xlnx,use-branch-target-cache = <0x0>; xlnx,use-dcache = <0x1>; xlnx,use-div = <0x0>; xlnx,use-ext-brk = <0x1>; xlnx,use-ext-nm-brk = <0x1>; xlnx,use-extended-fsl-instr = <0x0>; xlnx,use-fpu = <0x0>; xlnx,use-hw-mul = <0x1>; xlnx,use-icache = <0x1>; xlnx,use-interrupt = <0x1>; xlnx,use-mmu = <0x3>; xlnx,use-msr-instr = <0x1>; xlnx,use-pcmp-instr = <0x1>; xlnx,use-reorder-instr = <0x1>; xlnx,use-stack-protection = <0x0>; } ; } ; clocks { #address-cells = <1>; #size-cells = <0>; clk_bus: bus { #clock-cells = <0>; clock-frequency = <100000000>; clock-output-names = "bus"; compatible = "fixed-clock"; reg = <1>; } ; clk_cpu: cpu { #clock-cells = <0>; clock-frequency = <150000000>; clock-output-names = "cpu"; compatible = "fixed-clock"; reg = <0>; } ; } ; axi4lite_0: axi@2 { #address-cells = <1>; #size-cells = <1>; compatible = "xlnx,axi-interconnect-1.06.a", "simple-bus"; ranges ; axi_dma_ethernet: axi-dma@50000000 { axistream-connected = <&soft_ethernet_mac>; axistream-control-connected = <&soft_ethernet_mac>; compatible = "xlnx,axi-dma-6.03.a", "xlnx,axi-dma-1.00.a"; interrupt-parent = <&interrupt_cntlr>; interrupts = < 0 2 1 2 >; reg = < 0x50000000 0x10000 >; xlnx,dlytmr-resolution = <0x4e2>; xlnx,enable-multi-channel = <0x0>; xlnx,family = "kintex7"; xlnx,generic = <0x0>; xlnx,include-mm2s = <0x1>; xlnx,include-mm2s-dre = <0x1>; xlnx,include-mm2s-sf = <0x1>; xlnx,include-s2mm = <0x1>; xlnx,include-s2mm-dre = <0x1>; xlnx,include-s2mm-sf = <0x1>; xlnx,include-sg = <0x1>; xlnx,instance = "AXI_DMA_Ethernet"; xlnx,mm2s-burst-size = <0x10>; xlnx,num-mm2s-channels = <0x1>; xlnx,num-s2mm-channels = <0x1>; xlnx,prmry-is-aclk-async = <0x1>; xlnx,s2mm-burst-size = <0x10>; xlnx,sg-include-desc-queue = <0x1>; xlnx,sg-include-stscntrl-strm = <0x1>; xlnx,sg-length-width = <0x10>; xlnx,sg-use-stsapp-length = <0x1>; } ; axi_xadc_0: axi-xadc@40d00000 { clocks = <&clk_bus>; compatible = "xlnx,axi-xadc-1.00.a"; interrupt-parent = <&interrupt_cntlr>; interrupts = < 7 2 >; reg = < 0x40d00000 0x10000 >; xlnx,family = "kintex7"; xlnx,has-temp-bus = <0x1>; xlnx,include-intr = <0x1>; xlnx,instance = "axi_xadc_0"; xlnx,sim-monitor-file = "Sysmon_Design.txt"; } ; debug_module: serial@40200000 { compatible = "xlnx,mdm-2.10.a", "xlnx,xps-uartlite-1.00.a"; reg = < 0x40200000 0x10000 >; xlnx,family = "kintex7"; xlnx,interconnect = <0x2>; xlnx,jtag-chain = <0x2>; xlnx,mb-dbg-ports = <0x1>; xlnx,use-bscan = <0x0>; xlnx,use-uart = <0x1>; } ; dip_switches_4bits: gpio@40700000 { #gpio-cells = <2>; compatible = "xlnx,axi-gpio-1.01.b", "xlnx,xps-gpio-1.00.a"; gpio-controller ; reg = < 0x40700000 0x10000 >; xlnx,all-inputs = <0x1>; xlnx,all-inputs-2 = <0x0>; xlnx,dout-default = <0x0>; xlnx,dout-default-2 = <0x0>; xlnx,family = "kintex7"; xlnx,gpio-width = <0x4>; xlnx,gpio2-width = <0x20>; xlnx,instance = "DIP_Switches_4Bits"; xlnx,interrupt-present = <0x1>; xlnx,is-dual = <0x0>; xlnx,tri-default = <0xffffffff>; xlnx,tri-default-2 = <0xffffffff>; } ; dual_timer_counter: system-timer@40300000 { clock-frequency = <100000000>; clocks = <&clk_bus>; compatible = "xlnx,axi-timer-1.03.a", "xlnx,xps-timer-1.00.a"; interrupt-parent = <&interrupt_cntlr>; interrupts = < 3 2 >; reg = < 0x40300000 0x10000 >; xlnx,count-width = <0x20>; xlnx,family = "kintex7"; xlnx,gen0-assert = <0x1>; xlnx,gen1-assert = <0x1>; xlnx,instance = "Dual_Timer_Counter"; xlnx,one-timer-only = <0x0>; xlnx,trig0-assert = <0x1>; xlnx,trig1-assert = <0x1>; } ; iic_eeprom: i2c@40a00000 { compatible = "xlnx,axi-iic-1.02.a", "xlnx,xps-iic-2.00.a"; interrupt-parent = <&interrupt_cntlr>; interrupts = < 4 2 >; reg = < 0x40a00000 0x10000 >; xlnx,family = "kintex7"; xlnx,gpo-width = <0x1>; xlnx,iic-freq = <0x186a0>; xlnx,instance = "IIC_EEPROM"; xlnx,scl-inertial-delay = <0x0>; xlnx,sda-inertial-delay = <0x0>; xlnx,sda-level = <0x1>; xlnx,ten-bit-adr = <0x0>; } ; interrupt_cntlr: interrupt-controller@40100000 { #interrupt-cells = <0x2>; compatible = "xlnx,axi-intc-1.03.a", "xlnx,xps-intc-1.00.a"; interrupt-controller ; reg = < 0x40100000 0x10000 >; xlnx,kind-of-intr = <0x0>; xlnx,num-intr-inputs = <0x8>; } ; lcd_gpio: gpio@40800000 { #gpio-cells = <2>; compatible = "xlnx,axi-gpio-1.01.b", "xlnx,xps-gpio-1.00.a"; gpio-controller ; reg = < 0x40800000 0x10000 >; xlnx,all-inputs = <0x0>; xlnx,all-inputs-2 = <0x0>; xlnx,dout-default = <0x0>; xlnx,dout-default-2 = <0x0>; xlnx,family = "kintex7"; xlnx,gpio-width = <0x7>; xlnx,gpio2-width = <0x20>; xlnx,instance = "LCD_GPIO"; xlnx,interrupt-present = <0x0>; xlnx,is-dual = <0x0>; xlnx,tri-default = <0xffffffff>; xlnx,tri-default-2 = <0xffffffff>; } ; leds_8bits: gpio@40600000 { #gpio-cells = <2>; compatible = "xlnx,axi-gpio-1.01.b", "xlnx,xps-gpio-1.00.a"; gpio-controller ; reg = < 0x40600000 0x10000 >; xlnx,all-inputs = <0x0>; xlnx,all-inputs-2 = <0x0>; xlnx,dout-default = <0x0>; xlnx,dout-default-2 = <0x0>; xlnx,family = "kintex7"; xlnx,gpio-width = <0x8>; xlnx,gpio2-width = <0x20>; xlnx,instance = "LEDs_8Bits"; xlnx,interrupt-present = <0x1>; xlnx,is-dual = <0x0>; xlnx,tri-default = <0xffffffff>; xlnx,tri-default-2 = <0xffffffff>; } ; logisdhc_0: logisdhc@40b00000 { compatible = "xlnx,logisdhc-1.06.c"; interrupt-parent = <&interrupt_cntlr>; interrupts = < 6 2 >; reg = < 0x40b00000 0x10000 >; xlnx,byte-per-pixel = <0x4>; xlnx,convert-endianess = <0x0>; xlnx,dma-type = <0x1>; xlnx,family = "kintex7"; xlnx,ip-license-type = <0x1>; xlnx,ip-major-revision = <0x1>; xlnx,ip-minor-revision = <0x6>; xlnx,ip-patch-level = <0x2>; xlnx,mem-burst = <0x4>; xlnx,mem-data-bus-width = <0x20>; xlnx,mem-interface = <0x1>; xlnx,regs-interface = <0x2>; xlnx,row-stride = <0x400>; xlnx,sd-base-clock-freq = <0x64>; xlnx,use-dma = <0x0>; } ; primary_flash: flash@48000000 { #address-cells = <1>; #size-cells = <1>; bank-width = <2>; compatible = "xlnx,axi-emc-1.03.b", "cfi-flash"; reg = < 0x48000000 0x8000000 >; xlnx,axi-clk-period-ps = <0x2710>; xlnx,family = "kintex7"; xlnx,include-datawidth-matching-0 = <0x1>; xlnx,include-datawidth-matching-1 = <0x0>; xlnx,include-datawidth-matching-2 = <0x0>; xlnx,include-datawidth-matching-3 = <0x0>; xlnx,include-negedge-ioregs = <0x0>; xlnx,instance = "Linear_Flash"; xlnx,lflash-period-ps = <0x4e20>; xlnx,linear-flash-sync-burst = <0x0>; xlnx,max-mem-width = <0x10>; xlnx,mem0-type = <0x2>; xlnx,mem0-width = <0x10>; xlnx,mem1-type = <0x0>; xlnx,mem1-width = <0x20>; xlnx,mem2-type = <0x0>; xlnx,mem2-width = <0x20>; xlnx,mem3-type = <0x0>; xlnx,mem3-width = <0x20>; xlnx,num-banks-mem = <0x1>; xlnx,parity-type-mem-0 = <0x0>; xlnx,parity-type-mem-1 = <0x0>; xlnx,parity-type-mem-2 = <0x0>; xlnx,parity-type-mem-3 = <0x0>; xlnx,s-axi-en-reg = <0x0>; xlnx,s-axi-mem-addr-width = <0x20>; xlnx,s-axi-mem-data-width = <0x20>; xlnx,s-axi-mem-id-width = <0x1>; xlnx,s-axi-mem-protocol = "AXI4LITE"; xlnx,s-axi-reg-addr-width = <0x5>; xlnx,s-axi-reg-data-width = <0x20>; xlnx,s-axi-reg-protocol = "axi4"; xlnx,synch-pipedelay-0 = <0x2>; xlnx,synch-pipedelay-1 = <0x2>; xlnx,synch-pipedelay-2 = <0x2>; xlnx,synch-pipedelay-3 = <0x2>; xlnx,tavdv-ps-mem-0 = <0x1fbd0>; xlnx,tavdv-ps-mem-1 = <0x3a98>; xlnx,tavdv-ps-mem-2 = <0x3a98>; xlnx,tavdv-ps-mem-3 = <0x3a98>; xlnx,tcedv-ps-mem-0 = <0x1fbd0>; xlnx,tcedv-ps-mem-1 = <0x3a98>; xlnx,tcedv-ps-mem-2 = <0x3a98>; xlnx,tcedv-ps-mem-3 = <0x3a98>; xlnx,thzce-ps-mem-0 = <0x88b8>; xlnx,thzce-ps-mem-1 = <0x1b58>; xlnx,thzce-ps-mem-2 = <0x1b58>; xlnx,thzce-ps-mem-3 = <0x1b58>; xlnx,thzoe-ps-mem-0 = <0x1b58>; xlnx,thzoe-ps-mem-1 = <0x1b58>; xlnx,thzoe-ps-mem-2 = <0x1b58>; xlnx,thzoe-ps-mem-3 = <0x1b58>; xlnx,tlzwe-ps-mem-0 = <0x88b8>; xlnx,tlzwe-ps-mem-1 = <0x0>; xlnx,tlzwe-ps-mem-2 = <0x0>; xlnx,tlzwe-ps-mem-3 = <0x0>; xlnx,tpacc-ps-flash-0 = <0x61a8>; xlnx,tpacc-ps-flash-1 = <0x61a8>; xlnx,tpacc-ps-flash-2 = <0x61a8>; xlnx,tpacc-ps-flash-3 = <0x61a8>; xlnx,twc-ps-mem-0 = <0x11170>; xlnx,twc-ps-mem-1 = <0x3a98>; xlnx,twc-ps-mem-2 = <0x3a98>; xlnx,twc-ps-mem-3 = <0x3a98>; xlnx,twp-ps-mem-0 = <0x11170>; xlnx,twp-ps-mem-1 = <0x2ee0>; xlnx,twp-ps-mem-2 = <0x2ee0>; xlnx,twp-ps-mem-3 = <0x2ee0>; xlnx,twph-ps-mem-0 = <0x2ee0>; xlnx,twph-ps-mem-1 = <0x2ee0>; xlnx,twph-ps-mem-2 = <0x2ee0>; xlnx,twph-ps-mem-3 = <0x2ee0>; xlnx,wr-rec-time-mem-0 = <0x186a0>; xlnx,wr-rec-time-mem-1 = <0x186a0>; xlnx,wr-rec-time-mem-2 = <0x186a0>; xlnx,wr-rec-time-mem-3 = <0x186a0>; partition@0x00000000 { label = "fpga"; reg = <0x00000000 0x00200000>; }; partition@0x00200000 { label = "boot"; reg = <0x00200000 0x00040000>; }; partition@0x00240000 { label = "bootenv"; reg = <0x00240000 0x00020000>; }; partition@0x00260000 { label = "image"; reg = <0x00260000 0x00c00000>; }; partition@0x00e60000 { label = "spare"; reg = <0x00e60000 0x00000000>; }; } ; push_buttons_5bits: gpio@40500000 { #gpio-cells = <2>; compatible = "xlnx,axi-gpio-1.01.b", "xlnx,xps-gpio-1.00.a"; gpio-controller ; reg = < 0x40500000 0x10000 >; xlnx,all-inputs = <0x1>; xlnx,all-inputs-2 = <0x0>; xlnx,dout-default = <0x0>; xlnx,dout-default-2 = <0x0>; xlnx,family = "kintex7"; xlnx,gpio-width = <0x5>; xlnx,gpio2-width = <0x20>; xlnx,instance = "Push_Buttons_5Bits"; xlnx,interrupt-present = <0x1>; xlnx,is-dual = <0x0>; xlnx,tri-default = <0xffffffff>; xlnx,tri-default-2 = <0xffffffff>; } ; rotary_gpio: gpio@40900000 { #gpio-cells = <2>; compatible = "xlnx,axi-gpio-1.01.b", "xlnx,xps-gpio-1.00.a"; gpio-controller ; reg = < 0x40900000 0x10000 >; xlnx,all-inputs = <0x1>; xlnx,all-inputs-2 = <0x0>; xlnx,dout-default = <0x0>; xlnx,dout-default-2 = <0x0>; xlnx,family = "kintex7"; xlnx,gpio-width = <0x3>; xlnx,gpio2-width = <0x20>; xlnx,instance = "ROTARY_GPIO"; xlnx,interrupt-present = <0x0>; xlnx,is-dual = <0x0>; xlnx,tri-default = <0xffffffff>; xlnx,tri-default-2 = <0xffffffff>; } ; rs232_uart_1: serial@40400000 { clock-frequency = <100000000>; clocks = <&clk_bus>; compatible = "xlnx,axi-uart16550-1.01.a", "xlnx,xps-uart16550-2.00.a", "ns16550a"; current-speed = <115200>; device_type = "serial"; interrupt-parent = <&interrupt_cntlr>; interrupts = < 5 2 >; reg = < 0x40400000 0x10000 >; reg-offset = <0x1000>; reg-shift = <2>; xlnx,external-xin-clk-hz = <0x17d7840>; xlnx,family = "kintex7"; xlnx,has-external-rclk = <0x0>; xlnx,has-external-xin = <0x0>; xlnx,instance = "RS232_Uart_1"; xlnx,is-a-16550 = <0x1>; xlnx,use-modem-ports = <0x0>; xlnx,use-user-ports = <0x0>; } ; soft_ethernet_mac: axi-ethernet@50100000 { axistream-connected = <&axi_dma_ethernet>; axistream-control-connected = <&axi_dma_ethernet>; clock-frequency = <100000000>; clocks = <&clk_bus>; compatible = "xlnx,axi-ethernet-3.01.a", "xlnx,axi-ethernet-1.00.a"; device_type = "network"; interrupt-parent = <&interrupt_cntlr>; interrupts = < 2 2 >; local-mac-address = [ 00 0a 35 00 d9 4e ]; phy-handle = <&phy0>; reg = < 0x50100000 0x40000 >; xlnx,avb = <0x0>; xlnx,halfdup = <0x0>; xlnx,include-io = <0x1>; xlnx,mcast-extend = <0x0>; xlnx,phy-type = <0x1>; xlnx,phyaddr = <0x1>; xlnx,rxcsum = <0x0>; xlnx,rxmem = <0x1000>; xlnx,rxvlan-strp = <0x0>; xlnx,rxvlan-tag = <0x0>; xlnx,rxvlan-tran = <0x0>; xlnx,stats = <0x0>; xlnx,txcsum = <0x0>; xlnx,txmem = <0x1000>; xlnx,txvlan-strp = <0x0>; xlnx,txvlan-tag = <0x0>; xlnx,txvlan-tran = <0x0>; xlnx,type = <0x1>; mdio { #address-cells = <1>; #size-cells = <0>; phy0: phy@7 { compatible = "marvell,88e1111"; device_type = "ethernet-phy"; reg = <7>; } ; } ; } ; } ; axi_mm_mb: axi@1 { #address-cells = <1>; #size-cells = <1>; compatible = "xlnx,axi-interconnect-1.06.a", "simple-bus"; ranges ; axi4_0: axi@0 { #address-cells = <1>; #size-cells = <1>; compatible = "xlnx,axi-interconnect-1.06.a", "simple-bus"; ranges = < 0x80000000 0x80000000 0x40000000 >; } ; } ; } ;