Linux & Open Source related information for AT91 Smart ARM Microcontrollers
Search: 

OpenEmbedded / Angstrom : get demo binaries

Root file system pre-built images

The Root file system images are images of jffs2 filesystems containing a entire embedded Linux system. This fielsystem is read/write capable and is designed to be stored in NAND FLASH memory available on AT91sam EK boards (256 MBytes, large pages : 2KBytes).

Included applications

List of included applications : overview and detailed package list.

  console-image x11-image
Description Non graphical Linux Root filesystem
for AT91sam9260ek board for example
Graphical Linux Root filesystem
for board having a screen attached
Common base packages alsa & alsa-utils
avahi
busybox
dropbear (ssh server)
glibc
ipkg
iptables
madplay
ntpdate
portmap
thttpd (web server)
tinylogin
mtd utils
iperf (network testing tool)
Graphical packages None glib & GTK+
GPE
matchbox
mplayer
tslib
X11 (xserver-kdrive-fbdev) + fonts
Complete package list
result of the command :
ipkg list_installed ipkg list_installed

Angstom 2007.1 binaries

Board Description Binary local.conf used
at91sam9260ek Angstrom console image tailored for AT91
JFFS2 root filesystem
Angstrom-console-image-demo-glibc.rootfs.jffs2 from at91sam9263ek local.conf
at91sam9xeek Angstrom console image tailored for AT91
JFFS2 root filesystem
Angstrom-console-image-demo-glibc.rootfs.jffs2 from at91sam9263ek local.conf
at91sam9261ek Angstrom x11 (graphical) image tailored for AT91
JFFS2 root filesystem
Angstrom-x11-image-demo-glibc-at91.rootfs.jffs2 from at91sam9263ek local.conf
at91sam9263ek Angstrom x11 (graphical) image tailored for AT91
JFFS2 root filesystem
Angstrom-x11-image-demo-glibc-at91.rootfs.jffs2 from at91sam9263ek local.conf
at91sam9rlek Angstrom x11 (graphical) image tailored for AT91
JFFS2 root filesystem
Angstrom-x11-image-demo-glibc-at91.rootfs.jffs2 from at91sam9263ek local.conf

Install a rootfs on an AT91 board

This section describes How to load a jffs2 root filesystem into the NAND FLASH of the board with SAM-BA and right through the u-boot command line. SAM-BA is the simplest way.

hand Note that the root file system is installed at offset 0x0 in the NAND FLASH. From a Linux kernel point of view, this corresponds to the index 0 of the MTD subsystem device (/dev/mtd0 and /dev/mtdblock0).

warning Note also that this operation will need a complete erase of the board NAND FLASH. Be sure not to loose data during this operation.

Using SAM-BA

  • Connect the USB Device Interface to your host machine using the USB Device Cable
  • Make sure that the chip can execute the bootROM monitor SAM-BA-boot :

AT91SAM9260-EK AT91SAM9261-EK AT91SAM9263-EK (RevA)
  • J7 must be opened (BMS=1) to boot from the on-chip Boot ROM
  • follow the AT91SAM9260EKSamBaRecovery recovery method, if needed
  • power up the board
  • verify that the USB connection is established (ATMEL AT91xxxxx Test Board appears in taskbar notification area)
  • J4 must be opened (BMS=1) to boot from the on-chip Boot ROM
  • remove DataFlash Jumper (J21)
  • power up the board
  • verify that the USB connection is established (ATMEL AT91xxxxx Test Board appears in taskbar notification area)
  • plug DataFlash Jumper (J21) back in position 1-2
  • J5-6 must be opened (BMS=1) to boot from the on-chip Boot ROM
  • remove DataFlash Card (J9)
  • power up the board
  • verify that the USB connection is established (ATMEL AT91xxxxx Test Board appears in taskbar notification area)
  • reinsert the DataFlash Card in J9
AT91SAM9XE-EK AT91SAM9RL-EK AT91SAM9263-EK (RevB)
  • erase the content of the internal FLASH by putting the J7 jumper in position 1-2
  • power up the board
  • verify that the USB connection is established (ATMEL AT91xxxxx Test Board appears in taskbar notification area)
  • open now J7 (or put in position 2-3), to boot in normal operating mode
  • J11 must be on 1-2 position (BMS=1) to boot from the on-chip Boot ROM
  • remove DataFlash and NAND Flash Jumpers (J12 & J13)
  • power up the board
  • verify that the USB connection is established (ATMEL AT91xxxxx Test Board appears in taskbar notification area)
  • close DataFlash and NAND Flash Jumpers (J12 & J13)
  • J5-6 must be opened (BMS=1) to boot from the on-chip Boot ROM
  • remove DataFlash Card (J9)
  • remove NAND Flash Jumpers (J29)
  • power up the board
  • verify that the USB connection is established (ATMEL AT91xxxxx Test Board appears in taskbar notification area)
  • reinsert the DataFlash Card in J9 (only for DataFlash demo)
  • close NAND Flash Jumper (J29)

  • Start SAM-BA GUI Application
  • Select the the board in the drop-down menu and choose the USB Connection

    SAM-BA_selectboard.jpg

  • Eventually plug back a jumper to access the media on which u-boot must be loaded to
  • In the main SAM-BA window :
SAM-BA_mainwin-rootfs.png
  1. Choose the NandFlash media tab in the SAM-BA GUI interface
  2. Initialize the media choosing the NandFlash Init action in the Scripts rolling menu and press Execute
  3. In the same Scripts menu choose the NandFlash Erase All action and press Execute . A Please Wait... dialog window is appearing: wait for the end of the erase process
  4. Press on Send File Name Browse button
  5. Choose the filesystem image file ( x11-image-demo-at91sam9263ek.jffs2 for example) and press Open
  6. Enter the proper address in NAND FLASH in the Address text field. You can find a media map for each product in GettingStarted#Linux4SAM_demo_FLASH_memory_map
  7. Press Send File button. A Please Wait... dialog window is appearing: wait for the end of the flashing process
  8. On AT91SAM9260-EK or AT91SAM9XE-EK, If you have erased the booting media, do not forget to replace AT91Bootstrap in it
  9. Close SAM-BA, remove the USB cable

Ok, now you must have a the Linux root filesystem flashed on your board.

Using u-boot commands

Here is a reference documentation about JFFS2 as root filesystem on the u-boot documentation website.

Following commands documentation is available in the u-boot doc/README.nand documentation file.

    1. erase the whole NAND FLASH

U-Boot> nand erase

NAND erase: device 0 whole chip
Skipping bad block at  0x000c0000
Skipping bad block at  0x009c0000
Erasing at 0xffe0000 -- 100% complete.
OK

    2. download the JFFS2 filesystem from TFTP to the board RAM (address 0x21400000)

U-Boot> tftp 0x21400000 x11-image-demo-at91sam9263ek.jffs2
TFTP from server 10.159.240.137; our IP address is 10.159.245.170
Filename 'nferre/x11-image-demo-at91sam9263ek.jffs2'.
Load address: 0x21400000
Loading: T #################################################################
         #######################################################T ##########
         #################################################################
         [..]
        #########################
done
Bytes transferred = 26083328 (18e0000 hex)
    pencil remember the number of Bytes transferred just indicated above. It will be useful for the nand write.jffs2 command.

    3. write the filesystem from RAM@0x21400000 to NAND FLASH at offset 0x0 (Linux /dev/mtdblock0). Note the last parameter : it is the number of Bytes transferred indicated in the previous command.

U-Boot> nand write.jffs2 0x21400000 0x0 0x18e0000

NAND write: device 0 offset 0, size 26083328 ...
Bad block at 0xc0000 in erase block from 0xc0000 will be skipped
Bad block at 0x9c0000 in erase block from 0x9c0000 will be skipped
Writing data at 0x195f800 -- 100% complete.
OK

hand Note that bad blocks just shown above are normal behavior of a NAND FLASH : they are skipped and the filesystem will not mind, it is designed to manage them.

Good, now you have a fresh JFFS2 filesystem you can boot on.


  Attachment Action Size Date Who Comment
png SAM-BA_mainwin-rootfs.png props, move 30.6 K 11 Sep 2007 - 11:37 NicolasFerre SAM-BA main window flashing rootfs
txt console-image-demo_installed_pkgs.txt props, move 7.9 K 10 Oct 2007 - 11:33 NicolasFerre  
txt x11-image-demo_installed_pkgs.txt props, move 19.8 K 17 Sep 2007 - 15:15 NicolasFerre  
r14 - 26 May 2008 - 09:41:58 - NicolasFerre
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries.
Atmel® and others, are registered trademarks or trademarks of Atmel Corporation or its subsidiaries.
ARM® and others are registered trademarks or trademarks of ARM Ltd. Other terms and product names may be trademarks of others.
Ideas, requests, contributions ? Connect to LinksToCommunities page.
Syndicate this site RSSATOM