Lines Matching refs:ast

56 long ast_cursor_vram_offset(struct ast_device *ast)  in ast_cursor_vram_offset()  argument
60 if (size > ast->vram_size) in ast_cursor_vram_offset()
63 return ALIGN_DOWN(ast->vram_size - size, SZ_8); in ast_cursor_vram_offset()
93 static void ast_set_cursor_image(struct ast_device *ast, const u8 *src, in ast_set_cursor_image() argument
96 u8 __iomem *dst = ast_plane_vaddr(&ast->cursor_plane.base); in ast_set_cursor_image()
118 static void ast_set_cursor_base(struct ast_device *ast, u64 address) in ast_set_cursor_base() argument
124 ast_set_index_reg(ast, AST_IO_VGACRI, 0xc8, addr0); in ast_set_cursor_base()
125 ast_set_index_reg(ast, AST_IO_VGACRI, 0xc9, addr1); in ast_set_cursor_base()
126 ast_set_index_reg(ast, AST_IO_VGACRI, 0xca, addr2); in ast_set_cursor_base()
129 static void ast_set_cursor_location(struct ast_device *ast, u16 x, u16 y, in ast_set_cursor_location() argument
137 ast_set_index_reg(ast, AST_IO_VGACRI, 0xc2, x_offset); in ast_set_cursor_location()
138 ast_set_index_reg(ast, AST_IO_VGACRI, 0xc3, y_offset); in ast_set_cursor_location()
139 ast_set_index_reg(ast, AST_IO_VGACRI, 0xc4, x0); in ast_set_cursor_location()
140 ast_set_index_reg(ast, AST_IO_VGACRI, 0xc5, x1); in ast_set_cursor_location()
141 ast_set_index_reg(ast, AST_IO_VGACRI, 0xc6, y0); in ast_set_cursor_location()
142 ast_set_index_reg(ast, AST_IO_VGACRI, 0xc7, y1); in ast_set_cursor_location()
145 static void ast_set_cursor_enabled(struct ast_device *ast, bool enabled) in ast_set_cursor_enabled() argument
155 ast_set_index_reg_mask(ast, AST_IO_VGACRI, 0xcb, mask, vgacrcb); in ast_set_cursor_enabled()
256 struct ast_device *ast = to_ast_device(plane->dev); in ast_cursor_plane_helper_atomic_update() local
276 ast_set_cursor_image(ast, argb4444, fb->width, fb->height); in ast_cursor_plane_helper_atomic_update()
278 ast_set_cursor_base(ast, dst_off); in ast_cursor_plane_helper_atomic_update()
306 ast_set_cursor_location(ast, x, y, x_offset, y_offset); in ast_cursor_plane_helper_atomic_update()
309 ast_set_cursor_enabled(ast, true); in ast_cursor_plane_helper_atomic_update()
315 struct ast_device *ast = to_ast_device(plane->dev); in ast_cursor_plane_helper_atomic_disable() local
317 ast_set_cursor_enabled(ast, false); in ast_cursor_plane_helper_atomic_disable()
334 int ast_cursor_plane_init(struct ast_device *ast) in ast_cursor_plane_init() argument
336 struct drm_device *dev = &ast->base; in ast_cursor_plane_init()
337 struct ast_cursor_plane *ast_cursor_plane = &ast->cursor_plane; in ast_cursor_plane_init()
345 offset = ast_cursor_vram_offset(ast); in ast_cursor_plane_init()