NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
Building PSP Components for OMAP-L1x on v3.x Kernel
Content is no longer maintained and is being kept for reference only!
Contents
- 1 Rebuilding the Linux kernel
- 2 Driver configuration in the Linux kernel
- 3 Rebuilding U-Boot
- 4 Configuring U-Boot for different boot modes in da850 Spectrum Digital EVM
- 5 Rebuilding the ARM Side User Boot Loader for da830 and da830-WiFi Spectrum Digital EVM
- 6 AIS image generation for da830 and da830-WiFi Spectrum Digital EVMs
- 7 Rebuilding the SPI Flash writer
- 8 AIS image generation for omapl138 LCDK EVM
Content is no longer maintained and is being kept for reference only!
Rebuilding the Linux kernel[edit]
To rebuild the Linux kernel, follow the steps below.
Preparing your Environment[edit]
- If you have not already done so, install the Code Sourcery toolchain on your Linux host. Visit toolchain to download Code Sourcery toolchain.
- If U-Boot is not built yet, build U-Boot first, as building Linux Kernel requires mkimage utility, which gets built along with U-Boot. Refer to Rebuilding U-Boot for steps to build U-Boot. Once built, mkimage will be present under the tools folder of U-Boot source (/home/<user>/OMAP_L138_arm_x_xx_xx_xx/DaVinci-PSP-SDK-xx.xx.xx.xx/src/u-boot/uboot-xx.xx.xx.xx/tools). Ensure that this path is added to the $PATH variable by adding the following
- Use your Linux host to extract source files for building the target Linux kernel from the src/kernel/linux-#.#.#.#.tar.gz tarball from the OMAP-L138 Linux PSP package, which is located in the DaVinci-PSP-SDK-#.#.#.# directory under the main SDK installation directory (/home/<user>/OMAP_L138_arm_x_xx_xx_xx/DaVinci-PSP-SDK-xx.xx.xx.xx/src/kernel for default path installation). Use the tar command to extract the sources.
- Change directory (cd command) to the top-level directory of the Linux kernel source files obtained in the previous step.
host$ export PATH=home/<user>/OMAP_L138_arm_x_xx_xx_xx/DaVinci-PSP-SDK-xx.xx.xx.xx/src/u-boot/uboot-xx.xx.xx.xx/tools:$PATH
to the ~/.bashrc file. You can then source the ~/.bashrc file with the following command
host$ source ~/.bashrc
host$ tar zxf linux-#.#.#.#.tar.gz
NOTE
Patches from the kernel-patches-#.#.#.#.tar.gz file have already been applied on Linux Kernel. This is the list of patches which have been developed on top of the base Linux kernel version. You can find information about the base Linux kernel version from the release notes accompanying the PSP release.
host$ cd linux-xx.xx.xx.xx
Basic Configuration of the Kernel[edit]
Based on what chip and development board you are using, you will need to configure the kernel for different options. Most of these setings are build into the Make file provided by TI, and you can switch between builds using some simple make options.
- Clean your installation of previous build settings
- Configure the kernel according to the default configuration provided. The steps below assume that the Code Sourcery toolchain is already present in your $PATH variable.
- Modify the kernel options you would like to run. This may take some planning, but the default settings are a good place to start. For more information on these settings, look further down the page at Driver configuration in the Linux kernel or see detailed instructions for different processors root file system. There are two menu configs that are commmon to run:
host$ make distclean ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
For da850 Spectrum Digital EVM
host$ make da850_sdi_defconfig ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
For da830 Spectrum Digital EVM
host$ make da830_omapl137_defconfig ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
For da830-WiFi Spectrum Digital EVM
host$ make da830_omapl137_wifi_defconfig ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
For omapl138-lcdk EVM
host$ make da850_lcdk_defconfig ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
host$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- menuconfig (or) host$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- xconfig
Building uImage[edit]
Run the following command to build the kernel image:
host$ make uImage ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
The compiled uImage is copied into the arch/arm/boot directory under the kernel tree.
Once the kernel has been compiled, if you are using tftp boot, use the following commands to copy the uImage to a place where U-Boot can use TFTP to download it to the EVM. These commands assume you are using the default TFTP root area, which is /tftpboot. If you use another TFTP root location, please change /tftpboot to your own TFTP root location:
host$ cp arch/arm/boot/uImage /tftpboot
Note
If the uImage build fails with a similar message as follows:
"mkimage" command not found - U-Boot images will not be built
it could be that the path to the u-boot uImage script has not been added to the command search path. Include the path "{u-boot source path}/tools" to your PATH environment variable.
Building Modules[edit]
To build all features configured as modules (M), issue the following command:
host$ make modules ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
Installing modules to Target File System[edit]
To install the compiled modules into the target root file system, issue the following command:
host$ make modules_install INSTALL_MOD_PATH=<root fs path> ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
where the <root fs path> is the path of your target root file system on the host machine (/home/user/workdir/filesys for example).
See Loading Linux Kernel Modules for more information on using kernel modules after you build them.
Driver configuration in the Linux kernel[edit]
This section describes the procedure to configure the kernel to support various drivers.
- To begin, if you have not done basic configuration of the kernel go to that section, and do that first. Once you have compiled with base configuration, return here.
- To select/de-select a feature, press 'space' after bringing cursor over selection box. When '*' appears in selection box, the feature is selected, when the selection box is empty, the feature is de-selected.
- To configure a particular feature as module, press 'space' until an 'M' appears in the selection box. Note that some of the menu options which are required to be deselected here (selection box empty) may not appear at all because the internal checks which render the option invalid. In this case, it is safe to assume that the options have been automatically disabled.
Once you base configuration is set, you can use menu based configurations to change details about your kernel's build.
host$ make menuconfig ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
USB 2.0[edit]
USB2.0 interface is build into the default config in Dual Role mode meaning it can either be a Host or Device (OTG is not supported) automatically without need for user intervention. In the Dual Role mode support for MSC application is available in Host mode while RNDIS/CDC gadget application is available in Device mode by default. User can choose to change the application/mode supported by following the below steps if needed.
Configuring for Host
Device Drivers ---> USB support ---> <*> Support for Host-side USB --- Miscellaneous USB options [*] USB device class-devices --- USB Host Controller Drivers <*> Inventra Highspeed Dual Role Controller (TI, ADI, ...) --- Platform Glue Layer [*] DA8xx/OMAP-L1x <*> MUSB DMA mode (TI CPPI4.1) ---> [ ] Disable DMA (always use PIO)
(please see Inventra HDRC USB Controller for more details on the underlying driver)
When required to support HID devices (mouse, keyboard etc), choose the following
Device Drivers ---> Input device support ---> <*> Mouse interface [*] Keyboards ---> <*> AT keyboard HID Devices ---> <*> USB Human Interface Device(full HID) support
When required to support MSC devices (pen drive etc), choose the following
Device Drivers ---> SCSI device support ---> --- SCSI device support [*] legacy /proc/scsi/support --- SCSI support type (disk, tape, CD-ROM) <*> SCSI disk support USB support ---> <*> USB Mass Storage support
When required to support UVC, UAC class (Webcam, Speakers, Microphone etc.) choose the following
Device Drivers ---> Multimedia support ---> Video capture adapters ---> V4L USB devices ---> <*> USB Video Class (UVC) [*] UVC input events device support Sound card support ---> Advanced Linux Sound Architecture ---> USB sound devices ---> <*> USB Audio/MIDI driver
Configuring for Gadget
Device Drivers ---> USB support ---> < > Support for Host-side USB <*> Inventra Highspeed Dual Role Controller (TI, ...) USB Gadget Support <*> Inventra Highspeed Dual Role Controller--->
When required to support Ethernet gadget choose the following
Device Drivers ---> USB support ---> USB Gadget Support ---> <*> USB Gadget Drivers (Ethernet Gadget (with CDC Ethernet support)) [*] RNDIS support (EXPERIMENTAL)
When required to support File backed storage gadget, choose the following
Device Drivers ---> USB support ---> USB Gadget Support ---> <M> USB Gadget Drivers <M> File-backed Storage Gadget [*] File-backed Storage Gadget testing version (NEW)
Please make sure that Inventra HDRC is selected as USB peripheral controller which will appear only when "USB_GADGET" is selected. as shown below so after selecting Gadget Support go back to driver mode option to select "USB Peripheral (gadget stack)" and then come back again to select Inventra HDRC as USB peripheral controller.
Device Drivers ---> USB support ---> <*> USB Gadget Support --->
USB 1.1[edit]
Device Drivers ---> USB support ---> <*> Support for Host-side USB --- Miscellaneous USB options [*] USB device filesystem --- USB Host Controller Drivers <*> OHCI HCD support
To support MSC, HID, UVC, UAC applications over USB 1.1 interface refer to USB2.0 procedures for the same.
Audio[edit]
Device Drivers ---> <*> Sound card support ---> <*> Advanced Linux Sound Architecture ---> <*> ALSA for SoC audio support ---> <*> SoC Audio for the TI DAVINCI chip
For da850 Spectrum Digital EVM :
<*> SoC Audio support for DA850 SDI Board
For da830 or da830-WiFi Spectrum Digital EVM :
<*> SoC Audio support for DA830/OMAP-L137/AM17xx EVM
For omapl38-lcdk EVM :
<*> SoC Audio support for OMAP-L138 HAWKBOARD/ LCDK
Graphical LCD[edit]
Device Drivers ---> Graphics support ---> <*> Support for frame buffer devices ---> <*> DA8xx/OMAP-L1xx Framebuffer support
When using da830 or da830-WiFi Spectrum Digital EVM:
System Type ---> TI DaVinci Implementations ---> Select DA830/OMAP-L137/AM17xx UI board peripheral (LCD) --->
Character LCD[edit]
Device Drivers ---> Graphics support ---> <*> Support for frame buffer devices ---> < > DA8xx/OMAP-L1xx Framebuffer support <*> Parallel port support ---> [*] Staging drivers ---> [ ] Exclude Staging drivers from being built <*> Parallel port LCD/Keypad Panel support (0) Default parallel port number (0=LPT1) (3) Default panel profile (0-5, 0=custom) [ ] Change LCD initialization message ? -*- DA8XX/OMAP-L1/AM1xxx Dummy Parallel Port
System Type ---> TI DaVinci Implementations ---> [*] TI DA850/OMAP-L138/AM18x Reference Platform Select peripherals connected to expander on UI board (Character LCD) --->
NAND[edit]
Device Drivers ---> < > MMC/SD/SDIO card support ---> <*> Memory Technology Device (MTD) support ---> [*] Command line partition table parsing <*> Direct char device access to MTD devices -*- Common interface to block layer for MTD 'translation layers' <*> Caching block device access to MTD devices <*> NAND Device Support ---> <*> Support NAND on DaVinci SoC
WARNING
Please disable MMC support when NAND has to be used. They are pin multiplexed and NAND will not work when MMC is enabled in case of da830 boards.
NOR[edit]
Note: NOR flash is supported only on da850 Spectrum Digital EVM.
Device Drivers ---> < > MMC/SD/SDIO card support ---> <*> Memory Technology Device (MTD) support ---> [*] Command line partition table parsing <*> Direct char device access to MTD devices -*- Common interface to block layer for MTD 'translation layers' <*> Caching block device access to MTD devices RAM/ROM/Flash chip drivers ---> <*> Detect flash chips by Common Flash Interface (CFI) probe <*> Support for Intel/Sharp flash chips Mapping drivers for chip access ---> <*> Flash device in physical memory map
WARNING
Please disable MMC support when NOR has to be used. They are pin multiplexed and NOR will not work when MMC is enabled.
SPI[edit]
Device Drivers ---> [*] SPI support ---> <*> Texas Instruments DaVinci/DA8x/OMAP-L/AM1x SoC SPI controller <*> Memory Technology Device (MTD) support ---> [*] Command line partition table parsing <*> Direct char device access to MTD devices -*- Common interface to block layer for MTD 'translation layers' <*> Caching block device access to MTD devices Self-contained MTD device drivers ---> <*> Support most SPI Flash chips (AT26DF, M25P, W25X, ...) [*] Use FAST_READ OPCode allowing SPI CLK <= 50MHz
MMC/SD[edit]
Device Drivers ---> <*>MMC/SD/SDIO card support ---> <*> MMC block device driver <*> TI DAVINCI Multimedia Card Interface support
RTC[edit]
Device Drivers ---> <*> Real Time Clock ---> <*> TI OMAP1
eCAP[edit]
Device Drivers ---> <*> PWM Support ---> <*> eCAP PWM Support
eHRPWM[edit]
Device Drivers ---> <*> PWM Support ---> <*> eHRPWM Support
NOTE
Please disable framebuffer driver support from menuconfig when eHRPWM module 1 output A (eHRPWM.1:0/) needs to be used. Since it is pin multiplexed with this eHRPWM module, the driver will not work when it is enabled.
Device Drivers ---> Graphics support ---> <*> Support for frame buffer devices ---> < > DA8xx/OMAP-L1xx Framebuffer support
NOTE
Please disable spi driver support from menuconfig when eHRPWM module 1 output B (eHRPWM.1:1/) needs to be used. Since it is pin multiplexed with this eHRPWM module, the driver will not work when it is enabled.
Device Drivers ---> [*]SPI support ---> < > Texas Instruments DaVinci/DA8x/OMAP-L/AM18x SoC SPI controller
eCAP Capture[edit]
Device Drivers ---> <*> PWM Support ---> <*> eCAP capture Support
NOTE
Please disable Sound Card driver support from menuconfig when eCAP capture needs to be used. Since they are pin multiplexed with eCAP, the driver will not work when these are enabled.
Device Drivers ---> < > Sound card support --->
Power Management[edit]
CPUFreq[edit]
CPU Power Management ---> CPU Frequency scaling ---> [*] CPU Frequency scaling Default CPUFreq governor (userspace) ---> (X) usespace Device Drivers ---> Multifunction device drivers ---> <*> TPS6507x Power Management / Touch Screen chips [*] Voltage and Current Regulator Support ---> <*> TI TPS6507X Power regulators
CPUIdle[edit]
CPU Power Management ---> [*] CPU idle PM support
Suspend-to-RAM[edit]
Power management options ---> [*] Power Management support [*] Suspend to RAM and standby
Ethernet[edit]
[*] Networking support ---> Networking options ---> [*] TCP/IP networking [*] IP: kernel level autoconfiguration [*] IP: DHCP support Device Drivers ---> [*] Network device support ---> <*> Generic Media Independent Interface device support [*] Ethernet driver support ---> <*> Texas Instruments (TI) devices <*> TI DaVinci EMAC Support -*- TI DaVinci MDIO Support -*- TI DaVinci CPDMA Support
Using the MII PHY on da850 Spectrum Digital EVM[edit]
System Type ---> TI DaVinci Implementations ---> [*]DA850-SDI Development Board (X)MII Ethernet PHY
WARNING
Note: When using MII PHY, RMII ethernet PHY will not be functional. Do not plug in ethernet cables to both the PHYs.
Touchscreen[edit]
TSC2004[edit]
TSC2004 touchscreen controller is found on da830 or da830-WiFi Spectrum Digital EVM when using new UI cards
Device Drivers ---> Input device support ---> [*] Touchscreens ---> <*> TSC2004 based touchscreens
TPS65070[edit]
TPS65070 touchscreen controller is found on da850 Spectrum Digital EVM
Device Drivers ---> Multifunction device drivers ---> <*> TPS6507x Power Management / Touch Screen chips Input device support ---> [*] Touchscreens ---> <*> TPS6507x based touchscreens
Rebuilding U-Boot[edit]
Follow these steps to rebuild U-Boot:
- If you have not already done so, install the Code Sourcery toolchain on your Linux host.
- Use your Linux host to extract source files for building U-Boot from the src/u-boot/u-boot-#.#.#.#.tar.gz tarball from the Linux PSP package, which is located in the DaVinci-PSP-SDK-#.#.#.# directory under the main SDK installation directory. Use the tar command to extract the sources.
- Go to the u-boot directory created when you extracted the files.
- Run the following commands on your Linux host to build U-Boot.
- The compiled u-boot.ais file will be created in the same directory.
- The compiled u-boot.bin file will be created in the same directory.
- for da850 Spectrum Digital EVM are specified in the include file include/configs/da850sdi.h
- for da830 or da830-WiFi Spectrum Digital EVM are specified in the include file include/configs/da830evm.h
- for omap-l138 LCDK EVM are specified in the include file include/configs/omapl138_lcdk.h
- CONFIG_ENV_SIZE Configures the environment variable size.
- CONFIG_ENV_OFFSET Configures the environment variable offset.
- CONFIG_USE_SPIFLASH If this flag is defined, U-Boot supports the SPI flash on the EVM board. The environment variables are stored on the SPI flash. This option is switched on by default.
- CONFIG_USE_NAND If this flag is defined, U-Boot supports U-Boot NAND flash access using the OMAP-L1 SoC. Environment variables are also stored on the NAND flash.
- CONFIG_USE_NOR If this flag is defined, U-Boot supports U-Boot NOR flash access using the OMAP-L1 SoC. Environment variables are also stored on the NOR flash.
- Use the below steps to compile U-Boot:
- Use the below steps to compile U-Boot:
- u-boot.bin file which needs to be written to MMC/SD card will be created in the same directory. This file should be written to MMC/SD card using the steps mentioned here. A precompiled image for pseudo MMC/SD boot mode (u-boot-mmcsd.bin) is available under the images/u-boot/omapl1x8/ folder of PSP installation.
- The compiled minimal u-boot (SPL) binary which needs to be flashed to SPI flash will be created under the spl directory.Convert the SPL binary to AIS format using the below command:
- Flash this AIS image to SPI flash.
- Start CCStudiov5.
- From the menus, choose File->Import. Choose CCS->Existing CCS/CCE Eclipse Project. Browse to ccsv4/omap-l1x7 directory inside the extracted ARM UBL source and select it.
- To build for SPI Flash, select the "Configuration" option as BOOT_SPI in Project->Properties menu.
- To build for NAND Flash, select the "Configuration" option as BOOT_NAND in Project->Properties menu.
- Go to Project->Properties->Build->TMS470 Compiler->Runtime Model Options
- Select ti_arm9_abi in Application binary interface option.
- In case of da830-WiFi ARM UBL build, Project->Properties->Build->TMS470 Compiler->Predefined Symbolsand add Symbol CONFIG_DA830_WIFI_UBOOT_OFFSET.
- From the menus, choose Project->Build Project.
- When build is complete
- The executable ELF binary (ubl-xxx.out) file is generated in the Project Root directory.
- The Project Root directory is <armubl-install-dir>\ccsv4\omapl1x7\
- The files generated by the build procedure, needs to be given to AIS generation tool. AIS generation tool
- Download and Install AISgen tool from [AIStool]
- In AISgen tool, Select ROM ID D800K005 in case of da830-WiFi Board and D800K001 in case of da830-evm board.
- Open AISgen.exe file, go to file menu of tool and Select "Configure for EVM".
- Poppulate field application file.Provide both DSP and ARM UBL .out files.It is important to provide the two files in that order.
- In AIS file field, Provide the name of output AIS file.
- See final settings of tools as below for da830-evm (ROM ID: D800K001)
- Click Generate AIS and AIS file gets created at specified folder and tool prompts Success.
- Extract the SPI flash writer code from /src/utils/spiflash-writer-03.xx.xx.xx.tar.gz file in PSP installation.
- Start CCStudio v5. From the menus, choose File->Import. Choose CCS->Existing CCS/CCE Eclipse Project.
- Browse to the the extracted source directory, select the DA830_spiWriter directory where the ccsv5 project resides.
- In case of da830-WiFi build, go tp Project->Properties->Build->TMS470 Compiler->Predefined Symbols and replace CONFIG_MACH_DAVINCI_DA830_EVM<\tt> with CONFIG_MACH_DAVINCI_DA830_WIFI<\tt>.
- From the menus, choose Project->Build Project. The built image DA830_spiWriter.out is placed in the /src/utils/spiflash-writer-03.xx.xx.xx.tar.gz under the top directory.
NOTE
The steps below assume that the Code Sourcery toolchain is already present in your $PATH variable.
for da850 Spectrum Digital EVM
host$ make distclean CROSS_COMPILE=arm-none-linux-gnueabi- host$ make da850sdi_config CROSS_COMPILE=arm-none-linux-gnueabi- host$ make u-boot.ais CROSS_COMPILE=arm-none-linux-gnueabi-
for da830 Spectrum Digital EVM
host$ make distclean CROSS_COMPILE=arm-none-linux-gnueabi- host$ make da830evm_config CROSS_COMPILE=arm-none-linux-gnueabi- host$ make all CROSS_COMPILE=arm-none-linux-gnueabi-
for da830-WiFi Spectrum Digital EVM
host$ make distclean CROSS_COMPILE=arm-none-linux-gnueabi- host$ make da830evm_wifi_config CROSS_COMPILE=arm-none-linux-gnueabi- host$ make all CROSS_COMPILE=arm-none-linux-gnueabi-
for omap-l138 LCDK EVM
host$ make distclean CROSS_COMPILE=arm-none-linux-gnueabi- host$ make omapl138_lcdk_config CROSS_COMPILE=arm-none-linux-gnueabi- host$ make all CROSS_COMPILE=arm-none-linux-gnueabi-
for da850 Spectrum Digital EVM:
for da830 or da830-WiFi Spectrum Digital EVM and omapl138 LCDK EVM:
To change the default options, the EVM configuration file needs to be edited.
To change U-Boot environment area location or size:
Choice of Flash supported:
NOTE
Only one of these Flash options should be defined at a time. Defining more than one Flash option results in a compilation error when you build U-Boot.
Configuring U-Boot for different boot modes in da850 Spectrum Digital EVM[edit]
NAND boot mode[edit]
host$ make distclean CROSS_COMPILE=arm-none-linux-gnueabi- host$ make da850sdi_nand_config CROSS_COMPILE=arm-none-linux-gnueabi- host$ make u-boot.ais CROSS_COMPILE=arm-none-linux-gnueabi-
The compiled u-boot.ais file will be created in the same directory. This file can be directly flashed to NAND flash using the steps mentioned here. A precompiled image for NAND boot mode (u-boot-nand.ais) is available under the images/u-boot/omapl1x8/ folder of PSP installation.
NOR boot mode[edit]
Use the below steps to compile U-Boot:
host$ make distclean CROSS_COMPILE=arm-none-linux-gnueabi- host$ make da850sdi_direct_nor_config CROSS_COMPILE=arm-none-linux-gnueabi- host$ make all CROSS_COMPILE=arm-none-linux-gnueabi-
The compiled u-boot.bin file will be created in the same directory. This file can be directly flashed to NOR flash using the steps mentioned here.
MMC/SD boot mode[edit]
IMPORTANT
Strict MMC/SD boot mode is only supported on SoCs which have d800k008 ROM revision. To find out the ROM revision, follow these steps.
host$ make distclean CROSS_COMPILE=arm-none-linux-gnueabi- host$ make da850sdi_mmc_config CROSS_COMPILE=arm-none-linux-gnueabi- host$ make all CROSS_COMPILE=arm-none-linux-gnueabi-
host$ mkimage -s -n /dev/null -T aisimage -e 0x80000000 -d spl/u-boot-spl.bin spl/u-boot-spl.ais
A precompiled AIS image for pseudo MMC/SD boot mode (u-boot-mmcsd.ais) is available under the images/u-boot/omapl1x8/ folder of PSP installation.
Note
Before executing above command, make sure that the path "{u-boot source path}/tools" is added to your PATH environment variable.
Rebuilding the ARM Side User Boot Loader for da830 and da830-WiFi Spectrum Digital EVM[edit]
Use your Linux host to extract the ARM UBL code present in boot-strap folder of LINUX PSP package. Use the tar command to extract the sources. If the extracted files are not accessible from your Microsoft Windows host, copy all the extracted files to a location that is accessible.
NOTE
By default, the ARM UBL configures the SoC to work at 300MHz, 1.2V operating point. Changing the Operating Point describes the procedure to change the default operating point.
When using CCStudiov5:
AIS image generation for da830 and da830-WiFi Spectrum Digital EVMs[edit]
Rebuilding the SPI Flash writer[edit]
To flash images to SPI Flash, see Flashing images to SPI Flash using CCS or Flashing images to SPI Flash using Serial Flasher.
To boot U-Boot from SPI Flash, see Booting from SPI Flash.
To boot the Linux kernel from SPI Flash using U-Boot, see Booting the Linux kernel from SPI Flash.
AIS image generation for omapl138 LCDK EVM[edit]
If you want to flash your version of U-Boot on LCDK's NAND, the image needs to be converted to AIS format. In this method, the OMAP-L138 internal ROM bootloader (RBL) can load and boot U-Boot without the need to boot a User Boot Loader (UBL) first.
The AIS converter tool can be downloaded from here and is a MS-Windows (tm) install. The tool can import pre-configured files to facilitate the conversion and the LCDK version can be downloaded from this location.
You need to bring the u-boot image to the your Windows PC to use with this tool. The pre-built image of u-boot, u-boot-lcdk.bin, under images/u-boot/omapl138-lcdk, can be used to test out this procedure as well.
Once AISgen is up, import the LCDK config file using File->Load Configuration. The settings should look similar to the following image with some settings not yet set.
On "ARM Application File:" entry window, enter the full path of the non-AIS u-boot image file name and its load image address which should be "@0xC1080000" by default (as shown). For the output file, any file name can be used but as good practice, "_ais" is added to differentiate with the non-AIS version if the same name is going to be used.
Next check the "Specify Entrypoint and "Configure PSC" boxes. Under the "PSC" tab, make sure that PCS1 is "13;".
Generate the image and use the serial flasher as in Re-flashing boot images to flash the image to NAND on the LCDK.