^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0-or-later */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * drivers/video/geode/geodefb.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) * -- Geode framebuffer driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) * Copyright (C) 2005 Arcom Control Systems Ltd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) #ifndef __GEODEFB_H__
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #define __GEODEFB_H__
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) struct geodefb_info;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) struct geode_dc_ops {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) void (*set_mode)(struct fb_info *);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) void (*set_palette_reg)(struct fb_info *, unsigned, unsigned, unsigned, unsigned);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) struct geode_vid_ops {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) void (*set_dclk)(struct fb_info *);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) void (*configure_display)(struct fb_info *);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) int (*blank_display)(struct fb_info *, int blank_mode);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) struct geodefb_par {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) int enable_crt;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) int panel_x; /* dimensions of an attached flat panel, non-zero => enable panel */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) int panel_y;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) void __iomem *dc_regs;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) void __iomem *vid_regs;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) const struct geode_dc_ops *dc_ops;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) const struct geode_vid_ops *vid_ops;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) #endif /* !__GEODEFB_H__ */