| /linux/drivers/video/fbdev/ |
| H A D | goldfishfb.c | 15 #include <linux/fb.h> 44 struct fb_info fb; member 51 struct goldfish_fb *fb = dev_id; in goldfish_fb_interrupt() local 54 spin_lock_irqsave(&fb->lock, irq_flags); in goldfish_fb_interrupt() 55 status = readl(fb->reg_base + FB_INT_STATUS); in goldfish_fb_interrupt() 57 fb->base_update_count++; in goldfish_fb_interrupt() 58 wake_up(&fb->wait); in goldfish_fb_interrupt() 60 spin_unlock_irqrestore(&fb->lock, irq_flags); in goldfish_fb_interrupt() 75 struct goldfish_fb *fb = container_of(info, struct goldfish_fb, fb); in goldfish_fb_setcolreg() local 78 fb->cmap[regno] = convert_bitfield(transp, &fb->fb.var.transp) | in goldfish_fb_setcolreg() [all …]
|
| H A D | stifb.c | 64 #include <linux/fb.h> 156 #define READ_BYTE(fb, reg) gsc_readb((fb)->info->fix.mmio_start + (reg)) argument 157 #define READ_WORD(fb, reg) gsc_readl((fb)->info->fix.mmio_start + (reg)) argument 163 # define WRITE_BYTE(value, fb, reg) gsc_writeb((value), (fb)->info->fix.mmio_start + (reg)) argument 164 # define WRITE_WORD(value, fb, reg) gsc_writel((value), (fb)->info->fix.mmio_start + (reg)) argument 169 # define WRITE_BYTE(value,fb,reg) do { if (debug_on) \ argument 171 __func__, reg, value, READ_BYTE(fb,reg)); \ 172 gsc_writeb((value), (fb)->info->fix.mmio_start + (reg)); } while (0) 173 # define WRITE_WORD(value,fb,reg) do { if (debug_on) \ argument 175 __func__, reg, value, READ_WORD(fb,reg)); \ [all …]
|
| H A D | wm8505fb.c | 11 #include <linux/fb.h> 32 #define DRIVER_NAME "wm8505-fb" 35 struct wm8505fb_info, fb) 37 struct fb_info fb; member 54 writel(fbi->fb.fix.smem_start, fbi->regbase + WMT_GOVR_FBADDR); in wm8505fb_init_hw() 55 writel(fbi->fb.fix.smem_start, fbi->regbase + WMT_GOVR_FBADDR1); in wm8505fb_init_hw() 205 switch (fbi->fb.fix.visual) { in wm8505fb_setcolreg() 210 val = chan_to_field(red, &fbi->fb.var.red); in wm8505fb_setcolreg() 211 val |= chan_to_field(green, &fbi->fb.var.green); in wm8505fb_setcolreg() 212 val |= chan_to_field(blue, &fbi->fb.var.blue); in wm8505fb_setcolreg() [all …]
|
| H A D | vt8500lcdfb.c | 13 #include <linux/fb.h> 37 struct vt8500lcd_info, fb) 152 switch (fbi->fb.fix.visual) { in vt8500lcd_setcolreg() 155 u32 *pal = fbi->fb.pseudo_palette; in vt8500lcd_setcolreg() 157 val = chan_to_field(red, &fbi->fb.var.red); in vt8500lcd_setcolreg() 158 val |= chan_to_field(green, &fbi->fb.var.green); in vt8500lcd_setcolreg() 159 val |= chan_to_field(blue, &fbi->fb.var.blue); in vt8500lcd_setcolreg() 290 strcpy(fbi->fb.fix.id, "VT8500 LCD"); in vt8500lcd_probe() 292 fbi->fb.fix.type = FB_TYPE_PACKED_PIXELS; in vt8500lcd_probe() 293 fbi->fb.fix.xpanstep = 0; in vt8500lcd_probe() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ |
| H A D | base.c | 35 nvkm_fb_tile_fini(struct nvkm_fb *fb, int region, struct nvkm_fb_tile *tile) in nvkm_fb_tile_fini() argument 37 fb->func->tile.fini(fb, region, tile); in nvkm_fb_tile_fini() 41 nvkm_fb_tile_init(struct nvkm_fb *fb, int region, u32 addr, u32 size, in nvkm_fb_tile_init() argument 44 fb->func->tile.init(fb, region, addr, size, pitch, flags, tile); in nvkm_fb_tile_init() 48 nvkm_fb_tile_prog(struct nvkm_fb *fb, int region, struct nvkm_fb_tile *tile) in nvkm_fb_tile_prog() argument 50 struct nvkm_device *device = fb->subdev.device; in nvkm_fb_tile_prog() 51 if (fb->func->tile.prog) { in nvkm_fb_tile_prog() 52 fb->func->tile.prog(fb, region, tile); in nvkm_fb_tile_prog() 63 struct nvkm_fb *fb = device->fb; in nvkm_fb_sysmem_flush_page_init() local 65 if (fb->func->sysmem.flush_page_init) in nvkm_fb_sysmem_flush_page_init() [all …]
|
| H A D | gf100.c | 34 struct gf100_fb *fb = gf100_fb(base); in gf100_fb_intr() local 35 struct nvkm_subdev *subdev = &fb->base.subdev; in gf100_fb_intr() 47 struct gf100_fb *fb = gf100_fb(base); in gf100_fb_oneinit() local 48 struct nvkm_device *device = fb->base.subdev.device; in gf100_fb_oneinit() 49 int ret, size = 1 << (fb->base.page ? fb->base.page : 17); in gf100_fb_oneinit() 55 true, &fb->base.mmu_rd); in gf100_fb_oneinit() 60 true, &fb->base.mmu_wr); in gf100_fb_oneinit() 68 gf100_fb_init_page(struct nvkm_fb *fb) in gf100_fb_init_page() argument 70 struct nvkm_device *device = fb->subdev.device; in gf100_fb_init_page() 71 switch (fb->page) { in gf100_fb_init_page() [all …]
|
| H A D | nv50.c | 34 struct nv50_fb *fb = nv50_fb(base); in nv50_fb_ram_new() local 35 return fb->func->ram_new(&fb->base, pram); in nv50_fb_ram_new() 80 { 0x00000000, "FB" }, 137 struct nv50_fb *fb = nv50_fb(base); in nv50_fb_intr() local 138 struct nvkm_subdev *subdev = &fb->base.subdev; in nv50_fb_intr() 197 struct nv50_fb *fb = nv50_fb(base); in nv50_fb_init() local 198 struct nvkm_device *device = fb->base.subdev.device; in nv50_fb_init() 202 nvkm_wr32(device, 0x100c90, fb->func->trap); in nv50_fb_init() 208 struct nv50_fb *fb = nv50_fb(base); in nv50_fb_tags() local 209 if (fb->func->tags) in nv50_fb_tags() [all …]
|
| /linux/fs/fuse/ |
| H A D | backing.c | 12 struct fuse_backing *fuse_backing_get(struct fuse_backing *fb) in fuse_backing_get() argument 14 if (fb && refcount_inc_not_zero(&fb->count)) in fuse_backing_get() 15 return fb; in fuse_backing_get() 19 static void fuse_backing_free(struct fuse_backing *fb) in fuse_backing_free() argument 21 pr_debug("%s: fb=0x%p\n", __func__, fb); in fuse_backing_free() 23 if (fb->file) in fuse_backing_free() 24 fput(fb->file); in fuse_backing_free() 25 put_cred(fb->cred); in fuse_backing_free() 26 kfree_rcu(fb, rcu); in fuse_backing_free() 29 void fuse_backing_put(struct fuse_backing *fb) in fuse_backing_put() argument [all …]
|
| /linux/drivers/gpu/drm/msm/ |
| H A D | msm_fb.c | 36 static int msm_framebuffer_dirtyfb(struct drm_framebuffer *fb, in msm_framebuffer_dirtyfb() argument 41 struct msm_framebuffer *msm_fb = to_msm_framebuffer(fb); in msm_framebuffer_dirtyfb() 43 /* If this fb is not used on any display requiring pixel data to be in msm_framebuffer_dirtyfb() 49 return drm_atomic_helper_dirtyfb(fb, file_priv, flags, color, in msm_framebuffer_dirtyfb() 60 void msm_framebuffer_describe(struct drm_framebuffer *fb, struct seq_file *m) in msm_framebuffer_describe() argument 63 int i, n = fb->format->num_planes; in msm_framebuffer_describe() 65 seq_printf(m, "fb: %dx%d@%4.4s (%2d, ID:%d)\n", in msm_framebuffer_describe() 66 fb->width, fb->height, (char *)&fb->format->format, in msm_framebuffer_describe() 67 drm_framebuffer_read_refcount(fb), fb->base.id); in msm_framebuffer_describe() 71 i, fb->offsets[i], fb->pitches[i]); in msm_framebuffer_describe() [all …]
|
| H A D | msm_fbdev.c | 7 #include <linux/fb.h> 35 struct drm_gem_object *bo = msm_framebuffer_bo(helper->fb, 0); in FB_GEN_DEFAULT_DEFERRED_SYSMEM_OPS() 43 struct drm_framebuffer *fb = helper->fb; in msm_fbdev_fb_destroy() local 44 struct drm_gem_object *bo = msm_framebuffer_bo(fb, 0); in msm_fbdev_fb_destroy() 52 drm_framebuffer_remove(fb); in msm_fbdev_fb_destroy() 76 if (helper->fb->funcs->dirty) { in msm_fbdev_fb_dirty() 77 ret = helper->fb->funcs->dirty(helper->fb, NULL, 0, 0, clip, 1); in msm_fbdev_fb_dirty() 95 struct drm_framebuffer *fb = NULL; in msm_fbdev_driver_fbdev_probe() local 108 fb = msm_alloc_stolen_fb(dev, sizes->surface_width, in msm_fbdev_driver_fbdev_probe() 111 if (IS_ERR(fb)) { in msm_fbdev_driver_fbdev_probe() [all …]
|
| /linux/drivers/staging/fbtft/ |
| H A D | Kconfig | 4 depends on FB && SPI 14 tristate "FB driver for the AGM1264K-FL LCD display" 19 tristate "FB driver for the BD663474 LCD Controller" 24 tristate "FB driver for the HX8340BN LCD Controller" 29 tristate "FB driver for the HX8347D LCD Controller" 34 tristate "FB driver for the HX8353D LCD Controller" 39 tristate "FB driver for the HX8357D LCD Controller" 44 tristate "FB driver for the ILI9163 LCD Controller" 49 tristate "FB driver for the ILI9320 LCD Controller" 54 tristate "FB driver for the ILI9325 LCD Controller" [all …]
|
| /linux/drivers/gpu/drm/i915/display/ |
| H A D | intel_fb.c | 666 * @fb: Framebuffer 670 * Returns %true if @fb's color plane at index @color_plane is a CCS AUX plane. 672 bool intel_fb_is_ccs_aux_plane(const struct drm_framebuffer *fb, int color_plane) in intel_fb_is_ccs_aux_plane() argument 674 const struct intel_modifier_desc *md = lookup_modifier(fb->modifier); in intel_fb_is_ccs_aux_plane() 676 return ccs_aux_plane_mask(md, fb->format) & BIT(color_plane); in intel_fb_is_ccs_aux_plane() 681 * @fb: Framebuffer 685 * Returns %true if @fb's color plane at index @color_plane is a GEN12 CCS AUX plane. 687 static bool intel_fb_is_gen12_ccs_aux_plane(const struct drm_framebuffer *fb, int color_plane) in intel_fb_is_gen12_ccs_aux_plane() argument 689 const struct intel_modifier_desc *md = lookup_modifier(fb->modifier); in intel_fb_is_gen12_ccs_aux_plane() 692 ccs_aux_plane_mask(md, fb->format) & BIT(color_plane); in intel_fb_is_gen12_ccs_aux_plane() [all …]
|
| H A D | intel_fbdev.c | 30 #include <linux/fb.h> 62 struct intel_framebuffer *fb; member 76 return ifbdev->fb->frontbuffer; in to_frontbuffer() 128 struct drm_gem_object *obj = drm_gem_fb_get_obj(fb_helper->fb, 0); in intel_fbdev_mmap() 146 drm_framebuffer_remove(fb_helper->fb); in intel_fbdev_fb_destroy() 152 __diag_ignore_all("-Woverride-init", "Allow field initialization overrides for fb ops"); 173 if (helper->fb->funcs->dirty) in intelfb_dirty() 174 return helper->fb->funcs->dirty(helper->fb, NULL, 0, 0, clip, 1); in intelfb_dirty() 196 if (!suspend && !intel_bo_is_shmem(intel_fb_bo(fb_helper->fb))) in intelfb_set_suspend() 230 struct drm_framebuffer *fb; in __intel_fbdev_fb_alloc() local [all …]
|
| H A D | skl_universal_plane.c | 280 const struct drm_framebuffer *fb = plane_state->hw.fb; in glk_plane_ratio() local 282 if (fb->format->cpp[0] == 8) { in glk_plane_ratio() 307 const struct drm_framebuffer *fb = plane_state->hw.fb; in skl_plane_ratio() local 309 if (fb->format->cpp[0] == 8) { in skl_plane_ratio() 329 static int skl_plane_max_width(const struct drm_framebuffer *fb, in skl_plane_max_width() argument 333 int cpp = fb->format->cpp[color_plane]; in skl_plane_max_width() 335 switch (fb->modifier) { in skl_plane_max_width() 362 MISSING_CASE(fb->modifier); in skl_plane_max_width() 367 static int glk_plane_max_width(const struct drm_framebuffer *fb, in glk_plane_max_width() argument 371 int cpp = fb->format->cpp[color_plane]; in glk_plane_max_width() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ |
| H A D | tu102.c | 24 #include <subdev/fb.h> 228 meta->sizeOfRadix3Elf = gsp->fb.wpr2.elf.size; in tu102_gsp_wpr_meta_init() 239 meta->gspFwRsvdStart = gsp->fb.heap.addr; in tu102_gsp_wpr_meta_init() 240 meta->nonWprHeapOffset = gsp->fb.heap.addr; in tu102_gsp_wpr_meta_init() 241 meta->nonWprHeapSize = gsp->fb.heap.size; in tu102_gsp_wpr_meta_init() 242 meta->gspFwWprStart = gsp->fb.wpr2.addr; in tu102_gsp_wpr_meta_init() 243 meta->gspFwHeapOffset = gsp->fb.wpr2.heap.addr; in tu102_gsp_wpr_meta_init() 244 meta->gspFwHeapSize = gsp->fb.wpr2.heap.size; in tu102_gsp_wpr_meta_init() 245 meta->gspFwOffset = gsp->fb.wpr2.elf.addr; in tu102_gsp_wpr_meta_init() 246 meta->bootBinOffset = gsp->fb.wpr2.boot.addr; in tu102_gsp_wpr_meta_init() [all …]
|
| /linux/drivers/gpu/drm/gud/ |
| H A D | gud_pipe.c | 52 void *src, struct drm_framebuffer *fb, in gud_xrgb8888_to_r124() argument 64 drm_WARN_ON_ONCE(fb->dev, format->char_per_block[0] != 1); in gud_xrgb8888_to_r124() 78 drm_fb_xrgb8888_to_gray8(&dst_map, NULL, &vmap, fb, rect, fmtcnv_state); in gud_xrgb8888_to_r124() 102 void *src, struct drm_framebuffer *fb, in gud_xrgb8888_to_color() argument 119 sbuf32 = src + (y * fb->pitches[0]); in gud_xrgb8888_to_color() 141 drm_WARN_ON_ONCE(fb->dev, 1); in gud_xrgb8888_to_color() 152 static int gud_prep_flush(struct gud_device *gdrm, struct drm_framebuffer *fb, in gud_prep_flush() argument 180 if (format != fb->format) { in gud_prep_flush() 182 len = gud_xrgb8888_to_r124(buf, format, vaddr, fb, rect, fmtcnv_state); in gud_prep_flush() 186 drm_fb_xrgb8888_to_gray8(&dst, NULL, src, fb, rect, fmtcnv_state); in gud_prep_flush() [all …]
|
| /linux/drivers/media/platform/mediatek/vcodec/decoder/vdec/ |
| H A D | vdec_vp9_if.c | 45 * @fb : frame buffer 49 struct vdec_fb *fb; member 78 * @fb : super frame reference frame buffer 83 struct vdec_fb fb; member 101 * @fb : capture buffer (AP-W, VPU-R) 144 struct vdec_fb fb; member 177 * @dec_fb : vdec_fb node to link fb to different fb_xxx_list 207 static bool vp9_is_sf_ref_fb(struct vdec_vp9_inst *inst, struct vdec_fb *fb) in vp9_is_sf_ref_fb() argument 213 if (fb == &vsi->sf_ref_fb[i].fb) in vp9_is_sf_ref_fb() 222 struct vdec_fb *fb = NULL; in vp9_rm_from_fb_use_list() local [all …]
|
| H A D | vdec_vp8_if.c | 123 /* frame buffer (fb) list 124 * [available_fb_node_list] - decode fb are initialized to 0 and populated in 125 * [fb_use_list] - fb is set after decode and is moved to this list 126 * [fb_free_list] - fb is not needed for reference will be moved from 128 * once user remove fb from [fb_free_list], 130 * [fb_disp_list] - fb is set after decode and is moved to this list 131 * once user remove fb from [fb_disp_list] it is 286 mtk_vdec_debug(inst->ctx, "fb size: Y(%d), C(%d)", in get_pic_info() 295 mtk_vdec_debug(inst->ctx, "prev fb base dma=%llx", prev_y_dma); in vp8_dec_finish() 300 struct vdec_fb *fb = (struct vdec_fb *)node->fb; in vp8_dec_finish() local [all …]
|
| /linux/drivers/gpu/drm/msm/disp/dpu1/ |
| H A D | dpu_writeback.c | 38 struct drm_framebuffer *fb; in dpu_wb_conn_atomic_check() local 51 if (!conn_state->writeback_job || !conn_state->writeback_job->fb) in dpu_wb_conn_atomic_check() 60 fb = conn_state->writeback_job->fb; in dpu_wb_conn_atomic_check() 62 DPU_DEBUG("[fb_id:%u][fb:%u,%u][mode:\"%s\":%ux%u]\n", fb->base.id, fb->width, fb->height, in dpu_wb_conn_atomic_check() 65 if (fb->width != mode->hdisplay) { in dpu_wb_conn_atomic_check() 66 DPU_ERROR("invalid fb w=%d, mode w=%d\n", fb->width, mode->hdisplay); in dpu_wb_conn_atomic_check() 68 } else if (fb->height != mode->vdisplay) { in dpu_wb_conn_atomic_check() 69 DPU_ERROR("invalid fb h=%d, mode h=%d\n", fb->height, mode->vdisplay); in dpu_wb_conn_atomic_check() 71 } else if (fb->width > dpu_wb_conn->maxlinewidth) { in dpu_wb_conn_atomic_check() 72 DPU_ERROR("invalid fb w=%d, maxlinewidth=%u\n", in dpu_wb_conn_atomic_check() [all …]
|
| /linux/include/drm/ |
| H A D | drm_framebuffer.h | 74 int (*create_handle)(struct drm_framebuffer *fb, 80 * Optional callback for the dirty fb IOCTL. 109 * Note that the fb is refcounted for the benefit of driver internals, 114 * hold a ref to the fb even though it has already been removed from 137 * @comm: Name of the process allocating the fb, used for fb dumping. 214 struct drm_framebuffer *fb, 219 void drm_framebuffer_remove(struct drm_framebuffer *fb); 220 void drm_framebuffer_cleanup(struct drm_framebuffer *fb); 221 void drm_framebuffer_unregister_private(struct drm_framebuffer *fb); 225 * @fb: DRM framebuffer [all …]
|
| /linux/sound/core/ |
| H A D | ump.c | 111 struct snd_ump_block *fb; in snd_ump_endpoint_free() local 114 fb = list_first_entry(&ump->block_list, struct snd_ump_block, in snd_ump_endpoint_free() 116 list_del(&fb->list); in snd_ump_endpoint_free() 117 if (fb->private_free) in snd_ump_endpoint_free() 118 fb->private_free(fb); in snd_ump_endpoint_free() 119 kfree(fb); in snd_ump_endpoint_free() 243 struct snd_ump_block *fb; in snd_ump_get_block() local 245 list_for_each_entry(fb, &ump->block_list, list) { in snd_ump_get_block() 246 if (fb->info.block_id == id) in snd_ump_get_block() 247 return fb; in snd_ump_get_block() [all …]
|
| /linux/drivers/gpu/drm/exynos/ |
| H A D | exynos_drm_fbdev.c | 11 #include <linux/fb.h> 31 struct drm_gem_object *obj = drm_gem_fb_get_obj(helper->fb, 0); in exynos_drm_fb_mmap() 39 struct drm_framebuffer *fb = fb_helper->fb; in exynos_drm_fb_destroy() local 43 drm_framebuffer_remove(fb); in exynos_drm_fb_destroy() 62 struct drm_framebuffer *fb = helper->fb; in exynos_drm_fbdev_update() local 63 unsigned int size = fb->width * fb->height * fb->format->cpp[0]; in exynos_drm_fbdev_update() 70 offset = fbi->var.xoffset * fb->format->cpp[0]; in exynos_drm_fbdev_update() 71 offset += fbi->var.yoffset * fb->pitches[0]; in exynos_drm_fbdev_update() 110 helper->fb = in exynos_drm_fbdev_driver_fbdev_probe() 115 if (IS_ERR(helper->fb)) { in exynos_drm_fbdev_driver_fbdev_probe() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/devinit/ |
| H A D | nv10.c | 40 struct io_mapping *fb; in nv10_devinit_meminit() local 49 fb = fbmem_init(device); in nv10_devinit_meminit() 50 if (!fb) { in nv10_devinit_meminit() 51 nvkm_error(subdev, "failed to map fb\n"); in nv10_devinit_meminit() 63 fbmem_poke(fb, 0x1c, 0); in nv10_devinit_meminit() 65 fbmem_poke(fb, 0x1c, patt); in nv10_devinit_meminit() 66 fbmem_poke(fb, 0x3c, 0); in nv10_devinit_meminit() 68 if (fbmem_peek(fb, 0x1c) == patt) in nv10_devinit_meminit() 80 fbmem_poke(fb, off, patt); in nv10_devinit_meminit() 81 fbmem_poke(fb, 0, 0); in nv10_devinit_meminit() [all …]
|
| /linux/drivers/gpu/drm/omapdrm/ |
| H A D | omap_fbdev.c | 7 #include <linux/fb.h> 47 struct drm_gem_object *bo = drm_gem_fb_get_obj(helper->fb, 0); in pan_worker() 95 struct drm_framebuffer *fb = helper->fb; in omap_fbdev_fb_destroy() local 96 struct drm_gem_object *bo = drm_gem_fb_get_obj(fb, 0); in omap_fbdev_fb_destroy() 104 drm_framebuffer_remove(fb); in omap_fbdev_fb_destroy() 132 if (helper->fb->funcs->dirty) in omap_fbdev_dirty() 133 return helper->fb->funcs->dirty(helper->fb, NULL, 0, 0, clip, 1); in omap_fbdev_dirty() 145 /* these are not the fb's you're looking for */ in get_fb() 158 struct drm_framebuffer *fb = NULL; in omap_fbdev_driver_fbdev_probe() local 191 DBG("allocating %d bytes for fb %d", gsize.bytes, dev->primary->index); in omap_fbdev_driver_fbdev_probe() [all …]
|
| /linux/drivers/gpu/drm/vkms/ |
| H A D | vkms_plane.c | 83 if (crtc && vkms_state->frame_info->fb) { in vkms_plane_destroy_state() 87 if (drm_framebuffer_read_refcount(vkms_state->frame_info->fb)) in vkms_plane_destroy_state() 88 drm_framebuffer_put(vkms_state->frame_info->fb); in vkms_plane_destroy_state() 131 struct drm_framebuffer *fb = new_state->fb; in vkms_plane_atomic_update() local 135 if (!new_state->crtc || !fb) in vkms_plane_atomic_update() 138 fmt = fb->format->format; in vkms_plane_atomic_update() 145 frame_info->fb = fb; in vkms_plane_atomic_update() 147 drm_framebuffer_get(frame_info->fb); in vkms_plane_atomic_update() 163 if (!new_plane_state->fb || WARN_ON(!new_plane_state->crtc)) in vkms_plane_atomic_check() 185 struct drm_framebuffer *fb = state->fb; in vkms_prepare_fb() local [all …]
|