In message <1a297b360703180407r63b1e98dj561ae0a0abc8188f@xxxxxxxxxxxxxx>, "Manu Abraham" wrote: >On 3/18/07, Darron Broad <darron@xxxxxxxx> wrote: lo >> >> 3. the delivery field has to be set >> >> >> > >> > >> >delivery system is set using DVBFE_SET_PARAMS, without which you >> >wouldn't be able to tune to anything, because of the switch statement. >> >> the delivery type is indeed taken from the command line and used for >> logic in the code, however, it's not passed to the driver. >> > >It is. Take a look at the delsys switch in the stb0899 driver. The >STB0899 depends on the delivery system and the Physical Layer >parameters to decide which modulation to use. > >http://linuxtv.org/hg/~manu/stb0899-c5?f=d6f0bf7681d1;file=linux/drivers/media/dvb/frontends/stb0899_drv.c;style= >gitweb >The delivery system is sent to the driver, without which >tuning/demodulation is impossible "on any multistandard demod" specifically Steve's driver needs to the delivery system type to be set when calling set_params. it would appear from your code snippet that your driver is setting internal state when peforming a query. surely this is illogical behaviour. bye >1288 static int stb0899_get_info(struct dvb_frontend *fe, struct >dvbfe_info *fe_info) >1289 { >1290 struct stb0899_state *state = fe->demodulator_priv; >1291 >1292 dprintk(verbose, FE_DEBUG, 1, "Get Info"); >1293 >1294 state->delsys = fe_info->delivery; >1295 switch (state->delsys) { >1296 case DVBFE_DELSYS_DVBS: >1297 dprintk(verbose, FE_ERROR, 1, "Querying DVB-S info"); >1298 memcpy(fe_info, &dvbs_info, sizeof (struct dvbfe_info)); >1299 break; >1300 case DVBFE_DELSYS_DSS: >1301 dprintk(verbose, FE_ERROR, 1, "Querying DSS info"); >1302 memcpy(fe_info, &dss_info, sizeof (struct dvbfe_info)); >1303 break; >1304 case DVBFE_DELSYS_DVBS2: >1305 dprintk(verbose, FE_ERROR, 1, "Querying DVB-S2 info"); >1306 memcpy(fe_info, &dvbs2_info, sizeof (struct dvbfe_info)); >1307 break; >1308 default: >1309 dprintk(verbose, FE_ERROR, 1, "Unsupported delivery system"); >1310 return -EINVAL; >1311 } >1312 dprintk(verbose, FE_DEBUG, 1, "delivery system=%d", state->delsys); >1313 >1314 return 0; >1315 } > > Manu > -- // / {:)==={ Darron Broad <darron@xxxxxxxx> \\ \ _______________________________________________ linux-dvb mailing list linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb