From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com, Dan Carpenter <error27@gmail.com>
Subject: Re: [PATCH] iio:proximity:hx9031as: Add TYHX HX9031AS/HX9023S sensor driver
Date: Fri, 17 May 2024 08:13:14 +0800 [thread overview]
Message-ID: <202405170824.uhEslLI0-lkp@intel.com> (raw)
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
In-Reply-To: <SN7PR12MB8101EDFA7F91A59761095A28A4E72@SN7PR12MB8101.namprd12.prod.outlook.com>
References: <SN7PR12MB8101EDFA7F91A59761095A28A4E72@SN7PR12MB8101.namprd12.prod.outlook.com>
TO: Yasin Lee <yasin.lee.x@outlook.com>
TO: jic23@kernel.org
CC: lars@metafoo.de
CC: swboyd@chromium.org
CC: nuno.a@analog.com
CC: andy.shevchenko@gmail.com
CC: u.kleine-koenig@pengutronix.de
CC: linux-iio@vger.kernel.org
CC: linux-kernel@vger.kernel.org
CC: yasin.lee.x@gmail.com
CC: yasin.lee.x@outlook.com
Hi Yasin,
kernel test robot noticed the following build warnings:
[auto build test WARNING on jic23-iio/togreg]
[also build test WARNING on linus/master v6.9 next-20240516]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Yasin-Lee/iio-proximity-hx9031as-Add-TYHX-HX9031AS-HX9023S-sensor-driver/20240515-083021
base: https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git togreg
patch link: https://lore.kernel.org/r/SN7PR12MB8101EDFA7F91A59761095A28A4E72%40SN7PR12MB8101.namprd12.prod.outlook.com
patch subject: [PATCH] iio:proximity:hx9031as: Add TYHX HX9031AS/HX9023S sensor driver
:::::: branch date: 2 days ago
:::::: commit date: 2 days ago
config: alpha-randconfig-r081-20240516 (https://download.01.org/0day-ci/archive/20240517/202405170824.uhEslLI0-lkp@intel.com/config)
compiler: alpha-linux-gcc (GCC) 13.2.0
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202405170824.uhEslLI0-lkp@intel.com/
smatch warnings:
drivers/iio/proximity/hx9031as.c:1118 hx9031as_raw_data_show() error: snprintf() is printing too much 8192 vs 512
drivers/iio/proximity/hx9031as.c:1240 hx9031as_channel_en_show() error: snprintf() is printing too much 8192 vs 512
drivers/iio/proximity/hx9031as.c:1466 hx9031as_threshold_show() error: snprintf() is printing too much 8192 vs 512
drivers/iio/proximity/hx9031as.c:1491 hx9031as_dump_show() error: snprintf() is printing too much 8192 vs 1024
drivers/iio/proximity/hx9031as.c:1513 hx9031as_offset_dac_show() error: snprintf() is printing too much 8192 vs 512
vim +1118 drivers/iio/proximity/hx9031as.c
5e5a419c9407f6 Yasin Lee 2024-05-10 1109
5e5a419c9407f6 Yasin Lee 2024-05-10 1110 static ssize_t hx9031as_raw_data_show(struct file *file, char __user *user_buf, size_t count, loff_t *ppos)
5e5a419c9407f6 Yasin Lee 2024-05-10 1111 {
5e5a419c9407f6 Yasin Lee 2024-05-10 1112 char buf[BUF_SIZE] = {0};
5e5a419c9407f6 Yasin Lee 2024-05-10 1113 char *p = buf;
5e5a419c9407f6 Yasin Lee 2024-05-10 1114 int ii = 0;
5e5a419c9407f6 Yasin Lee 2024-05-10 1115
5e5a419c9407f6 Yasin Lee 2024-05-10 1116 hx9031as_sample();
5e5a419c9407f6 Yasin Lee 2024-05-10 1117 for (ii = 0; ii < HX9031AS_CH_NUM; ii++) {
5e5a419c9407f6 Yasin Lee 2024-05-10 @1118 p += snprintf(p, PAGE_SIZE, "ch[%d]: DIFF=%-8d, RAW=%-8d, OFFSET=%-8d, BL=%-8d, LP=%-8d\n",
5e5a419c9407f6 Yasin Lee 2024-05-10 1119 ii, hx9031as_pdata.diff[ii], hx9031as_pdata.raw[ii], hx9031as_pdata.dac[ii],
5e5a419c9407f6 Yasin Lee 2024-05-10 1120 hx9031as_pdata.bl[ii], hx9031as_pdata.lp[ii]);
5e5a419c9407f6 Yasin Lee 2024-05-10 1121 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1122
5e5a419c9407f6 Yasin Lee 2024-05-10 1123 return simple_read_from_buffer(user_buf, count, ppos, buf, strlen(buf));
5e5a419c9407f6 Yasin Lee 2024-05-10 1124 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1125
5e5a419c9407f6 Yasin Lee 2024-05-10 1126 static const struct file_operations hx9031as_raw_data_fops = {
5e5a419c9407f6 Yasin Lee 2024-05-10 1127 .read = hx9031as_raw_data_show,
5e5a419c9407f6 Yasin Lee 2024-05-10 1128 };
5e5a419c9407f6 Yasin Lee 2024-05-10 1129
5e5a419c9407f6 Yasin Lee 2024-05-10 1130 static ssize_t hx9031as_reg_write_store(struct file *file, const char __user *user_buf, size_t count, loff_t *ppos)
5e5a419c9407f6 Yasin Lee 2024-05-10 1131 {
5e5a419c9407f6 Yasin Lee 2024-05-10 1132 int ret = -1;
5e5a419c9407f6 Yasin Lee 2024-05-10 1133 unsigned int reg_address = 0;
5e5a419c9407f6 Yasin Lee 2024-05-10 1134 unsigned int val = 0;
5e5a419c9407f6 Yasin Lee 2024-05-10 1135 uint8_t addr = 0;
5e5a419c9407f6 Yasin Lee 2024-05-10 1136 uint8_t tx_buf[1] = {0};
5e5a419c9407f6 Yasin Lee 2024-05-10 1137 char buf[BUF_SIZE];
5e5a419c9407f6 Yasin Lee 2024-05-10 1138
5e5a419c9407f6 Yasin Lee 2024-05-10 1139 ENTER;
5e5a419c9407f6 Yasin Lee 2024-05-10 1140 if (count > BUF_SIZE)
5e5a419c9407f6 Yasin Lee 2024-05-10 1141 return -EINVAL;
5e5a419c9407f6 Yasin Lee 2024-05-10 1142
5e5a419c9407f6 Yasin Lee 2024-05-10 1143 if (copy_from_user(buf, user_buf, count))
5e5a419c9407f6 Yasin Lee 2024-05-10 1144 return -EFAULT;
5e5a419c9407f6 Yasin Lee 2024-05-10 1145
5e5a419c9407f6 Yasin Lee 2024-05-10 1146 if (sscanf(buf, "%x,%x", ®_address, &val) != 2) {
5e5a419c9407f6 Yasin Lee 2024-05-10 1147 PRINT_ERR("please input two HEX numbers: aa,bb (aa: reg_address, bb: value_to_be_set)\n");
5e5a419c9407f6 Yasin Lee 2024-05-10 1148 return -EINVAL;
5e5a419c9407f6 Yasin Lee 2024-05-10 1149 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1150
5e5a419c9407f6 Yasin Lee 2024-05-10 1151 addr = (uint8_t)reg_address;
5e5a419c9407f6 Yasin Lee 2024-05-10 1152 tx_buf[0] = (uint8_t)val;
5e5a419c9407f6 Yasin Lee 2024-05-10 1153
5e5a419c9407f6 Yasin Lee 2024-05-10 1154 ret = hx9031as_write(addr, tx_buf, 1);
5e5a419c9407f6 Yasin Lee 2024-05-10 1155 if (ret != 0)
5e5a419c9407f6 Yasin Lee 2024-05-10 1156 PRINT_ERR("hx9031as_write failed\n");
5e5a419c9407f6 Yasin Lee 2024-05-10 1157
5e5a419c9407f6 Yasin Lee 2024-05-10 1158 PRINT_INF("WRITE:Reg0x%02X=0x%02X\n", addr, tx_buf[0]);
5e5a419c9407f6 Yasin Lee 2024-05-10 1159 return count;
5e5a419c9407f6 Yasin Lee 2024-05-10 1160 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1161
5e5a419c9407f6 Yasin Lee 2024-05-10 1162 static const struct file_operations hx9031as_reg_write_fops = {
5e5a419c9407f6 Yasin Lee 2024-05-10 1163 .write = hx9031as_reg_write_store,
5e5a419c9407f6 Yasin Lee 2024-05-10 1164 };
5e5a419c9407f6 Yasin Lee 2024-05-10 1165
5e5a419c9407f6 Yasin Lee 2024-05-10 1166 static ssize_t hx9031as_reg_read_store(struct file *file, const char __user *user_buf, size_t count, loff_t *ppos)
5e5a419c9407f6 Yasin Lee 2024-05-10 1167 {
5e5a419c9407f6 Yasin Lee 2024-05-10 1168 int ret = -1;
5e5a419c9407f6 Yasin Lee 2024-05-10 1169 unsigned long reg_address = 0;
5e5a419c9407f6 Yasin Lee 2024-05-10 1170 uint8_t addr = 0;
5e5a419c9407f6 Yasin Lee 2024-05-10 1171 uint8_t rx_buf[1] = {0};
5e5a419c9407f6 Yasin Lee 2024-05-10 1172 char buf[BUF_SIZE];
5e5a419c9407f6 Yasin Lee 2024-05-10 1173
5e5a419c9407f6 Yasin Lee 2024-05-10 1174 ENTER;
5e5a419c9407f6 Yasin Lee 2024-05-10 1175 if (count > BUF_SIZE)
5e5a419c9407f6 Yasin Lee 2024-05-10 1176 return -EINVAL;
5e5a419c9407f6 Yasin Lee 2024-05-10 1177
5e5a419c9407f6 Yasin Lee 2024-05-10 1178 if (copy_from_user(buf, user_buf, count))
5e5a419c9407f6 Yasin Lee 2024-05-10 1179 return -EFAULT;
5e5a419c9407f6 Yasin Lee 2024-05-10 1180
5e5a419c9407f6 Yasin Lee 2024-05-10 1181 if (kstrtoul(buf, 16, ®_address)) {
5e5a419c9407f6 Yasin Lee 2024-05-10 1182 PRINT_ERR("please input a HEX number\n");
5e5a419c9407f6 Yasin Lee 2024-05-10 1183 return -EINVAL;
5e5a419c9407f6 Yasin Lee 2024-05-10 1184 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1185 addr = (uint8_t)reg_address;
5e5a419c9407f6 Yasin Lee 2024-05-10 1186
5e5a419c9407f6 Yasin Lee 2024-05-10 1187 ret = hx9031as_read(addr, rx_buf, 1);
5e5a419c9407f6 Yasin Lee 2024-05-10 1188 if (ret != 0)
5e5a419c9407f6 Yasin Lee 2024-05-10 1189 PRINT_ERR("hx9031as_read failed\n");
5e5a419c9407f6 Yasin Lee 2024-05-10 1190
5e5a419c9407f6 Yasin Lee 2024-05-10 1191 PRINT_INF("READ:Reg0x%02X=0x%02X\n", addr, rx_buf[0]);
5e5a419c9407f6 Yasin Lee 2024-05-10 1192 return count;
5e5a419c9407f6 Yasin Lee 2024-05-10 1193 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1194
5e5a419c9407f6 Yasin Lee 2024-05-10 1195 static const struct file_operations hx9031as_reg_read_fops = {
5e5a419c9407f6 Yasin Lee 2024-05-10 1196 .write = hx9031as_reg_read_store,
5e5a419c9407f6 Yasin Lee 2024-05-10 1197 };
5e5a419c9407f6 Yasin Lee 2024-05-10 1198
5e5a419c9407f6 Yasin Lee 2024-05-10 1199 static ssize_t hx9031as_channel_en_store(struct file *file, const char __user *user_buf, size_t count, loff_t *ppos)
5e5a419c9407f6 Yasin Lee 2024-05-10 1200 {
5e5a419c9407f6 Yasin Lee 2024-05-10 1201 int ch_id = 0;
5e5a419c9407f6 Yasin Lee 2024-05-10 1202 int en = 0;
5e5a419c9407f6 Yasin Lee 2024-05-10 1203 char buf[BUF_SIZE];
5e5a419c9407f6 Yasin Lee 2024-05-10 1204
5e5a419c9407f6 Yasin Lee 2024-05-10 1205 ENTER;
5e5a419c9407f6 Yasin Lee 2024-05-10 1206 if (count > BUF_SIZE)
5e5a419c9407f6 Yasin Lee 2024-05-10 1207 return -EINVAL;
5e5a419c9407f6 Yasin Lee 2024-05-10 1208
5e5a419c9407f6 Yasin Lee 2024-05-10 1209 if (copy_from_user(buf, user_buf, count))
5e5a419c9407f6 Yasin Lee 2024-05-10 1210 return -EFAULT;
5e5a419c9407f6 Yasin Lee 2024-05-10 1211
5e5a419c9407f6 Yasin Lee 2024-05-10 1212 if (sscanf(buf, "%d,%d", &ch_id, &en) != 2) {
5e5a419c9407f6 Yasin Lee 2024-05-10 1213 PRINT_ERR("please input two DEC numbers: ch_id,en (ch_id: channel number, en: 1=enable, 0=disable)\n");
5e5a419c9407f6 Yasin Lee 2024-05-10 1214 return -EINVAL;
5e5a419c9407f6 Yasin Lee 2024-05-10 1215 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1216
5e5a419c9407f6 Yasin Lee 2024-05-10 1217 if ((ch_id >= HX9031AS_CH_NUM) || (ch_id < 0)) {
5e5a419c9407f6 Yasin Lee 2024-05-10 1218 PRINT_ERR("channel number out of range, the effective number is 0~%d\n", HX9031AS_CH_NUM - 1);
5e5a419c9407f6 Yasin Lee 2024-05-10 1219 return -EINVAL;
5e5a419c9407f6 Yasin Lee 2024-05-10 1220 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1221
5e5a419c9407f6 Yasin Lee 2024-05-10 1222 if ((hx9031as_pdata.channel_used_flag >> ch_id) & 0x01)
5e5a419c9407f6 Yasin Lee 2024-05-10 1223 hx9031as_ch_en_hal(ch_id, (en > 0) ? 1 : 0);
5e5a419c9407f6 Yasin Lee 2024-05-10 1224 else
5e5a419c9407f6 Yasin Lee 2024-05-10 1225 PRINT_ERR("ch_%d is unused, you can not enable or disable an unused channel\n", ch_id);
5e5a419c9407f6 Yasin Lee 2024-05-10 1226
5e5a419c9407f6 Yasin Lee 2024-05-10 1227 return count;
5e5a419c9407f6 Yasin Lee 2024-05-10 1228 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1229
5e5a419c9407f6 Yasin Lee 2024-05-10 1230 static ssize_t hx9031as_channel_en_show(struct file *file, char __user *user_buf, size_t count, loff_t *ppos)
5e5a419c9407f6 Yasin Lee 2024-05-10 1231 {
5e5a419c9407f6 Yasin Lee 2024-05-10 1232 char buf[BUF_SIZE] = {0};
5e5a419c9407f6 Yasin Lee 2024-05-10 1233 char *p = buf;
5e5a419c9407f6 Yasin Lee 2024-05-10 1234 int ii = 0;
5e5a419c9407f6 Yasin Lee 2024-05-10 1235
5e5a419c9407f6 Yasin Lee 2024-05-10 1236 for (ii = 0; ii < HX9031AS_CH_NUM; ii++) {
5e5a419c9407f6 Yasin Lee 2024-05-10 1237 if ((hx9031as_pdata.channel_used_flag >> ii) & 0x1) {
5e5a419c9407f6 Yasin Lee 2024-05-10 1238 PRINT_INF("hx9031as_pdata.chs_info[%d].enabled=%d\n",
5e5a419c9407f6 Yasin Lee 2024-05-10 1239 ii, hx9031as_pdata.chs_info[ii].enabled);
5e5a419c9407f6 Yasin Lee 2024-05-10 @1240 p += snprintf(p, PAGE_SIZE, "hx9031as_pdata.chs_info[%d].enabled=%d\n",
5e5a419c9407f6 Yasin Lee 2024-05-10 1241 ii, hx9031as_pdata.chs_info[ii].enabled);
5e5a419c9407f6 Yasin Lee 2024-05-10 1242 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1243 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1244
5e5a419c9407f6 Yasin Lee 2024-05-10 1245 return simple_read_from_buffer(user_buf, count, ppos, buf, strlen(buf));
5e5a419c9407f6 Yasin Lee 2024-05-10 1246 }
5e5a419c9407f6 Yasin Lee 2024-05-10 1247
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next reply other threads:[~2024-05-17 0:13 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-17 0:13 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-05-10 9:37 [PATCH] iio:proximity:hx9031as: Add TYHX HX9031AS/HX9023S sensor driver Yasin Lee
2024-05-10 10:26 ` Uwe Kleine-König
2024-06-19 7:40 ` Yasin Lee
2024-05-10 12:29 ` kernel test robot
2024-05-11 16:01 ` Jonathan Cameron
2024-05-11 18:36 ` kernel test robot
2024-05-11 19:18 ` kernel test robot
2024-05-11 19:18 ` kernel test robot
2024-05-11 22:14 ` kernel test robot
2024-05-21 10:05 ` kernel test robot
2024-05-21 11:50 ` kernel test robot
2024-05-23 12:42 ` Dan Carpenter
2024-05-25 14:00 ` Andy Shevchenko
2024-05-27 8:14 ` Dan Carpenter
2024-05-27 8:50 ` Dan Carpenter
2024-05-27 9:07 ` Dan Carpenter
2024-05-31 5:48 ` kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202405170824.uhEslLI0-lkp@intel.com \
--to=lkp@intel.com \
--cc=error27@gmail.com \
--cc=oe-kbuild@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.