Hi,

Am Montag, den 17.05.2010, 22:14 +0200 schrieb Primoz PETERLIN:
> 2010/5/17 Klaus Stengel <klaus.sten...@asamnet.de>:
> > Bernhard Praschinger wrote:
> >> I'd really like to hear of a success story (or how you call it). That a
> >> zoran card works on a 64 bit machine with a 64bit kernel.
> >
> > I have a DC10+ running with a 64-bit Linux 2.6.26 on Intel Core2
> > Machine. But I had to do some modifications to the driver because the
> > Zoran card can only adress the lower 32-bit of RAM with its DMA engine
> > so the buffers for data transfer need to be allocated in that area. I
> > did post the necessary changes for some older Kernel versions two years
> > ago on the developer list, but I didn't receive much feedback iirc.
> 
> Now that's interesting. Could it be that it worked for me because I
> didn't have more than 4 GB of memory? (Yes, I know, you may ask why
> would one bother at all with a 64-bit system in that case).

Well, it's certainly related. The more memory you have, the bigger are
the odds that the buffers will be allocated outside the 4 GB that can be
addressed with 32 bits. But even if you don't have more than 4 GB of
RAM, most Mainboards start to map parts of the available memory into the
bigger address space much earlier. You can check this if you run the
command:

cat /proc/iomem | grep 'System RAM'

The output should look something like this:
00000000-0009ebff : System RAM
00100000-bd4a0fff : System RAM
bd4a7000-bd5b6fff : System RAM
bd60f000-bd6c5fff : System RAM
bd9ff000-bd9fffff : System RAM
100000000-13bffffff : System RAM

If there are (hex-)numbers which have more than 8 digits, you definitely
have some memory areas that require 64-bits to be accessed. For the
machine from the example above, everything above 3033 MB (=bd9fffff hex)
was remapped beyond the 4 GB limit. It might be possible that your
machine already does this sort of remapping and if parts of the data
buffers happen to be allocated in one of those remapped areas, the
driver will fail. That's also the reason why passing mem=4G as kernel
parameter most certainly won't help, but limiting the used memory to 2
GB should be safe for most boards.

Regards,
Klaus.


------------------------------------------------------------------------------

_______________________________________________
Mjpeg-users mailing list
Mjpeg-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mjpeg-users

Reply via email to