mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
drivers: misc: ti-st: Use int instead of fuzzy char for callback status
On mips and parisc:
drivers/bluetooth/btwilink.c: In function 'ti_st_open':
drivers/bluetooth/btwilink.c:174:21: warning: overflow in implicit constant conversion [-Woverflow]
hst->reg_status = -EINPROGRESS;
drivers/nfc/nfcwilink.c: In function 'nfcwilink_open':
drivers/nfc/nfcwilink.c:396:31: warning: overflow in implicit constant conversion [-Woverflow]
drv->st_register_cb_status = -EINPROGRESS;
There are actually two issues:
1. Whether "char" is signed or unsigned depends on the architecture.
As the completion callback data is used to pass a (negative) error
code, it should always be signed.
2. EINPROGRESS is 150 on mips, 245 on parisc.
Hence -EINPROGRESS doesn't fit in a signed 8-bit number.
Change the callback status from "char" to "int" to fix these.
Signed-off-by: Geert Uytterhoeven <[email protected]>
Acked-by: Mauro Carvalho Chehab <[email protected]>
Acked-by: Samuel Ortiz <[email protected]>
Signed-off-by: Marcel Holtmann <[email protected]>
This commit is contained in:
parent
858d68f102
commit
4360fa22ad
5 changed files with 7 additions and 7 deletions
|
|
@ -51,7 +51,7 @@
|
|||
*/
|
||||
struct ti_st {
|
||||
struct hci_dev *hdev;
|
||||
char reg_status;
|
||||
int reg_status;
|
||||
long (*st_write) (struct sk_buff *);
|
||||
struct completion wait_reg_completion;
|
||||
};
|
||||
|
|
@ -83,7 +83,7 @@ static inline void ti_st_tx_complete(struct ti_st *hst, int pkt_type)
|
|||
* status.ti_st_open() function will wait for signal from this
|
||||
* API when st_register() function returns ST_PENDING.
|
||||
*/
|
||||
static void st_reg_completion_cb(void *priv_data, char data)
|
||||
static void st_reg_completion_cb(void *priv_data, int data)
|
||||
{
|
||||
struct ti_st *lhst = priv_data;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue