Lines Matching refs:par
278 static void lcd_blit(int load_mode, struct da8xx_fb_par *par) in lcd_blit() argument
293 start = par->dma_start; in lcd_blit()
294 end = par->dma_end; in lcd_blit()
322 start = par->p_palette_base; in lcd_blit()
323 end = start + par->palette_sz - 1; in lcd_blit()
481 static int lcd_cfg_frame_buffer(struct da8xx_fb_par *par, u32 width, u32 height, in lcd_cfg_frame_buffer() argument
544 par->palette_sz = 16 * 2; in lcd_cfg_frame_buffer()
548 par->palette_sz = 256 * 2; in lcd_cfg_frame_buffer()
562 struct da8xx_fb_par *par = info->par; in fb_setcolreg() local
563 unsigned short *palette = (unsigned short *) par->v_palette_base; in fb_setcolreg()
596 par->pseudo_palette[regno] = red | green | blue; in fb_setcolreg()
613 par->pseudo_palette[regno] = red | green | blue; in fb_setcolreg()
623 lcd_blit(LOAD_PALETTE, par); in fb_setcolreg()
628 static void lcd_reset(struct da8xx_fb_par *par) in lcd_reset() argument
645 static void lcd_calc_clk_divider(struct da8xx_fb_par *par) in lcd_calc_clk_divider() argument
652 div = lcd_clk / par->pxl_clk; in lcd_calc_clk_divider()
654 lcd_clk, div, par->pxl_clk); in lcd_calc_clk_divider()
666 static int lcd_init(struct da8xx_fb_par *par, const struct lcd_ctrl_config *cfg, in lcd_init() argument
672 lcd_reset(par); in lcd_init()
675 lcd_calc_clk_divider(par); in lcd_init()
714 ret = lcd_cfg_frame_buffer(par, (unsigned int)panel->width, in lcd_init()
729 struct da8xx_fb_par *par = da8xx_fb_info->par; in lcdc_dma_start() local
730 lcdc_write(par->dma_start, in lcdc_dma_start()
732 lcdc_write(par->dma_end, in lcdc_dma_start()
742 struct da8xx_fb_par *par = da8xx_fb_info->par; in lcdc_irq_handler_rev01() local
770 lcd_blit(LOAD_DATA, par); in lcdc_irq_handler_rev01()
778 lcdc_write(par->dma_start, in lcdc_irq_handler_rev01()
780 lcdc_write(par->dma_end, in lcdc_irq_handler_rev01()
782 par->vsync_flag = 1; in lcdc_irq_handler_rev01()
790 struct da8xx_fb_par *par = da8xx_fb_info->par; in lcdc_irq_handler_rev02() local
819 lcd_blit(LOAD_DATA, par); in lcdc_irq_handler_rev02()
828 lcdc_write(par->dma_start, in lcdc_irq_handler_rev02()
830 lcdc_write(par->dma_end, in lcdc_irq_handler_rev02()
832 par->vsync_flag = 1; in lcdc_irq_handler_rev02()
869 struct da8xx_fb_par *par; in video_hw_init() local
936 da8xx_fb_info->par = p + sizeof(struct fb_info); in video_hw_init()
937 debug("da8xx_par at %x\n", (unsigned int)da8xx_fb_info->par); in video_hw_init()
939 par = da8xx_fb_info->par; in video_hw_init()
940 par->pxl_clk = lcd_panel->pxl_clk; in video_hw_init()
942 if (lcd_init(par, da8xx_lcd_cfg, lcd_panel) < 0) { in video_hw_init()
948 par->vram_size = lcd_panel->width * lcd_panel->height * in video_hw_init()
950 par->vram_size = par->vram_size * LCD_NUM_BUFFERS / 8; in video_hw_init()
952 par->vram_virt = malloc(par->vram_size); in video_hw_init()
954 par->vram_phys = (dma_addr_t) par->vram_virt; in video_hw_init()
956 (unsigned int)par->vram_size, in video_hw_init()
957 (unsigned int)par->vram_virt); in video_hw_init()
958 if (!par->vram_virt) { in video_hw_init()
962 gd->fb_base = (int)par->vram_virt; in video_hw_init()
964 gpanel.frameAdrs = (unsigned int)par->vram_virt; in video_hw_init()
965 da8xx_fb_info->screen_base = (char *) par->vram_virt; in video_hw_init()
967 da8xx_fb_fix.smem_len = par->vram_size; in video_hw_init()
970 par->dma_start = par->vram_phys; in video_hw_init()
971 par->dma_end = par->dma_start + lcd_panel->height * in video_hw_init()
975 par->v_palette_base = malloc(PALETTE_SIZE); in video_hw_init()
976 if (!par->v_palette_base) { in video_hw_init()
980 memset(par->v_palette_base, 0, PALETTE_SIZE); in video_hw_init()
981 par->p_palette_base = (unsigned int)par->v_palette_base; in video_hw_init()
1003 da8xx_fb_info->pseudo_palette = par->pseudo_palette; in video_hw_init()
1008 memset((void *)par->vram_virt, 0, par->vram_size); in video_hw_init()
1014 debug("Palette at 0x%x size %d\n", par->p_palette_base, in video_hw_init()
1015 par->palette_sz); in video_hw_init()
1030 free(par->vram_virt); in video_hw_init()