Lines Matching refs:logo

1020 	struct logo_info *logo = &state->logo;  in display_logo()  local
1032 switch (logo->bpp) { in display_logo()
1043 printf("can't support bmp bits[%d]\n", logo->bpp); in display_logo()
1048 crtc_state->src_rect.w = logo->width; in display_logo()
1049 crtc_state->src_rect.h = logo->height; in display_logo()
1052 crtc_state->ymirror = logo->ymirror; in display_logo()
1055 crtc_state->dma_addr = (u32)(unsigned long)logo->mem + logo->offset; in display_logo()
1056 crtc_state->xvir = ALIGN(crtc_state->src_rect.w * logo->bpp, 32) >> 5; in display_logo()
1217 static int load_kernel_bmp_logo(struct logo_info *logo, const char *bmp_name) in load_kernel_bmp_logo() argument
1224 if (!logo || !bmp_name) in load_kernel_bmp_logo()
1245 logo->mem = dst; in load_kernel_bmp_logo()
1252 static int load_bmp_logo_legacy(struct logo_info *logo, const char *bmp_name) in load_bmp_logo_legacy() argument
1263 if (!logo || !bmp_name) in load_bmp_logo_legacy()
1265 logo_cache = find_or_alloc_logo_cache(bmp_name, logo->rotate); in load_bmp_logo_legacy()
1269 if (logo_cache->logo.mem) { in load_bmp_logo_legacy()
1270 memcpy(logo, &logo_cache->logo, sizeof(*logo)); in load_bmp_logo_legacy()
1284 logo->bpp = get_unaligned_le16(&header->bit_count); in load_bmp_logo_legacy()
1285 logo->width = get_unaligned_le32(&header->width); in load_bmp_logo_legacy()
1286 logo->height = get_unaligned_le32(&header->height); in load_bmp_logo_legacy()
1287 dst_size = logo->width * logo->height * logo->bpp >> 3; in load_bmp_logo_legacy()
1289 if (logo->height < 0) in load_bmp_logo_legacy()
1290 logo->height = -logo->height; in load_bmp_logo_legacy()
1292 if (!can_direct_logo(logo->bpp)) { in load_bmp_logo_legacy()
1312 if (!can_direct_logo(logo->bpp)) { in load_bmp_logo_legacy()
1316 logo->bpp = (logo->bpp <= 16) ? 16 : logo->bpp; in load_bmp_logo_legacy()
1317 dst_size = logo->width * logo->height * logo->bpp >> 3; in load_bmp_logo_legacy()
1323 if (bmpdecoder(pdst, dst, logo->bpp)) { in load_bmp_logo_legacy()
1329 logo->offset = 0; in load_bmp_logo_legacy()
1330 logo->ymirror = 0; in load_bmp_logo_legacy()
1332 logo->offset = get_unaligned_le32(&header->data_offset); in load_bmp_logo_legacy()
1334 logo->ymirror = 0; in load_bmp_logo_legacy()
1336 logo->ymirror = 1; in load_bmp_logo_legacy()
1338 logo->mem = dst; in load_bmp_logo_legacy()
1340 memcpy(&logo_cache->logo, logo, sizeof(*logo)); in load_bmp_logo_legacy()
1393 static void *rockchip_logo_rotate(struct logo_info *logo, void *src) in rockchip_logo_rotate() argument
1396 int width = logo->width; in rockchip_logo_rotate()
1397 int height = logo->height; in rockchip_logo_rotate()
1398 int width_rotate = logo->height & 0x3 ? (logo->height & ~0x3) + 4 : logo->height; in rockchip_logo_rotate()
1399 int height_rotate = logo->width; in rockchip_logo_rotate()
1400 int dst_size = width * height * logo->bpp >> 3; in rockchip_logo_rotate()
1401 int dst_size_rotate = width_rotate * height_rotate * logo->bpp >> 3; in rockchip_logo_rotate()
1402 int bytes_per_pixel = logo->bpp >> 3; in rockchip_logo_rotate()
1407 if (!(logo->rotate == 90 || logo->rotate == 180 || logo->rotate == 270)) { in rockchip_logo_rotate()
1424 switch (logo->rotate) { in rockchip_logo_rotate()
1426 logo->width = width_rotate; in rockchip_logo_rotate()
1427 logo->height = height_rotate; in rockchip_logo_rotate()
1449 logo->width = width_rotate; in rockchip_logo_rotate()
1450 logo->height = height_rotate; in rockchip_logo_rotate()
1470 static int load_bmp_logo(struct logo_info *logo, const char *bmp_name) in load_bmp_logo() argument
1487 if (!logo || !bmp_name) in load_bmp_logo()
1490 logo_cache = find_or_alloc_logo_cache(bmp_name, logo->rotate); in load_bmp_logo()
1494 if (logo_cache->logo.mem) { in load_bmp_logo()
1495 memcpy(logo, &logo_cache->logo, sizeof(*logo)); in load_bmp_logo()
1529 logo->bpp = 32; in load_bmp_logo()
1530 logo->offset = 0; in load_bmp_logo()
1531 logo->ymirror = 0; in load_bmp_logo()
1532 logo->width = get_unaligned_le32(&bmp.width); in load_bmp_logo()
1533 logo->height = get_unaligned_le32(&bmp.height); in load_bmp_logo()
1534 dst_size = logo->width * logo->height * logo->bpp >> 3; in load_bmp_logo()
1553 if (logo->rotate) { in load_bmp_logo()
1554 dst_rotate = rockchip_logo_rotate(logo, dst); in load_bmp_logo()
1557 dst_size = logo->width * logo->height * logo->bpp >> 3; in load_bmp_logo()
1559 printf("logo ratate %d\n", logo->rotate); in load_bmp_logo()
1561 logo->mem = dst; in load_bmp_logo()
1563 memcpy(&logo_cache->logo, logo, sizeof(*logo)); in load_bmp_logo()
1564 logo_cache->logo_rotate = logo->rotate; in load_bmp_logo()
1744 s->logo.mode = s->charge_logo_mode; in rockchip_show_bmp()
1745 if (load_bmp_logo(&s->logo, bmp)) in rockchip_show_bmp()
1761 s->logo.mode = s->logo_mode; in rockchip_show_logo()
1762 s->logo.rotate = s->logo_rotate; in rockchip_show_logo()
1763 if (load_bmp_logo(&s->logo, s->ulogo_name)) { in rockchip_show_logo()
2584 ret = load_bmp_logo(&s->logo, s->klogo_name); in rockchip_display_fixup()
2638 load_kernel_bmp_logo(&s->logo, s->klogo_name); in rockchip_display_fixup()
2679 offset = s->logo.offset + (u32)(unsigned long)s->logo.mem - vidcon_fb_addr; in rockchip_display_fixup()
2681 offset = s->logo.offset + (u32)(unsigned long)s->logo.mem - memory_start; in rockchip_display_fixup()
2683 FDT_SET_U32("logo,width", s->logo.width); in rockchip_display_fixup()
2684 FDT_SET_U32("logo,height", s->logo.height); in rockchip_display_fixup()
2685 FDT_SET_U32("logo,bpp", s->logo.bpp); in rockchip_display_fixup()
2686 FDT_SET_U32("logo,ymirror", s->logo.ymirror); in rockchip_display_fixup()