Finally I have solved the problem with a small correction in the code in raw.c in function raw_savefile:
if (conf.dng_raw) {
// Write alternate (inactive) buffer that we reversed the bytes into above (if only one buffer then it will be the active buffer instead)
// write(fd, (char*)(((unsigned long)altrawadr)|CAM_UNCACHED_BIT), hook_raw_size());
write(fd, (char*)(((unsigned long)altrawadr)), hook_raw_size());
} else {
// Write active RAW buffer
// write(fd, (char*)(((unsigned long)rawadr)|CAM_UNCACHED_BIT), hook_raw_size());
write(fd, (char*)(((unsigned long)rawadr)), hook_raw_size());
}
close(fd);
utime(fn, &t);
So basically the address is not changed by bitwise OR (CAM_UNCACHED_BIT) when calling "write()" from now. With this sollution it works with canon SX110is with RAW and with DNG files.
Could some developer put it in the source behind a conditional switch or whatever so later releases will also work with SX110is?
Anyway is this the right place to suggest correction?