Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: Skystar2 i2c lockup



Hi!

Here are the registers for the "two line serial":

Reg 0x100
WRITE
Bits 6-0	CHIPADDRESS
Bit 7	Reserved
Bits 15-8 BASE ADDRESS
Bits 23-16 DATA1
Bit 24	Start transaction. 
Bit 25	R/#W Read=1, Write=0
Bit 27-26 Size of transaction. 00=1, 11=4 bytes.
Bit 29-28 Port selection 00=Invalid, 01=Frontend, 10-EEPROM, 11=Tuner
Bit 30	Base address presence indicator. When 1, no base address is generated.
Bit 31	Reserved

Reg 0x100
READ
Bit 0	R/#W - Internal states.
Bits 7-1	CHIPADDRESS
Bits 15-8 BASE ADDRESS
Bits 23-16 DATA1
Bit 24	Status. When=1, transaction underway. =0  engine is free.
Bit 25	R/#W Read=1, Write=0
Bit 27-26 Size of transaction. 00=1, 11=4 bytes.
Bit 29-28 Port selection 00=Invalid, 01=Frontend, 10-EEPROM, 11=Tuner
Bit 30	ACK error. When =1, no ACK from slave.
Bit 31	When set, it indicate that the current transaction is done.

Reg 0x104
Bit 7-0	Data2
Bit 15-8	Data3
Bit 23-16 Data4
Bit 24	Explicit STOP. When set, the transaction is done without a trailing STOP. FC3 only.
Bit 25	When set, generates a STOP event. FC3 only.
Bit 31-26 Reserved.

Reg 0x108, 0x10c and 0x110 Have the same function, but affecting ports 1(Frontend), 2(EEPROM) and 3(Tuner), respectively.
Bits 5-0	thi Time High for i2c timing. The reference is a pre-scale internal clock based on the main clock.
Bits 12-8 tlo Time Low for i2c timing. The reference is a pre-scale internal clock based on the main clock.
All other bits, reserved.

I hope this is not too confusing.
Let me know if you have any questions.

	Augusto

*********** REPLY SEPARATOR  ***********

On 12/9/2003 at 9:47 AM Niklas Peinecke wrote:

>Hi,
>
>well the one and only time that it occured was scary enough (I had to do 
>a reset of the system and fschk then)! But maybe I'll make a backup of 
>my system and then have a few more tries.
>What do all the registers in i2c_main_write_for_flex2 mean? I pretend
>0x40000000 is some kind of "write success" but what are 0x80000000 and
>0x01000000 ?
>
>Niklas
>
>Augusto Cardoso wrote:
>> Hi!
>> 
>> That's what I was thinking, but I tested in a system with multiple 2.6
>only and it was OK. I only tried couple of times. Because I didn't get a
>failure, I started thinking about race conditions or other exotic
>problems. It could as well be something very simple that for some reason
>don't show up in my test.
>> My development system has multiple card types.
>> 
>> Can you reproduce this every time?
>> 
>> 	Augusto
>> 
>> *********** REPLY SEPARATOR  ***********
>> 
>> On 12/9/2003 at 9:22 AM Niklas Peinecke wrote:
>> 
>> 
>>>Hi Augusto,
>>>
>>>maybe this is just _because_ you have multiple cards? Maybe the mt312 
>>>wants some feedback ;)
>>>
>>>Niklas
>>>
>>>Augusto Cardoso wrote:
>>>
>>>>Hi!
>>>>
>>>>Thanks for the info.
>>>>
>>>>Does it happen every time?
>>>>I have multiple cards in my system and I always load the mt312 and the
>>>
>>>stv0299. The mt312 probe all cards and finds the right ones. Then the
>>>stv0299 find the other cards.
>>>
>>>>This sounds like a race condition or some other odd situation.
>>>>Since I wasn't able to reproduce yet, I'll take another look at the
>code.
>>>>
>>>>Thanks.
>>>>
>>>>	Augusto 
>>>>
>>>>*********** REPLY SEPARATOR  ***********
>>>>
>>>>On 12/9/2003 at 8:18 AM Niklas Peinecke wrote:
>>>>
>>>>
>>>>
>>>>>Augusto Cardoso wrote:
>>>>>
>>>>>
>>>>>>Hi!
>>>>>>
>>>>>>I haven't been able to reproduce this problem.
>>>>>>Can some one that has the problem provide some information?
>>>>>>For example, order that the modules are loaded, some system
>information,
>>>>>
>>>>>what version of the driver and kernel, etc.
>>>>>
>>>>>I experienced this last week:
>>>>>
>>>>>System: K6/2 400Mhz, Skystar2 rev2.6B with FlexcopII, Suse 8.0 (with 
>>>>>losts of non-standard extensions), kernel 2.4.23, driver dvb-kernel
>from
>>>>>CVS
>>>>>
>>>>>I compile the driver using getlinks && make
>>>>>and then insmod.sh
>>>>>All the modules are loaded without problems (of course, because most
>of 
>>>>>them are unused) then skystar2 and mt312 are loaded. mt312 tries to 
>>>>>attach itself to skystar2 and hangs during initialize. Both modules
>are 
>>>>>marked as "used" and can therefor no more be removed.
>>>>>Nothing to see on dmesg.
>>>>>
>>>>>Things work without problems when mt312 is left out.
>>>>>
>>>>>Niklas
>>>>>
>>>>>
>>>>>
>>>>>-- 
>>>>>Info:
>>>>>To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe
>>>
>>>linux-dvb" as subject.
>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>-- 
>>>Info:
>>>To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe
>linux-dvb" as subject.
>> 
>> 
>> 
>> 
>> 
>> 
>
>
>
>
>-- 
>Info:
>To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.





-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index