Philip Prindeville wrote: > I'm looking at: > > static int dst_set_diseqc (struct dst_data *dst, u8 *cmd, u8 len) > { > u8 paket[8] = {0x00, 0x08, 0x04, 0xe0, 0x10, 0x38, 0xf0, 0xec }; > > if (dst->dst_type == DST_TYPE_IS_TERR) > return 0; > > if (len == 0 || len > 4) > return -EINVAL; > memcpy(&paket[3], cmd, len); > paket[7] = dst_check_sum (&paket[0], 7); > dst_command(dst, paket, 8); > return 0; > } > > in linuxtv-dvb-1.1.1/linux/drivers/media/dvb/frontends/dst.c > and I'm not sure why the limitation of 4 bytes length... Isn't > the spec for up to 4 bytes of command plus framing and address, > i.e. 6 bytes total? > DiSEqC commands can be 3 , 4 or 5 byte in length. for 3 byte commands it is <framing><Address><Command> for 4 byte commands <framing><address><command><data> for 5 byte commands <framing><address><command><data1><data2> when you say 6 bytes, that is including the framing. > What am I missing? > The old cards, you can see from the dst_tlist, that they supported only 3 or 4 byte lengths of diseqc commands. Can you please try out the attached patch ? The first patch bt8xx_cleanup.patch is just a cleanup patch. The second one is the diseqc patch. Since my patch was a bit too large and got stuck, i am compressing it .. Manu -------------- next part -------------- A non-text attachment was scrubbed... Name: patch.tar.bz2 Type: application/x-bzip Size: 11675 bytes Desc: not available Url : http://www.linuxtv.org/pipermail/linux-dvb/attachments/20051024/7d3a2b85/patch.tar-0001.bin