Lines Matching full:window
84 /* Window control registers */
121 /* Window position control registers */
149 /* Window color key registers */
157 /* Window color key alpha control register */
164 /* Window alpha control registers */
170 /* Window color map registers */
176 /* Window palette control registers */
229 /* Window blend equation control registers */
236 /* Window RTQOS Control Registers */
270 uint32_t wincon; /* Window control register */
273 uint32_t keycon[2]; /* Window color key registers */
275 uint32_t winmap; /* Window color map register */
276 uint32_t blendeq; /* Window blending equation control register */
277 uint32_t rtqoscon; /* Window RTQOS Control Registers */
294 uint8_t *host_fb_addr; /* Host pointer to window's framebuffer */
311 uint32_t shadowcon; /* Window shadow control register */
315 uint32_t wpalcon[2]; /* Window palette control registers */
327 Exynos4210fimdWindow window[5]; /* Window-specific registers */ member
504 /* Returns Index in palette data formats table for given window number WINDOW */
506 exynos4210_fimd_palette_format(Exynos4210fimdState *s, int window) in exynos4210_fimd_palette_format() argument
510 switch (window) { in exynos4210_fimd_palette_format()
536 hw_error("exynos4210.fimd: incorrect window number %d\n", window); in exynos4210_fimd_palette_format()
583 /* These routines cover all possible sources of window's transparent factor
585 * registers, BLENDCON register and window's WINCON register */
636 /* Updates currently active alpha value get function for specified window */
639 Exynos4210fimdWindow *w = &s->window[win]; in fimd_update_get_alpha()
670 /* Blends current window's (w) pixel (foreground pixel *ret) with background
671 * window (w_blend) pixel p_bg according to formula:
686 * depend on window BLENEQ register. Account for this with first_coef */ in exynos4210_fimd_blend_pixel()
846 /* Special draw line routine for window color map case */
945 Exynos4210fimdWindow *w = &s->window[win]; in exynos4210_fimd_update_win_bppmode()
1078 Exynos4210fimdWindow *w = &s->window[win_num]; in exynos4210_fimd_trace_bppmode()
1081 printf("QEMU FIMD: Window %d is mapped with MAPCOLOR=0x%x\n", in exynos4210_fimd_trace_bppmode()
1089 printf("QEMU FIMD: Window %d BPP mode set to %s\n", win_num, in exynos4210_fimd_trace_bppmode()
1121 /* Updates specified window's MemorySection based on values of WINCON,
1125 Exynos4210fimdWindow *w = &s->window[win]; in fimd_update_memory_section()
1140 /* Total number of bytes of virtual screen used by current window */ in fimd_update_memory_section()
1155 DPRINT_TRACE("Window %u framebuffer changed: address=0x%08x, len=0x%x\n", in fimd_update_memory_section()
1161 "FIMD: Failed to find window %u framebuffer region\n", in fimd_update_memory_section()
1170 "FIMD: Failed to map window %u framebuffer\n", win); in fimd_update_memory_section()
1176 "FIMD: Window %u mapped framebuffer length is less than " in fimd_update_memory_section()
1291 w = &s->window[i]; in exynos4210_fimd_update()
1353 memset(&s->vidcon, 0, (uint8_t *)&s->window - (uint8_t *)&s->vidcon); in exynos4210_fimd_reset()
1355 memset(&s->window[w], 0, sizeof(Exynos4210fimdWindow)); in exynos4210_fimd_reset()
1356 s->window[w].blendeq = 0xC2; in exynos4210_fimd_reset()
1410 /* Window's current buffer ID */ in exynos4210_fimd_write()
1411 i = fimd_get_buffer_id(&s->window[w]); in exynos4210_fimd_write()
1412 old_value = s->window[w].wincon; in exynos4210_fimd_write()
1414 (s->window[w].wincon & FIMD_WINCON_ROMASK); in exynos4210_fimd_write()
1416 /* Window 0 wincon ALPHA_MUL bit must always be 0 */ in exynos4210_fimd_write()
1435 s->window[w].wincon = val; in exynos4210_fimd_write()
1438 if ((i != fimd_get_buffer_id(&s->window[w])) || in exynos4210_fimd_write()
1439 (!(old_value & FIMD_WINCON_ENWIN) && (s->window[w].wincon & in exynos4210_fimd_write()
1462 old_value = s->window[w].lefttop_y; in exynos4210_fimd_write()
1463 s->window[w].lefttop_x = (val >> FIMD_VIDOSD_HOR_SHIFT) & in exynos4210_fimd_write()
1465 s->window[w].lefttop_y = (val >> FIMD_VIDOSD_VER_SHIFT) & in exynos4210_fimd_write()
1467 if (s->window[w].lefttop_y != old_value) { in exynos4210_fimd_write()
1472 old_value = s->window[w].rightbot_y; in exynos4210_fimd_write()
1473 s->window[w].rightbot_x = (val >> FIMD_VIDOSD_HOR_SHIFT) & in exynos4210_fimd_write()
1475 s->window[w].rightbot_y = (val >> FIMD_VIDOSD_VER_SHIFT) & in exynos4210_fimd_write()
1477 if (s->window[w].rightbot_y != old_value) { in exynos4210_fimd_write()
1483 s->window[w].osdsize = val; in exynos4210_fimd_write()
1485 s->window[w].alpha_val[0] = in exynos4210_fimd_write()
1488 (s->window[w].alpha_val[0] & FIMD_VIDALPHA_ALPHA_LOWER); in exynos4210_fimd_write()
1489 s->window[w].alpha_val[1] = in exynos4210_fimd_write()
1491 (s->window[w].alpha_val[1] & FIMD_VIDALPHA_ALPHA_LOWER); in exynos4210_fimd_write()
1501 s->window[w].osdsize = val; in exynos4210_fimd_write()
1508 if (i == fimd_get_buffer_id(&s->window[w]) && in exynos4210_fimd_write()
1509 s->window[w].buf_start[i] != val) { in exynos4210_fimd_write()
1510 s->window[w].buf_start[i] = val; in exynos4210_fimd_write()
1514 s->window[w].buf_start[i] = val; in exynos4210_fimd_write()
1519 s->window[w].buf_end[i] = val; in exynos4210_fimd_write()
1523 if (((val & FIMD_VIDWADD2_PAGEWIDTH) != s->window[w].virtpage_width) || in exynos4210_fimd_write()
1525 s->window[w].virtpage_offsize)) { in exynos4210_fimd_write()
1526 s->window[w].virtpage_width = val & FIMD_VIDWADD2_PAGEWIDTH; in exynos4210_fimd_write()
1527 s->window[w].virtpage_offsize = in exynos4210_fimd_write()
1542 s->window[w].keycon[i] = val; in exynos4210_fimd_write()
1546 s->window[w].keyalpha = val; in exynos4210_fimd_write()
1553 old_value = s->window[w].winmap; in exynos4210_fimd_write()
1554 s->window[w].winmap = val; in exynos4210_fimd_write()
1606 s->window[w].alpha_val[i] = val; in exynos4210_fimd_write()
1608 s->window[w].alpha_val[i] = (val & FIMD_VIDALPHA_ALPHA_LOWER) | in exynos4210_fimd_write()
1609 (s->window[w].alpha_val[i] & FIMD_VIDALPHA_ALPHA_UPPER); in exynos4210_fimd_write()
1613 s->window[(offset - FIMD_BLENDEQ_START) >> 2].blendeq = val; in exynos4210_fimd_write()
1625 s->window[(offset - FIMD_WRTQOSCON_START) >> 2].rtqoscon = val; in exynos4210_fimd_write()
1638 if (fimd_get_buffer_id(&s->window[w]) == 2 && in exynos4210_fimd_write()
1639 s->window[w].buf_start[2] != val) { in exynos4210_fimd_write()
1640 s->window[w].buf_start[2] = val; in exynos4210_fimd_write()
1644 s->window[w].buf_start[2] = val; in exynos4210_fimd_write()
1653 s->window[(offset - FIMD_SHD_ADD0_START) >> 3].shadow_buf_start = val; in exynos4210_fimd_write()
1662 s->window[(offset - FIMD_SHD_ADD1_START) >> 3].shadow_buf_end = val; in exynos4210_fimd_write()
1665 s->window[(offset - FIMD_SHD_ADD2_START) >> 2].shadow_buf_size = val; in exynos4210_fimd_write()
1670 s->window[w].palette[i] = val; in exynos4210_fimd_write()
1676 s->window[w].palette[i] = val; in exynos4210_fimd_write()
1700 return s->window[(offset - FIMD_WINCON_START) >> 2].wincon; in exynos4210_fimd_read()
1710 ret = ((s->window[w].lefttop_x & FIMD_VIDOSD_COORD_MASK) << in exynos4210_fimd_read()
1712 (s->window[w].lefttop_y & FIMD_VIDOSD_COORD_MASK); in exynos4210_fimd_read()
1715 ret = ((s->window[w].rightbot_x & FIMD_VIDOSD_COORD_MASK) << in exynos4210_fimd_read()
1717 (s->window[w].rightbot_y & FIMD_VIDOSD_COORD_MASK); in exynos4210_fimd_read()
1721 ret = s->window[w].osdsize; in exynos4210_fimd_read()
1723 ret = (pack_upper_4(s->window[w].alpha_val[0]) << in exynos4210_fimd_read()
1725 pack_upper_4(s->window[w].alpha_val[1]); in exynos4210_fimd_read()
1735 ret = s->window[w].osdsize; in exynos4210_fimd_read()
1742 return s->window[w].buf_start[i]; in exynos4210_fimd_read()
1746 return s->window[w].buf_end[i]; in exynos4210_fimd_read()
1749 return s->window[w].virtpage_width | (s->window[w].virtpage_offsize << in exynos4210_fimd_read()
1756 return s->window[w].keycon[i]; in exynos4210_fimd_read()
1759 return s->window[w].keyalpha; in exynos4210_fimd_read()
1763 return s->window[(offset - FIMD_WINMAP_START) >> 2].winmap; in exynos4210_fimd_read()
1788 return s->window[w].alpha_val[i] & in exynos4210_fimd_read()
1791 return s->window[(offset - FIMD_BLENDEQ_START) >> 2].blendeq; in exynos4210_fimd_read()
1795 return s->window[(offset - FIMD_WRTQOSCON_START) >> 2].rtqoscon; in exynos4210_fimd_read()
1802 return s->window[(offset - FIMD_VIDW0ADD0_B2) >> 3].buf_start[2]; in exynos4210_fimd_read()
1807 return s->window[(offset - FIMD_SHD_ADD0_START) >> 3].shadow_buf_start; in exynos4210_fimd_read()
1812 return s->window[(offset - FIMD_SHD_ADD1_START) >> 3].shadow_buf_end; in exynos4210_fimd_read()
1814 return s->window[(offset - FIMD_SHD_ADD2_START) >> 2].shadow_buf_size; in exynos4210_fimd_read()
1818 return s->window[w].palette[i]; in exynos4210_fimd_read()
1823 return s->window[w].palette[i]; in exynos4210_fimd_read()
1917 VMSTATE_STRUCT_ARRAY(window, Exynos4210fimdState, 5, 1,