diff options
Diffstat (limited to 'utils/hwstub/tools/lua/atj/lcm.lua')
-rw-r--r-- | utils/hwstub/tools/lua/atj/lcm.lua | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/utils/hwstub/tools/lua/atj/lcm.lua b/utils/hwstub/tools/lua/atj/lcm.lua new file mode 100644 index 0000000000..feaa8b7158 --- /dev/null +++ b/utils/hwstub/tools/lua/atj/lcm.lua | |||
@@ -0,0 +1,31 @@ | |||
1 | ATJ.lcm = {} | ||
2 | |||
3 | function ATJ.lcm.wait_fifo_empty() | ||
4 | while (bit32.band(HW.YUV2RGB.CTL.read(), 0x04) == 0) do | ||
5 | end | ||
6 | end | ||
7 | |||
8 | function ATJ.lcm.rs_command() | ||
9 | ATJ.lcm.wait_fifo_empty() | ||
10 | HW.YUV2RGB.CTL.write(0x802ae) | ||
11 | end | ||
12 | |||
13 | function ATJ.lcm.rs_data() | ||
14 | ATJ.lcm.wait_fifo_empty() | ||
15 | HW.YUV2RGB.CTL.write(0x902ae) | ||
16 | end | ||
17 | |||
18 | function ATJ.lcm.fb_data() | ||
19 | ATJ.lcm.rs_command() | ||
20 | HW.YUV2RGB.FIFODATA.write(0x22) | ||
21 | HW.YUV2RGB.CTL.write(0xa02ae) | ||
22 | end | ||
23 | |||
24 | function ATJ.lcm.init() | ||
25 | HW.CMU.DEVCLKEN.write(bit32.bor(HW.CMU.DEVCLKEN.read(), 0x102)) | ||
26 | ATJ.gpio.muxsel("LCM") | ||
27 | hwstub.udelay(1) | ||
28 | ATJ.lcm.rs_command() | ||
29 | HW.YUV2RGB.CLKCTL.write(0x102) | ||
30 | end | ||
31 | |||