[linux-dvb] Twinhan Cab/CI 2031: always need to tune twice
Zoilo Gomez
zoilo at xs4all.nl
Thu Aug 17 07:26:00 CEST 2006
Hi Raido,
Do you have this problem as well, when switching frequencies?
It only happens when the tuner is sent to a different freq; there is no
problem when switching PIDs within a freq.
Regards,
Z.
Zoilo Gomez wrote:
> With the locking problem fixed, it's time to move to the next problem
> with the Twinhan Cab/CI 2031 card.
>
> I have a Twinhan Cab/CI 2031 (well, actually I have 3 of them) and a
> KNC1.
>
> Using vlc, on the KNC1, when I tell the card to start streaming a
> program, it may take several seconds before it starts, but it works
> the first time.
>
> Using the Twinhan, I always have to enter the command twice; the first
> time nothing will happen. Then I Ctrl-C, rerun the same command and it
> works.
>
> So far I hav not been able to figure out where things go wrong.
>
> Sample dst output with verbose-5 during such a failing 'first tune':
>
>> dst_ca_open: Device opened [df682140] dst_ca_ioctl: Getting Slot
>> capabilities
>> put_checksum: Computing string checksum.
>> put_checksum: -> string length : 0x07
>> put_checksum: -> checksum : 0xb5
>> dst_put_ci: Put Command
>> dst(0) dst_comm_init: Initializing DST.
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
>> dst(0) rdc_reset_state: Resetting state machine
>> dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
>> dst(0) dst_set_freq: set Frequency 354750000
>> dst(0) dst_set_frontend: Set Frequency=[354750000]
>> dst(0) dst_set_symbolrate: set symrate 6900000
>> dst(0) dst_set_symbolrate: DCT-CI
>> dst(0) dst_write_tuna: type_flags 0x1219 dst(0) dst_gpio_outb:
>> mask=[0002], enbb=[0002], outhigh=[0002]
>> writing [ 07 40 02 00 02 00 00 b5 ]
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
>> dst(0) read_dst: reply is 0xff
>> dst(0) dst_wait_dst_ready: dst wait ready after 1
>> dst(0) read_dst: reply is 0xa
>> 0x40 0x0 0x0 0x2 0x3 0x0 0x1 0x18 0x1 0x97 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> ca_get_slot_caps: -->dst_put_ci SUCCESS !
>> ca_get_slot_caps: Slot cap = [1]
>> ===================================
>> 10 64 0 0 2 3 0 1 24 1 151
>> dst_ca_ioctl: -->CA_GET_CAP Success !
>> dst_ca_ioctl: Getting Slot info
>> put_checksum: Computing string checksum.
>> put_checksum: -> string length : 0x07
>> put_checksum: -> checksum : 0xfb
>> dst_put_ci: Put Command
>> dst(0) dst_comm_init: Initializing DST.
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
>> dst(0) rdc_reset_state: Resetting state machine
>> dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
>> dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0002]
>> writing [ 00 05 00 00 00 00 00 fb ]
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
>> dst(0) read_dst: reply is 0xff
>> dst(0) dst_wait_dst_ready: dst wait ready after 2
>> dst(0) read_dst: reply is 0x0
>> 0x5 0x0 0x14 0x88 0x51 0x0 0xe 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff
>> ca_get_slot_info: -->dst_put_ci SUCCESS !
>> ca_get_slot_info: Slot info = [20]
>> ===================================
>> 0 5 0 20 136 81 0 14
>> dst_ca_ioctl: -->CA_GET_SLOT_INFO Success !
>> dst_ca_ioctl: Sending message
>> ca_send_message: ca_send_message: Command=[0x9f8020]
>>
>> ca_send_message: Getting Cam Application information
>> put_checksum: Computing string checksum.
>> put_checksum: -> string length : 0x07
>> put_checksum: -> checksum : 0xb7
>> dst_put_ci: Put Command
>> dst(0) dst_comm_init: Initializing DST.
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
>> dst(0) rdc_reset_state: Resetting state machine
>> dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
>> dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0002]
>> writing [ 07 40 01 00 01 00 00 b7 ]
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
>> dst(0) read_dst: reply is 0xff
>> dst(0) dst_wait_dst_ready: dst wait ready after 1
>> dst(0) read_dst: reply is 0xd
>> 0x40 0x0 0x0 0x1 0x6 0x0 0x0 0x3 0x1 0x0 0x41 0x0 0x67 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
>> ca_get_app_info: -->dst_put_ci SUCCESS !
>> ca_get_app_info: ================================ CI Module
>> Application Info ======================================
>> ca_get_app_info: Application Type=[0], Application Vendor=[769],
>> Vendor Code=[65]
>> ca_get_app_info: Application info=[]
>> ca_get_app_info:
>> ==================================================================================================
>>
>> ca_send_message: -->CA_APP_INFO_ENQUIRY Success !
>> dst_ca_ioctl: Getting message
>> ca_get_message: Message = [9f 80 21]
>> ca_get_message: Command=[0x9f8021]
>> dst_ca_ioctl: -->CA_GET_MSG Success !
>> dst(0) dst_comm_init: Initializing DST.
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
>> dst(0) rdc_reset_state: Resetting state machine
>> dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
>> dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0002]
>> writing [ 09 00 05 69 be 00 1a f4 40 7d ]
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
>> dst(0) read_dst: reply is 0xff
>> dst(0) dst_wait_dst_ready: dst wait ready after 42
>> dst(0) read_dst: reply is 0x9
>> 0x0 0x5 0x69 0xbe 0x0 0x1a 0xf4 0x40 0x7d
>> dst(0) dst_comm_init: Initializing DST.
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
>> dst(0) rdc_reset_state: Resetting state machine
>> dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
>> dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0002]
>> writing [ 00 05 00 00 00 00 00 fb ]
>> dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
>> dst(0) read_dst: reply is 0xff
>> dst(0) dst_wait_dst_ready: dst wait ready after 1
>> dst(0) read_dst: reply is 0x0
>> 0x5 0x0 0x0 0x88 0x2 0x0 0x71
>> dst_ca_release: Device closed.
>>
>
> Raido: do you have the same problem with you Twinhan?
>
> Z.
>
> _______________________________________________
> linux-dvb mailing list
> linux-dvb at linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
>
>
More information about the linux-dvb
mailing list