Lines Matching refs:par
281 static void lcd_blit(int load_mode, struct da8xx_fb_par *par) in lcd_blit() argument
296 start = par->dma_start; in lcd_blit()
297 end = par->dma_end; in lcd_blit()
325 start = par->p_palette_base; in lcd_blit()
326 end = start + par->palette_sz - 1; in lcd_blit()
484 static int lcd_cfg_frame_buffer(struct da8xx_fb_par *par, u32 width, u32 height, in lcd_cfg_frame_buffer() argument
547 par->palette_sz = 16 * 2; in lcd_cfg_frame_buffer()
551 par->palette_sz = 256 * 2; in lcd_cfg_frame_buffer()
565 struct da8xx_fb_par *par = info->par; in fb_setcolreg() local
566 unsigned short *palette = (unsigned short *) par->v_palette_base; in fb_setcolreg()
599 par->pseudo_palette[regno] = red | green | blue; in fb_setcolreg()
616 par->pseudo_palette[regno] = red | green | blue; in fb_setcolreg()
626 lcd_blit(LOAD_PALETTE, par); in fb_setcolreg()
631 static void lcd_reset(struct da8xx_fb_par *par) in lcd_reset() argument
648 static void lcd_calc_clk_divider(struct da8xx_fb_par *par) in lcd_calc_clk_divider() argument
655 div = lcd_clk / par->pxl_clk; in lcd_calc_clk_divider()
657 lcd_clk, div, par->pxl_clk); in lcd_calc_clk_divider()
669 static int lcd_init(struct da8xx_fb_par *par, const struct lcd_ctrl_config *cfg, in lcd_init() argument
675 lcd_reset(par); in lcd_init()
678 lcd_calc_clk_divider(par); in lcd_init()
717 ret = lcd_cfg_frame_buffer(par, (unsigned int)panel->width, in lcd_init()
732 struct da8xx_fb_par *par = da8xx_fb_info->par; in lcdc_dma_start() local
733 lcdc_write(par->dma_start, in lcdc_dma_start()
735 lcdc_write(par->dma_end, in lcdc_dma_start()
745 struct da8xx_fb_par *par = da8xx_fb_info->par; in lcdc_irq_handler_rev01() local
773 lcd_blit(LOAD_DATA, par); in lcdc_irq_handler_rev01()
781 lcdc_write(par->dma_start, in lcdc_irq_handler_rev01()
783 lcdc_write(par->dma_end, in lcdc_irq_handler_rev01()
785 par->vsync_flag = 1; in lcdc_irq_handler_rev01()
793 struct da8xx_fb_par *par = da8xx_fb_info->par; in lcdc_irq_handler_rev02() local
822 lcd_blit(LOAD_DATA, par); in lcdc_irq_handler_rev02()
831 lcdc_write(par->dma_start, in lcdc_irq_handler_rev02()
833 lcdc_write(par->dma_end, in lcdc_irq_handler_rev02()
835 par->vsync_flag = 1; in lcdc_irq_handler_rev02()
873 struct da8xx_fb_par *par; in video_hw_init() local
940 da8xx_fb_info->par = p + sizeof(struct fb_info); in video_hw_init()
941 debug("da8xx_par at %x\n", (unsigned int)da8xx_fb_info->par); in video_hw_init()
943 par = da8xx_fb_info->par; in video_hw_init()
944 par->pxl_clk = lcd_panel->pxl_clk; in video_hw_init()
946 if (lcd_init(par, da8xx_lcd_cfg, lcd_panel) < 0) { in video_hw_init()
952 par->vram_size = lcd_panel->width * lcd_panel->height * in video_hw_init()
954 par->vram_size = par->vram_size * LCD_NUM_BUFFERS / 8; in video_hw_init()
956 par->vram_virt = malloc_cache_aligned(par->vram_size); in video_hw_init()
958 par->vram_phys = (dma_addr_t) par->vram_virt; in video_hw_init()
960 (unsigned int)par->vram_size, in video_hw_init()
961 (unsigned int)par->vram_virt); in video_hw_init()
962 if (!par->vram_virt) { in video_hw_init()
966 gd->fb_base = (int)par->vram_virt; in video_hw_init()
968 gpanel.frameAdrs = (unsigned int)par->vram_virt; in video_hw_init()
969 da8xx_fb_info->screen_base = (char *) par->vram_virt; in video_hw_init()
971 da8xx_fb_fix.smem_len = par->vram_size; in video_hw_init()
974 par->dma_start = par->vram_phys; in video_hw_init()
975 par->dma_end = par->dma_start + lcd_panel->height * in video_hw_init()
979 par->v_palette_base = malloc_cache_aligned(PALETTE_SIZE); in video_hw_init()
980 if (!par->v_palette_base) { in video_hw_init()
984 memset(par->v_palette_base, 0, PALETTE_SIZE); in video_hw_init()
985 par->p_palette_base = (unsigned int)par->v_palette_base; in video_hw_init()
1007 da8xx_fb_info->pseudo_palette = par->pseudo_palette; in video_hw_init()
1012 memset((void *)par->vram_virt, 0, par->vram_size); in video_hw_init()
1018 debug("Palette at 0x%x size %d\n", par->p_palette_base, in video_hw_init()
1019 par->palette_sz); in video_hw_init()
1034 free(par->vram_virt); in video_hw_init()