From 08b8ed8e5b8964c58daa5335831683f99228bf6a Mon Sep 17 00:00:00 2001 From: Asen Dimov Date: Tue, 2 Mar 2010 01:55:54 +0200 Subject: [PATCH] add pm9g45 board --- arch/arm/mach-at91/Kconfig | 73 +++- arch/arm/mach-at91/Makefile | 1 + arch/arm/mach-at91/board-pm9g45.c | 875 +++++++++++++++++++++++++++++++++++++ 3 files changed, 947 insertions(+), 2 deletions(-) create mode 100644 arch/arm/mach-at91/board-pm9g45.c diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig index 359b0bc..bebad5b 100644 --- a/arch/arm/mach-at91/Kconfig +++ b/arch/arm/mach-at91/Kconfig @@ -407,6 +407,75 @@ config MACH_AT91SAM9G45EKES "ES" at the end of the name means that this board is an Engineering Sample. +config MACH_PM9G45 + bool "Ronetix PM9G45 Evaluation Kit" + depends on ARCH_AT91SAM9G45 + help + Select this if you are using Ronetix's PM9G45 board. + +choice + prompt "System RAM base address" + depends on MACH_PM9G45 + help + AT91SAM9G45 has two DDR2 controlers, one CS1 on 0x20000000 + and CS6 on 0x70000000 memmory addresses. You can choose + the where th system RAM to be. + +config PM9G45_SYSTEM_RAM_CS1 + bool "System RAM: CS1 on 0x20000000 with 128MB" + depends on MACH_PM9G45 + help + CS1 will be used for system ram and CS6 for video memory. + +config PM9G45_SYSTEM_RAM_CS6 + bool "System RAM: CS6 on 0x70000000" + depends on MACH_PM9G45 + help + CS6 will be used for system ram and for video ram. + +endchoice + +config VRAM_SIZE + prompt "Video RAM size" + depends on (MACH_PM9G45 && PM9G45_SYSTEM_RAM_CS6) + hex + help + Determine the size of ram for video. It will be located at the end of CS6. + default 0x400000 + +choice + prompt "LCD Display" + +config PM9G45_LCD_TX09D70 + bool "3.5\", 320x240 Hitachi TX09D70" + depends on MACH_PM9G45 + +config PM9G45_LCD_RA158 + bool "4.3\", 800x480 Seiko RA158" + depends on MACH_PM9G45 + +config PM9G45_LCD_TCG057VGLAC + bool "5.7\", 640x480 Kyocera TCG057VGLAC" + depends on MACH_PM9G45 + +config PM9G45_LCD_GTTV57NN771E0 + bool "5.7\", 640x480 Solomon GTTV57NN771E0" + depends on MACH_PM9G45 + +config PM9G45_LCD_GLAA057VA01CW + bool "5.7\", 640x480 CPT CLAA057VA01CW" + depends on MACH_PM9G45 + +config PM9G45_LCD_GATW70SN8H1E0 + bool "7.0\", 800x480 Solomon GATW70SN8H1E0" + depends on MACH_PM9G45 + +config PM9G45_LCD_CLAA080MB0ACW + bool "8.0\", 800x600 CPT CLAA080MB0ACW" + depends on MACH_PM9G45 + +endchoice + endif # ---------------------------------------------------------- @@ -461,13 +530,13 @@ comment "AT91 Board Options" config MTD_AT91_DATAFLASH_CARD bool "Enable DataFlash Card support" - depends on (ARCH_AT91RM9200DK || MACH_AT91RM9200EK || MACH_AT91SAM9260EK || MACH_AT91SAM9261EK || MACH_AT91SAM9G10EK || MACH_AT91SAM9263EK || MACH_AT91SAM9G20EK || MACH_ECBAT91 || MACH_SAM9_L9260 || MACH_AT91CAP9ADK || MACH_AT572D940HFEB || MACH_TOTEMNOVA || MACH_NEOCORE926) + depends on (ARCH_AT91RM9200DK || MACH_AT91RM9200EK || MACH_AT91SAM9260EK || MACH_AT91SAM9261EK || MACH_AT91SAM9G10EK || MACH_AT91SAM9263EK || MACH_AT91SAM9G20EK || MACH_ECBAT91 || MACH_SAM9_L9260 || MACH_AT91CAP9ADK || MACH_AT572D940HFEB || MACH_TOTEMNOVA || MACH_NEOCORE926 || MACH_PM9G45) help Enable support for the DataFlash card. config MTD_NAND_ATMEL_BUSWIDTH_16 bool "Enable 16-bit data bus interface to NAND flash" - depends on (MACH_AT91SAM9260EK || MACH_AT91SAM9261EK || MACH_AT91SAM9G10EK || MACH_AT91SAM9263EK || MACH_AT91SAM9G20EK || MACH_AT91SAM9G20EK_2MMC || MACH_AT91SAM9G45EKES || MACH_AT91CAP9ADK || MACH_AT572D940HFEB) + depends on (MACH_AT91SAM9260EK || MACH_AT91SAM9261EK || MACH_AT91SAM9G10EK || MACH_AT91SAM9263EK || MACH_AT91SAM9G20EK || MACH_AT91SAM9G20EK_2MMC || MACH_AT91SAM9G45EKES || MACH_AT91CAP9ADK || MACH_AT572D940HFEB || MACH_PM9G45) help On AT91SAM926x boards both types of NAND flash can be present (8 and 16 bit data bus width). diff --git a/arch/arm/mach-at91/Makefile b/arch/arm/mach-at91/Makefile index 761098e..ea24437 100644 --- a/arch/arm/mach-at91/Makefile +++ b/arch/arm/mach-at91/Makefile @@ -72,6 +72,7 @@ obj-$(CONFIG_MACH_SBC35_A9G20) += board-sbc35-a9g20.o # AT91SAM9G45 board-specific support obj-$(CONFIG_MACH_AT91SAM9G45EKES) += board-sam9m10g45ek.o +obj-$(CONFIG_MACH_PM9G45) += board-pm9g45.o # AT91CAP9 board-specific support obj-$(CONFIG_MACH_AT91CAP9ADK) += board-cap9adk.o diff --git a/arch/arm/mach-at91/board-pm9g45.c b/arch/arm/mach-at91/board-pm9g45.c new file mode 100644 index 0000000..63e5ee1 --- /dev/null +++ b/arch/arm/mach-at91/board-pm9g45.c @@ -0,0 +1,875 @@ +/* + * Board-specific setup code for the AT91SAM9M10G45 Evaluation Kit family + * + * Covers: * AT91SAM9G45-EKES board + * * AT91SAM9M10G45-EK board + * + * Copyright (C) 2009 Atmel Corporation. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + */ +/* + * Based on board-sam9m10g45ek.c + * filename: board-pm9g45.c + * date: 05.02.2010 + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include