alistair23-linux/drivers/staging/xgifb/vb_util.h
Shivani Bhardwaj d1e9aef604 Staging: xgifb: vb_util: Fixed sparse warning of bit truncation due to cast
Fixed the warning generated by sparse that 'cast truncates bits from
constant value' by typecasting unsigned values to u8 as their logical
operation is being performed with and stored in a u8 type variable.

Signed-off-by: Shivani Bhardwaj <shivanib134@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-02 11:36:00 +02:00

44 lines
898 B
C

#ifndef _VBUTIL_
#define _VBUTIL_
static inline void xgifb_reg_set(unsigned long port, u8 index, u8 data)
{
outb(index, port);
outb(data, port + 1);
}
static inline u8 xgifb_reg_get(unsigned long port, u8 index)
{
outb(index, port);
return inb(port + 1);
}
static inline void xgifb_reg_and_or(unsigned long port, u8 index,
unsigned data_and, unsigned data_or)
{
u8 temp;
temp = xgifb_reg_get(port, index);
temp = (u8) ((temp & data_and) | data_or);
xgifb_reg_set(port, index, temp);
}
static inline void xgifb_reg_and(unsigned long port, u8 index, unsigned data_and)
{
u8 temp;
temp = xgifb_reg_get(port, index);
temp = (u8) (temp & data_and);
xgifb_reg_set(port, index, temp);
}
static inline void xgifb_reg_or(unsigned long port, u8 index, unsigned data_or)
{
u8 temp;
temp = xgifb_reg_get(port, index);
temp |= data_or;
xgifb_reg_set(port, index, temp);
}
#endif