免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1782 | 回复: 0
打印 上一主题 下一主题

OSK5912的资源 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-18 13:41 |只看该作者 |倒序浏览

               
http://tree.celinuxforum.org/CelfPubWiki/OSK
  Wiki的项目
http://embeddedlinux.movial.fi/OSK
   OSK资源
http://omap.spectrumdigital.com/osk5912/
spectrumdigital制作的OSK5912
http://focus.ti.com/general/docs/wtbu/wtbusplashcontent.tsp?templateId=6123&contentId=4750
  TI关于OMAP5912的一些资源
http://tree.celinuxforum.org/CelfPubWiki/OSK_2fuboot
OSK/UBOOT
http://tree.celinuxforum.org/CelfPubWiki/FlashRecoveryUtility
  [color="#000000"]FlashRecoveryUtility
http://oskfordummies.hp.infoseek.co.jp/howto.html
  5912 how to
http://oskfordummies.hp.infoseek.co.jp/howto/flash_boot.html
  制作boot loader

http://sourceforge.net/projects/u-boot
  u-boot官方主页
http://www.muru.com/linux/omap/
OMAP的PATCH
http://www.arm.linux.org.uk/developer/toolchain/
  tool chain
http://focus.ti.com/general/docs/wtbu/wtbusplashcontent.tsp?templateId=6123&contentId=4753
http://frank.harvard.edu/~coldwell/toolchain/
  如何编译toolchain
http://www.kegel.com/crosstool/
   how to make tool chain
http://www.handhelds.org/download/projects/toolchain/
  toolchain下载
http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=tags
  GIT tree
http://tree.celinuxforum.org/CelfPubWiki/PatchArchive
  CramFS的补丁
http://linux.omap.com/pipermail/linux-omap-open-source/
   OMAP Linux mail list
http://lists.infradead.org/pipermail/linux-mtd/
     Linux_MTD mail list
http://www.nabble.com/Uboot---Users-f553.html
   bootloader-uboot mail list
Linux Documentation on the Web
Texas Instruments

U-Boot

ARM Linux

Embedded Linux

General Linux

Texas Instruments


Block Diagram
The following is a block diagram of the OSK5912:

A full description of the board can be found in the OSK5912 Hardware Specification on the OSK5912 CD-ROM. The main features of the board are:

  • OMAP5912 processor (192MHz ARM, 192Mhz DSP)
  • 32Mb Mobile DDR SDRAM
  • 32Mb on-board Flash
  • 10 Mbit Ethernet interface
  • USB Host interface
  • AIC23 stereo codec
  • RS-232 serial port

The board is powered from a +5V DC input using the included AC power adapter. The OMAP5912 uses a 12MHz oscillator as a clock input with internal operating frequencies generated by on-chip PLLs. JP3 is typically the only jumper a user will modify. The Flash memory is physically connected to CS3. When JP3 is in the 2-3 position (default), the OMAP5912 boots in fast boot mode where CS3 is swapped with CS0 so the Flash starts at address 0. When the processor starts running, it will execute the code in Flash (U-Boot is stored in Flash at the factory).
If JP3 is in the 1-2 position, the OMAP5912 comes up in full boot mode with the internal ROM at address 0. The internal bootloader supports additional boot modes such as booting from the serial port. At any time, the state of the CS0-CS3 mapping can be changed by modifying the BM (bit 1) of the EMIFS_CONFIG register (address 0xFFFECC00).
Restoring the Factory Configuration
A high-level memory map of the board looks like this:

  • Processor comes out of reset, execution begins at 0x00000000.
  • U-Boot bootloader does basic initialization, displays console I/O on serial port at 115,200 baud, N81
  • U-Boot accepts commands over the serial port.
  • The command bootm 0x100000 uncompresses the Linux kernel into SDRAM and starts execution.
    When the OSK5912 is powered up, the U-Boot bootloader is run automatically. It is configured to boot the Linux kernel at address 0x100000 after a short delay. When the Linux kernel boots, it automatically mounts the JFFS2 filesystem stored in Flash at 0x1000000.
    To restore the factory configuration, you must individually restore the U-Boot image, the kernel image and the filesystem image in Flash. These instructions are written to be independent (each component can be replaced in isolation).
    Step 1: Restoring U-Boot
    To restore U-Boot, you must have Code Composer Studio configured as described in the OSK5912 Users Guide. Code Composer Studio provides the debug connection to the target, and the osk5912.gel script does basic system initialization.
  • Set JP3 in the 1-2 position (the square solder mask on the bottom on the board represents pin 1). Power cycle the board.
  • Start Code Composer Studio.
  • Use the menu option File -> Load Program to load the file restore/uboot/osk5912-uboot-1.1.1.out on the OSK5912 CD-ROM.
  • Use the menu option Debug -> Run to run the program. It will erase and program the U-Boot image into Flash. Status messages will be displayed in the output window at the bottom of the window.
  • Set JP3 in the 2-3 position and power cycle the board.
  • The processor will boot out of Flash and you will see the U-Boot menu/prompt come up on the serial port. If U-Boot is configured to automatically boot, you must hit a key on your terminal to get to the prompt instead of booting.
  • Configure U-Boot with some basic settings:
    # setenv bootcmd bootm 0x100000
    # setenv bootdelay 10
    # setenv bootfile uImage
    # setenv bootargs console=ttyS0,115200n8 noinitrd rw
        ip=off root=/dev/mtdblock4 mem=30M
    # saveenv
    Step 2: Restoring the Kernel Image
    Restoring the kernel involves pulling a kernel image over the Ethernet connection from a tftp server on your network. To do that, U-Boot must be configured with settings to operate on your network. Your OSK must be connected to the network through the included Ethernet cable.
  • Make sure the tftp service is running on your server.
  • Copy the file uImage from the restore/kernel directory on the OSK5912 CD-ROM into your tftp server directory.
  • Boot your OSK5912 to the U-Boot prompt.
  • Set your Ethernet MAC address. Your board's address can be found on a sticker on the bottom of your board. # setenv ethaddr 00:0E:99:02:10:02
  • Configure the IP address of your board. You can obtain an IP address automatically with the dhcp command or pick one manually. You must still issue the saveenv command if you use the dhcp command, U-Boot will use DHCP to obtain an address but not automatically configure your environment. # setenv ipaddr 192.168.4.20
  • Configure the board for your network and tftp server. If you need help with this, go to your server and obtain this information using this
    [color="#002080"]link
    . The tftpboot command is used to download the uImage file from your tftp server into SDRAM at address 0x10000000. # setenv serverip 192.168.3.61
    # setenv netmask 255.255.255.0
    # setenv gatewayip 192.168.0.1
    # saveenv
  • Download the uImage file. # tftpboot 0x10000000 uImage
    TFTP from server 192.168.3.61;our IP address is 192.168.4.20
    Filename 'uImage'.
    Load address: 0x10000000
    Loading: ###################################################
             ###################################################
             #######################################
    done
    Bytes transferred = 741152 (b4f20 hex)
  • Copy the image from SDRAM (address 0x10000000) to Flash at address 0x100000.  # erase 1:8-16
    # cp.b 0x10000000 0x100000 b4f20
    Step 3: Restoring the Filesystem
  • Copy the file factory-filesys.jffs2 from the restore/filesystem directory on the OSK5912 CD-ROM into your tftp server directory.
  • Boot your OSK5912 to the U-Boot prompt.
  • Download the factory-filesys.jffs2 file.  # tftpboot 0x10000000 factory-filesys.jffs2
  • Copy the image from SDRAM (address 0x10000000) to Flash at address 0x100000.  # erase 1:128-255
    # cp.b 0x10000000 0x1000000 e34b14
    OSK5912 FAQ
    Section 1: Support

    Section 2: U-Boot

    Section 3: Host Linux Usage

    Section 4: Embedded Linux Usage

    Section 5: Board

    Section 6: Code Composer

    Section 7: Addons

    Section 8: Emulators

    Section 9: Related Products

    Section 10: Versioning

    Section E: Errata

    Section 1: Support
    [color="#002080"]1.1 What is the OSK5912 support policy?
    Documentation and support is limited to the contents of the OSK5912 package. Spectrum Digital warrants the OSK5912 hardware for 90 days from the date of purchase. However, no software support is provided by either Spectrum Digital, Texas Instruments or MontaVista Software.
    You can view available web resources at the
    [color="#002080"]Linux docs
    section of:
        omap.spectrumdigital.com
    In particular, Linux users may find it uselful to subscribe to the TI Linux Mailing List to be aware of issues that other users run into.
    At the factory, each board is run through a complete suite of tests including booting the board, running the audio demo described in the Quick Start section of the Users Guide and a superset of the test code that gets installed in:
        c:\ti\boards\osk5912\examples\test
    using Code Composer Studio configured with the osk5912 GEL file (osk5912.gel in boards/gel). If you believe that you have a hardware failure (your board will not complete the test listed above) you may contact support@spectrumdigital.com.
    Section 2: U-Boot
    [color="#002080"]2.1 How do I set the Ethernet MAC address of a board?
    Issue the command:
        setenv ethaddr = 00:0E:99:02:02:29at the U-Boot prompt. This sets the working MAC address for the current session. To save the MAC address in Flash so it comes up set automatically on every boot, issue the command:     saveenvFor more information, please consult the
    [color="#002080"]U-Boot User Manual
    .
    [color="#002080"]2.2 What is the syntax of the DHCP command?
    Make sure the Ethernet MAC address has been set up (see 2.1) and then type:
        dhcpat the U-Boot prompt. It will contact your DHCP server to obtain an IP address. For more information, please consult the
    [color="#002080"]U-Boot User Manual
    .
    [color="#002080"]2.3 What is the syntax of the TFTP command?
    Make sure your MAC address, IP address and server IP address have been set up. The following is an example of using the tftp command:
        setenv ethaddr = 00:0E:99:02:02:29
        setenv serverip = 192.168.100.1
        setenv ipaddr 192.168.100.10
        tftp 0x10000000 factory-filesys.jffs2
    The tftp command will load the file factory-filesys.jffs2 from the tftp server at IP address 192.168.100.1. The target board's IP address can be assigned to a static IP address as in this example or using the dhcp command. For more information, please consult the
    [color="#002080"]U-Boot User Manual
    .
    [color="#002080"]2.4 Can you transfer files to U-Boot using Minicom in kermit mode?
    The kermit protocol implementations in U-Boot and minicom do not match so you cannot use minicom to transfer files and images to U-Boot. Use Hyperterminal to do a raw binary transfer instead.
    One suggested workaround is to reconfigure minicom to use gkermit, a kermit equivalent that is included with both Red Hat Linux 7.3 and 9.0.
    Add the folling lines in '/etc/minirc.dfl':
    pu pname7    YUNYNkermit
    pu pname8    NDNYNkermit
    pu pprog7    /usr/bin/gkermit -iXs
    pu pprog8    /usr/bin/gkermit -iXr
    From minicom, select "Send File -> kermit" menu and select the directory and filename to download. Note: Don't select "run kermit" menu, which isn't compatible with the current u-boot.
    Section 3: Host Linux Usage
    [color="#002080"]3.1 How do I extract a *.tgz file?
    The command:
        tar -xzvf filename.tgzwill extract (uncompress and untar) the files in filename.tgz.
    [color="#002080"]3.2 How do I set up a TFTP server?
    You can find instructions at:
    [color="#002080"]http://www.linux.com/howtos/Clone-HOWTO/setting-up.shtml
    [color="#002080"]3.3 Where do I find the Korn shell for Red Hat Linux 7.3?
    The Korn shell is used by Montavista's Linux DSP Tools. If you are using an older version of Red Hat Linux (such as version 7.3) that does not include it, you can find it
    [color="#002080"]here
    .
    Section 4: Embedded Linux Usage
    [color="#002080"]4.1 The audio files cannot play after rebuilding the kernel.
    If the audio files cannot play after rebuilding the kernel, check 'dev/dsp'. If missed, add the following line to boot-up scripts.
        # mknod /dev/dsp c 14 3
        # mknod /dev/mixer c 14 0
    [color="#002080"]4.2 How do I set the OSK IP address?
    The command to set the IP address:
        /sbin/ifconfig eth0 192.168.100.10 up
    [color="#002080"]4.3 What is THTTPD?
    The THTTPD stands for Tiny/Turbo/Throttle HTTP Daemon (server), which makes the OSK act as HTTP server. After setting the IP address, try to connect the OSK from host PC. You should see the MontaVista opening message.
    If it is not needed, the THTTPD can be disabled by commenting the following lines in the /ect/init.d/rcS
        # Start thttpd
        echo -n "Starting thttpd: "
        /usr/sbin/thttpd -C /etc/thttpd/thttpd.conf -i /var/run/thttpd.pid -c "/cgi-bin/*"
        sleep 1
        echo "done."
    [color="#002080"]4.4 How to I skip the login-in prompt?
    In the file /etc/inittab, comment ('#') out the line
        console::respawn:/sh/getty consoleand add     console::respawn:/sh/bin
    [color="#002080"]4.5 How do I modify the opening message?
    Edit the file /etc/issue. It would be default contain:
        MontaVista?(R) Linux(R) Professional Edition 3.1, Preview Kit
    [color="#002080"]4.6 What is the syntax for BusyBox?
    You can find syntac info of BusyBox here:
    http://www.8ung.at/spblinux/doc/busyboxdocumentation.html

    [color="#002080"]http://www.linuxforum.com/man/busybox.1.php
    [color="#002080"]Section 5: Board
    [color="#002080"]5.1 How do I access the LEDs on the OSK5912?
    The LEDs are connected to GPIO outputs on the TPS65010 power controller chip (U10), not the OMAP5912 chip itself. They can be controlled independently through the I2C bus. Please see the
    [color="#002080"]TPS65010 product folder
    for more details or take a look at the Board Support Library source code for code examples.
    Section 6: Code Composer
    [color="#002080"]6.1 How do I bring Code Composer up in DSP only mode?
    In order to bring up Code Composer in the DSP only configuration, the ARM side must release the DSP from reset before attempting to connect. The Code Composer configurations that rely on the DSP to be release are:
        OSK5912 XDS510 USB Emulator (DSP only)
        OSK5912 XDS510 PP Emulator (DSP only)
        OSK5912 XDS560 Emulator (DSP only)
    To manually release the DSP you must write to the register ARM_RSTCT1 (0xFFFECE10) with value (0x00000002).
    In UBOOT this is accomplished with a memory write:     mw 0xFFFECE10 2Typically the way to start the DSP is by using the ARM + DSP co-emulation configuration. Here the ARM gel file will release the DSP during startup.
    [color="#002080"]6.2 Linux runs fine but things don't look right under CCStudio?
    Sometimes it looks like something (memory, caches, MMU) is wrong when you try to debug from CCStudio, but it's clear that nothing is really wrong with the hardware. For example, if Linux is running all of those components must be working but when you try to load a program with CCStudio you get program load errors or breakpoint setting errors. This generally happens because as soon as you apply power to the factory configured board it starts booting into U-Boot and then Linux. When the CCStudio debug session starts, the processor state is the current state and not the reset state. Depending on the amount of time that has elapsed, Linux will have initialized all kinds of processor features and peripherals and re-mapped all of the DRAM and internal memory to completely different addresses.
    If you're using the osk5912.gel GEL file that gets installed into c:\ti\boards\osk5912\gel, it'll clean up some of that state so at least interupts are disabled and you should have access to the DRAM and internal memory. But if you're primarily doing Code COmposer based debug you may want to switch JP3 to the 1-2 position (instead of the default 2-3 position). This will keep the OSK5912 from booting from Flash and you will have a much cleaner state to start with.
    Section 7: Addons
    [color="#002080"]7.1 Where can I find support for other operating systems?
    Try this
    [color="#002080"]link
    for list of other third parties that support various embedded operating systems for OMAP devices.
    Section 8: Emulators
    [color="#002080"]8.1 How do I connect to the OSK with my SD Emulator?
    Using an SD emulator with the OMAP 16xx device generally requires additional emulator setup through SdConfig. This is due to the fact that the default RTCK from an OMAP16xx device is generally in the low mega-hertz range.
    Run SDConfig.exe and choose the port address for your emulator. Then choose "Emu" folder and set the "Emulator port speed" to a higher number, this is add a delay to the emulation access. For example a setting of 8 is sufficient to support a 2 MHz RTCK frequency. Save the new configuration and retest your emulator.

    Section 9: Related Products
    [color="#002080"]9.1 Where can I find related products that work with the OSK5912?
    Go to
    [color="#002080"]http://omap.spectrumdigital.com
    and look at the related products section on the left. If you're having difficulties getting started with OMAP, check out support services from
    [color="#002080"]LogicPD
    .
    Section 10: Versioning
    [color="#002080"]10.1 Current Versions of the OSK5912
    Two versions of the OSK5912 currently exist (as of summer '05). Revision C of the OSK5912 (TI part #TMDXOSK5912) is the original production version. Revision D is the currently shipping version (TI part #TMDSOSK5912). Both revisions use exactly the same PCB board and ship with exactly the same documentation and software. However, the Revision D board is populated slightly differently as follows:
    • The TMDX (pre-production) version of the OMAP5912 processor has been replaced by the TMDS (fully qualified production) version. The change is a manufacturing classification only and the design itself has not changed. Therefore, there is no software/functionality impact.
    • The 32.768 KHz oscillator has been replaced by a 32.768 KHz crystal. As crystals are cheaper than oscillators, the version with the crystal makes a cheaper baseline reference design. There is no software impact.

    The Revision D schematics and component differences between the Revision C and Revision D boards can be found here:
    Section E: Errata
    [color="#002080"]E.1 OSK5912 SDRAM Configuration Update
    Since the original Uboot 1.1.1 there have been 2 changes made to the DDR SDRAM refresh rate. The first change affects the autorefresh count, in which the autorefresh count did not account for a DDR SDRAM read burst length of 8. The autorefresh count was recomputed to account for this 8x increase.
    The second change is again for the autorefresh count, and relates to the reliablity of the some DDR SDRAM chips. A reduction of the autorefresh count by 15%-20% was observed to be more reliable than the autorefresh count after the first change.
    Look for the updated files containing the updated SDRAM configuration below
    [color="#002080"]E.2 OSK5912 POMAP Configuration Update
    Changes to the original Uboot 1.1.1 have included support for the POMAP chip and various minor fixes. The POMAP chip contains new features to support DDR SDRAM and high speed clocks. The Uboot code automatically determines whether an XOMAP chip or POMAP chip is running Uboot and enables any of the new features for the DDR.
    Changes on platform.S
    • Enabled I-CACHE at the beginning of platform.S
    • Changed the clocking settings to use Synchronous Scalable Mode
      REG_ARM_SYSST( 0xfffece18 ) = 0x1000
    • Changed when the SDRAM autorefresh to occur every burst of 8 commands
      Recomputed the SDRAM autorefreah count to take into account the new burst command length and a 15-20% padding of the SDRAM to support the Elpida DDR memory
      REG_SDRAM_CONFIG( 0xfffecc20 ) = 0x0014e6fe
    • Added DEVICE ID check for POMAP ID of 0xb65f, this is support for high speed DDR memory
      REG_DEVICE_ID( 0xfffe2004 ) == 0xb65f
    • Enabled ARM cache line refills using a new EMIFF_DOUBLER register for POMAP devices
      REG_TC_EMIFF_DOUBLER( 0xfffecc60 ) = 0x0001
    • Enabled a new freature for supporting system frequencies above 100 MHZ for POMAP devices
      REG_SDRAM_CONFIG2( 0xfffecc3c ) = 0x000b
    • Decreased the frequency timing range of the SDRAM for POMAP devices from SDF0 to SDF1
      REG_SDRAM_CONFIG( 0xfffecc20 ) = 0x0114e6fe
    • Decreased the DLL phase from 90 degrees to 72 degrees, added the maximum offset of +31
      REG_DLL_WRT_CONTROL( 0xfffecc68 ) = 0x03f00002
      REG_DLL_URD_CONTROL( 0xfffeccc0 ) = 0x00800002
      REG_DLL_LRD_CONTROL( 0xfffecccc ) = 0x00800002
    • Corrected REG_MPU_LOAD_TIMER address
      From 0xfffec600 to 0xfffec504
    • Enabled EMIFS.RDY for EMIFS.CS1 accesses
      REG_TC_EMIFS_DWS( 0xfffecc40 ) = 0x000000c0
    • Changed EMIFS.CS3 timings from 0x88011131 to 0x88013141, increased the RDWST by 1, WELEN by 1
      REG_TC_EMIFS_CS3_CONFIG( 0xfffecc1c ) = 0x88013141
    Changes on omap5912osk.c
    • For the OSK5912, Uboot usese a new arch number for identification.
      From 234 to 515
    • Commented out all udelay() functions calls in ether__init() and replaced the calls with software delay loops.

    [color="white"]Description[color="white"]Filesplatform.S
    Assembly file containing OMAP sytem initialization code
    [color="#002080"]platform.S
    omap5912osk.c
    C file containing OMAP peripheral initialization code
    [color="#002080"]omap5912osk.c
    osk5912-uboot.bin
    Binary build containing Uboot
    [color="#002080"]osk5912-uboot.bin
    osk5912-uboot.out
    Loadable Code Composer COFF file.
    [color="#002080"]osk5912-uboot.out
    Beta Period FAQ
    This document includes issues seen by OSK5912 users during the beta period.
    1. The CPU occasionally hangs immediately after uncompressing kernel on beta boards.
    This is due to a small bug in the kernel startup code that shipped with the beta units. A revised version of the kernel will ship with the production boards. A patch will be available here after the fix is validated.
    The only place the bug manifests itself is immediately after kernel uncompression and does not have an effect on other areas after that. The temporary workaround is just to power cycle the board.
    2. Filesytem errors occur during boot if I use U-Boot 1.1.1.
    There were a few initialization bugs in the official U-Boot 1.1.1 release included on the beta kits CD-ROMs. This included Flash EMIF timings of approximately 100ns while the actual Flash devices are have 120ns access times. The filesystem errors are due to Flash read errors.
    The beta boards were shipped with a patched version of U-Boot 1.1.1 so these problems do not occur using the as-shipped Flash contents. However, the CD-ROM includes the official U-Boot 1.1.1 release, not the patched version. The patch is available below:
    OSK5912 U-Boot Version History
    [color="white"]OSK5912 Version
    [color="white"]In Flash
    [color="white"]On CD-ROM
    Alpha2
    U-Boot 1.0.0
    U-Boot 1.0.0
    Beta
    [color="#002080"]U-Boot 1.1.1
    +
    [color="#002080"]temporary patch
    (replaces board/omap5912osk/platform.S)
    [color="#002080"]U-Boot 1.1.1
    [color="#002080"]
    3. What is the difference between the Alpha-2 boards and the Beta boards
    The Beta board has power measurement test points, the Ethernet MAC address is included on the back-side silk screen and documentation/code has been updated.

                   
                   

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/35281/showart_280649.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP