Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b85a3ef4 authored by John Linn's avatar John Linn
Browse files

ARM: Xilinx: Adding Xilinx board support



The 1st board support is minimal to get a system up and running
on the Xilinx platform.

This platform reuses the clock implementation from plat-versatile, and
it depends entirely on CONFIG_OF support.  There is only one board
support file which obtains all device information from a device tree
dtb file which is passed to the kernel at boot time.

Signed-off-by: default avatarJohn Linn <john.linn@xilinx.com>
parent 2c53b436
Loading
Loading
Loading
Loading
+7 −0
Original line number Original line Diff line number Diff line
Xilinx Zynq EP107 Emulation Platform board

This board is an emulation platform for the Zynq product which is
based on an ARM Cortex A9 processor.

Required root node properties:
    - compatible = "xlnx,zynq-ep107";
+14 −0
Original line number Original line Diff line number Diff line
@@ -879,6 +879,20 @@ config ARCH_VT8500
	select HAVE_PWM
	select HAVE_PWM
	help
	help
	  Support for VIA/WonderMedia VT8500/WM85xx System-on-Chip.
	  Support for VIA/WonderMedia VT8500/WM85xx System-on-Chip.

config ARCH_ZYNQ
	bool "Xilinx Zynq ARM Cortex A9 Platform"
	select CPU_V7
	select GENERIC_TIME
	select GENERIC_CLOCKEVENTS
	select CLKDEV_LOOKUP
	select ARM_GIC
	select ARM_AMBA
	select ICST
	select USE_OF
	help
	  Support for Xilinx Zynq ARM Cortex A9 Platform

endchoice
endchoice


#
#
+2 −0
Original line number Original line Diff line number Diff line
@@ -196,6 +196,7 @@ machine-$(CONFIG_MACH_SPEAR300) := spear3xx
machine-$(CONFIG_MACH_SPEAR310)		:= spear3xx
machine-$(CONFIG_MACH_SPEAR310)		:= spear3xx
machine-$(CONFIG_MACH_SPEAR320)		:= spear3xx
machine-$(CONFIG_MACH_SPEAR320)		:= spear3xx
machine-$(CONFIG_MACH_SPEAR600)		:= spear6xx
machine-$(CONFIG_MACH_SPEAR600)		:= spear6xx
machine-$(CONFIG_ARCH_ZYNQ)		:= zynq


# Platform directory name.  This list is sorted alphanumerically
# Platform directory name.  This list is sorted alphanumerically
# by CONFIG_* macro name.
# by CONFIG_* macro name.
@@ -203,6 +204,7 @@ plat-$(CONFIG_ARCH_MXC) := mxc
plat-$(CONFIG_ARCH_OMAP)	:= omap
plat-$(CONFIG_ARCH_OMAP)	:= omap
plat-$(CONFIG_ARCH_S3C64XX)	:= samsung
plat-$(CONFIG_ARCH_S3C64XX)	:= samsung
plat-$(CONFIG_ARCH_TCC_926)	:= tcc
plat-$(CONFIG_ARCH_TCC_926)	:= tcc
plat-$(CONFIG_ARCH_ZYNQ)	:= versatile
plat-$(CONFIG_PLAT_IOP)		:= iop
plat-$(CONFIG_PLAT_IOP)		:= iop
plat-$(CONFIG_PLAT_NOMADIK)	:= nomadik
plat-$(CONFIG_PLAT_NOMADIK)	:= nomadik
plat-$(CONFIG_PLAT_ORION)	:= orion
plat-$(CONFIG_PLAT_ORION)	:= orion
+52 −0
Original line number Original line Diff line number Diff line
/*
 *  Copyright (C) 2011 Xilinx
 *
 * This software is licensed under the terms of the GNU General Public
 * License version 2, as published by the Free Software Foundation, and
 * may be copied, distributed, and modified under those terms.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 */

/dts-v1/;
/ {
	model = "Xilinx Zynq EP107";
	compatible = "xlnx,zynq-ep107";
	#address-cells = <1>;
	#size-cells = <1>;
	interrupt-parent = <&intc>;

	memory {
		device_type = "memory";
		reg = <0x0 0x10000000>;
	};

	chosen {
		bootargs = "console=ttyPS0,9600 root=/dev/ram rw initrd=0x800000,8M earlyprintk";
		linux,stdout-path = &uart0;
	};

	amba {
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;

		intc: interrupt-controller@f8f01000 {
			interrupt-controller;
			compatible = "arm,gic";
			reg = <0xF8F01000 0x1000>;
			#interrupt-cells = <2>;
		};

		uart0: uart@e0000000 {
			compatible = "xlnx,xuartps";
			reg = <0xE0000000 0x1000>;
			interrupts = <59 0>;
			clock = <50000000>;
		};
	};
};
+6 −0
Original line number Original line Diff line number Diff line
#
# Makefile for the linux kernel.
#

# Common support
obj-y 				:= common.o timer.o board_dt.o
Loading