mirror of
https://github.com/rd-stuffs/msm-4.14.git
synced 2025-02-20 11:45:48 +08:00
USB: sisusbvga: Change port variable from signed to unsigned
commit 2df7405f79ce1674d73c2786fe1a8727c905d65b upstream. Change a bunch of arguments of wrapper functions which pass signed integer to an unsigned integer which might cause undefined behaviors when sign integer overflow. Signed-off-by: Changming Liu <liu.changm@northeastern.edu> Cc: stable <stable@vger.kernel.org> Link: https://lore.kernel.org/r/BL0PR06MB45482D71EA822D75A0E60A2EE5D50@BL0PR06MB4548.namprd06.prod.outlook.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
e21c8c03af
commit
56d0f59a4e
@ -1198,18 +1198,18 @@ static int sisusb_read_mem_bulk(struct sisusb_usb_data *sisusb, u32 addr,
|
||||
/* High level: Gfx (indexed) register access */
|
||||
|
||||
#ifdef INCL_SISUSB_CON
|
||||
int sisusb_setreg(struct sisusb_usb_data *sisusb, int port, u8 data)
|
||||
int sisusb_setreg(struct sisusb_usb_data *sisusb, u32 port, u8 data)
|
||||
{
|
||||
return sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, port, data);
|
||||
}
|
||||
|
||||
int sisusb_getreg(struct sisusb_usb_data *sisusb, int port, u8 *data)
|
||||
int sisusb_getreg(struct sisusb_usb_data *sisusb, u32 port, u8 *data)
|
||||
{
|
||||
return sisusb_read_memio_byte(sisusb, SISUSB_TYPE_IO, port, data);
|
||||
}
|
||||
#endif
|
||||
|
||||
int sisusb_setidxreg(struct sisusb_usb_data *sisusb, int port,
|
||||
int sisusb_setidxreg(struct sisusb_usb_data *sisusb, u32 port,
|
||||
u8 index, u8 data)
|
||||
{
|
||||
int ret;
|
||||
@ -1219,7 +1219,7 @@ int sisusb_setidxreg(struct sisusb_usb_data *sisusb, int port,
|
||||
return ret;
|
||||
}
|
||||
|
||||
int sisusb_getidxreg(struct sisusb_usb_data *sisusb, int port,
|
||||
int sisusb_getidxreg(struct sisusb_usb_data *sisusb, u32 port,
|
||||
u8 index, u8 *data)
|
||||
{
|
||||
int ret;
|
||||
@ -1229,7 +1229,7 @@ int sisusb_getidxreg(struct sisusb_usb_data *sisusb, int port,
|
||||
return ret;
|
||||
}
|
||||
|
||||
int sisusb_setidxregandor(struct sisusb_usb_data *sisusb, int port, u8 idx,
|
||||
int sisusb_setidxregandor(struct sisusb_usb_data *sisusb, u32 port, u8 idx,
|
||||
u8 myand, u8 myor)
|
||||
{
|
||||
int ret;
|
||||
@ -1244,7 +1244,7 @@ int sisusb_setidxregandor(struct sisusb_usb_data *sisusb, int port, u8 idx,
|
||||
}
|
||||
|
||||
static int sisusb_setidxregmask(struct sisusb_usb_data *sisusb,
|
||||
int port, u8 idx, u8 data, u8 mask)
|
||||
u32 port, u8 idx, u8 data, u8 mask)
|
||||
{
|
||||
int ret;
|
||||
u8 tmp;
|
||||
@ -1257,13 +1257,13 @@ static int sisusb_setidxregmask(struct sisusb_usb_data *sisusb,
|
||||
return ret;
|
||||
}
|
||||
|
||||
int sisusb_setidxregor(struct sisusb_usb_data *sisusb, int port,
|
||||
int sisusb_setidxregor(struct sisusb_usb_data *sisusb, u32 port,
|
||||
u8 index, u8 myor)
|
||||
{
|
||||
return sisusb_setidxregandor(sisusb, port, index, 0xff, myor);
|
||||
}
|
||||
|
||||
int sisusb_setidxregand(struct sisusb_usb_data *sisusb, int port,
|
||||
int sisusb_setidxregand(struct sisusb_usb_data *sisusb, u32 port,
|
||||
u8 idx, u8 myand)
|
||||
{
|
||||
return sisusb_setidxregandor(sisusb, port, idx, myand, 0x00);
|
||||
@ -2786,8 +2786,8 @@ static loff_t sisusb_lseek(struct file *file, loff_t offset, int orig)
|
||||
static int sisusb_handle_command(struct sisusb_usb_data *sisusb,
|
||||
struct sisusb_command *y, unsigned long arg)
|
||||
{
|
||||
int retval, port, length;
|
||||
u32 address;
|
||||
int retval, length;
|
||||
u32 port, address;
|
||||
|
||||
/* All our commands require the device
|
||||
* to be initialized.
|
||||
|
@ -811,17 +811,17 @@ static const struct SiS_VCLKData SiSUSB_VCLKData[] = {
|
||||
int SiSUSBSetMode(struct SiS_Private *SiS_Pr, unsigned short ModeNo);
|
||||
int SiSUSBSetVESAMode(struct SiS_Private *SiS_Pr, unsigned short VModeNo);
|
||||
|
||||
extern int sisusb_setreg(struct sisusb_usb_data *sisusb, int port, u8 data);
|
||||
extern int sisusb_getreg(struct sisusb_usb_data *sisusb, int port, u8 * data);
|
||||
extern int sisusb_setidxreg(struct sisusb_usb_data *sisusb, int port,
|
||||
extern int sisusb_setreg(struct sisusb_usb_data *sisusb, u32 port, u8 data);
|
||||
extern int sisusb_getreg(struct sisusb_usb_data *sisusb, u32 port, u8 * data);
|
||||
extern int sisusb_setidxreg(struct sisusb_usb_data *sisusb, u32 port,
|
||||
u8 index, u8 data);
|
||||
extern int sisusb_getidxreg(struct sisusb_usb_data *sisusb, int port,
|
||||
extern int sisusb_getidxreg(struct sisusb_usb_data *sisusb, u32 port,
|
||||
u8 index, u8 * data);
|
||||
extern int sisusb_setidxregandor(struct sisusb_usb_data *sisusb, int port,
|
||||
extern int sisusb_setidxregandor(struct sisusb_usb_data *sisusb, u32 port,
|
||||
u8 idx, u8 myand, u8 myor);
|
||||
extern int sisusb_setidxregor(struct sisusb_usb_data *sisusb, int port,
|
||||
extern int sisusb_setidxregor(struct sisusb_usb_data *sisusb, u32 port,
|
||||
u8 index, u8 myor);
|
||||
extern int sisusb_setidxregand(struct sisusb_usb_data *sisusb, int port,
|
||||
extern int sisusb_setidxregand(struct sisusb_usb_data *sisusb, u32 port,
|
||||
u8 idx, u8 myand);
|
||||
|
||||
void sisusb_delete(struct kref *kref);
|
||||
|
Loading…
x
Reference in New Issue
Block a user