Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to write from scratch an LCD driver for an android tablet?

I would like to write a driver for the LCD screen of ASUS TF700

  • What should I study to be able to do it from the very beginning ?
  • How should I get start to go into it?
like image 587
0x90 Avatar asked Sep 10 '12 06:09

0x90


2 Answers

The first thing you need for this endeavour will be a thorough understanding of the hardware architecture of the device.

This system is based on the nVIDIA Tegra 3, and the LCD panel will be connected directly to the graphics subsystem of it.

Your first port of call should be the Tegra's Technical Reference Manual. If those for other ARM SoCs that I've seen are anything to go by, will be 8000-10000 pages and available only under NDA - particularly those parts relating to the graphics subsystem.

Next, you will need a thorough understanding of how displays are handled in Linux. Are you aiming to implement a simple framebuffer, or to make use of the 2d and 3d functionality of the Tegra?

There will also be a driver for the LCD panel's backlight - the controller for which is likely to be hung off one of the Tegra's I2C buses.

Building a basic framebuffer driver for Linux ought to be quite straightforward as it doesn't actually do very much.

like image 175
marko Avatar answered Sep 21 '22 18:09

marko


Agree with Martin James, its better if you dont have to write the whole driver yourself and ASUS must have already provided one for the existing Panel. If however you want to support a new panel, then you can possibly reuse the existing driver code with support added for the new panel. Here are a few prerequisites:

  1. Technical reference manual of the chipset that ASUS uses.
  2. Display Panel Specification.
  3. Hardware Schematic with display-chipset interface.
  4. Knowledge of the Framebuffer driver that is already present.
  5. (Most importantly) A hardware team that will probe the signals that are coming/going to/from the Panel.

Again, it is going to be an uphill task and it will take sometime to implement it. All the best! (if you still plan to go ahead:)

like image 35
spitfire88 Avatar answered Sep 18 '22 18:09

spitfire88