Home
last modified time | relevance | path

Searched full:fb (Results 1 – 25 of 1236) sorted by relevance

12345678910>>...50

/Linux-v5.10/drivers/video/fbdev/
Dgoldfishfb.c15 #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 …]
Damba-clcd.c19 #include <linux/fb.h>
33 #define to_clcd(info) container_of(info, struct clcd_fb, fb)
36 static const char *clcd_name = "CLCD FB";
51 static inline void clcdfb_set_start(struct clcd_fb *fb) in clcdfb_set_start() argument
53 unsigned long ustart = fb->fb.fix.smem_start; in clcdfb_set_start()
56 ustart += fb->fb.var.yoffset * fb->fb.fix.line_length; in clcdfb_set_start()
57 lstart = ustart + fb->fb.var.yres * fb->fb.fix.line_length / 2; in clcdfb_set_start()
59 writel(ustart, fb->regs + CLCD_UBAS); in clcdfb_set_start()
60 writel(lstart, fb->regs + CLCD_LBAS); in clcdfb_set_start()
63 static void clcdfb_disable(struct clcd_fb *fb) in clcdfb_disable() argument
[all …]
Dstifb.c64 #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 …]
Dwm8505fb.c11 #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 …]
DKconfig12 menuconfig FB config
31 in the /dev directory, i.e. /dev/fb*.
34 buffer devices. Please read <file:Documentation/fb/framebuffer.rst>
50 depends on FB
65 depends on FB
71 depends on FB
78 depends on FB
86 depends on FB
94 depends on FB
102 depends on FB
[all …]
/Linux-v5.10/drivers/gpu/drm/nouveau/nvkm/subdev/fb/
DKbuild2 nvkm-y += nvkm/subdev/fb/base.o
3 nvkm-y += nvkm/subdev/fb/nv04.o
4 nvkm-y += nvkm/subdev/fb/nv10.o
5 nvkm-y += nvkm/subdev/fb/nv1a.o
6 nvkm-y += nvkm/subdev/fb/nv20.o
7 nvkm-y += nvkm/subdev/fb/nv25.o
8 nvkm-y += nvkm/subdev/fb/nv30.o
9 nvkm-y += nvkm/subdev/fb/nv35.o
10 nvkm-y += nvkm/subdev/fb/nv36.o
11 nvkm-y += nvkm/subdev/fb/nv40.o
[all …]
Dbase.c35 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()
91 struct nvkm_fb *fb = nvkm_fb(subdev); in nvkm_fb_intr() local
92 if (fb->func->intr) in nvkm_fb_intr()
[all …]
Dgf100.c34 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()
64 fb->r100c10_page = alloc_page(GFP_KERNEL | __GFP_ZERO); in gf100_fb_oneinit()
65 if (fb->r100c10_page) { in gf100_fb_oneinit()
66 fb->r100c10 = dma_map_page(device->dev, fb->r100c10_page, 0, in gf100_fb_oneinit()
[all …]
Dnv50.c34 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()
198 struct nv50_fb *fb = nv50_fb(base); in nv50_fb_oneinit() local
199 struct nvkm_device *device = fb->base.subdev.device; in nv50_fb_oneinit()
201 fb->r100c08_page = alloc_page(GFP_KERNEL | __GFP_ZERO); in nv50_fb_oneinit()
202 if (fb->r100c08_page) { in nv50_fb_oneinit()
203 fb->r100c08 = dma_map_page(device->dev, fb->r100c08_page, 0, in nv50_fb_oneinit()
[all …]
/Linux-v5.10/drivers/firmware/broadcom/
Dbcm47xx_sprom.c192 bool fb = fallback; in bcm47xx_sprom_fill_auto() local
198 ENTRY(0xfffffffe, u32, pre, "boardflags", boardflags, 0, fb); in bcm47xx_sprom_fill_auto()
199 ENTRY(0xfffffff0, u32, pre, "boardflags2", boardflags2, 0, fb); in bcm47xx_sprom_fill_auto()
200 ENTRY(0xfffff800, u32, pre, "boardflags3", boardflags3, 0, fb); in bcm47xx_sprom_fill_auto()
201 ENTRY(0x00000002, u16, pre, "boardflags", boardflags_lo, 0, fb); in bcm47xx_sprom_fill_auto()
203 ENTRY(0xfffffffe, u16, pre, "boardnum", board_num, 0, fb); in bcm47xx_sprom_fill_auto()
204 ENTRY(0x00000002, u8, pre, "cc", country_code, 0, fb); in bcm47xx_sprom_fill_auto()
205 ENTRY(0xfffffff8, u8, pre, "regrev", regrev, 0, fb); in bcm47xx_sprom_fill_auto()
207 ENTRY(0xfffffffe, u8, pre, "ledbh0", gpio0, 0xff, fb); in bcm47xx_sprom_fill_auto()
208 ENTRY(0xfffffffe, u8, pre, "ledbh1", gpio1, 0xff, fb); in bcm47xx_sprom_fill_auto()
[all …]
/Linux-v5.10/drivers/staging/fieldbus/
Ddev_core.c29 struct fieldbus_dev *fb = dev_get_drvdata(dev); in online_show() local
31 return sprintf(buf, "%d\n", !!fb->online); in online_show()
38 struct fieldbus_dev *fb = dev_get_drvdata(dev); in enabled_show() local
40 if (!fb->enable_get) in enabled_show()
42 return sprintf(buf, "%d\n", !!fb->enable_get(fb)); in enabled_show()
48 struct fieldbus_dev *fb = dev_get_drvdata(dev); in enabled_store() local
52 if (!fb->simple_enable_set) in enabled_store()
57 ret = fb->simple_enable_set(fb, value); in enabled_store()
67 struct fieldbus_dev *fb = dev_get_drvdata(dev); in card_name_show() local
73 return snprintf(buf, PAGE_SIZE, "%s\n", fb->card_name); in card_name_show()
[all …]
/Linux-v5.10/drivers/gpu/drm/msm/
Dmsm_fb.c34 void msm_framebuffer_describe(struct drm_framebuffer *fb, struct seq_file *m) in msm_framebuffer_describe() argument
36 int i, n = fb->format->num_planes; in msm_framebuffer_describe()
38 seq_printf(m, "fb: %dx%d@%4.4s (%2d, ID:%d)\n", in msm_framebuffer_describe()
39 fb->width, fb->height, (char *)&fb->format->format, in msm_framebuffer_describe()
40 drm_framebuffer_read_refcount(fb), fb->base.id); in msm_framebuffer_describe()
44 i, fb->offsets[i], fb->pitches[i]); in msm_framebuffer_describe()
45 msm_gem_describe(fb->obj[i], m); in msm_framebuffer_describe()
50 /* prepare/pin all the fb's bo's for scanout. Note that it is not valid
51 * to prepare an fb more multiple different initiator 'id's. But that
53 * this, the gpu doesn't care about fb's.
[all …]
/Linux-v5.10/drivers/gpu/drm/
Ddrm_framebuffer.c78 const struct drm_framebuffer *fb) in drm_framebuffer_check_src_coords() argument
82 fb_width = fb->width << 16; in drm_framebuffer_check_src_coords()
83 fb_height = fb->height << 16; in drm_framebuffer_check_src_coords()
85 /* Make sure source coordinates are inside the fb. */ in drm_framebuffer_check_src_coords()
91 "%u.%06ux%u.%06u+%u.%06u+%u.%06u (fb %ux%u)\n", in drm_framebuffer_check_src_coords()
96 fb->width, fb->height); in drm_framebuffer_check_src_coords()
104 * drm_mode_addfb - add an FB to the graphics configuration
109 * Add a new FB to the specified CRTC, given a user request. This is the
229 DRM_DEBUG_KMS("bad fb modifier %llu for plane %d\n", in framebuffer_check()
236 DRM_DEBUG_KMS("bad fb modifier %llu for plane %d\n", in framebuffer_check()
[all …]
/Linux-v5.10/drivers/staging/fbtft/
DKconfig4 depends on FB && SPI
14 tristate "FB driver for the AGM1264K-FL LCD display"
20 tristate "FB driver for the BD663474 LCD Controller"
26 tristate "FB driver for the HX8340BN LCD Controller"
32 tristate "FB driver for the HX8347D LCD Controller"
38 tristate "FB driver for the HX8353D LCD Controller"
44 tristate "FB driver for the HX8357D LCD Controller"
50 tristate "FB driver for the ILI9163 LCD Controller"
56 tristate "FB driver for the ILI9320 LCD Controller"
62 tristate "FB driver for the ILI9325 LCD Controller"
[all …]
/Linux-v5.10/drivers/gpu/drm/arm/display/komeda/
Dkomeda_framebuffer.c16 static void komeda_fb_destroy(struct drm_framebuffer *fb) in komeda_fb_destroy() argument
18 struct komeda_fb *kfb = to_kfb(fb); in komeda_fb_destroy()
21 for (i = 0; i < fb->format->num_planes; i++) in komeda_fb_destroy()
22 drm_gem_object_put(fb->obj[i]); in komeda_fb_destroy()
24 drm_framebuffer_cleanup(fb); in komeda_fb_destroy()
28 static int komeda_fb_create_handle(struct drm_framebuffer *fb, in komeda_fb_create_handle() argument
31 return drm_gem_handle_create(file, fb->obj[0], handle); in komeda_fb_create_handle()
43 struct drm_framebuffer *fb = &kfb->base; in komeda_fb_afbc_size_check() local
44 const struct drm_format_info *info = fb->format; in komeda_fb_afbc_size_check()
55 switch (fb->modifier & AFBC_FORMAT_MOD_BLOCK_SIZE_MASK) { in komeda_fb_afbc_size_check()
[all …]
/Linux-v5.10/drivers/gpu/drm/omapdrm/
Domap_fb.c42 /* per-plane info for the fb: */
58 static int omap_framebuffer_dirty(struct drm_framebuffer *fb, in omap_framebuffer_dirty() argument
66 drm_modeset_lock_all(fb->dev); in omap_framebuffer_dirty()
68 drm_for_each_crtc(crtc, fb->dev) in omap_framebuffer_dirty()
71 drm_modeset_unlock_all(fb->dev); in omap_framebuffer_dirty()
82 static u32 get_linear_addr(struct drm_framebuffer *fb, in get_linear_addr() argument
85 struct omap_framebuffer *omap_fb = to_omap_framebuffer(fb); in get_linear_addr()
89 offset = fb->offsets[n] in get_linear_addr()
91 + (y * fb->pitches[n] / (n == 0 ? 1 : format->vsub)); in get_linear_addr()
96 bool omap_framebuffer_supports_rotation(struct drm_framebuffer *fb) in omap_framebuffer_supports_rotation() argument
[all …]
/Linux-v5.10/drivers/gpu/drm/imx/dcss/
Ddcss-plane.c52 static inline bool dcss_plane_fb_is_linear(const struct drm_framebuffer *fb) in dcss_plane_fb_is_linear() argument
54 return ((fb->flags & DRM_MODE_FB_MODIFIERS) == 0) || in dcss_plane_fb_is_linear()
55 ((fb->flags & DRM_MODE_FB_MODIFIERS) != 0 && in dcss_plane_fb_is_linear()
56 fb->modifier == DRM_FORMAT_MOD_LINEAR); in dcss_plane_fb_is_linear()
144 struct drm_framebuffer *fb = state->fb; in dcss_plane_atomic_check() local
152 if (!fb || !state->crtc) in dcss_plane_atomic_check()
155 cma_obj = drm_fb_cma_get_gem_obj(fb, 0); in dcss_plane_atomic_check()
166 fb->format->format)) { in dcss_plane_atomic_check()
183 if (!dcss_plane_can_rotate(fb->format, in dcss_plane_atomic_check()
184 !!(fb->flags & DRM_MODE_FB_MODIFIERS), in dcss_plane_atomic_check()
[all …]
/Linux-v5.10/drivers/media/platform/mtk-vcodec/vdec/
Dvdec_vp9_if.c44 * @fb : frmae buffer
48 struct vdec_fb *fb; member
77 * @fb : super frame reference frame buffer
82 struct vdec_fb fb; member
100 * @fb : capture buffer (AP-W, VPU-R)
143 struct vdec_fb fb; member
176 * @dec_fb : vdec_fb node to link fb to different fb_xxx_list
206 static bool vp9_is_sf_ref_fb(struct vdec_vp9_inst *inst, struct vdec_fb *fb) in vp9_is_sf_ref_fb() argument
212 if (fb == &vsi->sf_ref_fb[i].fb) in vp9_is_sf_ref_fb()
221 struct vdec_fb *fb = NULL; in vp9_rm_from_fb_use_list() local
[all …]
Dvdec_vp8_if.c126 /* frame buffer (fb) list
127 * [available_fb_node_list] - decode fb are initialized to 0 and populated in
128 * [fb_use_list] - fb is set after decode and is moved to this list
129 * [fb_free_list] - fb is not needed for reference will be moved from
131 * once user remove fb from [fb_free_list],
133 * [fb_disp_list] - fb is set after decode and is moved to this list
134 * once user remove fb from [fb_disp_list] it is
289 mtk_vcodec_debug(inst, "fb size: Y(%d), C(%d)", in get_pic_info()
298 mtk_vcodec_debug(inst, "prev fb base dma=%llx", prev_y_dma); in vp8_dec_finish()
303 struct vdec_fb *fb = (struct vdec_fb *)node->fb; in vp8_dec_finish() local
[all …]
/Linux-v5.10/drivers/gpu/drm/imx/
Dipuv3-plane.c95 struct drm_framebuffer *fb = state->fb; in drm_plane_state_to_eba() local
100 cma_obj = drm_fb_cma_get_gem_obj(fb, plane); in drm_plane_state_to_eba()
103 return cma_obj->paddr + fb->offsets[plane] + fb->pitches[plane] * y + in drm_plane_state_to_eba()
104 fb->format->cpp[plane] * x; in drm_plane_state_to_eba()
110 struct drm_framebuffer *fb = state->fb; in drm_plane_state_to_ubo() local
116 cma_obj = drm_fb_cma_get_gem_obj(fb, 1); in drm_plane_state_to_ubo()
119 x /= fb->format->hsub; in drm_plane_state_to_ubo()
120 y /= fb->format->vsub; in drm_plane_state_to_ubo()
122 return cma_obj->paddr + fb->offsets[1] + fb->pitches[1] * y + in drm_plane_state_to_ubo()
123 fb->format->cpp[1] * x - eba; in drm_plane_state_to_ubo()
[all …]
/Linux-v5.10/drivers/gpu/drm/i915/display/
Dintel_fbdev.c51 return ifbdev->fb->frontbuffer; in to_frontbuffer()
118 struct drm_framebuffer *fb; in intelfb_alloc() local
140 /* If the FB is too big, just don't use it since fbdev is not very in intelfb_alloc()
153 fb = intel_framebuffer_create(obj, &mode_cmd); in intelfb_alloc()
155 if (IS_ERR(fb)) in intelfb_alloc()
156 return PTR_ERR(fb); in intelfb_alloc()
158 ifbdev->fb = to_intel_framebuffer(fb); in intelfb_alloc()
167 struct intel_framebuffer *intel_fb = ifbdev->fb; in intelfb_create()
187 "BIOS fb too small (%dx%d), we require (%dx%d)," in intelfb_create()
192 intel_fb = ifbdev->fb = NULL; in intelfb_create()
[all …]
/Linux-v5.10/drivers/gpu/drm/armada/
Darmada_plane.c40 struct drm_framebuffer *fb = state->fb; in armada_drm_plane_calc() local
41 const struct drm_format_info *format = fb->format; in armada_drm_plane_calc()
45 u32 addr = drm_fb_obj(fb)->dev_addr; in armada_drm_plane_calc()
49 fb->pitches[0], x, y, format->cpp[0] * 8); in armada_drm_plane_calc()
54 addrs[0][0] = addr + fb->offsets[0] + y * fb->pitches[0] + in armada_drm_plane_calc()
56 pitches[0] = fb->pitches[0]; in armada_drm_plane_calc()
62 addrs[0][i] = addr + fb->offsets[i] + y * fb->pitches[i] + in armada_drm_plane_calc()
64 pitches[i] = fb->pitches[i]; in armada_drm_plane_calc()
84 DRM_DEBUG_KMS("[PLANE:%d:%s] [FB:%d]\n", in armada_drm_plane_prepare_fb()
86 state->fb ? state->fb->base.id : 0); in armada_drm_plane_prepare_fb()
[all …]
/Linux-v5.10/include/drm/
Ddrm_framebuffer.h73 int (*create_handle)(struct drm_framebuffer *fb,
79 * Optional callback for the dirty fb IOCTL.
106 * Note that the fb is refcounted for the benefit of driver internals,
111 * hold a ref to the fb even though it has already been removed from
134 * @comm: Name of the process allocating the fb, used for fb dumping.
219 struct drm_framebuffer *fb,
224 void drm_framebuffer_remove(struct drm_framebuffer *fb);
225 void drm_framebuffer_cleanup(struct drm_framebuffer *fb);
226 void drm_framebuffer_unregister_private(struct drm_framebuffer *fb);
230 * @fb: DRM framebuffer
[all …]
/Linux-v5.10/drivers/gpu/drm/xen/
Dxen_drm_front_kms.c36 static void fb_destroy(struct drm_framebuffer *fb) in fb_destroy() argument
38 struct xen_drm_front_drm_info *drm_info = fb->dev->dev_private; in fb_destroy()
41 if (drm_dev_enter(fb->dev, &idx)) { in fb_destroy()
43 xen_drm_front_fb_to_cookie(fb)); in fb_destroy()
46 drm_gem_fb_destroy(fb); in fb_destroy()
58 struct drm_framebuffer *fb; in fb_create() local
62 fb = drm_gem_fb_create_with_funcs(dev, filp, mode_cmd, &fb_funcs); in fb_create()
63 if (IS_ERR(fb)) in fb_create()
64 return fb; in fb_create()
66 gem_obj = fb->obj[0]; in fb_create()
[all …]
/Linux-v5.10/drivers/gpu/drm/selftests/
Dtest-drm_damage_helper.c80 struct drm_framebuffer fb = { in igt_damage_iter_no_damage() local
87 .fb = &fb, in igt_damage_iter_no_damage()
91 /* Plane src same as fb size. */ in igt_damage_iter_no_damage()
92 set_plane_src(&old_state, 0, 0, fb.width << 16, fb.height << 16); in igt_damage_iter_no_damage()
93 set_plane_src(&state, 0, 0, fb.width << 16, fb.height << 16); in igt_damage_iter_no_damage()
111 struct drm_framebuffer fb = { in igt_damage_iter_no_damage_fractional_src() local
118 .fb = &fb, in igt_damage_iter_no_damage_fractional_src()
144 struct drm_framebuffer fb = { in igt_damage_iter_no_damage_src_moved() local
151 .fb = &fb, in igt_damage_iter_no_damage_src_moved()
176 struct drm_framebuffer fb = { in igt_damage_iter_no_damage_fractional_src_moved() local
[all …]

12345678910>>...50