i think the posted patch might not be
appropriate for controllers not having
the via controllers' problem as it is quite
quick to reset the controller if a command
takes a long time.  with a properly
functioning controller, it is generally a
bad idea to do a reset with a command in
flight.

i haven't seen any other patches so i don't
know how they work.

i also took a look at the linux driver for
the same hardware and didn't find the same
reset loop.  i did however find some pci
setup code specific to this chipset which
i posted some time ago
        http://9fans.net/archive/2008/02/277
this code was translated from the linux.
i don't know if this was ever tried.  but
it tries to attack the root of the problem,
missed interrupts, by setting some pcie
magic.

i can't try this myself as i don't have
appropriately buggy hardware.

if this doesn't work, it might make sense
to have a controller setting to optionally
check for missed interrupts.

this will allow us to still tell the difference
between an interrupt that got lost and a
controller that's gone off into the weeds.

i've put up a driver that may work if
this is the case but it's not tested due to
lack of hardware.  sources is down, so it
can be accessed here:

        hget http://www.quanstro.net/vtsdata.c

- erik


Reply via email to