162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * drivers/video/geode/geodefb.h 462306a36Sopenharmony_ci * -- Geode framebuffer driver 562306a36Sopenharmony_ci * 662306a36Sopenharmony_ci * Copyright (C) 2005 Arcom Control Systems Ltd. 762306a36Sopenharmony_ci */ 862306a36Sopenharmony_ci#ifndef __GEODEFB_H__ 962306a36Sopenharmony_ci#define __GEODEFB_H__ 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_cistruct geodefb_info; 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cistruct geode_dc_ops { 1462306a36Sopenharmony_ci void (*set_mode)(struct fb_info *); 1562306a36Sopenharmony_ci void (*set_palette_reg)(struct fb_info *, unsigned, unsigned, unsigned, unsigned); 1662306a36Sopenharmony_ci}; 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_cistruct geode_vid_ops { 1962306a36Sopenharmony_ci void (*set_dclk)(struct fb_info *); 2062306a36Sopenharmony_ci void (*configure_display)(struct fb_info *); 2162306a36Sopenharmony_ci int (*blank_display)(struct fb_info *, int blank_mode); 2262306a36Sopenharmony_ci}; 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_cistruct geodefb_par { 2562306a36Sopenharmony_ci int enable_crt; 2662306a36Sopenharmony_ci int panel_x; /* dimensions of an attached flat panel, non-zero => enable panel */ 2762306a36Sopenharmony_ci int panel_y; 2862306a36Sopenharmony_ci void __iomem *dc_regs; 2962306a36Sopenharmony_ci void __iomem *vid_regs; 3062306a36Sopenharmony_ci const struct geode_dc_ops *dc_ops; 3162306a36Sopenharmony_ci const struct geode_vid_ops *vid_ops; 3262306a36Sopenharmony_ci}; 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci#endif /* !__GEODEFB_H__ */ 35