[linux-dvb] HD3000 (cx88) and GA-965P-DS3 Problem.

Steven Toth stoth at hauppauge.com
Wed Oct 18 20:50:38 CEST 2006


Copied the ML back in.

Good. I suspect the eeprom write enable pin is electrically enabled on 
the board by default. A bad idea in my opinion. If the eeprom gets 
trashed then this kind of thing happens.

Byte[0] needs one if it's bits flipped from 0 to 1 to enable the MPEG 
device. The audio tool below does that for a different bit. Off the top 
of my head I don't remember which bit needs flipped. Trent may be 
willing to help.

Steve

Joshua Prismon wrote:
> Your guess was right on the money. One of the users at the HD3000
> posted a executable that looks at the HD3000's eeprom to enable the
> onboard audio (rather then use the external jack). Running that
> utility revealed that the onboard mpeg port is turned off:
>
>
> josh at surprise:~/Desktop$ sudo ./i2c_detect
> Found CX88 Card 0 on I2C bus 2
> Appears to be a pcHDTV HD-3000
> Run cx88_eeprom on this card? (y/n)
> y
> Running cx88_eeprom on /dev/i2c-2
> pcHDTV HD-3000 / HD-5500 Audio Function Enabler V1.0
> By Trent Piepho <xyzzy at speakeasy.org>
>
> Opening I2C device /dev/i2c-2
> Vendor: pcHDTV  Device: HD-3000
> Video Decoder:  Enabled (always)
> Audio Port:     Enabled
> MPEG Port:      Disabled
> VIP Host:       Disabled
> IR Port:        Enabled
>
> Will toggle Audio Port setting to Disabled
> Are you sure you want to do this and write your card's EEPROM?
> Type "yes" to continue:
>
> I tried enabling the Audio Port (it is enabled now) and that worked
> fine. Unfortunitly the script doesn't enable other options right now.
> I am hoping that he can come up with a new binary (or post the code
> for the executable) to fix it.
>
> On 10/18/06, Steven Toth <stoth at hauppauge.com> wrote:
>   
>> I don't understand why the pci sub device registers as 7060:3000 (which
>> comes from the eeprom) but you can't find the eeprom. If the eeprom is
>> dead I expected the PCI device list to show something like 14f1:8800
>> subdev 0000:0000.
>>
>> Can you try the board under windows? Maybe some other driver bug is
>> preventing i2c access to the eeprom or the i2c bus.
>>
>> Or, try the board with the native current ubuntu kernel (without the
>> latest v4l-dvb tree).
>>
>> Steve
>>
>>
>> Joshua Prismon wrote:
>>     
>>> Here is a hex dump of all of the eeproms I am seeing:
>>> surprise:/sys/bus/i2c/devices> foreach f (*/eeprom)
>>> foreach? echo $f
>>> foreach? hd $f
>>> foreach? end
>>> 0-0050/eeprom
>>> 00000000  80 08 07 0d 0a 02 40 00  04 50 60 00 82 08 00 01  |...... at ..P`.....|
>>> 00000010  0e 04 08 01 02 20 00 60  70 75 75 3c 28 3c 28 40  |..... .`puu<(<(@|
>>> 00000020  60 60 40 40 00 00 00 00  00 37 46 28 28 55 00 00  |``@@.....7F((U..|
>>> 00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 88  |................|
>>> 00000040  7f 7f 9e 00 00 00 00 00  01 56 53 35 31 32 4d 42  |.........VS512MB|
>>> 00000050  34 30 30 20 20 20 20 20  20 20 20 00 00 00 00 00  |400        .....|
>>> 00000060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
>>> *
>>> 00000100
>>> 0-0051/eeprom
>>> 00000000  80 08 07 0d 0a 02 40 00  04 50 60 00 82 08 00 01  |...... at ..P`.....|
>>> 00000010  0e 04 08 01 02 20 00 60  70 75 75 3c 28 3c 28 40  |..... .`puu<(<(@|
>>> 00000020  60 60 40 40 00 00 00 00  00 37 46 28 28 55 00 00  |``@@.....7F((U..|
>>> 00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 88  |................|
>>> 00000040  7f 7f 9e 00 00 00 00 00  01 56 53 35 31 32 4d 42  |.........VS512MB|
>>> 00000050  34 30 30 20 20 20 20 20  20 20 20 00 00 00 00 00  |400        .....|
>>> 00000060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
>>> *
>>> 00000100
>>> 0-0052/eeprom
>>> 00000000  80 08 07 0d 0a 02 40 00  04 50 65 00 82 08 00 01  |...... at ..Pe.....|
>>> 00000010  0e 04 18 01 02 20 c0 60  70 00 00 3c 28 3c 28 40  |..... .`p..<(<(@|
>>> 00000020  60 60 40 40 00 00 00 00  00 37 46 30 28 50 00 01  |``@@.....7F0(P..|
>>> 00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 10 87  |................|
>>> 00000040  7f 7f 7f 0b 00 00 00 00  09 4d 31 55 35 31 32 36  |.........M1U5126|
>>> 00000050  34 44 53 38 48 43 33 47  2d 35 54 20 00 05 07 a2  |4DS8HC3G-5T ....|
>>> 00000060  61 20 01 88 00 00 00 00  00 00 00 00 00 00 00 00  |a ..............|
>>> 00000070  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
>>> 00000080  00 00 00 00 00 00 00 4d  45 30 35 32 31 34 30 45  |.......ME052140E|
>>> 00000090  42 00 00 00 00 00 00 39  34 30 32 31 30 39 00 00  |B......9402109..|
>>> 000000a0  00 30 30 30 31 00 00 00  45 4c 49 00 00 32 2d 31  |.0001...ELI..2-1|
>>> 000000b0  30 00 00 00 00 00 00 00  00 00 00 00 00 00 80 00  |0...............|
>>> 000000c0  00 00 00 00 00 00 00 00  00 00 00 80 00 00 00 00  |................|
>>> 000000d0  00 00 00 00 00 00 00 00  80 00 00 00 00 00 00 00  |................|
>>> 000000e0  00 00 00 00 00 80 00 00  00 00 00 00 00 00 00 00  |................|
>>> 000000f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 88  |................|
>>> 00000100
>>> 0-0053/eeprom
>>> 00000000  80 08 07 0d 0a 02 40 00  04 50 65 00 82 08 00 01  |...... at ..Pe.....|
>>> 00000010  0e 04 18 01 02 20 c0 60  70 00 00 3c 28 3c 28 40  |..... .`p..<(<(@|
>>> 00000020  60 60 40 40 00 00 00 00  00 37 46 30 28 50 00 01  |``@@.....7F0(P..|
>>> 00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 10 87  |................|
>>> 00000040  7f 7f 7f 0b 00 00 00 00  09 4d 31 55 35 31 32 36  |.........M1U5126|
>>> 00000050  34 44 53 38 48 43 33 47  2d 35 54 20 00 05 07 e8  |4DS8HC3G-5T ....|
>>> 00000060  8c 20 02 88 00 00 00 00  00 00 00 00 00 00 00 00  |. ..............|
>>> 00000070  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
>>> 00000080  00 00 00 00 00 00 00 4d  45 30 35 32 31 34 30 45  |.......ME052140E|
>>> 00000090  42 00 00 00 00 00 00 39  34 30 32 31 30 39 00 00  |B......9402109..|
>>> 000000a0  00 30 30 30 32 00 00 00  45 4c 49 00 00 32 2d 31  |.0002...ELI..2-1|
>>> 000000b0  30 00 00 00 00 00 00 00  00 00 00 00 00 00 80 00  |0...............|
>>> 000000c0  00 00 00 00 00 00 00 00  00 00 00 80 00 00 00 00  |................|
>>> 000000d0  00 00 00 00 00 00 00 00  80 00 00 00 00 00 00 00  |................|
>>> 000000e0  00 00 00 00 00 80 00 00  00 00 00 00 00 00 00 00  |................|
>>> 000000f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 88  |................|
>>> 00000100
>>>
>>>
>>> On 10/18/06, Joshua Prismon <joshua.prismon at gmail.com> wrote:
>>>
>>>       
>>>> modprobe cx88xx i2c_scan = 1
>>>>  2091.952840] cx88xx: `' invalid for parameter `i2c_scan'
>>>>
>>>> I did a fresh install of ubuntu edgy eft - knot 3 to test this, and am
>>>> back on my old motherboard.
>>>>
>>>>
>>>> On 10/18/06, Steven Toth <stoth at hauppauge.com> wrote:
>>>>
>>>>         
>>>>> Try modprobe cx88xx i2c_scan = 1
>>>>>
>>>>> Steve
>>>>>
>>>>> Joshua Prismon wrote:
>>>>>
>>>>>           
>>>>>> cx8800 with i2c_scan = 1
>>>>>> sudo /sbin/modprobe cx8800 i2c_scan=1
>>>>>> [  489.401734] cx8800: Unknown parameter `i2c_scan'
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 10/17/06, Steven Toth <stoth at hauppauge.com> wrote:
>>>>>>
>>>>>>
>>>>>>             
>>>>>>> Joshua Prismon wrote:
>>>>>>>
>>>>>>>
>>>>>>>               
>>>>>>>> Eeprom works now. Here is the memory:
>>>>>>>>
>>>>>>>> 00000000  80 08 07 0d 0a 02 40 00  04 50 60 00 82 08 00 01  |...... at ..P`.....|
>>>>>>>> 00000010  0e 04 08 01 02 20 00 60  70 75 75 3c 28 3c 28 40  |..... .`puu<(<(@|
>>>>>>>> 00000020  60 60 40 40 00 00 00 00  00 37 46 28 28 55 00 00  |``@@.....7F((U..|
>>>>>>>> 00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 88  |................|
>>>>>>>> 00000040  7f 7f 9e 00 00 00 00 00  01 56 53 35 31 32 4d 42  |.........VS512MB|
>>>>>>>> 00000050  34 30 30 20 20 20 20 20  20 20 20 00 00 00 00 00  |400        .....|
>>>>>>>> 00000060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
>>>>>>>> *
>>>>>>>> 00000100
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>                 
>>>>>>> This isn't the right eeprom.
>>>>>>>
>>>>>>> You should expect to see 7060:3000 somewhere in the first 8 bytes. Eg.
>>>>>>> 60 70 00 30
>>>>>>>
>>>>>>> Try modprobing cx8800 with i2c_scan = 1
>>>>>>>
>>>>>>> See if the eeprom is found at address 0xa0 or 0x50;
>>>>>>>
>>>>>>> If it's not found, then that would explain everything.
>>>>>>>
>>>>>>> Steve
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>               
>>>
>>>       
>>     
>
>   




More information about the linux-dvb mailing list