Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-30 Thread Pierre Savary
Hi Ken,
Thanks a lot for your patch. I will test it next week. Have you ever tested
your U-Boot with 4GB or 8GB moviNAND?
Thanks in advance

Pierre

-Message d'origine-
De : [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] De la part de
[EMAIL PROTECTED]
Envoyé : mardi 29 avril 2008 21:46
À : [EMAIL PROTECTED]
Cc : u-boot-users@lists.sourceforge.net; [EMAIL PROTECTED];
[EMAIL PROTECTED]; [EMAIL PROTECTED]
Objet : Re: [U-Boot-Users] drivers MMCplus for at91sam9x

I posted the following patch under a different subject line:
Re: [U-Boot-Users] [PATCH] Add eSDHC driver

  --- u-boot_at91sam9260_mmc.patch (AT91 MCI driver) ---

Pierre Savary wrote:

 Thanks for that... but it's my own patch ;)
 
 Pierre

===

Pierre, I hope you like this patch better. :)

The following MMC v4 patch is for u-boot-1.1.5_atmel_1.2.
To the AT91SAM9261 MCI device driver it adds support for
MMC v4.x chips (MoviNAND in particular).
  
The u-boot_at91sam9260_mmc.patch, previously send to this
thread 23 April 2008 must be applied to
u-boot-1.1.5_atmel_1.2, prior to applying the patch below.

The patch includes lines /* Ignore */.  These are
simply place holders for code that was not relevant
to the MCI driver or MMC code. 

The patch is actually of four individual source files.
Please let me know of any serious problems applying the
patch.  It should apply cleanly, but I didn't verify this.

The MCI MMC v4 features contained in this patch work perfectly
on our AT91SAM9261 board, except that I never got MMC 4 bit
bus working (that code is omitted from this patch).  Anyone
know why the AT91SAM9261-EK doesn't appear to support 4 bit MMC?

This patch may not work on AT91SAM9261-EK, since we modified
the AT91SAM9261-EK board definitions rather than creating a
new configuration and files for our board.

Sincerely,

Ken Fuchs

u-boot-at91sam9261-mmc-v4.patch
===

svn diff -r21 cpu/arm926ejs/at91sam926x/atmel_mci.c
Index: cpu/arm926ejs/at91sam926x/atmel_mci.c
===
--- cpu/arm926ejs/at91sam926x/atmel_mci.c   (revision 21)
+++ cpu/arm926ejs/at91sam926x/atmel_mci.c   (working copy)
@@ -1,4 +1,8 @@
 /*
+ * (C) Copyright 2007-2008
+ * Benchmark Electronics, Inc.
+ * Added MMC v4.x (MoviNAND) support
+ *
  * Copyright (C) 2004-2006 Atmel Corporation
  *
  * See file CREDITS for list of people who contributed to this
@@ -34,21 +38,43 @@
 #include asm/arch/hardware.h //klk
 
 #include atmel_mci.h
-#undef DEBUG
+
+/* Ignore */
+/* Ignore */
+/* Ignore */
+
+#if 0
+#define DEBUG
+#else   /* 0 */
+#undef  DEBUG   /* kf - was #undef */
+#endif  /* 0 */
+
 #ifdef DEBUG
 #define pr_debug(fmt, args...) printf(fmt, ##args)
 #else
 #define pr_debug(...) do { } while(0)
 #endif
 
+#undef  CFG_MMC_CLK_OD
+#define CFG_MMC_CLK_OD 375000
+
 #ifndef CFG_MMC_CLK_OD
 #define CFG_MMC_CLK_OD 375000
 #endif
 
+#undef  CFG_MMC_CLK_PP
+#define CFG_MMC_CLK_PP 2000
+
 #ifndef CFG_MMC_CLK_PP
 #define CFG_MMC_CLK_PP 2000
 #endif
 
+#undef  CFG_MMC_OP_COND
+#define CFG_MMC_OP_COND0x80ff8000
+/*  0x80ff8080 works with 30+ sec. power
off req */
+/*  0x0080 works better, but write
forever?  */
+/*  0x0010 works with 30+ sec. power
off req */
+
 #ifndef CFG_MMC_OP_COND
 #define CFG_MMC_OP_COND0x0010
 #endif
@@ -74,8 +100,13 @@
bus_hz = AT91C_MASTER_CLOCK;
clkdiv = (bus_hz / hz) / 2 - 1;
 
+#if 1
+   printf(mmc: setting clock %lu Hz, block size %lu\n,
+hz, blklen);
+#else   /* 1 */
pr_debug(mmc: setting clock %lu Hz, block size %lu\n,
 hz, blklen);
+#endif  /* 1 */
 
if (clkdiv  ~255UL) {
clkdiv = 255;
@@ -84,10 +115,17 @@
}
 
blklen = 0xfffc;
+
+#if 1   /* AT91SAM9261 does not have RDPROOF and WRPROOF fields. */
mmci_writel(MR, (MMCI_BF(CLKDIV, clkdiv)
+| MMCI_BF(BLKLEN, blklen)));
+#else   /* 1 */
+   mmci_writel(MR, (MMCI_BF(CLKDIV, clkdiv)
 | MMCI_BF(BLKLEN, blklen)
 | MMCI_BIT(RDPROOF)
 | MMCI_BIT(WRPROOF)));
+#endif  /* 1 */
+
 }
 
 #define RESP_NO_CRC1
@@ -99,6 +137,7 @@
 #define NCRMMCI_BF(MAXLAT, 1)
 #define TRCMD_STARTMMCI_BF(TRCMD, 1)
 #define TRDIR_READ MMCI_BF(TRDIR, 1)
+#define TRDIR_WRITEMMCI_BF(TRDIR, 0)
 #define TRTYP_BLOCKMMCI_BF(TRTYP, 0)
 #define INIT_CMD   MMCI_BF(SPCMD, 1)
 #define OPEN_DRAIN MMCI_BF(OPDCMD, 1)
@@ -109,6 +148,20 @@
 | MMCI_BIT(RINDE)  \
 | MMCI_BIT(RTOE))
 
+#if 0
+#define DEBUG
+#else   /* 0 */
+#undef  DEBUG   /* kf - was #undef */
+#endif  /* 0 */
+
+#undef pr_debug
+
+#ifdef DEBUG
+#define pr_debug(fmt

Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-30 Thread Ken.Fuchs
Pierre Savary wrote:

 Thanks a lot for your patch. I will test it next week.

Sorry, that patch was manually constructed.  I forgot about 
include/asm-arm/arch-at91sam926x/at91sam9261.h which includes
the pin definitions used by the MCI controller.  An ancillary
patch for this file is appended below.  Of course it is useful
only for AT91SAM9261 based boards.

Note that Atmel used different conventions for defining
AT91SAM9261 and AT91SAM9260/AT91SAM9263 hardware (at least
for GPIO pin) definitions.  This will cause problems in
applying the previously posted u-boot-at91sam9261-mmc-v4.patch
for boards not based on the AT91SAM9261 (i.e.
AT91SAM9260/AT91SAM9263).

Note that I added the MMC v4.x code without access to the spec.
All I had was a MoviNAND manual, which assumes access to the
MMC v4.x spec.  (Note that the final CMD1 arg. is the correct
and recommended value for MoviNAND chips by their field eng.)
The patch included a lot of commented out (/* */  '#if 0')
code used to help me understand MMC v4.x, at least well enough
to get the MoviNAND working reliably.

I never did get multi-block read or write working; The code
for it is included in the previous sent patch.  As I mentioned
before, I also didn't get 4 bit MMC working, but the code for
that is _not_ included in the patch anyway.

The Linux MMC code enables 4 bit for AT91SAM9260/AT91SAM9263
and only 1 bit for AT91SAM9261.  Does anyone know why?
I'd really like to get 4 bit transfers working on the 9261
via U-Boot.

I may try to put together a better patch using an earlier
version of my U-Boot code as a basis.  I'm not so sure my
previously sent patch will apply as cleanly as I had thought.

 Have you ever tested your U-Boot with 4GB or 8GB moviNAND?

No.

Sincerely,

Ken Fuchs

u-boot-at9261-mci-gpio-pins.patch
=

svn diff -r21 
Index: include/asm-arm/arch-at91sam926x/at91sam9261.h
===
--- include/asm-arm/arch-at91sam926x/at91sam9261.h  (revision 21)
+++ include/asm-arm/arch-at91sam926x/at91sam9261.h  (working copy)
@@ -17,6 +17,10 @@
  * Generated   : AT91 SW Application Group  03/30/2005
(17:05:06)
  * 
  *


+ * (C) Copyright 2007-2008
+ * Benchmark Electronics, Inc.
+ * Added numerous GPIO pin definitions for custom AT91SAM9261 board.
+ *
 */
 #ifndef AT91SAM9261_H
 #define AT91SAM9261_H
@@ -1330,8 +1334,10 @@
 /*

* */
 #define AT91C_PIO_PA0((unsigned int) 1   0) /* Pin Controlled
by PA0 */
 #define AT91C_PA0_MISO0((unsigned int) AT91C_PIO_PA0) /*  SPI0
Master In Slave */
+#define AT91C_PA0_MCDA0((unsigned int) AT91C_PIO_PA0) /*  MMC NAND
MCDA0 */
 #define AT91C_PIO_PA1((unsigned int) 1   1) /* Pin Controlled
by PA1 */
 #define AT91C_PA1_MOSI0((unsigned int) AT91C_PIO_PA1) /*  SPI0
Master Out Slave */
+#define AT91C_PA1_MCCDA((unsigned int) AT91C_PIO_PA1) /*  MMC NAND
MCCDA */
 #define AT91C_PIO_PA10   ((unsigned int) 1  10) /* Pin Controlled
by PA10 */
 #define AT91C_PA10_DTXD ((unsigned int) AT91C_PIO_PA10) /*  DBGU
Debug Transmit Data */
 #define AT91C_PA10_LFON((unsigned int) AT91C_PIO_PA10)
@@ -1346,6 +1352,7 @@
 #define AT91C_PA16_NPCS15  ((unsigned int) AT91C_PIO_PA16) /* GPIO:
SPI1 CS5 */
 #define AT91C_PIO_PA2((unsigned int) 1   2) /* Pin Controlled
by PA2 */
 #define AT91C_PA2_SPCK0((unsigned int) AT91C_PIO_PA2) /*  SPI0
Serial Clock */
+#define AT91C_PA2_MCCK ((unsigned int) AT91C_PIO_PA2) /*  MMC NAND
MCCK  */
 #define AT91C_PIO_PA23   ((unsigned int) 1  23) /* Pin Controlled
by PA23 */
 #define AT91C_PA23_NPCS14  ((unsigned int) AT91C_PIO_PA23) /* GPIO:
SPI1 CS4 */
 #define AT91C_PIO_PA24   ((unsigned int) 1  24) /* Pin Controlled
by PA24 */
@@ -1358,10 +1365,13 @@
 #define AT91C_PA3_NPCS00   ((unsigned int) AT91C_PIO_PA3) /*  SPI0
Peripheral Chip Select 0 */
 #define AT91C_PIO_PA4((unsigned int) 1   4) /* Pin Controlled
by PA4 */
 #define AT91C_PA4_NPCS01   ((unsigned int) AT91C_PIO_PA4) /*  SPI0
Peripheral Chip Select 1 */
+#define AT91C_PA4_MCDA1((unsigned int) AT91C_PIO_PA4) /*  MMC NAND
MCDA1 */
 #define AT91C_PIO_PA5((unsigned int) 1   5) /* Pin Controlled
by PA5 */
 #define AT91C_PA5_NPCS02   ((unsigned int) AT91C_PIO_PA5) /*  SPI0
Peripheral Chip Select 2 */
+#define AT91C_PA5_MCDA2((unsigned int) AT91C_PIO_PA5) /*  MMC NAND
MCDA2 */
 #define AT91C_PIO_PA6((unsigned int) 1   6) /* Pin Controlled
by PA6 */
 #define AT91C_PA6_NPCS03   ((unsigned int) AT91C_PIO_PA6) /*  SPI0
Peripheral Chip Select 3 */
+#define AT91C_PA6_MCDA3((unsigned int) AT91C_PIO_PA6) /*  MMC NAND
MCDA3 */
 #define AT91C_PIO_PA9((unsigned int) 1   9) /* Pin Controlled
by PA9  */
 #define AT91C_PA9_DRXD ((unsigned int) AT91C_PIO_PA9) /*  DBGU
Debug Receive Data */
 #define 

Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-30 Thread Ken.Fuchs
Pierre Savary wrote:

 Thanks a lot for your patch. I will test it next week.

I found it useful to modify common/cmd_mmc.c drastically
to facilitate easier testing of the AT91SAM9 MCI driver.
It replaces mmcinit with mmc init and adds raw read
(mmc read) and write (mmc write) functions.
To use it, just apply the (ancillary) patch below.

Sincerely,

Ken Fuchs

--

u-boot-at91sam9261-cmd-mmc-for-testing.patch


svn diff -r21 common/cmd_mmc.c
Index: common/cmd_mmc.c
===
--- common/cmd_mmc.c(revision 21)
+++ common/cmd_mmc.c(working copy)
@@ -1,4 +1,8 @@
 /*
+ * (C) Copyright 2007-2008
+ * Benchmark Electronics, Inc.
+ * Split mmcinit into mmc init, mmc read and mmc write
+ *
  * (C) Copyright 2003
  * Kyle Harris, [EMAIL PROTECTED]
  *
@@ -28,19 +32,100 @@
 
 #include mmc.h
 
+static unsigned int subcmd;
+static unsigned int bstart;
+static unsigned int noblocks;
+static unsigned int address;
+
 int do_mmc (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
 {
-   if (mmc_init (1) != 0) {
-   printf (No MMC card found\n);
-   return 1;
+unsigned int compblocks;
+
+   if ((flag  CMD_FLAG_REPEAT) == 0) {
+   if (argc = 2) {
+   if ((argv[1][0] == 'I'  argv[1][1] == 'N'
+ argv[1][2] == 'I'  argv[1][3] == 'T')
||
+   (argv[1][0] == 'i'  argv[1][1] == 'n'
+ argv[1][2] == 'i'  argv[1][3] == 't'))
{
+   subcmd = 0; /* init */
+   } else if ((argv[1][0] == 'R') ||
+   (argv[1][0] == 'r')) {
+   subcmd = 1; /* block read */
+   } else if ((argv[1][0] == 'W') ||
+   (argv[1][0] == 'w')) {
+   subcmd = 2; /* block write */
+   } else if ((argv[1][0] == 'M') ||
+   (argv[1][0] == 'm')) {
+   subcmd = 3; /* multiple block write */
+   } else {
+   printf(Subcommand must be );
+   printf(init, r[ead] or w[rite]\n);
+   return 1;
+   }
+   }
+   if (argc = 3) {
+   bstart = simple_strtoul(argv[2], NULL, 16);
+   }
+   if (argc = 4) {
+   noblocks = simple_strtoul(argv[3], NULL, 16);
+   }
+   if (argc = 5) {
+   address = simple_strtoul(argv[4], NULL, 16);
+   }
}
-   return 0;
+   switch (subcmd) {
+   case 0:
+   if (mmc_init(1) != 0) {
+   printf (No MMC card found\n);
+   return 1;
+   }
+   return 0;
+   break;
+   case 1:
+   compblocks = mmc_bread(0, bstart, noblocks, (ulong
*)address);
+   if (compblocks  noblocks) {
+   printf(Error reading block#: 0x%08lx\n,
+  bstart + compblocks);
+   }
+   break;
+   case 2:
+   compblocks =
+   mmc_bwrite(0, bstart, noblocks, (ulong
*)address);
+   if (compblocks  noblocks) {
+   printf(Error writing block#: 0x%08lx\n,
+  bstart + compblocks);
+   }
+   break;
+   case 3:
+   compblocks =
+   mmc_mbwrite(0, bstart, noblocks, (ulong
*)address);
+   if (compblocks  noblocks) {
+   printf(Error writing block#: 0x%08lx\n,
+  bstart + compblocks);
+   }
+   break;
+   }
 }
 
 U_BOOT_CMD(
-   mmcinit,1,  0,  do_mmc,
-   mmcinit - init mmc card\n,
-   NULL
+   mmc,5,  1,  do_mmc,
+   mmc - init, read  write to the MMC NAND device\n,
+   \n\nmmc init - initialize the MMC NAND device\n
+   \nmmc r block# #blocks address - block read MMC NAND
blocks\n
+   block#   - starting block # (hexidecimal) to read\n
+   #blocks  - no. of (512) blocks (hexidecimal) to
read\n
+address   - SDRAM/SRAM address (hex.) for read
data\n
+   \nmmc w block# #blocks address - block write MMC NAND
blocks\n
+   block#   - starting block # (hexidecimal) to write\n
+   #blocks  - no. of (512) blocks (hexidecimal) to
write\n
+address   - SDRAM/SRAM address (hex.) of data to
write\n
+#if 0   /* Not working yet, so documentation is removed. */
+   \nmmc m block# #blocks address - multiple block write
mode\n
+   block#   - starting block # 

Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-29 Thread Ken.Fuchs
I posted the following patch under a different subject line:
Re: [U-Boot-Users] [PATCH] Add eSDHC driver

  --- u-boot_at91sam9260_mmc.patch (AT91 MCI driver) ---

Pierre Savary wrote:

 Thanks for that... but it's my own patch ;)
 
 Pierre

===

Pierre, I hope you like this patch better. :)

The following MMC v4 patch is for u-boot-1.1.5_atmel_1.2.
To the AT91SAM9261 MCI device driver it adds support for
MMC v4.x chips (MoviNAND in particular).
  
The u-boot_at91sam9260_mmc.patch, previously send to this
thread 23 April 2008 must be applied to
u-boot-1.1.5_atmel_1.2, prior to applying the patch below.

The patch includes lines /* Ignore */.  These are
simply place holders for code that was not relevant
to the MCI driver or MMC code. 

The patch is actually of four individual source files.
Please let me know of any serious problems applying the
patch.  It should apply cleanly, but I didn't verify this.

The MCI MMC v4 features contained in this patch work perfectly
on our AT91SAM9261 board, except that I never got MMC 4 bit
bus working (that code is omitted from this patch).  Anyone
know why the AT91SAM9261-EK doesn't appear to support 4 bit MMC?

This patch may not work on AT91SAM9261-EK, since we modified
the AT91SAM9261-EK board definitions rather than creating a
new configuration and files for our board.

Sincerely,

Ken Fuchs

u-boot-at91sam9261-mmc-v4.patch
===

svn diff -r21 cpu/arm926ejs/at91sam926x/atmel_mci.c
Index: cpu/arm926ejs/at91sam926x/atmel_mci.c
===
--- cpu/arm926ejs/at91sam926x/atmel_mci.c   (revision 21)
+++ cpu/arm926ejs/at91sam926x/atmel_mci.c   (working copy)
@@ -1,4 +1,8 @@
 /*
+ * (C) Copyright 2007-2008
+ * Benchmark Electronics, Inc.
+ * Added MMC v4.x (MoviNAND) support
+ *
  * Copyright (C) 2004-2006 Atmel Corporation
  *
  * See file CREDITS for list of people who contributed to this
@@ -34,21 +38,43 @@
 #include asm/arch/hardware.h //klk
 
 #include atmel_mci.h
-#undef DEBUG
+
+/* Ignore */
+/* Ignore */
+/* Ignore */
+
+#if 0
+#define DEBUG
+#else   /* 0 */
+#undef  DEBUG   /* kf - was #undef */
+#endif  /* 0 */
+
 #ifdef DEBUG
 #define pr_debug(fmt, args...) printf(fmt, ##args)
 #else
 #define pr_debug(...) do { } while(0)
 #endif
 
+#undef  CFG_MMC_CLK_OD
+#define CFG_MMC_CLK_OD 375000
+
 #ifndef CFG_MMC_CLK_OD
 #define CFG_MMC_CLK_OD 375000
 #endif
 
+#undef  CFG_MMC_CLK_PP
+#define CFG_MMC_CLK_PP 2000
+
 #ifndef CFG_MMC_CLK_PP
 #define CFG_MMC_CLK_PP 2000
 #endif
 
+#undef  CFG_MMC_OP_COND
+#define CFG_MMC_OP_COND0x80ff8000
+/*  0x80ff8080 works with 30+ sec. power
off req */
+/*  0x0080 works better, but write
forever?  */
+/*  0x0010 works with 30+ sec. power
off req */
+
 #ifndef CFG_MMC_OP_COND
 #define CFG_MMC_OP_COND0x0010
 #endif
@@ -74,8 +100,13 @@
bus_hz = AT91C_MASTER_CLOCK;
clkdiv = (bus_hz / hz) / 2 - 1;
 
+#if 1
+   printf(mmc: setting clock %lu Hz, block size %lu\n,
+hz, blklen);
+#else   /* 1 */
pr_debug(mmc: setting clock %lu Hz, block size %lu\n,
 hz, blklen);
+#endif  /* 1 */
 
if (clkdiv  ~255UL) {
clkdiv = 255;
@@ -84,10 +115,17 @@
}
 
blklen = 0xfffc;
+
+#if 1   /* AT91SAM9261 does not have RDPROOF and WRPROOF fields. */
mmci_writel(MR, (MMCI_BF(CLKDIV, clkdiv)
+| MMCI_BF(BLKLEN, blklen)));
+#else   /* 1 */
+   mmci_writel(MR, (MMCI_BF(CLKDIV, clkdiv)
 | MMCI_BF(BLKLEN, blklen)
 | MMCI_BIT(RDPROOF)
 | MMCI_BIT(WRPROOF)));
+#endif  /* 1 */
+
 }
 
 #define RESP_NO_CRC1
@@ -99,6 +137,7 @@
 #define NCRMMCI_BF(MAXLAT, 1)
 #define TRCMD_STARTMMCI_BF(TRCMD, 1)
 #define TRDIR_READ MMCI_BF(TRDIR, 1)
+#define TRDIR_WRITEMMCI_BF(TRDIR, 0)
 #define TRTYP_BLOCKMMCI_BF(TRTYP, 0)
 #define INIT_CMD   MMCI_BF(SPCMD, 1)
 #define OPEN_DRAIN MMCI_BF(OPDCMD, 1)
@@ -109,6 +148,20 @@
 | MMCI_BIT(RINDE)  \
 | MMCI_BIT(RTOE))
 
+#if 0
+#define DEBUG
+#else   /* 0 */
+#undef  DEBUG   /* kf - was #undef */
+#endif  /* 0 */
+
+#undef pr_debug
+
+#ifdef DEBUG
+#define pr_debug(fmt, args...) printf(fmt, ##args)
+#else
+#define pr_debug(...) do { } while(0)
+#endif
+
 static int
 mmc_cmd(unsigned long cmd, unsigned long arg,
void *resp, unsigned long flags)
@@ -117,7 +170,9 @@
int i, response_words = 0;
unsigned long error_flags;
u32 status;
-
+#if 1
+   pr_debug(mmc_cmd: entry\n);
+#endif  /* 1 */
AT91F_MMC_Hardware_Init();

pr_debug(mmc: CMD%lu 0x%lx (flags 0x%lx)\n,
@@ -161,12 

Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-22 Thread Pierre Savary
Hi Andy,
Where could we find the driver that works with MMCv4 on at91sam9x?
Best regards

Pierre


-Message d'origine-
De : [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] De la part de Andy
Fleming
Envoyé : mardi 15 avril 2008 21:25
À : Pierre Savary
Cc : u-boot-users@lists.sourceforge.net; [EMAIL PROTECTED]
Objet : Re: [U-Boot-Users] drivers MMCplus for at91sam9x

On Tue, Apr 15, 2008 at 5:18 AM, Pierre Savary [EMAIL PROTECTED]
wrote:
 Then my MMC 4GB works with my Linux kernel but if I can't load my kernel
  (located on the first part of this MMC) ... it's not really interesting
:(

  So, somebody does already use MMC v4 with U-boot???

I've got one that works.  However, I don't have a 4GB MMC card with
v4.  I thought I did, but it turned out the card just takes advantage
of the fact that older versions can address 4GB, even though the spec
says 2GB is the max.

However, I'm fairly confident in the code (it's been tested in
simulated environments, and reflects what the Linux code does).  I'm
currently working on bringing it forward to the top of tree (I started
it before drivers/ got rearranged).  I'm actually hoping to generalize
it some so we can share it between all MMC/SD users.

Andy

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javao
ne
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-16 Thread Pierre Savary
Hi,
Perhaps that I could help you...? I could test it with many different MMC
(2GB, 4GB, 8GB) (Samsung and Micron). Could you share with me your source
code?
Thanks in advance for your help,

Best Regards

Pierre


-Message d'origine-
De : [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] De la part de Andy
Fleming
Envoyé : mardi 15 avril 2008 21:25
À : Pierre Savary
Cc : u-boot-users@lists.sourceforge.net; [EMAIL PROTECTED]
Objet : Re: [U-Boot-Users] drivers MMCplus for at91sam9x

On Tue, Apr 15, 2008 at 5:18 AM, Pierre Savary [EMAIL PROTECTED]
wrote:
 Then my MMC 4GB works with my Linux kernel but if I can't load my kernel
  (located on the first part of this MMC) ... it's not really interesting
:(

  So, somebody does already use MMC v4 with U-boot???

I've got one that works.  However, I don't have a 4GB MMC card with
v4.  I thought I did, but it turned out the card just takes advantage
of the fact that older versions can address 4GB, even though the spec
says 2GB is the max.

However, I'm fairly confident in the code (it's been tested in
simulated environments, and reflects what the Linux code does).  I'm
currently working on bringing it forward to the top of tree (I started
it before drivers/ got rearranged).  I'm actually hoping to generalize
it some so we can share it between all MMC/SD users.

Andy

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javao
ne
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-16 Thread Ken.Fuchs
Congratulations!  It will be great to have MMC v4.x support in U-Boot.

The following segment of code from
linux-2.6.25-rc9/drivers/mmc/host/at91_mci.c is confusing:

if (host-board-wire4) {
if (cpu_is_at91sam9260() || cpu_is_at91sam9263())
mmc-caps |= MMC_CAP_4_BIT_DATA;
else
dev_warn(pdev-dev, 4 wire bus mode not supported
 - using 1 wire\n);
}

This code seems to imply that MMC 4 bits works on the AT91SAM9260 and
AT91SAM9263, but not any of the others in this processor family,
possibly due to a hardware bug.  Any comments on why the Linux AT91 MCI
driver doesn't support an 4 bit MMC bus for all AT91SAM9 processors?

I mention this because it may impact the AT91 MCI U-Boot device driver.

Sincerely,

Ken Fuchs

 -Original Message-
 From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED] On Behalf 
 Of Andy Fleming
 Sent: Tuesday, April 15, 2008 14:25
 To: Pierre Savary
 Cc: u-boot-users@lists.sourceforge.net; [EMAIL PROTECTED]
 Subject: Re: [U-Boot-Users] drivers MMCplus for at91sam9x
 
 
 On Tue, Apr 15, 2008 at 5:18 AM, Pierre Savary 
 [EMAIL PROTECTED] wrote:
  Then my MMC 4GB works with my Linux kernel but if I can't 
 load my kernel
   (located on the first part of this MMC) ... it's not 
 really interesting :(
 
   So, somebody does already use MMC v4 with U-boot???
 
 I've got one that works.  However, I don't have a 4GB MMC card with
 v4.  I thought I did, but it turned out the card just takes advantage
 of the fact that older versions can address 4GB, even though the spec
 says 2GB is the max.
 
 However, I'm fairly confident in the code (it's been tested in
 simulated environments, and reflects what the Linux code does).  I'm
 currently working on bringing it forward to the top of tree (I started
 it before drivers/ got rearranged).  I'm actually hoping to generalize
 it some so we can share it between all MMC/SD users.
 
 Andy
 
 --
 ---
 This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
 Don't miss this year's exciting event. There's still time to 
 save $100. 
 Use priority code J8TL2D2. 
 http://ad.doubleclick.net/clk;198757673;13503038;p?http://java
.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-15 Thread Pierre Savary
Then my MMC 4GB works with my Linux kernel but if I can't load my kernel
(located on the first part of this MMC) ... it's not really interesting :(

So, somebody does already use MMC v4 with U-boot???

Thanks in advance

Pierre

-Message d'origine-
De : [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] De la part de Pierre
Ossman
Envoyé : samedi 12 avril 2008 11:28
À : [EMAIL PROTECTED]
Cc : [EMAIL PROTECTED]; u-boot-users@lists.sourceforge.net
Objet : Re: [U-Boot-Users] drivers MMCplus for at91sam9x

On Fri, 11 Apr 2008 13:54:13 -0500
[EMAIL PROTECTED] wrote:

 
 The manual for the AT91SAM926x processors clearly states that the
 MCI controller supports MMC 2.2.  I asked Atmel whether this controller
 could support 4 bits to an MMC 4.x chip and they said _no_.   The answer
 is supposedly from their engineering group in France.
 

What they answered was if Atmel would support such a solution, not if
the hardware would.

 
 How does one program the MCI controller to send 4 bit (parallel) data
 an MMC 4.x chip, with or without telling it that it is communicating
 to a 4-bit SD chip?  The only way to get 4 bits of data out of the MCI
 is to tell it that it is connected to a SD (1.0) chip.  If you program
 the MCI to communicate with an MMC chip, it will send data out only on
 the low order bit.

You tell it to use all four bits. That's it. The setting isn't MMC/SD,
it's 1-bit/4-bit.

 Both ends of the communication link must considered.  It may not be
 sufficient that the MMC chip is MMC 4.x; The fact that the MCI
 controller is only MMC 2.2 or SD 1.0 compliant, may or may not impact
 this special handling.

It does not in the slightest. Remember that these controllers are
extremely dumb. The low level behaviour of the protocol hasn't changed
since the very first specs, so only software needs to be changed to
support even the newest features.

Rgds
-- 
 -- Pierre Ossman

  Linux kernel, MMC maintainerhttp://www.kernel.org
  PulseAudio, core developer  http://pulseaudio.org
  rdesktop, core developer  http://www.rdesktop.org

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javao
ne
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-15 Thread Ken.Fuchs
Pierre Savary wrote:

 Then my MMC 4GB works with my Linux kernel but if I can't 
 load my kernel
 (located on the first part of this MMC) ... it's not really 
 interesting :(

 So, somebody does already use MMC v4 with U-boot???

Assuming a AT91SAM926x MCI controller:

Probably.  Given an MMC v2.x compliant U-Boot driver, it
would be relatively easy to add support for an MMC v4.x chip.
If there is an MMC v4.x compliant Linux driver, it could be
ported to U-Boot (Many, if not most, U-Boot drivers are ports
from the corresponding Linux driver.)  Alternatively, if both
an MMC v2.x compliant U-Boot driver and MMC v4.x compliant Linux
driver exist, the port would be trivial; just copy the MMC v4.x
Linux code into the corresponding places in the MMC v2.2 U-Boot
driver until it supports your MMC v4.x chip.

Such an MMC v4.x U-Boot AT91SAM926x MCI driver should be able to
support any v4.x MMC chip, at least via a one bit MMC bus.  (I
remain unconvinced that the AT91SAM926x MCI controller can support
a 4 bit MMC bus; only a working MCI driver using a 4 bit MMC bus
verified by a logic analyzer or similar compliance/debugging device
would be convincing enough.)

If the Linux AT91SAM926x MCI driver supports a 4 bit MMC bus, then
the U-Boot AT91SAM926x MCI driver can borrow the Linux driver's
code and support a 4 bit bus also.

Sincerely,

Ken Fuchs

 -Message d'origine-
 De : [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED] De la 
 part de Pierre
 Ossman
 Envoyé : samedi 12 avril 2008 11:28
 À : [EMAIL PROTECTED]
 Cc : [EMAIL PROTECTED]; u-boot-users@lists.sourceforge.net
 Objet : Re: [U-Boot-Users] drivers MMCplus for at91sam9x
 
 On Fri, 11 Apr 2008 13:54:13 -0500
 [EMAIL PROTECTED] wrote:
 
  
  The manual for the AT91SAM926x processors clearly states that the
  MCI controller supports MMC 2.2.  I asked Atmel whether 
 this controller
  could support 4 bits to an MMC 4.x chip and they said _no_. 
   The answer
  is supposedly from their engineering group in France.
  
 
 What they answered was if Atmel would support such a solution, not if
 the hardware would.
 
  
  How does one program the MCI controller to send 4 bit 
 (parallel) data
  an MMC 4.x chip, with or without telling it that it is communicating
  to a 4-bit SD chip?  The only way to get 4 bits of data out 
 of the MCI
  is to tell it that it is connected to a SD (1.0) chip.  If 
 you program
  the MCI to communicate with an MMC chip, it will send data 
 out only on
  the low order bit.
 
 You tell it to use all four bits. That's it. The setting isn't MMC/SD,
 it's 1-bit/4-bit.
 
  Both ends of the communication link must considered.  It may not be
  sufficient that the MMC chip is MMC 4.x; The fact that the MCI
  controller is only MMC 2.2 or SD 1.0 compliant, may or may 
 not impact
  this special handling.
 
 It does not in the slightest. Remember that these controllers are
 extremely dumb. The low level behaviour of the protocol hasn't changed
 since the very first specs, so only software needs to be changed to
 support even the newest features.
 
 Rgds
 -- 
  -- Pierre Ossman
 
   Linux kernel, MMC maintainerhttp://www.kernel.org
   PulseAudio, core developer  http://pulseaudio.org
   rdesktop, core developer  http://www.rdesktop.org
 
 --
 ---
 This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
 Don't miss this year's exciting event. There's still time to 
 save $100. 
 Use priority code J8TL2D2. 
 http://ad.doubleclick.net/clk;198757673;13503038;p?http://java
.sun.com/javao
ne
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-15 Thread Andy Fleming
On Tue, Apr 15, 2008 at 5:18 AM, Pierre Savary [EMAIL PROTECTED] wrote:
 Then my MMC 4GB works with my Linux kernel but if I can't load my kernel
  (located on the first part of this MMC) ... it's not really interesting :(

  So, somebody does already use MMC v4 with U-boot???

I've got one that works.  However, I don't have a 4GB MMC card with
v4.  I thought I did, but it turned out the card just takes advantage
of the fact that older versions can address 4GB, even though the spec
says 2GB is the max.

However, I'm fairly confident in the code (it's been tested in
simulated environments, and reflects what the Linux code does).  I'm
currently working on bringing it forward to the top of tree (I started
it before drivers/ got rearranged).  I'm actually hoping to generalize
it some so we can share it between all MMC/SD users.

Andy

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-11 Thread Pierre Savary
Thanks a lot for your help.
In fact it's not really important to support MMCplus, the main is to support
MMC v4 where the extended CSD is introduced. Moreover, it's not really
important if only one wire is used... I want only be able to read on a MMC
4Gb with my U-boot...

Thanks in advance

Pierre

-Message d'origine-
De : [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] De la part de
[EMAIL PROTECTED]
Envoyé : vendredi 11 avril 2008 00:31
À : [EMAIL PROTECTED]
Cc : u-boot-users@lists.sourceforge.net; [EMAIL PROTECTED]
Objet : Re: [U-Boot-Users] drivers MMCplus for at91sam9x

Pierre Savary wrote:

 I use a MMCplus 4GB on my design (with at91sam9260). It's 
 wired with 4 bits.

The MCI controller on the AT91SAM926x family does not support
MMCplus.  There is no way to support a 4 bit bus, since the
MCI controller supports only 1 bit to an MMC chip.  The MCI will
support a 4 bit SD chip, but I don't think it can be tricked
into working with a 4 bit MMC chip (at least not via software
alone).

The only reasonable solution is switching to a processor that
has MMCplus support.  Maybe Atmel has been working on one?

 Currently U-boot (1.1.5) can't detect correctly the MMC and 
 so I can't read my Linux kernel Image on the ext3 part of this
 MMC. If I use MMC 1GB, it works.

Did you add MMCplus commands to the MCI U-Boot driver?  You can
do this to the extent that these changes do not require the MCI
controller to be MMCplus compliant.  (The MCI U-Boot driver I'm
aware of contains no MMCplus support.)

I suggest that you use the u-boot sources available via git.
You will get very little support (if any) from the U-Boot ML for
two reasons:

1) U-Boot 1.1.5 is extremely old and no one on the list is
   interested in supporting it.

2) The version of U-Boot 1.1.5 you are using almost certainly
   has an Atmel patch applied to it that was never accepted
   into the official U-Boot tree.

However, ...

It appears that someone is working on the AT91SAM9260 within the
official U-Boot (git) tree, since the ./include/configs/at91sam9260ek.h
file is there.  Other file structures like ./cpu/arm926ejs/* seem to be
missing some drivers and other support files.  I know that the
AT91SAM926x specific U-Boot files were never an official part of
U-Boot, but that appears to be changing.  It is my understanding
that the AT91SAM926x support is being completely reworked and
integrated with the AT91CAP9 code that has been present in git
for over a month already.  The AT91CAP9 and AT91SAM926x are very
similar and should share a lot of code.

Even if the AT91SAM9260 is not quite ready, the AT91CAP9 code
should provide the basis of a current U-Boot for the AT91SAM926x
family.

 Somebody have already use it? Or somebody have already implemented
 the ext_csd and high capacity with MMC on another platform?

I know that the MCI controller can be used to access 1GB MMCplus chips,
but I'm not sure it can be used to access MMCplus chips larger than
that.
There may be a special MMCplus command that will allow larger chips to
be accessed.  Try looking for it in your MMCplus chip's manual.

Sincerely,

Ken Fuchs

 -Original Message-
 From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED] On Behalf 
 Of Pierre Savary
 Sent: Tuesday, April 08, 2008 09:32
 To: u-boot-users@lists.sourceforge.net
 Cc: 'Pierre Ossman'
 Subject: [U-Boot-Users] drivers MMCplus for at91sam9x
 
 
 Hi,
 I use a MMCplus 4GB on my design (with at91sam9260). It's 
 wired with 4 bits.
 Currently U-boot (1.1.5) can't detect correctly the MMC and 
 so I can't read
 my Linux kernel Image on the ext3 part of this MMC. If I use 
 MMC 1GB, it
 works.
 Somebody have already use it? Or somebody have already implemented the
 ext_csd and high capacity with MMC on another platform?
 I need help. Thanks in advance to help me.
 
 Regards,
 
 Pierre
 
 
 --
 ---
 This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
 Register now and save $200. Hurry, offer ends at 11:59 p.m., 
 Monday, April 7! Use priority code J8TLD2. 
 http://ad.doubleclick.net/clk;198757673;13503038;p?http://java
.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javao
ne
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss

Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-11 Thread Pierre Ossman
On Thu, 10 Apr 2008 17:31:24 -0500
[EMAIL PROTECTED] wrote:

 Pierre Savary wrote:
 
  I use a MMCplus 4GB on my design (with at91sam9260). It's 
  wired with 4 bits.
 
 The MCI controller on the AT91SAM926x family does not support
 MMCplus.  There is no way to support a 4 bit bus, since the
 MCI controller supports only 1 bit to an MMC chip.

Untrue. The hardware interface is identical for 4-bit SD and 4-bit MMC.
So if that part isn't working, it's because you either have a bug or
because you lack 4-bit MMC support entirely in u-boot.

 I know that the MCI controller can be used to access 1GB MMCplus chips,
 but I'm not sure it can be used to access MMCplus chips larger than
 that.
 There may be a special MMCplus command that will allow larger chips to
 be accessed.  Try looking for it in your MMCplus chip's manual.

All compliant cards above 2 GB require special handling. They use a
system identical to SDHC (except for the init). Check the specs (this
part is publicly available) or the Linux code.

On Fri, 11 Apr 2008 10:26:52 +0200
Pierre Savary [EMAIL PROTECTED] wrote:

 Thanks a lot for your help.
 In fact it's not really important to support MMCplus, the main is to support
 MMC v4 where the extended CSD is introduced. Moreover, it's not really
 important if only one wire is used... I want only be able to read on a MMC
 4Gb with my U-boot...

Just to avoid some more confusion, MMCplus is the marketing name of the
full size MMC cards since version 4. So when discussing technical
attributes, the MMCplus/MMCmobile distinction is not that useful.
It's better to just call them v4. :)

Rgds
-- 
 -- Pierre Ossman

  Linux kernel, MMC maintainerhttp://www.kernel.org
  PulseAudio, core developer  http://pulseaudio.org
  rdesktop, core developer  http://www.rdesktop.org

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-11 Thread Ken.Fuchs
Pierre Ossman wrote:

 Ken Fuchs wrote:
 
  The MCI controller on the AT91SAM926x family does not support
  MMCplus.  There is no way to support a 4 bit bus, since the
  MCI controller supports only 1 bit to an MMC chip.
 
 Untrue. The hardware interface is identical for 4-bit SD and 
 4-bit MMC.
 So if that part isn't working, it's because you either have a bug or
 because you lack 4-bit MMC support entirely in u-boot.

The manual for the AT91SAM926x processors clearly states that the
MCI controller supports MMC 2.2.  I asked Atmel whether this controller
could support 4 bits to an MMC 4.x chip and they said _no_.   The answer
is supposedly from their engineering group in France.

4-bit MMC support can easily be added to U-Boot, but the MCI
controller is MMC 2.2, and this standard only allows for a 1-bit
bus to MMC, so I'm not sure you can make it work at all.  Atmel will
definitely not help you, since they guarantee only MMC 2.2 compliance
with the AT91SAM926x processor family.  Has this changed?

Pierre Ossman omitted the following part of my original response:

  The MCI will
  support a 4 bit SD chip, but I don't think it can be tricked
  into working with a 4 bit MMC chip (at least not via software
  alone).

How does one program the MCI controller to send 4 bit (parallel) data
an MMC 4.x chip, with or without telling it that it is communicating
to a 4-bit SD chip?  The only way to get 4 bits of data out of the MCI
is to tell it that it is connected to a SD (1.0) chip.  If you program
the MCI to communicate with an MMC chip, it will send data out only on
the low order bit.

If you have a way around this, please let us know what it is.

 All compliant cards above 2 GB require special handling. They use a
 system identical to SDHC (except for the init). Check the specs (this
 part is publicly available) or the Linux code.

Both ends of the communication link must considered.  It may not be
sufficient that the MMC chip is MMC 4.x; The fact that the MCI
controller is only MMC 2.2 or SD 1.0 compliant, may or may not impact
this special handling.

Sincerely,

Ken Fuchs

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-10 Thread Pierre Savary
I have already test it but the version of the MMC driver is the same... And
it's very difficult for me to update my own version to the current.
Thanks for your help

Pierre

-Message d'origine-
De : [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] De la part de
Jean-Christophe PLAGNIOL-VILLARD
Envoyé : mercredi 9 avril 2008 19:49
À : Pierre Savary
Cc : u-boot-users@lists.sourceforge.net; 'Pierre Ossman'
Objet : Re: [U-Boot-Users] drivers MMCplus for at91sam9x

On 16:32 Tue 08 Apr , Pierre Savary wrote:
 Hi,
 I use a MMCplus 4GB on my design (with at91sam9260). It's wired with 4
bits.
 Currently U-boot (1.1.5) can't detect correctly the MMC and so I can't
read
1.1.5 is really old please update to the curent RC

Best Regards,
J.

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javao
ne
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-10 Thread Ken.Fuchs
Pierre Savary wrote:

 I use a MMCplus 4GB on my design (with at91sam9260). It's 
 wired with 4 bits.

The MCI controller on the AT91SAM926x family does not support
MMCplus.  There is no way to support a 4 bit bus, since the
MCI controller supports only 1 bit to an MMC chip.  The MCI will
support a 4 bit SD chip, but I don't think it can be tricked
into working with a 4 bit MMC chip (at least not via software
alone).

The only reasonable solution is switching to a processor that
has MMCplus support.  Maybe Atmel has been working on one?

 Currently U-boot (1.1.5) can't detect correctly the MMC and 
 so I can't read my Linux kernel Image on the ext3 part of this
 MMC. If I use MMC 1GB, it works.

Did you add MMCplus commands to the MCI U-Boot driver?  You can
do this to the extent that these changes do not require the MCI
controller to be MMCplus compliant.  (The MCI U-Boot driver I'm
aware of contains no MMCplus support.)

I suggest that you use the u-boot sources available via git.
You will get very little support (if any) from the U-Boot ML for
two reasons:

1) U-Boot 1.1.5 is extremely old and no one on the list is
   interested in supporting it.

2) The version of U-Boot 1.1.5 you are using almost certainly
   has an Atmel patch applied to it that was never accepted
   into the official U-Boot tree.

However, ...

It appears that someone is working on the AT91SAM9260 within the
official U-Boot (git) tree, since the ./include/configs/at91sam9260ek.h
file is there.  Other file structures like ./cpu/arm926ejs/* seem to be
missing some drivers and other support files.  I know that the
AT91SAM926x specific U-Boot files were never an official part of
U-Boot, but that appears to be changing.  It is my understanding
that the AT91SAM926x support is being completely reworked and
integrated with the AT91CAP9 code that has been present in git
for over a month already.  The AT91CAP9 and AT91SAM926x are very
similar and should share a lot of code.

Even if the AT91SAM9260 is not quite ready, the AT91CAP9 code
should provide the basis of a current U-Boot for the AT91SAM926x
family.

 Somebody have already use it? Or somebody have already implemented
 the ext_csd and high capacity with MMC on another platform?

I know that the MCI controller can be used to access 1GB MMCplus chips,
but I'm not sure it can be used to access MMCplus chips larger than
that.
There may be a special MMCplus command that will allow larger chips to
be accessed.  Try looking for it in your MMCplus chip's manual.

Sincerely,

Ken Fuchs

 -Original Message-
 From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED] On Behalf 
 Of Pierre Savary
 Sent: Tuesday, April 08, 2008 09:32
 To: u-boot-users@lists.sourceforge.net
 Cc: 'Pierre Ossman'
 Subject: [U-Boot-Users] drivers MMCplus for at91sam9x
 
 
 Hi,
 I use a MMCplus 4GB on my design (with at91sam9260). It's 
 wired with 4 bits.
 Currently U-boot (1.1.5) can't detect correctly the MMC and 
 so I can't read
 my Linux kernel Image on the ext3 part of this MMC. If I use 
 MMC 1GB, it
 works.
 Somebody have already use it? Or somebody have already implemented the
 ext_csd and high capacity with MMC on another platform?
 I need help. Thanks in advance to help me.
 
 Regards,
 
 Pierre
 
 
 --
 ---
 This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
 Register now and save $200. Hurry, offer ends at 11:59 p.m., 
 Monday, April 7! Use priority code J8TLD2. 
 http://ad.doubleclick.net/clk;198757673;13503038;p?http://java
.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users


Re: [U-Boot-Users] drivers MMCplus for at91sam9x

2008-04-09 Thread Jean-Christophe PLAGNIOL-VILLARD
On 16:32 Tue 08 Apr , Pierre Savary wrote:
 Hi,
 I use a MMCplus 4GB on my design (with at91sam9260). It's wired with 4 bits.
 Currently U-boot (1.1.5) can't detect correctly the MMC and so I can't read
1.1.5 is really old please update to the curent RC

Best Regards,
J.

-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
___
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users