annotate src/cs/drivers/drv_app/r2d/lcds/c139/r2d_task_init_i.c @ 394:fe200bd2f188

configs/*: converted to use scripts/config-headers-new.sh
author Mychaela Falconia <falcon@freecalypso.org>
date Wed, 17 Jan 2018 22:53:14 +0000
parents 384fbd61c252
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 #include "r2d/lcds/c139/colors.h"
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 #define R2D_MB_PRIM_SIZE 2000
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 extern void c139_lcd_ctrl_cmd(UINT8 cmd, UINT8 param);
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 extern void c139_set_lcd_addr_region(UINT8 xstart, UINT8 xend,
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 UINT8 ystart, UINT8 yend);
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 extern void c139_lcd_send_pix(UINT16 pixval);
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 void uwire_init_lcd(void)
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 {
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 * ( UINT16 *) CNTL_RST &= ~(0x04); // releases reset_out
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 * ( UINT16 *) CNTL_RST |= (0x04); // set reset_out to 0
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 rvf_delay(RVF_MS_TO_TICKS(5)); // waits for 5 ms
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 * ( UINT16 *) CNTL_RST &= ~(0x04); // releases reset_out
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 * (volatile UINT16 *) SR1 = CS0_FRQ_FINT_2;
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 * (volatile UINT16 *) SR3 = SR3_CLK_EN; // enables the uwire clock
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 * (volatile UINT16 *) CSR = INDEX_CS0; // selects CS0
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 }
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 static void r2d_refresh_task_init(void)
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 {
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 UINT16 i;
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 uwire_init_lcd();
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 rvf_delay(RVF_MS_TO_TICKS(5)); // waits for 5 ms
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 /* LCD controller init */
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 c139_lcd_ctrl_cmd(0x3F, 0x01);
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 c139_lcd_ctrl_cmd(0x20, 0x03);
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 c139_lcd_ctrl_cmd(0x31, 0x03);
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 /* initial hw framebuffer clearing */
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 c139_set_lcd_addr_region(0, 95, 0, 63);
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 for (i = 0; i < 96 * 64; i++)
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 c139_lcd_send_pix(LCD16_COLOR_BORDER);
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 }
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 static void r2d_refresh_task_kill(void)
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 {
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 }
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 static void r2d_dithering_init(void)
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 {
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 R2D_MALLOC(r2d_mb_id,UINT32,sizeof(UINT32)*4,r2d_g_dithering_matrix);
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 r2d_g_dithering_matrix[0]=0;
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 r2d_g_dithering_matrix[1]=2;
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 r2d_g_dithering_matrix[2]=3;
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 r2d_g_dithering_matrix[3]=1;
384fbd61c252 src/cs/drivers/drv_app/r2d/lcds/c139: import from tcs211-c139
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 }