blob: 2a6f5abd3c675da0af84d1e2edcacb96a69d5ddc [file] [log] [blame]
Thomas Gleixner64b70da2019-05-20 19:08:15 +02001/* SPDX-License-Identifier: GPL-2.0-or-later */
Florian Tobias Schandinat100e74a12010-04-17 19:44:53 +00002/*
3 * Copyright 1998-2008 VIA Technologies, Inc. All Rights Reserved.
4 * Copyright 2001-2008 S3 Graphics, Inc. All Rights Reserved.
5 * Copyright 2010 Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Florian Tobias Schandinat100e74a12010-04-17 19:44:53 +00006 */
7/*
8 * basic modesetting functions
9 */
10
11#ifndef __VIA_MODESETTING_H__
12#define __VIA_MODESETTING_H__
13
14#include <linux/types.h>
15
Florian Tobias Schandinat936a3f72011-06-06 01:27:34 +000016
17#define VIA_PITCH_SIZE (1<<3)
18#define VIA_PITCH_MAX 0x3FF8
19
20
Steffen Trumtrarea4f3112012-11-22 13:11:32 +010021struct via_display_timing {
Florian Tobias Schandinatd60defb2011-05-21 22:46:31 +000022 u16 hor_total;
23 u16 hor_addr;
24 u16 hor_blank_start;
25 u16 hor_blank_end;
26 u16 hor_sync_start;
27 u16 hor_sync_end;
28 u16 ver_total;
29 u16 ver_addr;
30 u16 ver_blank_start;
31 u16 ver_blank_end;
32 u16 ver_sync_start;
33 u16 ver_sync_end;
34};
35
36
Steffen Trumtrarea4f3112012-11-22 13:11:32 +010037void via_set_primary_timing(const struct via_display_timing *timing);
38void via_set_secondary_timing(const struct via_display_timing *timing);
Florian Tobias Schandinat100e74a12010-04-17 19:44:53 +000039void via_set_primary_address(u32 addr);
40void via_set_secondary_address(u32 addr);
41void via_set_primary_pitch(u32 pitch);
42void via_set_secondary_pitch(u32 pitch);
43void via_set_primary_color_depth(u8 depth);
44void via_set_secondary_color_depth(u8 depth);
45
46#endif /* __VIA_MODESETTING_H__ */