annotate target-utils/lunadrv/haoran.c @ 995:74024eb17e04

fc-loadtool help: improve language regarding 16 MiB flash chips In FC project history, 16 MiB flash originally meant Pirelli DP-L10. Then we got FCDEV3B with the same flash (our own design), but now we are discovering more Calypso devices that used such large flash, both late Calypso era (Sony Ericsson K2x0) as well as much earlier ones (FIC FLUID devices.txt file with 2004 dates, Leonardo+ rev 5). Hence we need to migrate to more generic or neutral language in associated documentation, without giving elevated status to specific examples that drove our early project history.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 03 Dec 2023 21:11:12 +0000
parents db9a8e88e63f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
700
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 #include "types.h"
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 #include "luna.h"
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 /*
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 * ILI9225G register init for HaoRan HT020K1QC36S LCD.
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 */
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 init_haoran()
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 {
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 /* reset pulse */
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 CNTL_RST_REG |= EXT_RESET;
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 wait_ARM_cycles(DELAY_1MS * 10);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 CNTL_RST_REG &= ~EXT_RESET;
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 wait_ARM_cycles(DELAY_1MS * 50);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 /* start register init */
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 LCD_REG_WR(0x0001, 0x011c); // set SS and NL bit
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 LCD_REG_WR(0x0002, 0x0100); // set 1 line inversion
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 LCD_REG_WR(0x0003, 0x1030); // set GRAM write direction and BGR=1.
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 LCD_REG_WR(0x0008, 0x0808); // set BP and FP
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 LCD_REG_WR(0x000F, 0x0901); // Set frame rate
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 wait_ARM_cycles(DELAY_1MS * 10);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 LCD_REG_WR(0x0010, 0x0000); // Set SAP,DSTB,STB
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 LCD_REG_WR(0x0011, 0x1B41); // Set APON,PON,AON,VCI1EN,VC
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 wait_ARM_cycles(DELAY_1MS * 50);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 LCD_REG_WR(0x0012, 0x200E); // Internal reference voltage= Vci;
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 LCD_REG_WR(0x0013, 0x0052); // Set GVDD
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 LCD_REG_WR(0x0014, 0x4B5C); // Set VCOMH/VCOML voltage
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 //------------- Set GRAM area ------------------//
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 LCD_REG_WR(0x0030, 0x0000);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 LCD_REG_WR(0x0031, 0x00DB);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 LCD_REG_WR(0x0032, 0x0000);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 LCD_REG_WR(0x0033, 0x0000);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 LCD_REG_WR(0x0034, 0x00DB);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 LCD_REG_WR(0x0035, 0x0000);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 LCD_REG_WR(0x0036, 0x00AF);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 LCD_REG_WR(0x0037, 0x0000);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 LCD_REG_WR(0x0038, 0x00DB);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 LCD_REG_WR(0x0039, 0x0000);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 // ----------- Adjust the Gamma Curve ----------//
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 LCD_REG_WR(0x0050, 0x0000);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 LCD_REG_WR(0x0051, 0x0705);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 LCD_REG_WR(0x0052, 0x0C0A);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 LCD_REG_WR(0x0053, 0x0401);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 LCD_REG_WR(0x0054, 0x040C);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 LCD_REG_WR(0x0055, 0x0608);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 LCD_REG_WR(0x0056, 0x0000);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 LCD_REG_WR(0x0057, 0x0104);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 LCD_REG_WR(0x0058, 0x0E06);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 LCD_REG_WR(0x0059, 0x060E);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 wait_ARM_cycles(DELAY_1MS * 50);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 LCD_REG_WR(0x0007, 0x1017);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 return(0);
db9a8e88e63f target-utils lunadrv program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 }