* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
[not found] <20090111041938.GB14620@game.jcrosoft.org>
@ 2009-01-11 22:10 ` Pink Boy
0 siblings, 0 replies; 12+ messages in thread
From: Pink Boy @ 2009-01-11 22:10 UTC (permalink / raw)
To: u-boot
I checked out the latest snapshot of the AT91 branch and
was able to build, a working version of u-boot. The Flash
CFI support works in that I was able to write both the
AT91RM9200EK's flash, and the AT49BV642D flash on my board.
The snapshot I used was this one.
http://git.denx.de/?p=u-boot/u-boot-at91.git;a=commit;h=df362482d656c1e17221845ab628467bbd9d0ef7
However few points. The board comes from the factory with
a boot loader (BOOT.BIN) that decompresses and u-boot from
address 10010000 and then executes it.
In order for this to work you need to define
#define CONFIG_SKIP_LOWLEVEL_INIT
to disable the low level init since it has already been
done BY BOOT.BIN, and the boot loader is running out of
ram, SO doing it again will result in a hang.
Note as well to builD the code I had to follow the these
instructions.
> mkdir at91rm9200ek
> make O=at91rm9200ek at91rm9200ek_config
> make O=at91rm9200ek
This puts all the object files in the output directory
at91rm9200ek. Otherwise I got a error complaining
that make couldn't find /include/tools/mach-types.h
This probably only applies to this branch, not the main.
Anyways, thanks bunches to Ulf and Jean-Christophe.
PS: You can download an u-boot via xmodem through the
debug port. However this version of u-boot is too big
to download via this way (limit seems to be 128k. In
order to get the binary small enough I had to remove
USB support.
Matt Harper
Tehama Wireless.
---
Oppressing electrons since 1908
^ permalink raw reply [flat|nested] 12+ messages in thread
* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
@ 2009-01-06 20:20 Ulf Samuelsson
2009-01-06 23:50 ` Pink Boy
2009-01-10 17:12 ` Wolfgang Denk
0 siblings, 2 replies; 12+ messages in thread
From: Ulf Samuelsson @ 2009-01-06 20:20 UTC (permalink / raw)
To: u-boot
This patchset updates the at91rm9200dk board support to
look similar to the rest of the at91 boards, using more modern
access functions for I/O instead of direct pointer accesses.
A derivative of the board is added,
----
at91rm9200dk_df - at91rm9200dk with environment in dataflash
Support for the AT91RM9200EK is added
----
at91rm9200ek - at91rm9200ek with environment in nor flash
Support for a generic AT91RM9200 board with dataflash is added
----
at91rm9200df - at91rm9200 with environment in dataflash
and no norflash drivers.
-------------------------------------------------------------------------------
Patch [1/5] Updates to include/asm-arm/arch.at91rm9200
Patch [2/5] Updates to Makefile and include/configs for
at91rm9200dk/dk_df
Patch [3/5] Updates to board/atmel/at91rm9200dk
Patch [4/5] Updates to Makefile and include/configs for at91rm9200df/ek
Patch [5/5] Updates to MAKEALL
[2/5] AFFECTS
include/configs/at91rm9200dk_df.h
include/configs/at91rm9200dk.h
Makefile
Signed-off-by: Ulf Samuelsson <ulf.samuelsson@atmel.com>
---
diff -urN u-boot-2009.01-rc1-0rig//include/configs/at91rm9200dk_df.h
u-boot-2009.01/include/configs/at91rm9200dk_df.h
--- u-boot-2009.01-rc1-0rig//include/configs/at91rm9200dk_df.h
1970-01-01 01:00:00.000000000 +0100
+++ u-boot-2009.01/include/configs/at91rm9200dk_df.h 2009-01-01
21:19:30.000000000 +0100
@@ -0,0 +1,251 @@
+/*
+ * Rick Bronson <rick@efn.org>
+ *
+ * Configuration settings for the AT91RM9200DK board.
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * 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.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#ifndef __CONFIG_H
+#define __CONFIG_H
+#define AT91RM9200_BOARD MACH_TYPE_AT91RM9200DK
+#define CONFIG_HOSTNAME at91rm9200dk
+
+/* ARM asynchronous clock */
+#define AT91C_MAIN_CLOCK 179712000 /* from 18.432 MHz crystal
(18432000 / 4 * 39) */
+#define AT91C_MASTER_CLOCK 59904000 /* peripheral clock
(AT91C_MASTER_CLOCK / 3) */
+/* #define AT91C_MASTER_CLOCK 44928000 */ /* peripheral clock
(AT91C_MASTER_CLOCK / 4) */
+
+#define AT91_SLOW_CLOCK 32768 /* slow clock */
+
+#define CONFIG_ARM920T 1 /* This is an ARM920T Core */
+#define CONFIG_AT91 1 /* THis is an ARM from the AT91
family */
+#define CONFIG_AT91RM9200 1 /* It's an Atmel AT91RM9200 SoC */
+#define CONFIG_AT91RM9200DK 1 /* on an AT91RM9200DK Board */
+#undef CONFIG_USE_IRQ /* we don't need IRQ/FIQ stuff */
+#define USE_920T_MMU 1
+
+#define CONFIG_SKIP_LOWLEVEL_INIT /* Already done by dataflashboot */
+
+#define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */
+#define CONFIG_SETUP_MEMORY_TAGS 1
+#define CONFIG_INITRD_TAG 1
+
+#ifndef CONFIG_SKIP_LOWLEVEL_INIT
+#define CONFIG_SYS_USE_MAIN_OSCILLATOR 1
+/* flash */
+#define MC_PUIA_VAL 0x00000000
+#define MC_PUP_VAL 0x00000000
+#define MC_PUER_VAL 0x00000000
+#define MC_ASR_VAL 0x00000000
+#define MC_AASR_VAL 0x00000000
+#define EBI_CFGR_VAL 0x00000000
+#define SMC_CSR0_VAL 0x00003284 /* 16bit, 2 TDF, 4 WS */
+
+/* clocks */
+#define PLLAR_VAL 0x20263E04 /* 179.712000 MHz for PCK */
+#define PLLBR_VAL 0x10483E0E /* 48.054857 MHz (divider by 2 for USB) */
+#define MCKR_VAL 0x00000202 /* PCK/3 = MCK Master Clock =
59.904000MHz from PLLA */
+
+/* sdram */
+#define PIOC_ASR_VAL 0xFFFF0000 /* Configure PIOC as peripheral
(D16/D31) */
+#define PIOC_BSR_VAL 0x00000000
+#define PIOC_PDR_VAL 0xFFFF0000
+#define EBI_CSA_VAL 0x00000002 /* CS1=SDRAM */
+#define SDRC_CR_VAL 0x2188c155 /* set up the SDRAM */
+#define SDRAM 0x20000000 /* address of the SDRAM */
+#define SDRAM1 0x20000080 /* address of the SDRAM */
+#define SDRAM_VAL 0x00000000 /* value written to SDRAM */
+#define SDRC_MR_VAL 0x00000002 /* Precharge All */
+#define SDRC_MR_VAL1 0x00000004 /* refresh */
+#define SDRC_MR_VAL2 0x00000003 /* Load Mode Register */
+#define SDRC_MR_VAL3 0x00000000 /* Normal Mode */
+#define SDRC_TR_VAL 0x000002E0 /* Write refresh rate */
+#else
+#define CONFIG_SKIP_RELOCATE_UBOOT
+#endif /* CONFIG_SKIP_LOWLEVEL_INIT */
+/*
+ * Size of malloc() pool
+ */
+#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 128*1024)
+#define CONFIG_SYS_GBL_DATA_SIZE 128 /* size in bytes reserved
for initial data */
+
+#define CONFIG_BAUDRATE 115200
+
+/*
+ * Hardware drivers
+ */
+
+/* define one of these to choose the DBGU, USART0 or USART1 as console */
+#define CONFIG_DBGU
+#undef CONFIG_USART0
+#undef CONFIG_USART1
+
+#undef CONFIG_HWFLOW /* don't include RTS/CTS flow
control support */
+
+#undef CONFIG_MODEM_SUPPORT /* disable modem initialization
stuff */
+
+#define CONFIG_BOOTDELAY 3
+/* #define CONFIG_ENV_OVERWRITE 1 */
+
+
+/*
+ * BOOTP options
+ */
+#define CONFIG_BOOTP_BOOTFILESIZE
+#define CONFIG_BOOTP_BOOTPATH
+#define CONFIG_BOOTP_GATEWAY
+#define CONFIG_BOOTP_HOSTNAME
+
+
+/*
+ * Command line configuration.
+ */
+#include <config_cmd_default.h>
+
+#define CONFIG_CMD_DHCP
+#define CONFIG_CMD_MII
+#define CONFIG_CMD_NAND
+#define CONFIG_CMD_AT91_SPIMUX
+
+#define CONFIG_NAND_LEGACY
+
+#define CONFIG_SYS_MAX_NAND_DEVICE 1 /* Max number of NAND
devices */
+#define SECTORSIZE 512
+
+#define ADDR_COLUMN 1
+#define ADDR_PAGE 2
+#define ADDR_COLUMN_PAGE 3
+
+#define NAND_ChipID_UNKNOWN 0x00
+#define NAND_MAX_FLOORS 1
+#define NAND_MAX_CHIPS 1
+
+#define AT91_SMART_MEDIA_ALE (1 << 22) /* our ALE is AD22 */
+#define AT91_SMART_MEDIA_CLE (1 << 21) /* our CLE is AD21 */
+
+#include <asm/arch/AT91RM9200.h> /* needed for port definitions */
+#define NAND_DISABLE_CE(nand) do { *AT91C_PIOC_SODR = AT91C_PIO_PC0;}
while(0)
+#define NAND_ENABLE_CE(nand) do { *AT91C_PIOC_CODR = AT91C_PIO_PC0;}
while(0)
+
+#define NAND_WAIT_READY(nand) while (!(*AT91C_PIOC_PDSR & AT91C_PIO_PC2))
+
+#define WRITE_NAND_COMMAND(d, adr) do{ *(volatile __u8 *)((unsigned
long)adr | AT91_SMART_MEDIA_CLE) = (__u8)(d); } while(0)
+#define WRITE_NAND_ADDRESS(d, adr) do{ *(volatile __u8 *)((unsigned
long)adr | AT91_SMART_MEDIA_ALE) = (__u8)(d); } while(0)
+#define WRITE_NAND(d, adr) do{ *(volatile __u8 *)((unsigned long)adr) =
(__u8)d; } while(0)
+#define READ_NAND(adr) ((volatile unsigned char)(*(volatile __u8
*)(unsigned long)adr))
+/* the following are NOP's in our implementation */
+#define NAND_CTL_CLRALE(nandptr)
+#define NAND_CTL_SETALE(nandptr)
+#define NAND_CTL_CLRCLE(nandptr)
+#define NAND_CTL_SETCLE(nandptr)
+
+#define CONFIG_NR_DRAM_BANKS 1
+#define PHYS_SDRAM 0x20000000
+#define PHYS_SDRAM_SIZE 0x2000000 /* 32 megs */
+
+#define CONFIG_SYS_MEMTEST_START PHYS_SDRAM
+#define CONFIG_SYS_MEMTEST_END CONFIG_SYS_MEMTEST_START +
PHYS_SDRAM_SIZE - 262144
+
+#define CONFIG_DRIVER_ETHER
+#define CONFIG_NET_RETRY_COUNT 20
+#define CONFIG_AT91C_USE_RMII
+
+/* AC Characteristics */
+/* DLYBS = tCSS = 250ns min and DLYBCT = tCSH = 250ns */
+#define DATAFLASH_TCSS (0xC << 16)
+#define DATAFLASH_TCHS (0x1 << 24)
+
+#define CONFIG_HAS_DATAFLASH 1
+#define CONFIG_SYS_SPI_WRITE_TOUT (5*CONFIG_SYS_HZ)
+#define CONFIG_SYS_MAX_DATAFLASH_BANKS 2
+#define CONFIG_SYS_MAX_DATAFLASH_PAGES 16384
+#define CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 0xC0000000 /* Logical
adress for CS0 */
+#define CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS3 0xD0000000 /* Logical
adress for CS3 */
+#define CONFIG__SUPPORT_BLOCK_ERASE 1
+
+
+#define PHYS_FLASH_1 0x10000000
+#define PHYS_FLASH_SIZE 0x200000 /* 2 megs main flash */
+#define CONFIG_SYS_FLASH_BASE PHYS_FLASH_1
+#define CONFIG_SYS_MAX_FLASH_BANKS 1
+#define CONFIG_SYS_MAX_FLASH_SECT 256
+#define CONFIG_SYS_FLASH_ERASE_TOUT (2*CONFIG_SYS_HZ) /* Timeout
for Flash Erase */
+#define CONFIG_SYS_FLASH_WRITE_TOUT (2*CONFIG_SYS_HZ) /* Timeout
for Flash Write */
+
+#define CONFIG_ENV_IS_IN_DATAFLASH 1
+#define CONFIG_NEW_PARTITION 1
+
+#ifdef CONFIG_ENV_IS_IN_DATAFLASH
+#ifdef CONFIG_NEW_PARTITION
+#define CONFIG_ENV_OFFSET 0x4200
+#define CONFIG_ENV_ADDR (CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0
+ CONFIG_ENV_OFFSET)
+#define CONFIG_ENV_SIZE 0x2000 /* 8 * 1056 really , but
start.s is not OK with this*/
+#else
+#define CONFIG_ENV_OFFSET 0x20000
+#define CONFIG_ENV_ADDR (CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0
+ CONFIG_ENV_OFFSET)
+#define CONFIG_ENV_SIZE 0x2000 /* 0x8000 */
+#endif
+#else
+#define CONFIG_ENV_IS_IN_FLASH 1
+#ifdef CONFIG_SKIP_LOWLEVEL_INIT
+#define CONFIG_ENV_ADDR (PHYS_FLASH_1 + 0xe000) /* between
boot.bin and u-boot.bin.gz */
+#define CONFIG_ENV_SIZE 0x2000 /* 0x8000 */
+#else
+#define CONFIG_ENV_ADDR (PHYS_FLASH_1 + 0x60000) /* after
u-boot.bin */
+#define CONFIG_ENV_SIZE 0x10000 /* sectors are 64K here */
+#endif /* CONFIG_SKIP_LOWLEVEL_INIT */
+#endif /* CONFIG_ENV_IS_IN_DATAFLASH */
+
+#if defined(CONFIG_AT91RM9200DK)
+#define DATAFLASH_MMC_SELECT AT91_PIN_PB7
+#else
+#define DATAFLASH_MMC_SELECT AT91_PIN_PB22
+#endif
+
+#define CONFIG_SYS_LOAD_ADDR 0x21000000 /* default load address */
+
+#ifdef CONFIG_SKIP_LOWLEVEL_INIT
+#define CONFIG_SYS_BOOT_SIZE 0x6000 /* 24 KBytes */
+#define CONFIG_SYS_U_BOOT_BASE (PHYS_FLASH_1 + 0x10000)
+#define CONFIG_SYS_U_BOOT_SIZE 0x10000 /* 64 KBytes */
+#else
+#define CONFIG_SYS_BOOT_SIZE 0x00 /* 0 KBytes */
+#define CONFIG_SYS_U_BOOT_BASE PHYS_FLASH_1
+#define CONFIG_SYS_U_BOOT_SIZE 0x60000 /* 384 KBytes */
+#endif /* CONFIG_SKIP_LOWLEVEL_INIT */
+
+#define CONFIG_SYS_BAUDRATE_TABLE { 115200, 19200, 38400, 57600, 9600 }
+
+#define CONFIG_SYS_PROMPT "U-Boot> " /* Monitor Command Prompt */
+#define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */
+#define CONFIG_SYS_MAXARGS 16 /* max number of command
args */
+#define CONFIG_SYS_PBSIZE
(CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */
+
+#define CONFIG_SYS_HZ 1000
+#define CONFIG_SYS_HZ_CLOCK AT91C_MASTER_CLOCK/2 /* AT91C_TC0_CMR is
implicitly set to */
+ /* AT91C_TC_TIMER_DIV1_CLOCK */
+
+#define CONFIG_STACKSIZE (32*1024) /* regular stack */
+
+#ifdef CONFIG_USE_IRQ
+#error CONFIG_USE_IRQ not supported
+#endif
+
+#endif
diff -urN u-boot-2009.01-rc1-0rig//include/configs/at91rm9200dk.h
u-boot-2009.01/include/configs/at91rm9200dk.h
--- u-boot-2009.01-rc1-0rig//include/configs/at91rm9200dk.h
2009-01-01 13:09:35.000000000 +0100
+++ u-boot-2009.01/include/configs/at91rm9200dk.h 2009-01-01
17:06:32.000000000 +0100
@@ -24,6 +24,8 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define AT91RM9200_BOARD MACH_TYPE_AT91RM9200DK
+#define CONFIG_HOSTNAME at91rm9200dk
/* ARM asynchronous clock */
#define AT91C_MAIN_CLOCK 179712000 /* from 18.432 MHz crystal
(18432000 / 4 * 39) */
@@ -33,6 +35,7 @@
#define AT91_SLOW_CLOCK 32768 /* slow clock */
#define CONFIG_ARM920T 1 /* This is an ARM920T Core */
+#define CONFIG_AT91 1 /* THis is an ARM from the AT91
family */
#define CONFIG_AT91RM9200 1 /* It's an Atmel AT91RM9200 SoC */
#define CONFIG_AT91RM9200DK 1 /* on an AT91RM9200DK Board */
#undef CONFIG_USE_IRQ /* we don't need IRQ/FIQ stuff */
@@ -117,6 +120,7 @@
#define CONFIG_CMD_DHCP
#define CONFIG_CMD_MII
#define CONFIG_CMD_NAND
+#define CONFIG_CMD_AT91_SPIMUX
#define CONFIG_NAND_LEGACY
@@ -198,6 +202,11 @@
#endif /* CONFIG_SKIP_LOWLEVEL_INIT */
#endif /* CONFIG_ENV_IS_IN_DATAFLASH */
+#if defined(CONFIG_AT91RM9200DK)
+#define DATAFLASH_MMC_SELECT AT91_PIN_PB7
+#else
+#define DATAFLASH_MMC_SELECT AT91_PIN_PB22
+#endif
#define CONFIG_SYS_LOAD_ADDR 0x21000000 /* default load address */
diff -urN u-boot-2009.01-rc1-0rig//Makefile u-boot-2009.01/Makefile
--- u-boot-2009.01-rc1-0rig//Makefile 2009-01-01 13:09:30.000000000 +0100
+++ u-boot-2009.01/Makefile 2009-01-01 21:35:24.000000000 +0100
@@ -2562,6 +2562,9 @@
## Atmel AT91RM9200 Systems
#########################################################################
+at91rm9200dk_df_config : unconfig
+ @$(MKCONFIG) $(@:_config=) arm arm920t at91rm9200dk atmel at91rm9200
+
at91rm9200dk_config : unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t at91rm9200dk atmel at91rm9200
Best Regards
Ulf Samuelsson
^ permalink raw reply [flat|nested] 12+ messages in thread* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-06 20:20 Ulf Samuelsson
@ 2009-01-06 23:50 ` Pink Boy
2009-01-07 1:11 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-10 17:12 ` Wolfgang Denk
1 sibling, 1 reply; 12+ messages in thread
From: Pink Boy @ 2009-01-06 23:50 UTC (permalink / raw)
To: u-boot
Ulf!
Here I was getting ready to try and add support for the AT91RM9200EK
and I see your patches.
I have a question? Does the new AT91RM9200EK support CFI? Is so
no problem for me, otherwise I got that working on last week for my
board based on the AT91RM9200EK (with AT49BV642D flash).
The changes to the at91rm9200ek.h were trivial, however I had to
disable buffered writes as the AT91BV642D didn't support it as
the '642 lies about supporting buffered writes.
I suspect that the AT49BV6414 used on the ek, may have the same issue
as when I was fixing the kernel to support the '642 there was an
identical patch for the 6414 + plus the data sheet doesn't mention
it in the summary.
Matt Harper
Tehama Wireless
^ permalink raw reply [flat|nested] 12+ messages in thread
* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-06 23:50 ` Pink Boy
@ 2009-01-07 1:11 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-07 19:55 ` Ulf Samuelsson
` (2 more replies)
0 siblings, 3 replies; 12+ messages in thread
From: Jean-Christophe PLAGNIOL-VILLARD @ 2009-01-07 1:11 UTC (permalink / raw)
To: u-boot
Ulf & Pink Boy
please take a look on
http://git.denx.de/?p=u-boot/u-boot-at91.git;a=shortlog;h=refs/heads/mm
Best Regards,
J.
^ permalink raw reply [flat|nested] 12+ messages in thread* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-07 1:11 ` Jean-Christophe PLAGNIOL-VILLARD
@ 2009-01-07 19:55 ` Ulf Samuelsson
2009-01-07 20:04 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-07 20:29 ` Ulf Samuelsson
2009-01-07 20:37 ` Ulf Samuelsson
2 siblings, 1 reply; 12+ messages in thread
From: Ulf Samuelsson @ 2009-01-07 19:55 UTC (permalink / raw)
To: u-boot
ons 2009-01-07 klockan 02:11 +0100 skrev Jean-Christophe
PLAGNIOL-VILLARD:
> Ulf & Pink Boy
>
> please take a look on
Thanks, I saw you committed part of the stuff I provided to the AT91
branch.
FYI: Your patch to at91rm9200dk, disabling the dataflash is wrong.
There is a 2 MB NOR flash *and* an 8 MB Dataflash on that board.
?There is also a card connector allowing you to add an
8 MB dataflashcard as well.
The default operation of the board is to boot from the NOR
flash, but you can remove a resistor to allow booting
from the dataflash.
This is how my at91rm9200dk is configured.
solderpads are even gone,so no way back to the parallel boot...
?There is also a card connector allowing you to add an
8 MB dataflashcard as well.
The lack of a jumper was one of deficiencies
that made Atmel redesign the board to the more
modern AT91RM9200EK where you have a jumper to
select between booting from parallel flash
(by setting BMS: Boot Mode Select) low
and booting from the dataflash by setting the BMS pin high.
Most people I know of uses the AT91RM9200 with dataflash
so the support for the at91rm9200df board would be real nice
to have added ASAP.
>
> http://git.denx.de/?p=u-boot/u-boot-at91.git;a=shortlog;h=refs/heads/mm
>
> Best Regards,
> J.
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
^ permalink raw reply [flat|nested] 12+ messages in thread
* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-07 19:55 ` Ulf Samuelsson
@ 2009-01-07 20:04 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-08 0:04 ` Ulf Samuelsson
0 siblings, 1 reply; 12+ messages in thread
From: Jean-Christophe PLAGNIOL-VILLARD @ 2009-01-07 20:04 UTC (permalink / raw)
To: u-boot
On 20:55 Wed 07 Jan , Ulf Samuelsson wrote:
> ons 2009-01-07 klockan 02:11 +0100 skrev Jean-Christophe
> PLAGNIOL-VILLARD:
> > Ulf & Pink Boy
> >
> > please take a look on
>
> Thanks, I saw you committed part of the stuff I provided to the AT91
> branch.
>
> FYI: Your patch to at91rm9200dk, disabling the dataflash is wrong.
> There is a 2 MB NOR flash *and* an 8 MB Dataflash on that board.
> There is also a card connector allowing you to add an
> 8 MB dataflashcard as well.
I known it I've choose to disable to dataflash inthe mm branch for test on
because I'm taking a look on the remove of the at45 driver to use the new
spi flash framework
and test the CFI driver
> The default operation of the board is to boot from the NOR
> flash, but you can remove a resistor to allow booting
> from the dataflash.
>
so the CFI will be the default config as you said the dataflash is an option
> This is how my at91rm9200dk is configured.
> solderpads are even gone,so no way back to the parallel boot...
> There is also a card connector allowing you to add an
> 8 MB dataflashcard as well.
>
> Most people I know of uses the AT91RM9200 with dataflash
> so the support for the at91rm9200df board would be real nice
> to have added ASAP.
please do this via config not via a new board as we have done on the sam9
Best Regards,
J.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-07 20:04 ` Jean-Christophe PLAGNIOL-VILLARD
@ 2009-01-08 0:04 ` Ulf Samuelsson
0 siblings, 0 replies; 12+ messages in thread
From: Ulf Samuelsson @ 2009-01-08 0:04 UTC (permalink / raw)
To: u-boot
ons 2009-01-07 klockan 21:04 +0100 skrev Jean-Christophe
PLAGNIOL-VILLARD:
> On 20:55 Wed 07 Jan , Ulf Samuelsson wrote:
> > ons 2009-01-07 klockan 02:11 +0100 skrev Jean-Christophe
> > PLAGNIOL-VILLARD:
> > > Ulf & Pink Boy
> > >
> > > please take a look on
> >
> > Thanks, I saw you committed part of the stuff I provided to the AT91
> > branch.
> >
> > FYI: Your patch to at91rm9200dk, disabling the dataflash is wrong.
> > There is a 2 MB NOR flash *and* an 8 MB Dataflash on that board.
> > There is also a card connector allowing you to add an
> > 8 MB dataflashcard as well.
>
> I known it I've choose to disable to dataflash inthe mm branch for test on
> because I'm taking a look on the remove of the at45 driver to use the new
> spi flash framework
> and test the CFI driver
>
> > The default operation of the board is to boot from the NOR
> > flash, but you can remove a resistor to allow booting
> > from the dataflash.
> >
> so the CFI will be the default config as you said the dataflash is an option
> > This is how my at91rm9200dk is configured.
It is the default for the AT91RM9200DK.
> > solderpads are even gone,so no way back to the parallel boot...
> > There is also a card connector allowing you to add an
> > 8 MB dataflashcard as well.
> >
>
> > Most people I know of uses the AT91RM9200 with dataflash
> > so the support for the at91rm9200df board would be real nice
> > to have added ASAP.
> please do this via config not via a new board as we have done on the sam9
>
There are more changes than selecting the dataflash instead of the
nor flash so the addition to the Makefile could be long.
It is also meesy to change the configuration by a script
if it is in the Makefile.
I agree that you do not need any more board/atmel/<board>
directories. I think that it does not make sense
even to separate the
board/atmel/at91rm9200dk and the
board/atmel/at91rm9200ek
With small changes to allow the MACHID to be set by the
include/config file, the code can be the same.
In my last patchset all the 3 added boards use the
board/atmel/at91rm9200dk directory for the board files.
On the other hand, I think that we should
have a generic board support package that
allows selection of the any of the three supported
PHYs LXT971,BCM5251 and DM92161.
It should allow the user to provide the MACHID
in the include/configs/<board>.h
I do think it makes sense to have a separate
include/configs/at9rm9200df.h
to give some choices on what commands to implement
If possible, I would like to move the
command activation to a separate file, which
can be overwritten by a build system like openembedded
or buildroot.
Best Regards
Ulf Samuelsson
> Best Regards,
> J.
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
^ permalink raw reply [flat|nested] 12+ messages in thread
* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-07 1:11 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-07 19:55 ` Ulf Samuelsson
@ 2009-01-07 20:29 ` Ulf Samuelsson
2009-01-07 20:37 ` Ulf Samuelsson
2 siblings, 0 replies; 12+ messages in thread
From: Ulf Samuelsson @ 2009-01-07 20:29 UTC (permalink / raw)
To: u-boot
ons 2009-01-07 klockan 02:11 +0100 skrev Jean-Christophe
PLAGNIOL-VILLARD:
> Ulf & Pink Boy
>
> please take a look on
>
> http://git.denx.de/?p=u-boot/u-boot-at91.git;a=shortlog;h=refs/heads/mm
>
> Best Regards,
I had a look at the patches in u-boot-at91.git
and it seems like it was based on
something I provided a long time ago.
As an example:
The at91rm9200ek.c contains:
writel(AT91C_PA23_TXD2, ((AT91PS_PIO) AT91C_BASE_PIOA)->PIO_OER);
The new patchset I provide do the same but it is implemented like:
at91_set_gpio_output(AT91_PIN_PA23, 1);
which is much more similar to the at91sam9 way of doing things.
I think it would be more consistent to use the sam9 way
of doing things.
> J.
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
^ permalink raw reply [flat|nested] 12+ messages in thread* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-07 1:11 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-07 19:55 ` Ulf Samuelsson
2009-01-07 20:29 ` Ulf Samuelsson
@ 2009-01-07 20:37 ` Ulf Samuelsson
2009-01-07 20:42 ` Jean-Christophe PLAGNIOL-VILLARD
2 siblings, 1 reply; 12+ messages in thread
From: Ulf Samuelsson @ 2009-01-07 20:37 UTC (permalink / raw)
To: u-boot
ons 2009-01-07 klockan 02:11 +0100 skrev Jean-Christophe
PLAGNIOL-VILLARD:
> Ulf & Pink Boy
>
> please take a look on
>
> http://git.denx.de/?p=u-boot/u-boot-at91.git;a=shortlog;h=refs/heads/mm
>
You are aware that moving from the Atmel flash driver to the CFI
driver means that the board support is now totally broken im
u-boot-at91.git?
The flash chips on the DK and the EK report
themselves to be CFI compliant, but are not.
It is a much better idea to make a new AT91RM9200 board
(at91rm9200pf?) *with* CFI than to break the board support
for existing boards.
?Best is of course to take the patch developed by Pink Boy
and apply that to the CFI driver (or wherever it fits).
> Best Regards,
> J.
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
^ permalink raw reply [flat|nested] 12+ messages in thread
* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-07 20:37 ` Ulf Samuelsson
@ 2009-01-07 20:42 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-07 22:32 ` Ulf Samuelsson
0 siblings, 1 reply; 12+ messages in thread
From: Jean-Christophe PLAGNIOL-VILLARD @ 2009-01-07 20:42 UTC (permalink / raw)
To: u-boot
On 21:37 Wed 07 Jan , Ulf Samuelsson wrote:
> ons 2009-01-07 klockan 02:11 +0100 skrev Jean-Christophe
> PLAGNIOL-VILLARD:
> > Ulf & Pink Boy
> >
> > please take a look on
> >
> > http://git.denx.de/?p=u-boot/u-boot-at91.git;a=shortlog;h=refs/heads/mm
> >
>
> You are aware that moving from the Atmel flash driver to the CFI
> driver means that the board support is now totally broken im
> u-boot-at91.git?
what do you mean the current tree is working if you have a bug please create a
bug report
>
> The flash chips on the DK and the EK report
> themselves to be CFI compliant, but are not.
They are CFI compliant
I've test on my ek
>
> It is a much better idea to make a new AT91RM9200 board
> (at91rm9200pf?) *with* CFI than to break the board support
> for existing boards.
I'll not create a new board for boot option
Best Regards,
J.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-07 20:42 ` Jean-Christophe PLAGNIOL-VILLARD
@ 2009-01-07 22:32 ` Ulf Samuelsson
0 siblings, 0 replies; 12+ messages in thread
From: Ulf Samuelsson @ 2009-01-07 22:32 UTC (permalink / raw)
To: u-boot
ons 2009-01-07 klockan 21:42 +0100 skrev Jean-Christophe
PLAGNIOL-VILLARD:
> On 21:37 Wed 07 Jan , Ulf Samuelsson wrote:
> > ons 2009-01-07 klockan 02:11 +0100 skrev Jean-Christophe
> > PLAGNIOL-VILLARD:
> > > Ulf & Pink Boy
> > >
> > > please take a look on
> > >
> > > http://git.denx.de/?p=u-boot/u-boot-at91.git;a=shortlog;h=refs/heads/mm
> > >
> >
> > You are aware that moving from the Atmel flash driver to the CFI
> > driver means that the board support is now totally broken im
> > u-boot-at91.git?
> what do you mean the current tree is working if you have a bug please create a
> bug report
I do not have any details.
I have heard from customers that they tried the CFI
driver and it did not work so they reverted to the DK flash driver.
This was some time ago, and I do not follow the development
of the CFI driver, since I have little (none) interest in CFI flash.
I do not know if there are any conditions to be met,
for problems to occur. I am just cautioning you that
a basic test might not be enough.
Pink Boy mentioned that he had to patch the driver
due to a problem with buffered write which
is not functional on the AT49BV642D flash on the
EK even thoough the part reports it to be functional.
?You should discuss with him.
Maybe there are others which knows more.
Note that the EK has been delivered with an older
flash as well, AT49BV6416 and there may be a lot
of board out there which has this chip.
If someone rebuilds u-boot for the board and loads
it and the memory routine does not work then there
will be some people which will be very disappointed.
?If someone remotedly upgrades u-boot,
and then later finds that a certain percentage
of the boards will fail due to a buggy boot monitor
then it is really no good.
I think you need to get a board with the 6416 if you do not
have it to test -or add a config option so that you
can select which flash routine you should use.
Don't misunderstand me.
Having the CFI flash routine will of course make it possible
to use u-boot for a lot of other flash chips.
> > The flash chips on the DK and the EK report
> > themselves to be CFI compliant, but are not.
> They are CFI compliant
> I've test on my ek
> >
> > It is a much better idea to make a new AT91RM9200 board
> > (at91rm9200pf?) *with* CFI than to break the board support
> > for existing boards.
> I'll not create a new board for boot option
>
> Best Regards,
> J.
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
^ permalink raw reply [flat|nested] 12+ messages in thread
* [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E
2009-01-06 20:20 Ulf Samuelsson
2009-01-06 23:50 ` Pink Boy
@ 2009-01-10 17:12 ` Wolfgang Denk
1 sibling, 0 replies; 12+ messages in thread
From: Wolfgang Denk @ 2009-01-10 17:12 UTC (permalink / raw)
To: u-boot
Dear Ulf Samuelsson,
In message <4963BD17.6020703@atmel.com> you wrote:
> This patchset updates the at91rm9200dk board support to
> look similar to the rest of the at91 boards, using more modern
> access functions for I/O instead of direct pointer accesses.
>
> A derivative of the board is added,
> ----
> at91rm9200dk_df - at91rm9200dk with environment in dataflash
>
>
> Support for the AT91RM9200EK is added
> ----
> at91rm9200ek - at91rm9200ek with environment in nor flash
>
>
> Support for a generic AT91RM9200 board with dataflash is added
> ----
> at91rm9200df - at91rm9200 with environment in dataflash
> and no norflash drivers.
>
> -------------------------------------------------------------------------------
> Patch [1/5] Updates to include/asm-arm/arch.at91rm9200
> Patch [2/5] Updates to Makefile and include/configs for
> at91rm9200dk/dk_df
> Patch [3/5] Updates to board/atmel/at91rm9200dk
> Patch [4/5] Updates to Makefile and include/configs for at91rm9200df/ek
> Patch [5/5] Updates to MAKEALL
>
> [2/5] AFFECTS
> include/configs/at91rm9200dk_df.h
> include/configs/at91rm9200dk.h
> Makefile
>
> Signed-off-by: Ulf Samuelsson <ulf.samuelsson@atmel.com>
> ---
> diff -urN u-boot-2009.01-rc1-0rig//include/configs/at91rm9200dk_df.h
> u-boot-2009.01/include/configs/at91rm9200dk_df.h
> --- u-boot-2009.01-rc1-0rig//include/configs/at91rm9200dk_df.h
> 1970-01-01 01:00:00.000000000 +0100
> +++ u-boot-2009.01/include/configs/at91rm9200dk_df.h 2009-01-01
> 21:19:30.000000000 +0100
Line wrapped = corrupted, too.
Ditto for patches 3, 4 and 5, too.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
I don't know if it's what you want, but it's what you get. :-)
- Larry Wall in <10502@jpl-devvax.JPL.NASA.GOV>
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2009-01-11 22:10 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20090111041938.GB14620@game.jcrosoft.org>
2009-01-11 22:10 ` [U-Boot] [PATCH 2/5] ARM: Add/Improve support for Atmel AT91RM9200DK/E Pink Boy
2009-01-06 20:20 Ulf Samuelsson
2009-01-06 23:50 ` Pink Boy
2009-01-07 1:11 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-07 19:55 ` Ulf Samuelsson
2009-01-07 20:04 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-08 0:04 ` Ulf Samuelsson
2009-01-07 20:29 ` Ulf Samuelsson
2009-01-07 20:37 ` Ulf Samuelsson
2009-01-07 20:42 ` Jean-Christophe PLAGNIOL-VILLARD
2009-01-07 22:32 ` Ulf Samuelsson
2009-01-10 17:12 ` Wolfgang Denk
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox