Root/README-A320

Source at commit be977234bfb4a6dca8a39e7c52165e4cd536ad71 created 9 years 3 months ago.
By Lars-Peter Clausen, jz4740: Fix compile error
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
32First download booboo's Dingux toolchain from:
33    http://code.google.com/p/dingoo-linux/downloads/list
34It must be unpacked in /opt, otherwise applications will fail to link.
35
36Tell the Linux kernel build that you want to compile for MIPS:
37    export ARCH=mips
38Alternatively, you can pass "ARCH=mips" to every "make" command.
39
40Use "make a320_defconfig" for a default configuration.
41
42If your A320 is one of the older models, you must change the LCD driver
43to ILI9325: (the default config uses ILI9331)
44
45    Device drivers
46    |---Graphics support
47        |---Support for framebuffer devices
48            |---SLCD panel
49
50If you have an A330, keep the ILI9331 setting. If you want to use the full
5164 MB of RAM, you need a new boot loader:
52  http://boards.dingoonity.org/dingux-releases/(release)-64mb-dingux-for-a330
53Also, you should tell Linux that there is 64 MB present:
54
55    Kernel hacking
56    |---Built-in kernel command line
57        (... mem=64M)
58
59You can modify the kernel configuration using "make menuconfig".
60
61To build the kernel, use "make vmlinuz.bin". It will produce the kernel
62binary named "vmlinuz.bin" in the top-level directory. The current u-boot
63boot loaders expect the kernel image under its old name "zImage", so you
64have to rename it if you put it on an SD card.
65
66--------------
67** Keyboard **
68--------------
69
70The keyboard driver has been completely rewritten now using the polled
71input device code. The standard keyboard map is as follows:
72
73    D-pad up KEY_UP KEY_VOLUMEUP 's'
74    D-pad down KEY_DOWN KEY_VOLUMEDOWN 'u'
75    D-pad left KEY_LEFT KEY_BRIGHTNESSDOWN 'e'
76    D-pad right KEY_RIGHT KEY_BRIGHTNESSUP 'i'
77    A button KEY_LEFTCTRL
78    B button KEY_LEFTATL
79    X button KEY_SPACE
80    Y button KEY_LEFTSHIFT
81    Left shoulder KEY_TAB KEY_EXIT
82    Right shoulder KEY_BACKSPACE
83    START button KEY_ENTER
84    SELECT button KEY_ESC KEY_MENU 'b'
85
86The second column is the generated keycode when the button is pressed normally.
87The third column is the generated keycode when the button is pressed while the
88power slider is pressed too.
89The fourth column is the generated system request when the button is pressed
90while both the power slider and the START button are pressed:
91
92's' Emergency sync of all discs.
93'u' Remount all discs read-only.
94'e' Send SIGTERM to all processes except init.
95'i' Send SIGKILL to all processes except init.
96'b' Reboot immediately.
97
98For example, to reboot the console syncing all disces and mounting read-only,
99press and hold POWER, press and hold START, and press secuentially UP, DOWN
100and SELECT. Note that SELECT is also used in dual-boot to select linux boot,
101so if you hold SELECT pressed at the end of the previous sequence, you should
102reboot back into linux.
103
104Note that the POWER + key combinations are selected to enable an user space
105daemon handle the volume, LCD bightness, and perhaps an on-screen keyboard.
106
107If you hold the power slider pressed alone this is what will happen:
108- After two seconds a KEY_POWER key press and release will be generated.
109- After five seconds, an inmediate reboot will happen.
110
111This is subject to change when hardware powerdown or idle support works.
112
113I did my best to come up with a clever and useful keyboard map, but if you
114have any suggestions, please do not hesitate to contact me.
115
116-----------
117** Sound **
118-----------
119
120The audio driver uses ALSA. For backwards compatibility, the OSS PCM API
121driver is enabled as well.
122
123The build of SDL in booboo's rootfs contains only OSS support. Some
124applications are statically linked against an SDL that contains both OSS
125and ALSA support. However, the latter tries to load libalsa at runtime,
126which is not included in the rootfs. To force the use of OSS, set the
127following environment variable:
128    export SDL_AUDIODRIVER=dsp
129
130---------------------------------
131** IPU (Image Processing Unit) **
132---------------------------------
133
134There is no IPU driver yet in this new kernel.
135
136---------------------------
137** CPU frequency scaling **
138---------------------------
139
140CPU frequency scaling is now default enabled. Have a look at the stuff
141in /sys/devices/system/cpu/cpu0/cpufreq/. Default governor is "userspace".
142It is untested, and anyway at the moment you can only REDUCE the CPU
143frequency below the 336MHz set by the boot hardware initialization code
144(in hwinit if you're booting vía USB boot).
145
146-------------
147** Battery **
148-------------
149
150You can read the battery status from the following file:
151    /sys/class/power_supply/battery/capacity
152It contains a percentage: 0 is empty and 100 is full.
153
154The /proc/jz interface of the old kernel is no longer supported. The new
155interface is platform independent, so using it will improve the portability
156of your applications.
157
158-------------------
159** LCD backlight **
160-------------------
161
162You can change the LCD backlight level by writing a value between 0 (off)
163and 255 (max) to:
164    /sys/class/backlight/pwm-backlight/brightness
165
166-------------------
167** Miscellaneous **
168-------------------
169
170Lots of JZ4740 hardware support is disabled. Not because it doesn't
171work but because it is untested. Enable it at your own risk.
172
173

Archive Download this file



interactive