Root/README-A320

1
2               Linux for the Dingoo A320
3
4-------------
5** History **
6-------------
7
8The initial port of Linux 2.6.24.3 to the A320 was done by Ignacio Garcia Perez
9aka booboo. He added support for the Dingoo to the 2.6.24.3 kernel from Ingenic.
10    Ignacio Garcia Perez <iggarpe@gmail.com>
11    http://www.dingux.com/
12
13The OpenDingux tree is a merge between booboo's patches and the qi-kernel tree
14from Qi Hardware. This tree is kept up-to-date with the mainline kernel and
15the latest drivers from Ingenic.
16    http://projects.qi-hardware.com/index.php/p/qi-kernel/
17
18------------------
19** Contributing **
20------------------
21
22You can find the latest code on github:
23    http://github.com/mthuurne/opendingux-kernel
24
25Developers can be found on the #dingoonity channel on freenode IRC:
26    irc://irc.freenode.net/dingoonity
27
28----------------
29** Quickstart **
30----------------
31
32Use "make a320_defconfig" for a default configuration (LCD driver ILI9325).
33
34If your A320 is one of the newer models, you must change the LCD driver
35to ILI9331:
36
37    Device drivers
38    |---Graphics support
39        |---Support for framebuffer devices
40            |---SLCD panel
41
42--------------
43** Keyboard **
44--------------
45
46The keyboard driver has been completely rewritten now using the polled
47input device code. The standard keyboard map is as follows:
48
49    D-pad up KEY_UP KEY_VOLUMEUP 's'
50    D-pad down KEY_DOWN KEY_VOLUMEDOWN 'u'
51    D-pad left KEY_LEFT KEY_BRIGHTNESSDOWN 'e'
52    D-pad right KEY_RIGHT KEY_BRIGHTNESSUP 'i'
53    A button KEY_LEFTCTRL
54    B button KEY_LEFTATL
55    X button KEY_SPACE
56    Y button KEY_LEFTSHIFT
57    Left shoulder KEY_TAB KEY_EXIT
58    Right shoulder KEY_BACKSPACE
59    START button KEY_ENTER
60    SELECT button KEY_ESC KEY_MENU 'b'
61
62The second column is the generated keycode when the button is pressed normally.
63The third column is the generated keycode when the button is pressed while the
64power slider is pressed too.
65The fourth column is the generated system request when the button is pressed
66while both the power slider and the START button are pressed:
67
68's' Emergency sync of all discs.
69'u' Remount all discs read-only.
70'e' Send SIGTERM to all processes except init.
71'i' Send SIGKILL to all processes except init.
72'b' Reboot immediately.
73
74For example, to reboot the console syncing all disces and mounting read-only,
75press and hold POWER, press and hold START, and press secuentially UP, DOWN
76and SELECT. Note that SELECT is also used in dual-boot to select linux boot,
77so if you hold SELECT pressed at the end of the previous sequence, you should
78reboot back into linux.
79
80Note that the POWER + key combinations are selected to enable an user space
81daemon handle the volume, LCD bightness, and perhaps an on-screen keyboard.
82
83If you hold the power slider pressed alone this is what will happen:
84- After two seconds a KEY_POWER key press and release will be generated.
85- After five seconds, an inmediate reboot will happen.
86
87This is subject to change when hardware powerdown or idle support works.
88
89I did my best to come up with a clever and useful keyboard map, but if you
90have any suggestions, please do not hesitate to contact me.
91
92-----------
93** Sound **
94-----------
95
96Sound driver is still OSS. It's quite buggy, but stick to S16 sample
97format and everything should be ok.
98
99---------------------------------
100** IPU (Image Processing Unit) **
101---------------------------------
102
103IPU (Image Processing Unit) memory reservation at startup is disabled
104(saves 4MB). If you intend to test video playing, you might want to
105enable it:
106
107    General setup
108    |---Configure standard kernel features (for small sytems)
109        |---Reserve memory for IPU on Ingenic JZ4740 SOC
110
111---------------------------
112** CPU frequency scaling **
113---------------------------
114
115CPU frequency scaling is now default enabled. Have a look at the stuff
116in /sys/devices/system/cpu/cpu0/cpufreq/. Default governor is "userspace".
117It is untested, and anyway at the moment you can only REDUCE the CPU
118frequency below the 336MHz set by the boot hardware initialization code
119(in hwinit if you're booting vía USB boot).
120
121-------------
122** Battery **
123-------------
124
125You can read the battery status by reading from /proc/jz/battery. You will
126read a single line with a decimal value which is the battery voltage in
127millivolts.
128
129We want a platform independent way of reading the battery status, and thus
130we need something like a percentage of full battery charge. When this and
131other info reading is implemented, it will be available in the second and
132further lines read from /proc/jz/battery.
133
134-------------------
135** LCD backlight **
136-------------------
137
138You can change the LCD backlight level by using the FBIOSETBACKLIGHT ioctl
139command on the /dev/fb0 interface or by writing to /proc/jz/lcd_backlight.
140I recommend the later method since the first requires kernel headers,
141which Ingenic didn't event bother to place in the right place (the ioctl
142defintions are in drivers/video/jz4740_slcd.h).
143
144Write a value between 0 and 100.
145
146Note: the relation between the value and the luminosity is not linear.
147This is likely to be fixed some day.
148
149-------------------
150** Miscellaneous **
151-------------------
152
153Lots of JZ4740 hardware support is disabled. Not because it doesn't
154work but because it is untested. Enable it at your own risk.
155
156

Archive Download this file



interactive