OMAP Kernel driver tests

From OMAPpedia

Revision as of 08:50, 2 October 2012 by X0158318 (Talk | contribs)
Jump to: navigation, search

This is the device driver test (DDT) page, part of the Linux OMAP Project.



This page provides a general overview of the test and test automation tools used for the OMAP Linux Kernel software development.

Device driver test code

Test cases for OMAP specific device drivers are written and maintained in a separate git tree.

Old repository: device_driver_test[1]

New repository: omap-ddt[2]

DDT cloning information

New repository at

git clone git://


master branch is the main development tree and others branches are meant to support specific Kernel revisions. Changes or patches applicable across the branches will be cherry-pick from master branch.

Structure of device driver test code

Compiling the test code

 * Export CROSS_COMPILE=arm-none-linux-gnueabi-
 * Export HOST=arm-none-linux-gnueabi
 * Export TESTSUITES=<driver_x>
   Driver_x=The driver for which the testsuite is to be built
   Use "all" for building the entire testsuite
 * Export TESTROOT=<output dir><output dir>
 * cd omap-ddt/
 * make

Note: Code Sourcery Toolchain is required for compilation. Successfully tested with 2010q1-202 version Note: Please install gengetopt "sudo apt-get install gengetopt" or remove audio-alsa from TESTSUITES in .config file.

Target Filesystem setup


1. Download Busybox and Bash from DailyBuild

  <daily build path>/extras/busybox.tar.bz2
  <daily build path>/extras/bash.tar.bz2

2. Untar both packages in your HOST machine

  tar -xjvf busybox.tar.bz2
  tar -xjvf bash.tar.bz2

3. Copy Bash binary into busybox/bin/ 4. Flash busybox into /data partition of target filesystem 5. Verify that busybox tools have executable permissions

  chmod 777 /data/busybox/bin/*
  chmod 777 /data/busybox/sbin/*

6. Add Busybox to the global PATH variable


7. Create symlinks for scripts executions

  mount -o remount rw /
  ln -s /data/busybox/bin /bin
  ln -s /data/busybox/sbin /sbin


  Delete /data/busybox/bin/rmmod to use the default
  Android rmmod tool under /system/bin/
  Delete /data/busybox/bin/reboot to use the default
  Android reboot tool under /system/bin/

Executing test cases

Automated tests using TITAN

Titan is a java based test automation tool. It is used in conjunction with OMAP device driver tests to execute the tests repeatedly and automatically. Visit Titan_Test_Automation page for more information

Additional Notes

 sudo apt-get install flex textinfo
Personal tools