Building an audio player using the Texas Instruments OMAP-L137 with LinuxLink 30 3.0 Webinar Series Session 2 Building a custom system with audio playback functionality We will start our webinar in few minutes. Thank you for your patience
2 Series Overview Session 1 Assembling a small footprint Linux platform for the OMAP-L137 Session 2 today Building a custom system with audio playback functionality Session 3 September 10, 2009 11:30am EST System debugging and testing with the OMAP-L137
3 Agenda Session 2 Recap of what we have done so far Modify the Linux kernel Reconfigure to add support for Bluetooth Modify RFS design Add packages for audio playback with codecs for desired media playback Add Web server Use overlay to deploy custom code Enable Bluetooth Create a custom content for a Web server Create an HTML static page Create CGI scripts for audio playback Create a RFS overlay with modifications Web content Build and deploy the images on the OMAP-L137 board
4 What we have accomplished so far Built a starting point with Online Factory Experiment on day one with a pre-built starting point Modified Linux kernel using desktop tools Optimized for footprint Optimized i for fast boot Altered root filesystem Removed unneeded startup scripts Deployed the system on target with network mounted RFS Transferred images via TFTP Configured bootloader for autoboot Booted the Linux kernel
5 Browsing the kernel sources GIT is part of the update service Git is an open source, distributed version control system currently used by a number of projects including: Kernel.org X.org Perl Android Every Git clone is a full-fledged repository with complete history and full revision tracking capabilities Branching and merging g are fast and easy to do Timesys GIT Provides code for a number of TI s platforms, including: OMAP-35x OMAP-L137 DM355 DM6446 https://linuxlink.timesys.com/git?repo=linux-2.6-davinci.git https://linuxlink.timesys.com/git?repo=linux-2.6-omap.git READ more on the GIT update service here: https://linuxlink.timesys.com/docs/wiki/engineering/howto_use_git
6 Platform adjustments Linux kernel Linux kernel configuration Enable verbose output t (printk) Enable audio Enable Bluetooth (for future use) Desktop factory command: # make kernel-menuconfig Root filesystem Add the following packages to the RFS definition alsa-utils thttpd haserl bluez-utils (for future use) mplayer (codecs) Note: There are patent licenses that you should adhere to when working with MPEG codecs
7 Custom Code for the Web server Static web page Provide a static index.html Button to playback audio CGI script for audio playback Sections Calls haserl to translate to a web page Lists all audio files at an assumed location Allows to stop the playback Starts a media player with selected stream Create an overlay that includes the following: Create a tar file with overlay directory structure Create a tar file with overlay directory structure Using desktop factory merge the overlay into the system s RFS Using Desktop Factory navigate to: Target Configuration->Build RFS->RFS Content Tarball file:///<fully qualified path to the overlay tarball>
8 Deployment We ll use TFTP service to transfer images to the target Runs typically as xinetd process Disabled when newly installed. Modify /etc/xinetd.d/tftpd / tdd/tft d Setup NFS to mount RFS via network for initial development Runs as a daemon on your host Export FS via /etc/exports/ Restart the NFS server via /etc/init.d/nfs service Assign a static address or use dhcp Bootloader setup procedure setenv bootdelay 3 setenv bootfile uimage setenv bootargs mem=32m console=ttys2,115200n8 root=/dev/nfs rw ip=dhcp setenv bootcmd dhcp;bootm
9 What we have accomplished today Modified our design to Enable audio Add Web server Add media playback capability Ahi Achieved by Device driver enablement Root filesystem adjustments Added contents for the web server Static html page CGI script to playback audio files System deployment Deploy an overlay onto our system RFS Deployed the system via NFS
10 Next Time Session #3 is scheduled for Thursday, September 10th at 11:30am EST Subject: System debugging and testing with the OMAP-L137 Test additional technologies: i.e. Bluetooth Build our system for debugging Remotely debug application Verify the quality of the solution with a testware Setup nightly build system based on the Desktop Factory more fun to come
11 How Do I Learn More? Go to to learn more Webinars LinuxLink Radio Podcasts Request a Free Factory Test Drive Schedule a more detailed introduction/training session WebEx Face-to-face