Merge tag 'char-misc-5.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc

Pull char/misc driver fixes from Greg KH:
"Here are some small different driver fixes for 5.6-rc7:

- binderfs fix, yet again

- slimbus new device id added

- hwtracing bugfixes for reported issues and a new device id

All of these have been in linux-next with no reported issues"

* tag 'char-misc-5.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
intel_th: pci: Add Elkhart Lake CPU support
intel_th: Fix user-visible error codes
intel_th: msu: Fix the unexpected state warning
stm class: sys-t: Fix the use of time_after()
slimbus: ngd: add v2.1.0 compatible
binderfs: use refcount for binder control devices too

Changed files
+19 -9
drivers
android
hwtracing
intel_th
stm
slimbus
+1
drivers/android/binderfs.c
··· 448 448 inode->i_uid = info->root_uid; 449 449 inode->i_gid = info->root_gid; 450 450 451 + refcount_set(&device->ref, 1); 451 452 device->binderfs_inode = inode; 452 453 device->miscdev.minor = minor; 453 454
+7 -6
drivers/hwtracing/intel_th/msu.c
··· 718 718 719 719 if (old != expect) { 720 720 ret = -EINVAL; 721 - dev_warn_ratelimited(msc_dev(win->msc), 722 - "expected lockout state %d, got %d\n", 723 - expect, old); 724 721 goto unlock; 725 722 } 726 723 ··· 738 741 /* from intel_th_msc_window_unlock(), don't warn if not locked */ 739 742 if (expect == WIN_LOCKED && old == new) 740 743 return 0; 744 + 745 + dev_warn_ratelimited(msc_dev(win->msc), 746 + "expected lockout state %d, got %d\n", 747 + expect, old); 741 748 } 742 749 743 750 return ret; ··· 761 760 lockdep_assert_held(&msc->buf_mutex); 762 761 763 762 if (msc->mode > MSC_MODE_MULTI) 764 - return -ENOTSUPP; 763 + return -EINVAL; 765 764 766 765 if (msc->mode == MSC_MODE_MULTI) { 767 766 if (msc_win_set_lockout(msc->cur_win, WIN_READY, WIN_INUSE)) ··· 1295 1294 } else if (msc->mode == MSC_MODE_MULTI) { 1296 1295 ret = msc_buffer_multi_alloc(msc, nr_pages, nr_wins); 1297 1296 } else { 1298 - ret = -ENOTSUPP; 1297 + ret = -EINVAL; 1299 1298 } 1300 1299 1301 1300 if (!ret) { ··· 1531 1530 if (ret >= 0) 1532 1531 *ppos = iter->offset; 1533 1532 } else { 1534 - ret = -ENOTSUPP; 1533 + ret = -EINVAL; 1535 1534 } 1536 1535 1537 1536 put_count:
+5
drivers/hwtracing/intel_th/pci.c
··· 235 235 .driver_data = (kernel_ulong_t)&intel_th_2x, 236 236 }, 237 237 { 238 + /* Elkhart Lake CPU */ 239 + PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x4529), 240 + .driver_data = (kernel_ulong_t)&intel_th_2x, 241 + }, 242 + { 238 243 /* Elkhart Lake */ 239 244 PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x4b26), 240 245 .driver_data = (kernel_ulong_t)&intel_th_2x,
+3 -3
drivers/hwtracing/stm/p_sys-t.c
··· 238 238 static inline bool sys_t_need_ts(struct sys_t_output *op) 239 239 { 240 240 if (op->node.ts_interval && 241 - time_after(op->ts_jiffies + op->node.ts_interval, jiffies)) { 241 + time_after(jiffies, op->ts_jiffies + op->node.ts_interval)) { 242 242 op->ts_jiffies = jiffies; 243 243 244 244 return true; ··· 250 250 static bool sys_t_need_clock_sync(struct sys_t_output *op) 251 251 { 252 252 if (op->node.clocksync_interval && 253 - time_after(op->clocksync_jiffies + op->node.clocksync_interval, 254 - jiffies)) { 253 + time_after(jiffies, 254 + op->clocksync_jiffies + op->node.clocksync_interval)) { 255 255 op->clocksync_jiffies = jiffies; 256 256 257 257 return true;
+3
drivers/slimbus/qcom-ngd-ctrl.c
··· 1320 1320 { 1321 1321 .compatible = "qcom,slim-ngd-v1.5.0", 1322 1322 .data = &ngd_v1_5_offset_info, 1323 + },{ 1324 + .compatible = "qcom,slim-ngd-v2.1.0", 1325 + .data = &ngd_v1_5_offset_info, 1323 1326 }, 1324 1327 {} 1325 1328 };