[linux-dvb] Mantis + MB86A16 (VP-1034)

Manu Abraham abraham.manu at gmail.com
Sun Dec 3 04:11:47 CET 2006


Michel Verbraak wrote:
> Manu,
> 
> I have realligned my dish to Astra 28.2 degrees instead of the Astra
> 19.2 degrees.
> 
> I grabbed the source from your site from yesterday and had to apply only
> the following:
> 
> void mantis_dma_start(struct mantis_pci *mantis)
> {
>         dprintk(verbose, MANTIS_DEBUG, 1, "Mantis Start DMA engine");
> 
>         mantis_risc_program(mantis);
>         mmwrite(cpu_to_le32(mantis->risc_dma), MANTIS_RISC_START);
>         mmwrite( mmread( MANTIS_GPIF_ADDR ) | MANTIS_GPIF_RDWRN,
> MANTIS_GPIF_ADDR); // new
> //      mmwrite(MANTIS_GPIF_RDWRN, MANTIS_GPIF_ADDR); // old
> 
>         mmwrite(0, MANTIS_DMA_CTL);
>         mantis->last_block = mantis->finished_block = 0;
> 
>         mmwrite(mmread(MANTIS_INT_MASK) | MANTIS_INT_RISCI,
> MANTIS_INT_MASK);
> 
>         mmwrite(MANTIS_FIFO_EN | MANTIS_DCAP_EN
>                                | MANTIS_RISC_EN, MANTIS_DMA_CTL);
> 
> }
> 
> Now I can do a Scan and get channels. Kaffeine and xine tune as wel as szap.
> 

This is fine, looks fine, sounds fine.


> When I also applied the following patch :
> void mantis_dma_xfer(unsigned long data)
> {
>         struct mantis_pci *mantis = (struct mantis_pci *) data;
> 
>         while (mantis->last_block != mantis->finished_block) {
>                 dprintk(verbose, MANTIS_DEBUG, 1, "last block=[%d]
> finished block=[%d]",
>                         mantis->last_block, mantis->finished_block);
> 
>               (mantis->ts_size ? dvb_dmx_swfilter:
> dvb_dmx_swfilter_204)   // new
> //                (mantis->ts_size ? dvb_dmx_swfilter_204:
> dvb_dmx_swfilter) // old
>                 (&mantis->demux, &mantis->buf_cpu[mantis->last_block *
> MANTIS_BLOCK_BYTES], MANTIS_BLOCK_BYTES);               
> mantis->last_block = (mantis->last_block + 1) % MANTIS_BLOCK_COUNT;
>         }
> }
>

You wouldn't need this, since

67#define MANTIS_TS_188 0
68#define MANTIS_TS_204 1

32struct mantis_hwconfig vp1034_mantis_config = {
33 .model_name = MANTIS_MODEL_NAME,
34 .dev_type = MANTIS_DEV_TYPE,
35 .ts_size = MANTIS_TS_204,
36};

The MB86A16 provides a 204 bytes long TS. In this case we chop off the
RS parity info.

> I can do a scan but the picture i get is distorted so I will leave it
> out for now.
>

If you don't have that change mentioned above, you shouldn't get a
distorted picture.

> I will try to do some more testing on other satellites and will let you
> know the results.
> 
> Regards,
> 
> Michel.


Regards,
Manu



More information about the linux-dvb mailing list