summaryrefslogtreecommitdiffstats
path: root/drivers/macintosh/ams/Makefile
diff options
context:
space:
mode:
authorFinn Thain <fthain@telegraphics.com.au>2020-06-28 06:23:12 +0200
committerMichael Ellerman <mpe@ellerman.id.au>2020-07-26 15:34:25 +0200
commit624cf5b538b507293ec761797bd8ce0702fefe64 (patch)
treec07f0cc27a6863a4c29183e088c5d5b858513d71 /drivers/macintosh/ams/Makefile
parentmacintosh/via-macii: Remove read_done state (diff)
downloadlinux-624cf5b538b507293ec761797bd8ce0702fefe64.tar.xz
linux-624cf5b538b507293ec761797bd8ce0702fefe64.zip
macintosh/via-macii: Handle poll replies correctly
Userspace applications may use /dev/adb to send Talk requests. Such requests always have req->reply_expected == 1. The same is true of Talk requests sent by the kernel, except for poll requests queued internally by the via-macii driver. Those requests have req->reply_expected == 0. Consequently, poll reply packets get treated like autopoll reply packets. (It doesn't make sense to try to distinguish them.) Always enter 'reading' state after a poll request, so that the reply gets collected and passed to adb_input(), and none go missing. All Talk replies passed to adb_input() come from polling or autopolling, so call adb_input() with the autopoll parameter set to 1. Fixes: d95fd5fce88f0 ("m68k: Mac II ADB fixes") # v5.0+ Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Tested-by: Stan Johnson <userm57@yahoo.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/754cddfa045e5bfa53e5da199831de02e7d2f27f.1593318192.git.fthain@telegraphics.com.au
Diffstat (limited to 'drivers/macintosh/ams/Makefile')
0 files changed, 0 insertions, 0 deletions