Dne středa 04 říjen 2006 21:39 Mike Daugird napsal(a):
> I saw your post and I do not really understand how you "patched
> ivtv-driver.h" ect..
ok., so - stepwise. Unpack the ivtv-0.7.0 driver:
cd /usr/portage/media-tv/ivtv
ebuild ivtv-0.7.0.ebuil unpack
cd /var/tmp/portage/ivtv-0.7.0/work
and apply the attached patch:
patch -p0 < ivtv-0.7.0.diff
it should be without any error messages.
Then return back:
cd /usr/portage/media-tv/ivtv
ebuild ivtv-0.7.0.ebuild install
ebuild ivtv-0.7.0.ebuild merge
Or, you can do the same with ivtv-0.7.1 (preferred way, even when ivtv-0.7.0
is not in portage tree yet - you can prepare your own ebuild from
ivtv-0.7.0.ebuild:
copy the directory /usr/portage/media-tv/ivtv with whole content
into /usr/local/portage
(suppose PORDIRE_OVERLAY is defined in your /etc/make.conf as this dir)
rename ivtv-0.7.0.ebuild to ivtv-0.7.1.ebuid
create the digest:
cd /usr/local/portage/media-tv/ivtv
ebuild ivtv-0.7.1.ebuild digest
And the rest is the same, i.e. unpacking, patching by the attached
ivtv-0.7.1.diff, installing and merging.
That is.
Good luck.
btw: my situation was: without the patch applied the boot process went
smoothly until startup of udev, then it stopped, waited for a while and then
the error message (something as like as 'error loading firmware') appeared.
The whole computer was totally frozen - no mouse, no keyboard, no response
via network. Only reset and power buttons worked... If your PC does something
similar, this patch(es) might help as well.
After the application of the patch it is so far ok., no lock-ups.
--
Jan Taimr
---------------------------------------
The worst computer virus is an end-user
---------------------------------------
diff -uNr ivtv-0.7.0.orig/driver/ivtv-driver.h ivtv-0.7.0/driver/ivtv-driver.h
--- ivtv-0.7.0.orig/driver/ivtv-driver.h 2006-06-24 23:50:32.000000000 +0200
+++ ivtv-0.7.0/driver/ivtv-driver.h 2006-10-04 22:17:01.000000000 +0200
@@ -464,7 +464,8 @@
#define IVTV_CMD_SPU_STOP 0x00000001
#define IVTV_CMD_SDRAM_PRECHARGE_INIT 0x0000001A
#define IVTV_CMD_SDRAM_REFRESH_INIT 0x80000640
-#define IVTV_SDRAM_SLEEPTIME (60 * HZ / 100) /* 600ms */
+//#define IVTV_SDRAM_SLEEPTIME (60 * HZ / 100) /* 600ms */
+#define IVTV_SDRAM_SLEEPTIME HZ
/*Used for locating the firmware mailboxes*/
#define IVTV_DECODE_INIT_MPEG_FILENAME "v4l-cx2341x-init.mpg"
diff -uNr ivtv-0.7.0.orig/driver/ivtv-firmware.c ivtv-0.7.0/driver/ivtv-firmware.c
--- ivtv-0.7.0.orig/driver/ivtv-firmware.c 2006-06-09 21:44:31.000000000 +0200
+++ ivtv-0.7.0/driver/ivtv-firmware.c 2006-10-04 22:17:18.000000000 +0200
@@ -103,6 +103,9 @@
}
release_firmware(fw);
IVTV_INFO("loaded %s firmware (%d bytes)\n", fn, retval);
+ // This firmware loading is racy, try waiting to let things settle
+ IVTV_DEBUG_INFO("Sleeping for 100 ms\n");
+ ivtv_sleep_timeout( HZ / 10, 0);
} else {
IVTV_INFO("unable to open firmware %s\n", fn);
IVTV_INFO("did you put the firmware in the hotplug firmware directory?\n");
diff -uNr ivtv-0.7.1.orig/driver/ivtv-driver.h ivtv-0.7.1/driver/ivtv-driver.h
--- ivtv-0.7.1.orig/driver/ivtv-driver.h 2006-06-24 23:50:32.000000000 +0200
+++ ivtv-0.7.1/driver/ivtv-driver.h 2006-10-04 22:17:01.000000000 +0200
@@ -464,7 +464,8 @@
#define IVTV_CMD_SPU_STOP 0x00000001
#define IVTV_CMD_SDRAM_PRECHARGE_INIT 0x0000001A
#define IVTV_CMD_SDRAM_REFRESH_INIT 0x80000640
-#define IVTV_SDRAM_SLEEPTIME (60 * HZ / 100) /* 600ms */
+//#define IVTV_SDRAM_SLEEPTIME (60 * HZ / 100) /* 600ms */
+#define IVTV_SDRAM_SLEEPTIME HZ
/*Used for locating the firmware mailboxes*/
#define IVTV_DECODE_INIT_MPEG_FILENAME "v4l-cx2341x-init.mpg"
diff -uNr ivtv-0.7.1.orig/driver/ivtv-firmware.c ivtv-0.7.1/driver/ivtv-firmware.c
--- ivtv-0.7.1.orig/driver/ivtv-firmware.c 2006-06-09 21:44:31.000000000 +0200
+++ ivtv-0.7.1/driver/ivtv-firmware.c 2006-10-04 22:17:18.000000000 +0200
@@ -103,6 +103,9 @@
}
release_firmware(fw);
IVTV_INFO("loaded %s firmware (%d bytes)\n", fn, retval);
+ // This firmware loading is racy, try waiting to let things settle
+ IVTV_DEBUG_INFO("Sleeping for 100 ms\n");
+ ivtv_sleep_timeout( HZ / 10, 0);
} else {
IVTV_INFO("unable to open firmware %s\n", fn);
IVTV_INFO("did you put the firmware in the hotplug firmware directory?\n");
_______________________________________________
ivtv-users mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-users