On Wed, 2010-01-13 at 19:29 -0600, Eric Wescott wrote:
> > a. You should probably fix the duplicate symbols problem, so you know
> > which i2c routines are in use.
> Done.
>
> > This card never made it into the code base (not that it couldn't).
> >
> > Hans has a test repository still set up here:
> >
> > http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-ivtv
> > <http://www.linuxtv.org/hg/%7Ehverkuil/v4l-dvb-ivtv>
>
> I've downloaded, build and installed the branch at
> http://linuxtv.org/hg/~hverkuil/v4l-dvb-ivtv/rev/a0b04dbb0c0c
>
> Below is the output from modprobe ivtv and dmesg. It does not appear to
> work as /dev/video* doesn't exist. Also modprobe -r ivtv just hangs.
Hi Eric,
You may have an i2c_module problem. From your previous email:
> i2c_core: exports duplicate symbol i2c_smbus_xfer (owned by kernel)
> i2c_algo_bit: exports duplicate symbol i2c_bit_add_numbered_bus (owned by
> kernel)
Please check to make sure either I2C subsystem support is built as a
module or in-kernel but not both.
Also when you build the latest v4l-dvb from Hans' repo, you should build
the ivtv driver and all the supporting device modules (just build and
install them all with 'make' and as root 'make install'. Back up your
old modules if you want to before the make install.
The reason is that ivtv relies on a lot of i2c drivers for various
support chips and the v4l2 infrastructure modules. Within the past year
there have been many changes - you should not mix and match modules from
your distro with modules built from a v4l-dvb repository (unless you
have a really bleeding edge kernel with your distribution).
> Also, I managed to locate a file called giga.diff (output for the file
> below) on my backup discs that appears to be a patch to an older version
> of ivtv. I can't remember if this actually was the patch I used to get
> it working or not. However, I do remember I was never able to get the
> turner working but the composite and svideo inputs did function.
It looks about right. The tuner should be wrong. I can use your patch
to get the SVideo and composite inputs working. I'll try to get to it
soon. (I have a bit of a backlog).
I'll also try to look at your oops to nail down what was wrong, but I'm
guessing it is related to some sort of i2c module mismatch problem.
Regards,
Andy
> Eric Wescott
>
> ------------------------ dmesg ------------------------
> Linux video capture interface:
> v2.00
> ivtv: Start initialization, version
> 1.4.1
> ivtv0: Initializing card
> 0
> ivtv0: Autodetected Sony Gigapocket (Kikyo) card (cx23416
> based)
> ivtv 0000:02:05.0: PCI INT A -> GSI 17 (level, low) -> IRQ
> 17
> ivtv0: Unreasonably low latency timer, setting to 64 (was
> 32)
> saa7115 1-0021: saa7115 found (1f7115d0e100000) @ 0x42 (ivtv i2c driver
> #0)
> tuner 1-0000: chip found @ 0x0 (ivtv i2c driver
> #0)
> BUG: unable to handle kernel NULL pointer dereference at
> 00000004
> IP: [<f8978cb0>] i2c_new_probed_device+0x20/0x1a0
> [i2c_core]
> *pde =
> 00000000
>
>
> Oops: 0000 [#1]
> SMP
> last sysfs file:
> /sys/module/tuner/initstate
> Modules linked in: tuner saa7115 ivtv(+) i2c_algo_bit cx2341x
> v4l2_common videodev v4l1_compat tveeprom snd_seq_dummy snd_seq_oss
> snd_seq_mi
> di_event snd_seq snd_pcm_oss snd_mixer_oss ipv6 pcmcia pcmcia_core ppdev
> lp parport_pc parport fuse usbhid hid snd_cs4232 snd_mpu401 snd_wav
> efront ath5k snd_wss_lib snd_intel8x0 mac80211 snd_ac97_codec
> snd_opl3_lib led_class ohci1394 snd_hwdep cfg80211 snd_mpu401_uart
> ieee1394 ac
> 97_bus fan sg snd_pcm 8139too snd_rawmidi thermal mii snd_timer
> intel_agp snd_seq_device ns558 processor rtc_cmos evdev rtc_core i2c_i801 sh
> pchp snd snd_page_alloc serio_raw uhci_hcd agpgart gameport thermal_sys
> ehci_hcd soundcore rtc_lib i2c_core button hwmon ext4 mbcache jbd2 c
> rc16 [last unloaded:
> pcmcia_core]
>
>
>
> Pid: 3051, comm: modprobe Not tainted (2.6.29.6-smp #1)
> EIP: 0060:[<f8978cb0>] EFLAGS: 00010206 CPU: 0
> EIP is at i2c_new_probed_device+0x20/0x1a0 [i2c_core]
> EAX: 0fff800f EBX: 00000000 ECX: 00000004 EDX: f93f0b3c
> ESI: 00000004 EDI: 00000004 EBP: f294bcc4 ESP: f2923c88
> DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
> Process modprobe (pid: 3051, ti=f2922000 task=f6a4c680 task.ti=f2922000)
> Stack:
> 656e7574 f6440072 f294bcc4 00000000 f2923d08 f644e220 f897980d 00000001
> 00000000 00000282 f8978c11 f294bd0c 00000000 f644e200 f9396598 c0517480
> c04af7a0 00000000 00000004 f2923d08 f2940074 f93c7461 f94389ba 00000000
> Call Trace:
> [<f8978c11>] i2c_new_device+0x21/0xa0 [i2c_core]
> [<f9396598>] v4l2_device_register_subdev+0x78/0xb0 [videodev]
> [<f93c7461>] v4l2_i2c_new_subdev_board+0x41/0x140 [v4l2_common]
> [<f93c75d3>] v4l2_i2c_new_subdev_cfg+0x73/0x90 [v4l2_common]
> [<f9425b07>] ivtv_i2c_register+0xb7/0x1b0 [ivtv]
> [<f9433c5c>] ivtv_probe+0x88c/0x19de [ivtv]
> [<c0227a6a>] idr_get_empty_slot+0xea/0x270
> [<c0227c70>] ida_get_new_above+0x80/0x1c0
> [<c01a0aee>] find_inode+0x3e/0x70
> [<c01d6d80>] sysfs_ilookup_test+0x0/0x10
> [<c01d7051>] sysfs_find_dirent+0x21/0x30
> [<c01a09ed>] iput+0x1d/0x50
> [<c01d755a>] sysfs_addrm_finish+0x3a/0x1f0
> [<c01d7262>] sysfs_add_one+0x12/0x50
> [<c01d807f>] sysfs_do_create_link+0x9f/0x130
> [<c01a09ed>] iput+0x1d/0x50
> [<c0240b2b>] local_pci_probe+0xb/0x10
> [<c0241889>] pci_device_probe+0x69/0x90
> [<c02a4f83>] driver_probe_device+0x83/0x1b0
> [<c0240bf6>] pci_match_device+0x16/0xb0
> [<c02a5139>] __driver_attach+0x89/0x90
> [<c02417c0>] pci_device_remove+0x0/0x40
> [<c02a48e4>] bus_for_each_dev+0x44/0x70
> [<c02417c0>] pci_device_remove+0x0/0x40
> [<c02a4e16>] driver_attach+0x16/0x20
> [<c02a50b0>] __driver_attach+0x0/0x90
> [<c02a429f>] bus_add_driver+0x1bf/0x240
> [<c02417c0>] pci_device_remove+0x0/0x40
> [<c02a52fc>] driver_register+0x5c/0x130
> [<f9445000>] module_start+0x0/0x9c [ivtv]
> [<c0241aed>] __pci_register_driver+0x3d/0x80
> [<f9445000>] module_start+0x0/0x9c [ivtv]
> [<f9445040>] module_start+0x40/0x9c [ivtv]
> [<c010111a>] do_one_initcall+0x2a/0x160
> [<c015bcf7>] tracepoint_module_notify+0x27/0x30
> [<c01416e6>] notifier_call_chain+0x36/0x70
> [<c0141ad3>] __blocking_notifier_call_chain+0x53/0x70
> [<c014f25b>] sys_init_module+0x8b/0x1c0
> [<c018f2d1>] sys_read+0x41/0x80
> [<c01033ae>] syscall_call+0x7/0xb
> [<c0400000>] quirk_nvidia_ck804_msi_ht_cap+0x2/0x75
> Code: 00 00 00 00 8d bc 27 00 00 00 00 55 89 c5 57 89 cf 56 53 83 ec 44
> 89 54 24 10 8b 50 0c ff 52 08 a9 00 00 02 00 0f 84 57 01 00 00 <0f>
> b7 1f 66 83 fb fe 0f 84 13 01 00 00 8d 85 b4 00 00 00 8d 55
> EIP: [<f8978cb0>] i2c_new_probed_device+0x20/0x1a0 [i2c_core] SS:ESP
> 0068:f2923c88
> ---[ end trace caefa9cc4f192785 ]---
>
>
> ---------- OUTPUT FROM "modprobe ivtv" -------------------------
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010
> ...
>
>
> darkstar kernel: last sysfs file:
> /sys/module/tuner/initstate
>
>
> Segmentation
> fault
>
>
> r...@darkstar:~#
>
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010
> ...
>
>
> darkstar kernel: Process modprobe (pid: 3063, ti=f28ac000 task=f6823a80
> task.ti=f28ac000)
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: Stack:
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: 00000000 00000282 f284f5c0 f28cbd0c 00000000 f28ae200
> f937f598 c0517480
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: c04af7a0 00000000 00000004 f28add08 f28c0074 f93b0461
> f94219ba 00000000
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: Call Trace:
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<f937f598>] v4l2_device_register_subdev+0x78/0xb0
> [videodev]
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<f93b0461>] v4l2_i2c_new_subdev_board+0x41/0x140
> [v4l2_common]
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<f93b05d3>] v4l2_i2c_new_subdev_cfg+0x73/0x90
> [v4l2_common]
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<f940eb07>] ivtv_i2c_register+0xb7/0x1b0 [ivtv]
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<f941cc5c>] ivtv_probe+0x88c/0x19de [ivtv]
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c0227a6a>] idr_get_empty_slot+0xea/0x270
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c0227c70>] ida_get_new_above+0x80/0x1c0
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01a0aee>] find_inode+0x3e/0x70
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01d6d80>] sysfs_ilookup_test+0x0/0x10
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01d7051>] sysfs_find_dirent+0x21/0x30
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01a09ed>] iput+0x1d/0x50
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01d755a>] sysfs_addrm_finish+0x3a/0x1f0
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01d7262>] sysfs_add_one+0x12/0x50
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01d807f>] sysfs_do_create_link+0x9f/0x130
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01a09ed>] iput+0x1d/0x50
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c0240b2b>] local_pci_probe+0xb/0x10
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c0241889>] pci_device_probe+0x69/0x90
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02a4f83>] driver_probe_device+0x83/0x1b0
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c0240bf6>] pci_match_device+0x16/0xb0
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02a5139>] __driver_attach+0x89/0x90
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02417c0>] pci_device_remove+0x0/0x40
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02a48e4>] bus_for_each_dev+0x44/0x70
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02417c0>] pci_device_remove+0x0/0x40
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02a4e16>] driver_attach+0x16/0x20
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02a50b0>] __driver_attach+0x0/0x90
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02a429f>] bus_add_driver+0x1bf/0x240
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02417c0>] pci_device_remove+0x0/0x40
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c02a52fc>] driver_register+0x5c/0x130
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<f942e000>] module_start+0x0/0x9c [ivtv]
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c0241aed>] __pci_register_driver+0x3d/0x80
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<f942e000>] module_start+0x0/0x9c [ivtv]
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<f942e040>] module_start+0x40/0x9c [ivtv]
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c010111a>] do_one_initcall+0x2a/0x160
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c015bcf7>] tracepoint_module_notify+0x27/0x30
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01416e6>] notifier_call_chain+0x36/0x70
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c0141ad3>] __blocking_notifier_call_chain+0x53/0x70
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c014f25b>] sys_init_module+0x8b/0x1c0
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c018f2d1>] sys_read+0x41/0x80
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c01033ae>] syscall_call+0x7/0xb
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: [<c0400000>] quirk_nvidia_ck804_msi_ht_cap+0x2/0x75
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: Code: 00 00 00 00 8d bc 27 00 00 00 00 55 89 c5 57 89
> cf 56 53 83 ec 44 89 54 24 10 8b 50 0c ff 52 08 a9 00 00 02 00
> 0f 84 57 01 00 00 <0f> b7 1f 66 83 fb fe 0f 84 13 01 00 00 8d 85 b4 00
> 00 00 8d 55
>
> Message from sysl...@darkstar at Wed Jan 13 19:12:05 2010 ...
> darkstar kernel: EIP: [<f89a6cb0>] i2c_new_probed_device+0x20/0x1a0
> [i2c_core] SS:ESP 0068:f28adc88
>
>
> ------------------------- giga.diff ----------------------------------
> Index:
> ivtv-driver.h
>
>
> ===================================================================
>
>
> --- ivtv-driver.h (revision
> 3364)
>
>
> +++ ivtv-driver.h (working
> copy)
>
>
> @@ -128,14 +128,15
> @@
>
>
> #define IVTV_CARD_GOTVIEW_PCI_DVD2 15 /* GotView PCI DVD2
> */
> #define IVTV_CARD_YUAN_MPC622 16 /* Yuan MPC622 miniPCI
> */
> #define IVTV_CARD_DCTMTVP1 17 /* DIGITAL COWBOY DCT-MTVP1
> */
> +#define IVTV_CARD_GIGA_POCKET 18 /* Sony Giga Pocket PVR
> */
> /* Variants of existing cards but with the same PCI IDs. The
> driver
> detects these based on other device
> information.
>
>
> These cards must always come
> last.
>
>
> New cards must be inserted above, and the indices of the cards
> below
> must be adjusted accordingly.
> */
>
>
> -#define IVTV_CARD_PVR_350_V1 18 /* encoder, decoder, tv-out, V1
> (uses saa7114) */
> -#define IVTV_CARD_CX23416GYC_NOGR 19 /* Kuroutoshikou
> CX23416GYC-STVLP (Yuan MPG600GR OEM) */
> -#define IVTV_CARD_CX23416GYC_NOGRYCS 20 /* Kuroutoshikou
> CX23416GYC-STVLP (Yuan MPG600GR OEM) */
> +#define IVTV_CARD_PVR_350_V1 19 /* encoder, decoder, tv-out, V1
> (uses saa7114) */
> +#define IVTV_CARD_CX23416GYC_NOGR 20 /* Kuroutoshikou
> CX23416GYC-STVLP (Yuan MPG600GR OEM) */
> +#define IVTV_CARD_CX23416GYC_NOGRYCS 21 /* Kuroutoshikou
> CX23416GYC-STVLP (Yuan MPG600GR OEM) */
>
>
>
> #define IVTV_AUDIO_32000 0x2 /* 32 kHz audio
> */
>
>
> #define IVTV_AUDIO_44100 0x0 /* 44.1 kHz audio
> */
>
>
> @@ -171,6 +172,7
> @@
>
>
> #define IVTV_PCI_ID_IODATA
> 0x10fc
>
>
> #define IVTV_PCI_ID_MELCO
> 0x1154
>
>
> #define IVTV_PCI_ID_GOTVIEW
> 0xffac
>
>
> +#define IVTV_PCI_ID_SONY
> 0x104d
>
>
>
>
>
> #define IVTV_MBOX_MAX_BOXES
> 20
>
>
> #define IVTV_MBOX_API_BOXES
> 6
>
>
> Index:
> ivtv-cards.c
>
>
> ===================================================================
>
>
> --- ivtv-cards.c (revision
> 3348)
>
>
> +++ ivtv-cards.c (working
> copy)
>
>
> @@ -868,6 +868,36
> @@
>
>
>
>
>
> /*
> -------------------------------------------------------------------------
> */
>
>
>
> +/* Sony Giga Pocket PVR
> */
>
>
> +
>
>
> +static const struct ivtv_card_pci_info ivtv_pci_giga_pocket[] =
> {
> + { PCI_DEVICE_ID_IVTV16, IVTV_PCI_ID_SONY, 0x813d
> },
> + { 0, 0, 0
> }
>
>
> +};
>
>
> +
>
>
> +static const struct ivtv_card ivtv_card_giga_pocket =
> {
> + .type =
> IVTV_CARD_GIGA_POCKET,
>
>
> + .name = "Sony Giga Pocket PVR",
> + .v4l2_capabilities = IVTV_CAP_ENCODER,
> + .hw_video = IVTV_HW_SAA7115,
> + .hw_all = IVTV_HW_SAA7115 | IVTV_HW_TUNER,
> + .video_inputs = {
> + { IVTV_CARD_INPUT_VID_TUNER, 0, IVTV_SAA71XX_SVIDEO0 },
> + { IVTV_CARD_INPUT_SVIDEO1, 1, IVTV_SAA71XX_SVIDEO2 },
> + { IVTV_CARD_INPUT_COMPOSITE1, 1, IVTV_SAA71XX_SVIDEO2 },
> + },
> + .audio_inputs = {
> + { IVTV_CARD_INPUT_AUD_TUNER, IVTV_GPIO_TUNER },
> + { IVTV_CARD_INPUT_LINE_IN1, IVTV_GPIO_LINE_IN },
> + },
> + .tuners = {
> + { .std = V4L2_STD_525_60, .tuner = TUNER_PHILIPS_NTSC },
> + },
> + .pci_list = ivtv_pci_giga_pocket,
> +};
> +
> +/*
> ------------------------------------------------------------------------- */
> +
> static const struct ivtv_card *ivtv_card_list[] = {
> &ivtv_card_pvr250,
> &ivtv_card_pvr350,
> @@ -887,6 +917,7 @@
> &ivtv_card_gotview_pci_dvd2,
> &ivtv_card_yuan_mpc622,
> &ivtv_card_dctmvtvp1,
> + &ivtv_card_giga_pocket,
>
> /* Variations of standard cards but with the same PCI IDs.
> These cards must come last in this list. */
>
>
>
>
>
> _______________________________________________
> ivtv-users mailing list
> [email protected]
> http://ivtvdriver.org/mailman/listinfo/ivtv-users
>
_______________________________________________
ivtv-users mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-users