cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

share.h (7077B)


      1/* SPDX-License-Identifier: GPL-2.0-or-later */
      2/*
      3 * Copyright 1998-2008 VIA Technologies, Inc. All Rights Reserved.
      4 * Copyright 2001-2008 S3 Graphics, Inc. All Rights Reserved.
      5
      6 */
      7
      8#ifndef __SHARE_H__
      9#define __SHARE_H__
     10
     11#include "via_modesetting.h"
     12
     13/* Define Bit Field */
     14#define BIT0    0x01
     15#define BIT1    0x02
     16#define BIT2    0x04
     17#define BIT3    0x08
     18#define BIT4    0x10
     19#define BIT5    0x20
     20#define BIT6    0x40
     21#define BIT7    0x80
     22
     23/* Video Memory Size */
     24#define VIDEO_MEMORY_SIZE_16M    0x1000000
     25
     26/*
     27 * Lengths of the VPIT structure arrays.
     28 */
     29#define StdCR       0x19
     30#define StdSR       0x04
     31#define StdGR       0x09
     32#define StdAR       0x14
     33
     34#define PatchCR     11
     35
     36/* Display path */
     37#define IGA1        1
     38#define IGA2        2
     39
     40/* Define Color Depth  */
     41#define MODE_8BPP       1
     42#define MODE_16BPP      2
     43#define MODE_32BPP      4
     44
     45#define GR20    0x20
     46#define GR21    0x21
     47#define GR22    0x22
     48
     49/* Sequencer Registers */
     50#define SR01    0x01
     51#define SR10    0x10
     52#define SR12    0x12
     53#define SR15    0x15
     54#define SR16    0x16
     55#define SR17    0x17
     56#define SR18    0x18
     57#define SR1B    0x1B
     58#define SR1A    0x1A
     59#define SR1C    0x1C
     60#define SR1D    0x1D
     61#define SR1E    0x1E
     62#define SR1F    0x1F
     63#define SR20    0x20
     64#define SR21    0x21
     65#define SR22    0x22
     66#define SR2A    0x2A
     67#define SR2D    0x2D
     68#define SR2E    0x2E
     69
     70#define SR30    0x30
     71#define SR39    0x39
     72#define SR3D    0x3D
     73#define SR3E    0x3E
     74#define SR3F    0x3F
     75#define SR40    0x40
     76#define SR43    0x43
     77#define SR44    0x44
     78#define SR45    0x45
     79#define SR46    0x46
     80#define SR47    0x47
     81#define SR48    0x48
     82#define SR49    0x49
     83#define SR4A    0x4A
     84#define SR4B    0x4B
     85#define SR4C    0x4C
     86#define SR52    0x52
     87#define SR57	0x57
     88#define SR58	0x58
     89#define SR59	0x59
     90#define SR5D    0x5D
     91#define SR5E    0x5E
     92#define SR65    0x65
     93
     94/* CRT Controller Registers */
     95#define CR00    0x00
     96#define CR01    0x01
     97#define CR02    0x02
     98#define CR03    0x03
     99#define CR04    0x04
    100#define CR05    0x05
    101#define CR06    0x06
    102#define CR07    0x07
    103#define CR08    0x08
    104#define CR09    0x09
    105#define CR0A    0x0A
    106#define CR0B    0x0B
    107#define CR0C    0x0C
    108#define CR0D    0x0D
    109#define CR0E    0x0E
    110#define CR0F    0x0F
    111#define CR10    0x10
    112#define CR11    0x11
    113#define CR12    0x12
    114#define CR13    0x13
    115#define CR14    0x14
    116#define CR15    0x15
    117#define CR16    0x16
    118#define CR17    0x17
    119#define CR18    0x18
    120
    121/* Extend CRT Controller Registers */
    122#define CR30    0x30
    123#define CR31    0x31
    124#define CR32    0x32
    125#define CR33    0x33
    126#define CR34    0x34
    127#define CR35    0x35
    128#define CR36    0x36
    129#define CR37    0x37
    130#define CR38    0x38
    131#define CR39    0x39
    132#define CR3A    0x3A
    133#define CR3B    0x3B
    134#define CR3C    0x3C
    135#define CR3D    0x3D
    136#define CR3E    0x3E
    137#define CR3F    0x3F
    138#define CR40    0x40
    139#define CR41    0x41
    140#define CR42    0x42
    141#define CR43    0x43
    142#define CR44    0x44
    143#define CR45    0x45
    144#define CR46    0x46
    145#define CR47    0x47
    146#define CR48    0x48
    147#define CR49    0x49
    148#define CR4A    0x4A
    149#define CR4B    0x4B
    150#define CR4C    0x4C
    151#define CR4D    0x4D
    152#define CR4E    0x4E
    153#define CR4F    0x4F
    154#define CR50    0x50
    155#define CR51    0x51
    156#define CR52    0x52
    157#define CR53    0x53
    158#define CR54    0x54
    159#define CR55    0x55
    160#define CR56    0x56
    161#define CR57    0x57
    162#define CR58    0x58
    163#define CR59    0x59
    164#define CR5A    0x5A
    165#define CR5B    0x5B
    166#define CR5C    0x5C
    167#define CR5D    0x5D
    168#define CR5E    0x5E
    169#define CR5F    0x5F
    170#define CR60    0x60
    171#define CR61    0x61
    172#define CR62    0x62
    173#define CR63    0x63
    174#define CR64    0x64
    175#define CR65    0x65
    176#define CR66    0x66
    177#define CR67    0x67
    178#define CR68    0x68
    179#define CR69    0x69
    180#define CR6A    0x6A
    181#define CR6B    0x6B
    182#define CR6C    0x6C
    183#define CR6D    0x6D
    184#define CR6E    0x6E
    185#define CR6F    0x6F
    186#define CR70    0x70
    187#define CR71    0x71
    188#define CR72    0x72
    189#define CR73    0x73
    190#define CR74    0x74
    191#define CR75    0x75
    192#define CR76    0x76
    193#define CR77    0x77
    194#define CR78    0x78
    195#define CR79    0x79
    196#define CR7A    0x7A
    197#define CR7B    0x7B
    198#define CR7C    0x7C
    199#define CR7D    0x7D
    200#define CR7E    0x7E
    201#define CR7F    0x7F
    202#define CR80    0x80
    203#define CR81    0x81
    204#define CR82    0x82
    205#define CR83    0x83
    206#define CR84    0x84
    207#define CR85    0x85
    208#define CR86    0x86
    209#define CR87    0x87
    210#define CR88    0x88
    211#define CR89    0x89
    212#define CR8A    0x8A
    213#define CR8B    0x8B
    214#define CR8C    0x8C
    215#define CR8D    0x8D
    216#define CR8E    0x8E
    217#define CR8F    0x8F
    218#define CR90    0x90
    219#define CR91    0x91
    220#define CR92    0x92
    221#define CR93    0x93
    222#define CR94    0x94
    223#define CR95    0x95
    224#define CR96    0x96
    225#define CR97    0x97
    226#define CR98    0x98
    227#define CR99    0x99
    228#define CR9A    0x9A
    229#define CR9B    0x9B
    230#define CR9C    0x9C
    231#define CR9D    0x9D
    232#define CR9E    0x9E
    233#define CR9F    0x9F
    234#define CRA0    0xA0
    235#define CRA1    0xA1
    236#define CRA2    0xA2
    237#define CRA3    0xA3
    238#define CRD2    0xD2
    239#define CRD3    0xD3
    240#define CRD4    0xD4
    241
    242/* LUT Table*/
    243#define LUT_DATA             0x3C9	/* DACDATA */
    244#define LUT_INDEX_READ       0x3C7	/* DACRX */
    245#define LUT_INDEX_WRITE      0x3C8	/* DACWX */
    246#define DACMASK              0x3C6
    247
    248/* Definition Device */
    249#define DEVICE_CRT  0x01
    250#define DEVICE_DVI  0x03
    251#define DEVICE_LCD  0x04
    252
    253/* Device output interface */
    254#define INTERFACE_NONE          0x00
    255#define INTERFACE_ANALOG_RGB    0x01
    256#define INTERFACE_DVP0          0x02
    257#define INTERFACE_DVP1          0x03
    258#define INTERFACE_DFP_HIGH      0x04
    259#define INTERFACE_DFP_LOW       0x05
    260#define INTERFACE_DFP           0x06
    261#define INTERFACE_LVDS0         0x07
    262#define INTERFACE_LVDS1         0x08
    263#define INTERFACE_LVDS0LVDS1    0x09
    264#define INTERFACE_TMDS          0x0A
    265
    266#define HW_LAYOUT_LCD_ONLY      0x01
    267#define HW_LAYOUT_DVI_ONLY      0x02
    268#define HW_LAYOUT_LCD_DVI       0x03
    269#define HW_LAYOUT_LCD1_LCD2     0x04
    270#define HW_LAYOUT_LCD_EXTERNAL_LCD2 0x10
    271
    272/* Definition CRTC Timing Index */
    273#define H_TOTAL_INDEX               0
    274#define H_ADDR_INDEX                1
    275#define H_BLANK_START_INDEX         2
    276#define H_BLANK_END_INDEX           3
    277#define H_SYNC_START_INDEX          4
    278#define H_SYNC_END_INDEX            5
    279#define V_TOTAL_INDEX               6
    280#define V_ADDR_INDEX                7
    281#define V_BLANK_START_INDEX         8
    282#define V_BLANK_END_INDEX           9
    283#define V_SYNC_START_INDEX          10
    284#define V_SYNC_END_INDEX            11
    285#define H_TOTAL_SHADOW_INDEX        12
    286#define H_BLANK_END_SHADOW_INDEX    13
    287#define V_TOTAL_SHADOW_INDEX        14
    288#define V_ADDR_SHADOW_INDEX         15
    289#define V_BLANK_SATRT_SHADOW_INDEX  16
    290#define V_BLANK_END_SHADOW_INDEX    17
    291#define V_SYNC_SATRT_SHADOW_INDEX   18
    292#define V_SYNC_END_SHADOW_INDEX     19
    293
    294/* LCD display method
    295*/
    296#define     LCD_EXPANDSION              0x00
    297#define     LCD_CENTERING               0x01
    298
    299/* LCD mode
    300*/
    301#define     LCD_OPENLDI               0x00
    302#define     LCD_SPWG                  0x01
    303
    304struct crt_mode_table {
    305	int refresh_rate;
    306	int h_sync_polarity;
    307	int v_sync_polarity;
    308	struct via_display_timing crtc;
    309};
    310
    311struct io_reg {
    312	int port;
    313	u8 index;
    314	u8 mask;
    315	u8 value;
    316};
    317
    318#endif /* __SHARE_H__ */