DCON: Difference between revisions
JordanCrouse (talk | contribs) (New DCON page) |
JordanCrouse (talk | contribs) (Center the iamge) |
||
Line 3: | Line 3: | ||
DCON stands for Display CONtroller. As it says on the [[Hardware Specification]] page: The special "DCON" chip, that enables deswizzling and anti-aliasing in color mode, while enabling the display to remain live with the processor suspended. The following is a simple diagram detailing the various connections between the CPU and the DCON: |
DCON stands for Display CONtroller. As it says on the [[Hardware Specification]] page: The special "DCON" chip, that enables deswizzling and anti-aliasing in color mode, while enabling the display to remain live with the processor suspended. The following is a simple diagram detailing the various connections between the CPU and the DCON: |
||
[[Image:dcon.png]] |
<center>[[Image:dcon.png]]</center> |
||
== DCON Linux Driver == |
== DCON Linux Driver == |
Revision as of 21:32, 5 October 2006
DCON overview
DCON stands for Display CONtroller. As it says on the Hardware Specification page: The special "DCON" chip, that enables deswizzling and anti-aliasing in color mode, while enabling the display to remain live with the processor suspended. The following is a simple diagram detailing the various connections between the CPU and the DCON:
DCON Linux Driver
This section describes the Linux kernel drivers for the DCON and associated hardware.
Requirements
The latest and greatest DCON code is in the 'dcon' branch of the geode GIT tree: git://git.infradead.net/users/jcrouse/geode.git.
Make sure that you enable the following devices:
- The Geode GX frambuffer driver (CONFIG_FB_GEODE and CONFIG_FB_GEODE_GX). Make sure you build this into the kernel - its not useful as a module.
- The DCON driver (CONFIG_FB_GEODE_GX_DCON). You can either build this in to the kernel or use it as a module. Its much easier to debug as a module. This option automatically selects the I2C subsystem.
- The Geode ACB (smbus) driver (CONFIG_SCx200_ACB).
- The DCON backlight driver (CONFIG_BACKLIGHT_LCD_SUPPORT and CONFIG_BACKLIGHT_CLASS_DEVICE and CONFIG_BACKLIGHT_DCON). This module allows you to control the backlight through the existing kernel backlight mechanism.
Loading the DCON driver(s)
- Load the I2C driver (if you didn't build it in)
$ modprobe scx200_acb
- Load the DCON driver
$ modprobe gxfb_dcon
- Load the backlight driver
$ modprobe dcon_bl
The driver is now loaded. There should be two new platform drivers in /sys/devices/platform:
dcon i2c-0 power uevent dcon-bl pcspkr serial8250
Using the DCON driver (/sys interface)
The DCON driver functionality is accessable through the /sys interface. This may not always be the case, since it might be a bit of a security issue, but its good for debugging. Here is what the /sys/devices/platform/dcon directory looks like:
bus mode power source uevent modalias output sleep subsystem
/sys/devices/platform/dcon/mode
This is a read only file that shows the current hex value of the DCON mode register (0x01).
/sys/devices/platform/dcon/output
This file lets you change the output mode from color to mono. Write a number to the file to change the mode:
0 = color
1 = mono
Read the file to see what the current mode is.
/sys/devices/platform/dcon/source
This file lets you change the source of the display from the CPU to the DCON. Write a number to the file to change the source:
0 = DCON
1 = CPU
Read the file to see what the current source is.
/sys/devices/platform/dcon/sleep
This file isn't yet implemented, but it will alow you to put the DCON into sleep mode.