]>
Commit | Line | Data |
---|---|---|
a65d4bac GKH |
1 | From foo@baz Sat Jul 28 10:25:26 CEST 2018 |
2 | From: Mauro Carvalho Chehab <mchehab@s-opensource.com> | |
3 | Date: Fri, 20 Apr 2018 08:32:16 -0400 | |
4 | Subject: media: siano: get rid of __le32/__le16 cast warnings | |
5 | ||
6 | From: Mauro Carvalho Chehab <mchehab@s-opensource.com> | |
7 | ||
8 | [ Upstream commit e1b7f11b37def5f3021c06e8c2b4953e099357aa ] | |
9 | ||
10 | Those are all false-positives that appear with smatch when building for | |
11 | arm: | |
12 | ||
13 | drivers/media/common/siano/smsendian.c:38:36: warning: cast to restricted __le32 | |
14 | drivers/media/common/siano/smsendian.c:38:36: warning: cast to restricted __le32 | |
15 | drivers/media/common/siano/smsendian.c:38:36: warning: cast to restricted __le32 | |
16 | drivers/media/common/siano/smsendian.c:38:36: warning: cast to restricted __le32 | |
17 | drivers/media/common/siano/smsendian.c:38:36: warning: cast to restricted __le32 | |
18 | drivers/media/common/siano/smsendian.c:38:36: warning: cast to restricted __le32 | |
19 | drivers/media/common/siano/smsendian.c:47:44: warning: cast to restricted __le32 | |
20 | drivers/media/common/siano/smsendian.c:47:44: warning: cast to restricted __le32 | |
21 | drivers/media/common/siano/smsendian.c:47:44: warning: cast to restricted __le32 | |
22 | drivers/media/common/siano/smsendian.c:47:44: warning: cast to restricted __le32 | |
23 | drivers/media/common/siano/smsendian.c:47:44: warning: cast to restricted __le32 | |
24 | drivers/media/common/siano/smsendian.c:47:44: warning: cast to restricted __le32 | |
25 | drivers/media/common/siano/smsendian.c:67:35: warning: cast to restricted __le16 | |
26 | drivers/media/common/siano/smsendian.c:67:35: warning: cast to restricted __le16 | |
27 | drivers/media/common/siano/smsendian.c:67:35: warning: cast to restricted __le16 | |
28 | drivers/media/common/siano/smsendian.c:67:35: warning: cast to restricted __le16 | |
29 | drivers/media/common/siano/smsendian.c:84:44: warning: cast to restricted __le32 | |
30 | drivers/media/common/siano/smsendian.c:84:44: warning: cast to restricted __le32 | |
31 | drivers/media/common/siano/smsendian.c:84:44: warning: cast to restricted __le32 | |
32 | drivers/media/common/siano/smsendian.c:84:44: warning: cast to restricted __le32 | |
33 | drivers/media/common/siano/smsendian.c:84:44: warning: cast to restricted __le32 | |
34 | drivers/media/common/siano/smsendian.c:84:44: warning: cast to restricted __le32 | |
35 | drivers/media/common/siano/smsendian.c:98:26: warning: cast to restricted __le16 | |
36 | drivers/media/common/siano/smsendian.c:98:26: warning: cast to restricted __le16 | |
37 | drivers/media/common/siano/smsendian.c:98:26: warning: cast to restricted __le16 | |
38 | drivers/media/common/siano/smsendian.c:98:26: warning: cast to restricted __le16 | |
39 | drivers/media/common/siano/smsendian.c:99:28: warning: cast to restricted __le16 | |
40 | drivers/media/common/siano/smsendian.c:99:28: warning: cast to restricted __le16 | |
41 | drivers/media/common/siano/smsendian.c:99:28: warning: cast to restricted __le16 | |
42 | drivers/media/common/siano/smsendian.c:99:28: warning: cast to restricted __le16 | |
43 | drivers/media/common/siano/smsendian.c:100:27: warning: cast to restricted __le16 | |
44 | drivers/media/common/siano/smsendian.c:100:27: warning: cast to restricted __le16 | |
45 | drivers/media/common/siano/smsendian.c:100:27: warning: cast to restricted __le16 | |
46 | drivers/media/common/siano/smsendian.c:100:27: warning: cast to restricted __le16 | |
47 | ||
48 | Get rid of them by adding explicit forced casts. | |
49 | ||
50 | Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com> | |
51 | Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> | |
52 | Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> | |
53 | Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> | |
54 | --- | |
55 | drivers/media/common/siano/smsendian.c | 14 +++++++------- | |
56 | 1 file changed, 7 insertions(+), 7 deletions(-) | |
57 | ||
58 | --- a/drivers/media/common/siano/smsendian.c | |
59 | +++ b/drivers/media/common/siano/smsendian.c | |
60 | @@ -35,7 +35,7 @@ void smsendian_handle_tx_message(void *b | |
61 | switch (msg->x_msg_header.msg_type) { | |
62 | case MSG_SMS_DATA_DOWNLOAD_REQ: | |
63 | { | |
64 | - msg->msg_data[0] = le32_to_cpu(msg->msg_data[0]); | |
65 | + msg->msg_data[0] = le32_to_cpu((__force __le32)(msg->msg_data[0])); | |
66 | break; | |
67 | } | |
68 | ||
69 | @@ -44,7 +44,7 @@ void smsendian_handle_tx_message(void *b | |
70 | sizeof(struct sms_msg_hdr))/4; | |
71 | ||
72 | for (i = 0; i < msg_words; i++) | |
73 | - msg->msg_data[i] = le32_to_cpu(msg->msg_data[i]); | |
74 | + msg->msg_data[i] = le32_to_cpu((__force __le32)msg->msg_data[i]); | |
75 | ||
76 | break; | |
77 | } | |
78 | @@ -64,7 +64,7 @@ void smsendian_handle_rx_message(void *b | |
79 | { | |
80 | struct sms_version_res *ver = | |
81 | (struct sms_version_res *) msg; | |
82 | - ver->chip_model = le16_to_cpu(ver->chip_model); | |
83 | + ver->chip_model = le16_to_cpu((__force __le16)ver->chip_model); | |
84 | break; | |
85 | } | |
86 | ||
87 | @@ -81,7 +81,7 @@ void smsendian_handle_rx_message(void *b | |
88 | sizeof(struct sms_msg_hdr))/4; | |
89 | ||
90 | for (i = 0; i < msg_words; i++) | |
91 | - msg->msg_data[i] = le32_to_cpu(msg->msg_data[i]); | |
92 | + msg->msg_data[i] = le32_to_cpu((__force __le32)msg->msg_data[i]); | |
93 | ||
94 | break; | |
95 | } | |
96 | @@ -95,9 +95,9 @@ void smsendian_handle_message_header(voi | |
97 | #ifdef __BIG_ENDIAN | |
98 | struct sms_msg_hdr *phdr = (struct sms_msg_hdr *)msg; | |
99 | ||
100 | - phdr->msg_type = le16_to_cpu(phdr->msg_type); | |
101 | - phdr->msg_length = le16_to_cpu(phdr->msg_length); | |
102 | - phdr->msg_flags = le16_to_cpu(phdr->msg_flags); | |
103 | + phdr->msg_type = le16_to_cpu((__force __le16)phdr->msg_type); | |
104 | + phdr->msg_length = le16_to_cpu((__force __le16)phdr->msg_length); | |
105 | + phdr->msg_flags = le16_to_cpu((__force __le16)phdr->msg_flags); | |
106 | #endif /* __BIG_ENDIAN */ | |
107 | } | |
108 | EXPORT_SYMBOL_GPL(smsendian_handle_message_header); |