staging: xgifb: rename XGINew_SetRegAND() to xgifb_reg_and()
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / staging / xgifb / vb_util.c
CommitLineData
d7636e0b 1#include "vb_def.h"
2#include "vgatypes.h"
3#include "vb_struct.h"
4
d7636e0b 5#include "XGIfb.h"
6#include <asm/io.h>
7#include <linux/types.h>
d7636e0b 8
0998e1db 9#include "vb_util.h"
d7636e0b 10
8104e329 11void xgifb_reg_set(unsigned long port, unsigned short index,
602f2c96 12 unsigned short data)
d7636e0b 13{
1e59f711
BP
14 outb(index, port);
15 outb(data, port + 1);
d7636e0b 16}
17
58839b01 18unsigned char xgifb_reg_get(unsigned long port, unsigned short index)
d7636e0b 19{
602f2c96 20 unsigned char data;
d7636e0b 21
602f2c96
PS
22 outb(index, port);
23 data = inb(port + 1);
24 return data;
d7636e0b 25}
26
ec9e5d3e 27void xgifb_reg_and_or(unsigned long Port, unsigned short Index,
602f2c96 28 unsigned short DataAND, unsigned short DataOR)
d7636e0b 29{
602f2c96 30 unsigned short temp;
d7636e0b 31
58839b01 32 temp = xgifb_reg_get(Port, Index); /* XGINew_Part1Port index 02 */
602f2c96 33 temp = (temp & (DataAND)) | DataOR;
8104e329 34 xgifb_reg_set(Port, Index, temp);
d7636e0b 35}
36
dc50556b 37void xgifb_reg_and(unsigned long Port, unsigned short Index,
602f2c96 38 unsigned short DataAND)
d7636e0b 39{
602f2c96 40 unsigned short temp;
d7636e0b 41
58839b01 42 temp = xgifb_reg_get(Port, Index); /* XGINew_Part1Port index 02 */
602f2c96 43 temp &= DataAND;
8104e329 44 xgifb_reg_set(Port, Index, temp);
d7636e0b 45}
46
b9bf6e4e 47void xgifb_reg_or(unsigned long Port, unsigned short Index,
602f2c96 48 unsigned short DataOR)
d7636e0b 49{
602f2c96 50 unsigned short temp;
d7636e0b 51
58839b01 52 temp = xgifb_reg_get(Port, Index); /* XGINew_Part1Port index 02 */
602f2c96 53 temp |= DataOR;
8104e329 54 xgifb_reg_set(Port, Index, temp);
d7636e0b 55}