linux/drivers/macintosh
Finn Thain b4d76c28ec macintosh/via-macii: Handle /CTLR_IRQ signal correctly
I'm told that the /CTLR_IRQ signal from the ADB transceiver gets
interpreted by MacOS to mean SRQ, bus timeout or end-of-packet depending
on the circumstances, and that Linux's via-macii driver does not
correctly interpret this signal.

Instead, the via-macii driver interprets certain received byte values
(0x00 and 0xFF) as signalling end of packet and bus timeout
(respectively). Problem is, those values can also appear under other
circumstances.

This patch changes the bus timeout, end of packet and SRQ detection logic
to bring it closer to the logic that MacOS reportedly uses.

Fixes: 1da177e4c3 ("Linux-2.6.12-rc2") # v5.0+
Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
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/6541fda1d8db3ae87c3abe17d189a10dc96e2382.1593318192.git.fthain@telegraphics.com.au
2020-07-26 23:34:25 +10:00
..
ams macintosh/ams-input: switch to using input device polling mode 2020-05-28 23:24:32 +10:00
adb-iop.c macintosh/adb-iop: Implement SRQ autopolling 2020-07-26 23:34:24 +10:00
adb.c macintosh/adb: Replace HTTP links with HTTPS ones 2020-07-22 00:01:23 +10:00
adbhid.c macintosh/adb: Rework printk output again 2018-10-08 22:53:10 +11:00
ans-lcd.c misc: cleanup minor number definitions in c file into miscdevice.h 2020-03-18 12:27:03 +01:00
ans-lcd.h misc: cleanup minor number definitions in c file into miscdevice.h 2020-03-18 12:27:03 +01:00
apm_emu.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 2019-05-24 17:39:02 +02:00
Kconfig treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
mac_hid.c sysctl: pass kernel pointers to ->proc_handler 2020-04-27 02:07:40 -04:00
macio_asic.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
macio_sysfs.c macintosh: Use device_type helpers to access the node type 2018-11-26 22:33:37 +11:00
macio-adb.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
Makefile macintosh/via-pmu: Replace via-pmu68k driver with via-pmu driver 2018-07-31 19:56:42 +10:00
mediabay.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
rack-meter.c rackmeter: Use vtime aware kcpustat accessor 2019-11-21 07:59:00 +01:00
smu.c drivers/macintosh/smu.c: Mark expected switch fall-through 2019-07-31 21:44:45 +10:00
therm_adt746x.c macintosh/therm_adt746x: Replace HTTP links with HTTPS ones 2020-07-22 00:01:24 +10:00
therm_windtunnel.c macintosh: convert to i2c_new_scanned_device 2020-03-26 12:36:20 +01:00
via-cuda.c macintosh/via-cuda: Don't rely on Cuda to end a transfer 2019-01-22 10:21:45 +01:00
via-macii.c macintosh/via-macii: Handle /CTLR_IRQ signal correctly 2020-07-26 23:34:25 +10:00
via-pmu-backlight.c backlight: Fix old-style function definition 2018-01-21 23:37:44 +11:00
via-pmu-event.c
via-pmu-event.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
via-pmu-led.c powerpc: use the new LED disk activity trigger 2016-06-27 08:58:40 +02:00
via-pmu.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
windfarm_ad7417_sensor.c macintosh: windfarm: fix MODINFO regression 2020-03-10 12:30:59 +01:00
windfarm_core.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00
windfarm_cpufreq_clamp.c cpufreq: Use per-policy frequency QoS 2019-10-21 02:05:21 +02:00
windfarm_fcu_controls.c macintosh: windfarm: fix MODINFO regression 2020-03-10 12:30:59 +01:00
windfarm_lm75_sensor.c macintosh: windfarm: fix MODINFO regression 2020-03-10 12:30:59 +01:00
windfarm_lm87_sensor.c macintosh: windfarm: fix MODINFO regression 2020-03-10 12:30:59 +01:00
windfarm_max6690_sensor.c macintosh: windfarm: fix MODINFO regression 2020-03-10 12:30:59 +01:00
windfarm_mpu.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00
windfarm_pid.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00
windfarm_pid.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00
windfarm_pm72.c macintosh: Use pr_warn instead of pr_warning 2019-10-18 15:00:22 +02:00
windfarm_pm81.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00
windfarm_pm91.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00
windfarm_pm112.c drivers/macintosh: Fix memleak in windfarm_pm112 driver 2020-05-15 11:58:56 +10:00
windfarm_pm121.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00
windfarm_rm31.c macintosh: Use pr_warn instead of pr_warning 2019-10-18 15:00:22 +02:00
windfarm_smu_controls.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00
windfarm_smu_sat.c macintosh: windfarm: fix MODINFO regression 2020-03-10 12:30:59 +01:00
windfarm_smu_sensors.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00
windfarm.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 246 2019-06-19 17:09:08 +02:00