AM35x-OMAP35x-PSP04.02.00.07UserGuide中文手册翻译:卢浩转载请注明出处嵌入式爱好者开发群1228798391先阅读这个1.1关于本手册2安装2.1系统需求2.2支持包内容2.3环境安装2.4选择启动模式2.4.1OMAP3EVM(OMAP35x,AM/DM37x)2.4.1.1用Onenand的EVM板2.4.1.2用镁光的nand的EVM板2.4.2AM3517EVM2.4.3beagleboard的板子3x-loader3.1简介3.2编译x-loader3.2.1标记x-loader3.2.2ECC校验的选择4U-boot4.1编译U-boot4.2U-boot功能4.2.1OneNAND支持4.2.1.1标记坏块4.2.1.2擦除OneNAND4.2.1.3写入OneNAND4.2.1.4OneNAND的阅读4.2.1.5擦除OneNAND4.2.2NAND的支持4.2.2.1NAND布局4.2.2.2标记坏块4.2.2.3查看坏块4.2.2.4擦除Nand4.2.2.5Nand的阅读4.2.2.6Nand的阅读4.2.2.7选择ECC校验4.2.3nor的支持(仅在AM3517EVM)4.2.4MUSB主机支持4.3从uboot烧写4.3.1OneNAND4.3.1.1保存环境变量4.3.1.2烧写x-loader4.3.1.3烧写u-boot4.3.1.4烧写Linux内核4.3.1.5烧写JFFS2文件系统4.3.2NAND4.3.2.1保存环境变量4.3.2.2烧写x-loader4.3.2.3烧写uboot4.3.2.4烧写Linux内核4.3.2.5烧写JFFS2文件系统4.3.3nor5linux内核5.1编译内核5.2为内核选择对应的nandecc校验5.3配置内核5.4用正确的串口输出设备5.5创建jffs2文件系统5.6启动内核5.6.1从nand启动5.6.2从onenand启动5.6.3从mmc启动5.6.4从nor启动6音频驱动程序7视频显示驱动程序8视频捕获驱动程序9USB驱动程序10MMC驱动程序11以太网驱动程序12电源管理13电源管理IC14TIHECCCAN控制器先阅读以下内容(非常重要)重要的变化现在,Linux内核中的NAND驱动程序使用1位硬件ECC校验.。x-loader和uboot必须使用相同的ECC校验。所以,强制性的更新x-loader和uboot当使用来自这份文档中的linux内核。文件系统也需要相应的更新。详细的信息可以看TI的用户手册。串口控制设备从ttySn变成了ttyOn.所以在bootarg里面需要改变一下你所选择的串口设备。通过mkfs.jffs2制作jffs2文件系统也发生了改变利用uboot烧写jffs2到nand的步骤也发生了改变Beagleboard的板子已经被同步到TI支持的平台上。在linux2.6.37中,根文件系统对于挺的项/proc/mounts已经发生了改变,这个可能导致初始化脚本失败。举个例子,当你用nfs作为根文件系统的时候,文件系统里面的DHCP脚本可能就发生的变化。内核输入子系统EV_VERSION已经更新到01.00.01.确定你的tilib也同步了,否则会导致错误。关于本文档本文档介绍了如何安装和用德州仪器平台支持包(PSP)作为OMAP35x,AM/DM37x,AM3517平台开发运行Linux的工具。此PSP提供基础软件平台的开发、部署和执行。它抽象化提供的硬件的功能。在这个开发平台上用过应用程序开发的来得到产品。安装系统要求硬件要求:ForAM/DM37xOMAP3ProcessorModulewithAM37xES1.2OMAP3EVMMainBoard(RevG)BeagleXM(RevA1andlater)ForAM3505/AM3517AM3517ProcessorModulewithES1.2SiAM3517EVM(RevC)AM3517Applicationboard(RevC)ForOMAP35xOMAP3ProcessorModulewithOMAP35xES3.1orlaterOMAP3EVMMainBoard(RevG)Beagle(RevDandlater)软件要求安装CodeSourceryARMtoolchainversion2009-q1交叉编译器重要信息此版本已在以下平台上做过系统的测试AM/DM37xSupport:OMAP3EVM(rev.G)andAM/DM37xProcessorboardwithES1.2SiAM3517Support:AM3517EVM(RevC),Applicationboard(RevC)andES1.2Si安装包包含的内容$tar-xvfzAM35x-OMAP35x-LINUX-PSP-MM.mm.pp.bb.tgz\---AM35x-OMAP35x-LINUX-PSP-MM.mm.pp.bb|Software-manifest.html+----docs||----DataSheet-MM.mm.pp.bb.pdf||----ReleaseNotes-MM.mm.pp.bb.pdf||----am3517||`----UserGuide-MM.mm.pp.bb.pdf||----omap3530||`----UserGuide-MM.mm.pp.bb.pdf+----host-tools||----linux||`----signGP||----src||`----signGP.c+----images||----boot-strap|||----am3517|||`----x-load.bin.ift|||----omap3530|||`----x-load.bin.ift|||----beagle|||`----x-load.bin.ift||----kernel|||----am3517|||`----uImage|||----omap3530|||`----uImage|||----beagle|||`----uImage||----u-boot|||----am3517|||`----u-boot.bin|||----omap3530|||`----u-boot.bin|||----beagle|||`----uImage+----scripts||----am3517|||----Readme.txt|||----initenv-micron.txt||`----reflash-micron.txt||----omap3530|||----Readme.txt|||----initenv-micron.txt||`----reflash-micron.txt|||----initenv-samsung.txt||`----reflash-samsung.txt+----src|----boot-strap||----ChangeLog-MM.mm.pp.bb||----ShortLog||----Unified-patch-MM.mm.pp.bb.gz||----diffstat-MM.mm.pp.bb||----x-loader-patches-MM.mm.pp.bb.tar.gz|`----x-loader-MM.mm.pp.bb.tar.gz|----examples||----examples.tar.gz|----kernel||----Readme.txt||----ChangeLog-MM.mm.pp.bb||----ShortLog||----Unified-patch-MM.mm.pp.bb.gz||----diffstat-MM.mm.pp.bb||----kernel-patches-MM.mm.pp.bb.tar.gz|`----linux-MM.mm.pp.bb.tar.gz|----u-boot|----Readme.txt|----ChangeLog-MM.mm.pp.bb|----ShortLog|----Unified-patch-MM.mm.pp.bb.gz|----diffstat-MM.mm.pp.bb|----u-boot-patches-MM.mm.pp.bb.tar.gz`----u-boot-MM.mm.pp.bb.tar.gz环境变量设置1.交叉编译环境的设置$exportPATH=/opt/toolchain/2009-q1/bin:$PATH2.uImage制作小插件的环境设置$exportPATH=/opt/u-boot/tools:$PATH注意:实际的设置采决于你实际路径的设置设置启动模式OMAP3EVM(OMAP35x,AM/DM37x)SW4开关是选择x-loader和uboot启动的位置,注意:nand和onenand的拨码开关的选择不一样。用三星onenandEVM板的设置从onenand启动,用以下任何一个设置:从mmc启动(只有用三星onenand的EVM板),用以下任何一个选择:用镁光nand的EVM板从nand启动,用以下任何一个设置从mmc启动(用镁光nand的EVM板),用以下任何一种方式启动:SW4-6,SW4-7和SW4-8随便怎么设置,这些在上面显示为灰色AM3517EVMSW7开关是选择x-loader和uboot启动的位置,注意:nand和onenand的拨码开关的选择不一样从nand启动,用以下的设置从mmc启动。用以下的设置Beagle/BeagleXM比格犬板通过默认系统启动是在NAND的引导模式下,通过用户按钮S1选择启动模式,从MMC启动模式。按S1按钮并保持按下并松开时按住重置按钮S2。BeagleXM,只有MMC启动模式,支持的情况下只连接到GPIO4,并不会引导模式选择器的功能。x-loaderX-loader是可执行文件bootloader,她是通过rom下载到ram执行,它对于初始化外部存储器非常重要,然后从你(nand,sd等)下载uboot。X-loader支持从nand,mmc/sd和onenand启动。编译x-loader1.进入x-loader的目录$cd./x-load2.清除以前的配置$makeCROSS_COMPILE=arm-none-linux-gnueabi-ARCH=armdistclean3.选择对应的板子的配置ForOMAP3EVM:$makeCROSS_COMPILE=arm-none-linux-gnueabi-ARCH=armomap3evm_configForAM3517EVM:$makeCROSS_COMPILE=arm-none-linux-gnueabi-ARCH=armam3517evm_configForBeagle/BeagleXM:$makeCROSS_COMPILE=arm-none-linux-gnueabi-ARCH=armomap3beagle_config4.启动生成x-loader$makeCROSS_COMPILE=arm-none-linux-gnueabi-ARCH=arm如果成功了,x-loader.bin文件将会出现在你的当前目录标记可执行文件x-loader在当前目录下执行$signGPx-load.bin然后会生成xloader.bin.ift。这是我们后面需要用的文件。选择ECC校验模式X-loader支持以下ECC校验,需要选择一下当你编译的时候(4位硬件校验,8位硬件校验,1位软件校验)你必须执行undefineECC_HW_ENABLE1.Editthefileinclude/configs/board_config.hChangefrom:#defineECC_HW_ENABLEChangeto:#undefECC_HW_ENABLE1-bithardwareE