Пример #1
0
int mcde_logo_init(void)
{
	if (!load_565rle_image(INIT_IMAGE_FILE))
		draw_logo();

	return 0;
}
int __init logo_init(void)
{
	if (display_on_in_boot)
		printk(KERN_INFO "Skip drawing logo. Already drawn in boot.\n");
	else if (!load_565rle_image(INIT_IMAGE_FILE))
		draw_logo();

	return 0;
}
Пример #3
0
static int console_init_action(int nargs, char **args)
{
    int fd;

    if (console[0]) {
        snprintf(console_name, sizeof(console_name), "/dev/%s", console);
    }

    fd = open(console_name, O_RDWR);
    if (fd >= 0)
        have_console = 1;
    close(fd);

#ifdef INITLOGO
    if( load_565rle_image(INIT_IMAGE_FILE) ) {
        fd = open("/dev/tty0", O_WRONLY);
        if (fd >= 0) {
            const char *msg;
                msg = "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"  // console is 40 cols x 30 lines
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "             A N D R O I D ";
            write(fd, msg, strlen(msg));
            close(fd);
        }
    }
#else
    fd = open("/dev/tty0", O_RDWR | O_SYNC);
    if (fd >= 0) {
        ioctl(fd, KDSETMODE, KD_GRAPHICS);
        close(fd);
    }
#endif
    return 0;
}
Пример #4
0
static int console_init_action(int nargs, char **args)
{
    int fd;
    char tmp[PROP_VALUE_MAX];

    if (console[0]) {
        snprintf(tmp, sizeof(tmp), "/dev/%s", console);
        console_name = strdup(tmp);
    }

    fd = open(console_name, O_RDWR);
    if (fd >= 0)
        have_console = 1;
    close(fd);

    if( load_565rle_image(INIT_IMAGE_FILE) ) {
        fd = open("/dev/tty0", O_WRONLY);
        if (fd >= 0) {
            const char *msg;
                msg = "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"  // console is 40 cols x 30 lines
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "\n"
            "             A N D R O I D ";
            write(fd, msg, strlen(msg));
            close(fd);
        }
    }
    return 0;
}
static int mipi_video_hx8369b_wvga_pt_init(void)
{
	int ret;

	if (msm_fb_detect_client("mipi_video_hx8369b_wvga"))
		return 0;

	pinfo.xres = 480;
	pinfo.yres = 800;
	pinfo.type = MIPI_VIDEO_PANEL;
	pinfo.pdest = DISPLAY_1;
	pinfo.wait_cycle = 0;
	pinfo.bpp = 24;
	
#if defined(CONFIG_MACH_BAFFIN_DUOS_CTC)
	pinfo.lcdc.h_back_porch = 123;
	pinfo.lcdc.h_front_porch = 146;
	pinfo.lcdc.h_pulse_width = 80;
	pinfo.lcdc.v_back_porch = 13;
	pinfo.lcdc.v_front_porch = 8;
	pinfo.lcdc.v_pulse_width = 4;
#elif defined(CONFIG_MACH_DELOS_OPEN)
	pinfo.lcdc.h_back_porch = 135;
	pinfo.lcdc.h_front_porch = 150;
	pinfo.lcdc.h_pulse_width = 32;
	pinfo.lcdc.v_back_porch = 9;
	pinfo.lcdc.v_front_porch = 10;
	pinfo.lcdc.v_pulse_width = 6;
#else
	pinfo.lcdc.h_back_porch = 180;
	pinfo.lcdc.h_front_porch = 150;
	pinfo.lcdc.h_pulse_width = 32;
	pinfo.lcdc.v_back_porch = 22;
	pinfo.lcdc.v_front_porch = 20;
	pinfo.lcdc.v_pulse_width = 2;
#endif
	
	pinfo.lcdc.border_clr = 0;	/* blk */
	pinfo.lcdc.underflow_clr = 0xff;	/* blue */
	/* number of dot_clk cycles HSYNC active edge is
	delayed from VSYNC active edge */
	pinfo.lcdc.hsync_skew = 0;
        pinfo.clk_rate = 492000000;
	pinfo.bl_max = 255; /*16; CHECK THIS!!!*/
	pinfo.bl_min = 1;
	pinfo.fb_num = 2;

	pinfo.mipi.mode = DSI_VIDEO_MODE;
	/* send HSA and HE following VS/VE packet */
	pinfo.mipi.pulse_mode_hsa_he = TRUE;
#if defined(CONFIG_MACH_BAFFIN_DUOS_CTC)
	pinfo.mipi.hfp_power_stop = TRUE; /* LP-11 during the HFP period */
	pinfo.mipi.hbp_power_stop = TRUE; /* LP-11 during the HBP period */
	pinfo.mipi.hsa_power_stop = TRUE; /* LP-11 during the HSA period */
	pinfo.mipi.mdp_trigger = DSI_CMD_TRIGGER_SW;
#else
	pinfo.mipi.hfp_power_stop = FALSE; /* LP-11 during the HFP period */
	pinfo.mipi.hbp_power_stop = FALSE; /* LP-11 during the HBP period */
	pinfo.mipi.hsa_power_stop = FALSE; /* LP-11 during the HSA period */
	pinfo.mipi.mdp_trigger = DSI_CMD_TRIGGER_NONE;
#endif
	/* LP-11 or let Command Mode Engine send packets in
	HS or LP mode for the BLLP of the last line of a frame */
	pinfo.mipi.eof_bllp_power_stop = TRUE;
	/* LP-11 or let Command Mode Engine send packets in
	HS or LP mode for packets sent during BLLP period */
	pinfo.mipi.bllp_power_stop = TRUE;

	pinfo.mipi.traffic_mode = DSI_BURST_MODE;
	pinfo.mipi.dst_format =  DSI_VIDEO_DST_FORMAT_RGB888;
	pinfo.mipi.vc = 0;
	pinfo.mipi.rgb_swap = DSI_RGB_SWAP_RGB; /* RGB */
	pinfo.mipi.data_lane0 = TRUE;
	pinfo.mipi.data_lane1 = TRUE;

	pinfo.mipi.t_clk_post = 0x20;
	pinfo.mipi.t_clk_pre = 0x2f;

	pinfo.mipi.stream = 0; /* dma_p */
	
	pinfo.mipi.dma_trigger = DSI_CMD_TRIGGER_SW;
	pinfo.mipi.frame_rate = 60; /* FIXME */

	pinfo.mipi.dsi_phy_db = &dsi_video_mode_phy_db;
	pinfo.mipi.dlane_swap = 0x01;
	/* append EOT at the end of data burst */
	pinfo.mipi.tx_eot_append = 0x01;

	ret = mipi_hx8369b_device_register(&pinfo, MIPI_DSI_PRIM,
						MIPI_DSI_PANEL_WVGA_PT);

	if (ret)
		pr_err("%s: failed to register device!\n", __func__);

/* Temporary */
	if (charging_boot != 1)
		load_565rle_image(INIT_IMAGE_FILE, 0);

	return ret;
}