OMAP Kernel driver tests

From OMAPpedia

Revision as of 08:50, 2 October 2012 by X0158318 (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

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


[edit] Introduction

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

[edit] 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]

[edit] 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.

[edit] Structure of device driver test code

[edit] 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.

[edit] 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/

[edit] Executing test cases

[edit] 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

[edit] Additional Notes

 sudo apt-get install flex textinfo
Personal tools