[FE training-materials-updates] slides: use NAND-based examples rather than OneNAND-based examples
thomas.petazzoni at free-electrons.com
thomas.petazzoni at free-electrons.com
Fri May 4 16:42:48 CEST 2012
- Log -----------------------------------------------------------------
http://git.free-electrons.com/training-materials/commit/?id=42cd56ac8aa790e918ddf2119badc1cca03ff48b
commit 42cd56ac8aa790e918ddf2119badc1cca03ff48b
Author: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Date: Fri May 4 16:42:46 2012 +0200
slides: use NAND-based examples rather than OneNAND-based examples
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
diff --git a/slides/sysdev-flash-filesystems/sysdev-flash-filesystems.tex b/slides/sysdev-flash-filesystems/sysdev-flash-filesystems.tex
index 3a66ea5..03609f2 100644
--- a/slides/sysdev-flash-filesystems/sysdev-flash-filesystems.tex
+++ b/slides/sysdev-flash-filesystems/sysdev-flash-filesystems.tex
@@ -64,7 +64,7 @@
\code{arch/arm/mach-omap2/board-igep0020.c} example:
\scriptsize
\begin{verbatim}
-static struct mtd_partition igep2_onenand_partitions[] = {
+static struct mtd_partition igep2_flash_partitions[] = {
{
.name = "X-Loader",
.offset = 0,
@@ -92,15 +92,11 @@ static struct mtd_partition igep2_onenand_partitions[] = {
command line.
\item First need to find the name of the MTD device. Look at the
kernel log at boot time. In our case, the MTD device name is
- \code{omap2-onenand}:
+ \code{omap2-nand.0}:
\small
\begin{verbatim}
-Muxed OneNAND(DDP) 512MB 1.8V 16-bit (0x58)
-OneNAND version = 0x0031
-Scanning device for bad blocks
-OneNAND eraseblock 1812 is an initial bad block
-[...]
-Creating 5 MTD partitions on "omap2-onenand":
+NAND device: Manufacturer ID: 0x2c, Chip ID: 0xbc (Micron NAND 512MiB 1,8V 16-bit)
+Creating 5 MTD partitions on "omap2-nand.0":
0x000000000000-0x000000080000 : "X-Loader"
0x000000080000-0x000000200000 : "U-Boot"
0x000000200000-0x000000280000 : "Environment"
@@ -115,8 +111,8 @@ Creating 5 MTD partitions on "omap2-onenand":
\begin{itemize}
\item You can now use the \code{mtdparts} kernel boot parameter
\item Example:\\
- \code{mtdparts=omap2-onenand:512k(X-Loader)ro,1536k(U-Boot)ro,512k(Environment),3m(Kernel),-(RootFS)}
- \item We've just defined 5 partitions in the omap2-onenand device:
+ \code{mtdparts=omap2-nand.0:512k(X-Loader)ro,1536k(U-Boot)ro,512k(Environment),3m(Kernel),-(RootFS)}
+ \item We've just defined 5 partitions in the omap2-nand.0 device:
\begin{itemize}
\item \code{1st stage bootloader} (512KiB)
\item \code{U-Boot} (1536KiB)
@@ -407,8 +403,7 @@ Creating 5 MTD partitions on "omap2-onenand":
\item Images of a full UBI space, containing several volumes can be
created using the ubinize utility
\begin{itemize}
- \item Can be written to a raw MTD using \code{nand write} in U-boot.\\
- (\code{onenand write} for the IGEPv2 board)
+ \item Can be written to a raw MTD using \code{nand write} in U-boot.
\item Caution: \code{nand erase} will also erase the Erase
Counters
\end{itemize}
diff --git a/slides/sysdev-u-boot/sysdev-u-boot.tex b/slides/sysdev-u-boot/sysdev-u-boot.tex
index 67af8d6..2169fc9 100644
--- a/slides/sysdev-u-boot/sysdev-u-boot.tex
+++ b/slides/sysdev-u-boot/sysdev-u-boot.tex
@@ -73,7 +73,7 @@
#define CONFIG_CMD_FAT
#define CONFIG_CMD_I2C
#define CONFIG_CMD_MMC
-#define CONFIG_CMD_ONENAND
+#define CONFIG_CMD_NAND
#define CONFIG_CMD_NET
#define CONFIG_CMD_DHCP
#define CONFIG_CMD_PING
@@ -136,19 +136,16 @@
\end{itemize}
\scriptsize
\begin{verbatim}
-U-Boot 2010.06-2 (May 13 2011 - 12:13:22)
-OMAP3630/3730-GP ES2.0, CPU-OPP2, L3-165MHz
+U-Boot 2011.12 (May 04 2012 - 10:31:05)
+OMAP36XX/37XX-GP ES1.2, CPU-OPP2, L3-165MHz, Max CPU Clock 1 Ghz
IGEP v2 board + LPDDR/ONENAND
-I2C: ready
-DRAM: 512 MiB
-Muxed OneNAND(DDP) 512MB 1.8V 16-bit (0x58)
-OneNAND version = 0x0031
-Chip support all block unlock
-OneNAND: 512 MiB
-OneNAND: Read environment from 0x00200000
-In: serial
+I2C: ready
+DRAM: 512 MiB
+NAND: 512 MiB
+MMC: OMAP SD/MMC: 0
[...]
-Net: smc911x-0
+Net: smc911x-0
+Hit any key to stop autoboot: 0
U-Boot #
\end{verbatim}
\normalsize
http://git.free-electrons.com/training-materials/commit/?id=093a12235c0aaf8611469a4c0264132225ccf3b5
commit 093a12235c0aaf8611469a4c0264132225ccf3b5
Author: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Date: Fri May 4 16:42:19 2012 +0200
labs: use U-Boot 'nand' command instead of 'onenand' for IGEPv2 rev 6
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
diff --git a/labs/sysdev-kernel-cross-compiling/sysdev-kernel-cross-compiling.tex b/labs/sysdev-kernel-cross-compiling/sysdev-kernel-cross-compiling.tex
index d051c60..a1bd941 100644
--- a/labs/sysdev-kernel-cross-compiling/sysdev-kernel-cross-compiling.tex
+++ b/labs/sysdev-kernel-cross-compiling/sysdev-kernel-cross-compiling.tex
@@ -150,8 +150,8 @@ saveenv
In order to let the kernel boot on the board autonomously, we can
flash it in the NAND flash available on the IGEP. The NAND flash can
-be manipulated in U-Boot using the \code{onenand} command, which
-features several subcommands. Run \code{help onenand} to see the
+be manipulated in U-Boot using the \code{nand} command, which
+features several subcommands. Run \code{help nand} to see the
available subcommands and their options.
After storing the X-loader, U-boot and its environment variables, we
@@ -162,8 +162,8 @@ This 4th partition will be 4 MiB big, from NAND address
So, let's start by erasing the corresponding 4 MiB of NAND flash:
\begin{verbatim}
-onenand erase 0x280000 0x400000
- (NAND addr) (size)
+nand erase 0x280000 0x400000
+ (NAND addr) (size)
\end{verbatim}
Then, copy the kernel from TFTP into memory, using the same address as
@@ -172,19 +172,19 @@ before.
Then, flash the kernel image:
\begin{verbatim}
-onenand write 0x80000000 0x280000 0x400000
- (RAM addr) (NAND addr) (size)
+nand write 0x80000000 0x280000 0x400000
+ (RAM addr) (NAND addr) (size)
\end{verbatim}
Then, we should be able to boot the kernel from the NAND using:
\begin{verbatim}
-onenand read 0x80000000 0x280000 0x400000
- (RAM addr) (NAND addr) (size)
+nand read 0x80000000 0x280000 0x400000
+ (RAM addr) (NAND addr) (size)
bootm 0x80000000
\end{verbatim}
-\code{onenand read} copies the kernel to RAM and then, \code{bootm}
+\code{nand read} copies the kernel to RAM and then, \code{bootm}
executes it.
Write an U-Boot script that automates the kernel download and flashing
diff --git a/labs/sysdev-u-boot/sysdev-u-boot.tex b/labs/sysdev-u-boot/sysdev-u-boot.tex
index 6d58ae4..783dcc0 100644
--- a/labs/sysdev-u-boot/sysdev-u-boot.tex
+++ b/labs/sysdev-u-boot/sysdev-u-boot.tex
@@ -389,13 +389,13 @@ This tells U-Boot to write data to the NAND using the hardware ECC
algorithm, which the ROM code of the OMAP uses to load X-Loader.
\begin{verbatim}
-onenand erase 0 80000
+nand erase 0 80000
\end{verbatim}
This command erases a 0x80000 byte long space of the NAND flash from offset 0
\begin{verbatim}
-onenand write 81000000 0 80000
+nand write 81000000 0 80000
\end{verbatim}
This command writes data to the NAND flash. The source is 0x81000000
@@ -417,7 +417,7 @@ variables defined by the manufacturer or by previous users of your
board:
\begin{verbatim}
-onenand erase 200000 80000
+nand erase 200000 80000
\end{verbatim}
You can remove MMC card, then reset the IGEP board. You should see the
http://git.free-electrons.com/training-materials/commit/?id=90a9da985d80c618f13ae4aec02d4f705390a5cd
commit 90a9da985d80c618f13ae4aec02d4f705390a5cd
Author: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Date: Fri May 4 16:41:48 2012 +0200
sysdev-flash-filesystems: switch to IGEPv2 rev 6 which has a NAND device
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
diff --git a/labs/sysdev-flash-filesystems/sysdev-flash-filesystems.tex b/labs/sysdev-flash-filesystems/sysdev-flash-filesystems.tex
index adc5ee3..f28c060 100644
--- a/labs/sysdev-flash-filesystems/sysdev-flash-filesystems.tex
+++ b/labs/sysdev-flash-filesystems/sysdev-flash-filesystems.tex
@@ -19,8 +19,8 @@ make our system use its internal flash storage.
The root filesystem will still be in a read-only filesystem, put on an
MTD partition. Read/write data will be stored in a JFFS2 filesystem
-in another MTD partition. The layout of the internal OneNAND flash
-will be:
+in another MTD partition. The layout of the internal NAND flash will
+be:
\begin{itemize}
\item From 0 to 0x80000, X-Loader (512 KB)
@@ -52,14 +52,7 @@ partitions specified in the kernel command line
(\code{CONFIG_MTD_CMDLINE_PARTS}).
Also enable support for the flash chips on the board
-(\code{CONFIG_MTD_ONENAND_OMAP2}).
-
-Because checking subpages writes of 2KiB-pages NANDs isn't working
-yet, you will need to make sure that
-\code{CONFIG_MTD_ONENAND_VERIFY_WRITE} isn't enabled.
-
-In the rest of the lab, we also assume that
-\code{CONFIG_MTD_ONENAND_2X_PROGRAM} is enabled.
+(\code{CONFIG_MTD_NAND_OMAP2}).
Update your kernel image on flash.
-----------------------------------------------------------------------
Summary of changes:
.../sysdev-flash-filesystems.tex | 13 ++---------
.../sysdev-kernel-cross-compiling.tex | 18 ++++++++--------
labs/sysdev-u-boot/sysdev-u-boot.tex | 6 ++--
.../sysdev-flash-filesystems.tex | 19 ++++++-----------
slides/sysdev-u-boot/sysdev-u-boot.tex | 21 ++++++++-----------
5 files changed, 31 insertions(+), 46 deletions(-)
More information about the training-materials-updates
mailing list