Cameron Maxwell wrote:
Hey all,
Can someone do me a favour please, If you've got a working usbvision
under Linux and you KNOW its got an SAA7111 chip, and not the SAA7113,
can you look at your system logs and tell me what chip version it
reports.
It should look something like this(except I would expect the chip
version to not be 11):
Jan 2 18:12:35 puny kernel: saa7111_read 0x11
Jan 2 18:12:35 puny kernel: saa7111_attach: chip version 11
I don't know if this helps, but I have an OV511+/SAA7111A device that
reports the version as 0x21. The SAA7111A datasheet describes this
register as follows:
Chip version:
Bit 7 6 5 4 3 2 1 0
V1: 0 0 0 1 X X X X
V2: 0 0 1 0 X X X X
Note: X = Reserved
So, it seems that only the upper 4 bits are significant. The SAA7113
datasheet says roughly the same thing, except that it doesn't enumerate
the versions of that chip (though I know that chip has a V1 and a V2).
If you're trying to detect the SAA7111(A) vs. the SAA7113, I think
you're out of luck. Although, since the SAA7111(A) doesn't have
subaddresses above 0x1F, it might work to read from one of the 7113's
higher registers and see if you get a NAK. It's also likely that
0x01-0x1F have different default values, but since there's no
reset-registers-to-default mechanism I wouldn't trust that method.
I've heard that the SAA7113 was supposed to be a drop-in replacement for
the SAA7111. In practice, using an SAA7111 driver with that chip won't
work since there are reserved bits in the > 0x1F registers, and they
must be programmed to 0 after chip power-up or you will get
unpredictable results. IIRC some of the < 0x1F registers have slightly
different functions as well.
--
Mark McClelland
mark@xxxxxxxxxxxxxxxx