mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-11 14:10:34 +00:00
Reset the PSM aux device twice to help pierce through some KVM's to
get the correct data from the attached mouse. Multiple resets should be harmless, but just in case, the second one is non-fatal and is just ignored.
This commit is contained in:
parent
ace6720e77
commit
b1181a94a3
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=117302
@ -1040,6 +1040,10 @@ psmprobe(device_t dev)
|
||||
/*
|
||||
* NOTE: some controllers appears to hang the `keyboard' when the aux
|
||||
* port doesn't exist and `PSMC_RESET_DEV' is issued.
|
||||
*
|
||||
* Attempt to reset the controller twice -- this helps
|
||||
* pierce through some KVM switches. The second reset
|
||||
* is non-fatal.
|
||||
*/
|
||||
if (!reset_aux_dev(sc->kbdc)) {
|
||||
recover_from_error(sc->kbdc);
|
||||
@ -1047,6 +1051,11 @@ psmprobe(device_t dev)
|
||||
if (verbose)
|
||||
printf("psm%d: failed to reset the aux device.\n", unit);
|
||||
endprobe(ENXIO);
|
||||
} else if (!reset_aux_dev(sc->kbdc)) {
|
||||
recover_from_error(sc->kbdc);
|
||||
if (verbose >= 2)
|
||||
printf("psm%d: failed to reset the aux device (2).\n",
|
||||
unit);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1040,6 +1040,10 @@ psmprobe(device_t dev)
|
||||
/*
|
||||
* NOTE: some controllers appears to hang the `keyboard' when the aux
|
||||
* port doesn't exist and `PSMC_RESET_DEV' is issued.
|
||||
*
|
||||
* Attempt to reset the controller twice -- this helps
|
||||
* pierce through some KVM switches. The second reset
|
||||
* is non-fatal.
|
||||
*/
|
||||
if (!reset_aux_dev(sc->kbdc)) {
|
||||
recover_from_error(sc->kbdc);
|
||||
@ -1047,6 +1051,11 @@ psmprobe(device_t dev)
|
||||
if (verbose)
|
||||
printf("psm%d: failed to reset the aux device.\n", unit);
|
||||
endprobe(ENXIO);
|
||||
} else if (!reset_aux_dev(sc->kbdc)) {
|
||||
recover_from_error(sc->kbdc);
|
||||
if (verbose >= 2)
|
||||
printf("psm%d: failed to reset the aux device (2).\n",
|
||||
unit);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user