Re: Prof_Revolution_DVB-S2_8000_PCI-E Linux Kernel 2.6.38-rc8-next-20110314

2011-03-22 Thread Mauro Carvalho Chehab
Em 20-03-2011 16:32, Wojciech Myrda escreveu:

 It turns ot that revised patch not only applies cleanly but compiles as
 well agaist Linux Kernel 2.6.38-rc8-next-20110321. Looking at dmesg
 everything is recognized properly as well. Do you guys think if it is
 possible to include it into the tree?

Please post the patch again, with a few fixes (see bellow), and add your
Signed-off-by: (please read how to submit patches section at linuxtv.org wiki
for more details). 


 diff -r 1da5fed5c8b2 linux/drivers/media/video/cx23885/cx23885-cards.c
 --- a/linux/drivers/media/video/cx23885/cx23885-cards.c   Sun Sep 19 
 02:23:09 2010 -0300
 +++ b/linux/drivers/media/video/cx23885/cx23885-cards.c   Sat Oct 02 
 11:19:50 2010 +0300

/linux? Are you using the old -hg tree? Please don't do that. The mercurial
tree is not touched for the last 8 months! Please use, instead the 
media_tree.git
(media_build.git allows you to compile/test a driver against the media_tree.git 
tree). 

 @@ -169,6 +169,10 @@
   .name   = TurboSight TBS 6920,
   .portb  = CX23885_MPEG_DVB,
   },
 + [CX23885_BOARD_PROF_8000] = {
 + .name   = Prof Revolution DVB-S2 8000,
 + .portb  = CX23885_MPEG_DVB,
 + },
   [CX23885_BOARD_TEVII_S470] = {
   .name   = TeVii S470,
   .portb  = CX23885_MPEG_DVB,
 @@ -388,6 +392,10 @@
   .subdevice = 0x,
   .card  = CX23885_BOARD_TBS_6920,
   }, {
 + .subvendor = 0x8000,
 + .subdevice = 0x3034,
 + .card  = CX23885_BOARD_PROF_8000,
 + }, {
   .subvendor = 0xd470,
   .subdevice = 0x9022,
   .card  = CX23885_BOARD_TEVII_S470,
 @@ -813,6 +821,7 @@
   mdelay(20);
   cx_set(GP0_IO, 0x00040004);
   break;
 + case CX23885_BOARD_PROF_8000:
   case CX23885_BOARD_TBS_6920:
   cx_write(MC417_CTL, 0x0036);
   cx_write(MC417_OEN, 0x1000);
 @@ -1043,6 +1052,7 @@
   ts1-ts_clk_en_val = 0x1; /* Enable TS_CLK */
   ts1-src_sel_val   = CX23885_SRC_SEL_PARALLEL_MPEG_VIDEO;
   break;
 + case CX23885_BOARD_PROF_8000:
   case CX23885_BOARD_TEVII_S470:
   case CX23885_BOARD_DVBWORLD_2005:
   ts1-gen_ctrl_val  = 0x5; /* Parallel */
 --- a/linux/drivers/media/video/cx23885/cx23885-dvb.c.old 2011-03-20 
 08:20:37.384001338 +0100
 +++ b/linux/drivers/media/video/cx23885/cx23885-dvb.c 2011-03-20 
 08:29:56.757001476 +0100
 @@ -47,6 +47,9 @@
  #include dibx000_common.h
  #include zl10353.h
  #include stv0900.h
 +#include stb6100.h
 +#include stb6100_proc.h
 +#include stv0900.h

If you're adding more dependencies here, you'll need to touch also 
drivers/media/video/cx23885/Kconfig
in order to select the right frontends.

  #include stv0900_reg.h
  #include stv6110.h
  #include lnbh24.h
 @@ -478,6 +478,35 @@
   .if_khz = 5380,
  };
  
 +static int p8000_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t 
 voltage)
 +{
 + struct cx23885_tsport *port = fe-dvb-priv;
 + struct cx23885_dev *dev = port-dev;
 +
 + if (voltage == SEC_VOLTAGE_18)
 + cx_write(MC417_RWD, 0x1e00);
 + else if (voltage == SEC_VOLTAGE_13)
 + cx_write(MC417_RWD, 0x1a00);
 + else
 + cx_write(MC417_RWD, 0x1800);
 + return 0;
 +}
 +
 +static struct stv0900_config prof_8000_stv0900_config = {
 + .demod_address = 0x6a,
 + .xtal = 2700,
 + .clkmode = 3,
 + .diseqc_mode = 2,
 + .tun1_maddress = 0,
 + .tun1_adc = 0,
 + .path1_mode = 3,
 +};
 +
 +static struct stb6100_config prof_8000_stb6100_config = {
 + .tuner_address = 0x60,
 + .refclock = 2700,
 +};
 +
  static int cx23885_dvb_set_frontend(struct dvb_frontend *fe,
   struct dvb_frontend_parameters *param)
  {
 @@ -1094,6 +1123,29 @@
   goto frontend_detach;
   }
   break;
 + case CX23885_BOARD_PROF_8000: {
 + struct dvb_tuner_ops *tuner_ops = NULL;
 +
 + i2c_bus = dev-i2c_bus[0];
 + fe0-dvb.frontend = dvb_attach(stv0900_attach,
 + prof_8000_stv0900_config,
 + i2c_bus-i2c_adap, 0);
 + if (fe0-dvb.frontend != NULL) {
 + if (dvb_attach(stb6100_attach, fe0-dvb.frontend,
 + prof_8000_stb6100_config,
 + i2c_bus-i2c_adap)) {
 + tuner_ops = fe0-dvb.frontend-ops.tuner_ops;
 + tuner_ops-set_frequency = stb6100_set_freq;
 + tuner_ops-get_frequency = stb6100_get_freq;
 + tuner_ops-set_bandwidth = 

Re: Prof_Revolution_DVB-S2_8000_PCI-E Linux Kernel 2.6.38-rc8-next-20110314

2011-03-21 Thread Wojciech Myrda
W dniu 20.03.2011 20:32, Wojciech Myrda pisze:
 Hi all,
 
 I have purchased Prof_Revolution_DVB-S2_8000_PCI-E which is listed on
 the wiki
 http://linuxtv.org/wiki/index.php/Prof_Revolution_DVB-S2_8000_PCI-E as
 not yet suppoorted, however I found out there is some work ongoing on
 the driver for that card as the producer make the folowing patch
 http://www.proftuners.com/sites/default/files/prof8000_0.patch available
 on their website http://www.prof-tuners.pl/download8000.html This patch
 would not apply agaist the recent Linux Kernel 2.6.38-rc8-next-20110314
 so I did a few quick fixes that moved few lines (patch in the
 attachment). Now that it all applies like it should it fails with the
 following error
 
 
   CC [M]  kernel/configs.o
   CC [M]  drivers/media/video/cx23885/cx23885-cards.o
   CC [M]  drivers/media/video/cx23885/cx23885-video.o
   CC [M]  drivers/media/video/cx23885/cx23885-vbi.o
   CC [M]  drivers/media/video/cx23885/cx23885-core.o
 drivers/media/video/cx23885/altera-ci.h:71:12: warning:
 ‘altera_ci_tuner_reset’ defined but not used [-Wunused-function]
   CC [M]  drivers/media/video/cx23885/cx23885-i2c.o
   CC [M]  drivers/media/video/cx23885/cx23885-dvb.o
 drivers/media/video/cx23885/cx23885-dvb.c:505:15: error: variable
 ‘prof_8000_stb6100_config’ has initializer but incomplete type
 drivers/media/video/cx23885/cx23885-dvb.c:506:2: error: unknown field
 ‘tuner_address’ specified in initializer
 drivers/media/video/cx23885/cx23885-dvb.c:506:2: warning: excess
 elements in struct initializer [enabled by default]
 drivers/media/video/cx23885/cx23885-dvb.c:506:2: warning: (near
 initialization for ‘prof_8000_stb6100_config’) [enabled by default]
 drivers/media/video/cx23885/cx23885-dvb.c:507:2: error: unknown field
 ‘refclock’ specified in initializer
 drivers/media/video/cx23885/cx23885-dvb.c:507:2: warning: excess
 elements in struct initializer [enabled by default]
 drivers/media/video/cx23885/cx23885-dvb.c:507:2: warning: (near
 initialization for ‘prof_8000_stb6100_config’) [enabled by default]
 drivers/media/video/cx23885/cx23885-dvb.c: In function ‘dvb_register’:
 drivers/media/video/cx23885/cx23885-dvb.c:1134:8: error:
 ‘stb6100_attach’ undeclared (first use in this function)
 drivers/media/video/cx23885/cx23885-dvb.c:1134:8: note: each undeclared
 identifier is reported only once for each function it appears in
 drivers/media/video/cx23885/cx23885-dvb.c:1134:8: error: called object
 ‘__a’ is not a function
 drivers/media/video/cx23885/cx23885-dvb.c:1138:32: error:
 ‘stb6100_set_freq’ undeclared (first use in this function)
 drivers/media/video/cx23885/cx23885-dvb.c:1139:32: error:
 ‘stb6100_get_freq’ undeclared (first use in this function)
 drivers/media/video/cx23885/cx23885-dvb.c:1140:32: error:
 ‘stb6100_set_bandw’ undeclared (first use in this function)
 drivers/media/video/cx23885/cx23885-dvb.c:1141:32: error:
 ‘stb6100_get_bandw’ undeclared (first use in this function)
 drivers/media/video/cx23885/cx23885-dvb.c: At top level:
 drivers/media/video/cx23885/altera-ci.h:71:12: warning:
 ‘altera_ci_tuner_reset’ defined but not used [-Wunused-function]
 make[4]: *** [drivers/media/video/cx23885/cx23885-dvb.o] Error 1
 make[3]: *** [drivers/media/video/cx23885] Error 2
 make[2]: *** [drivers/media/video] Error 2
 make[1]: *** [drivers/media] Error 2
 make: *** [drivers] Error 2
 
 Please help in making it work as my Kung Fu ends here
 
 Regards,
 Wojciech
 

It turns ot that revised patch not only applies cleanly but compiles as
well agaist Linux Kernel 2.6.38-rc8-next-20110321. Looking at dmesg
everything is recognized properly as well. Do you guys think if it is
possible to include it into the tree?

mediapc linux-2.6.38 # cat ../dvb/prof8000_1.patch |patch -E -p2
(Stripping trailing CRs from patch.)
patching file drivers/media/video/cx23885/cx23885-cards.c
Hunk #1 succeeded at 183 (offset 14 lines).
Hunk #2 succeeded at 445 (offset 53 lines).
Hunk #3 succeeded at 932 (offset 111 lines).
Hunk #4 succeeded at 1297 (offset 245 lines).
(Stripping trailing CRs from patch.)
patching file drivers/media/video/cx23885/cx23885-dvb.c
Hunk #1 succeeded at 46 (offset -1 lines).
(Stripping trailing CRs from patch.)
patching file drivers/media/video/cx23885/cx23885.h
mediapc linux-2.6.38 # make
  CHK include/linux/version.h
  CHK include/generated/utsrelease.h
  CALLscripts/checksyscalls.sh
  CHK include/generated/compile.h
  CC [M]  drivers/media/video/cx23885/cx23885-cards.o
  CC [M]  drivers/media/video/cx23885/cx23885-video.o
  CC [M]  drivers/media/video/cx23885/cx23885-vbi.o
  CC [M]  drivers/media/video/cx23885/cx23885-core.o
drivers/media/video/cx23885/altera-ci.h:71:12: warning:
‘altera_ci_tuner_reset’ defined but not used [-Wunused-function]
  CC [M]  drivers/media/video/cx23885/cx23885-i2c.o
  CC [M]  drivers/media/video/cx23885/cx23885-dvb.o
drivers/media/video/cx23885/altera-ci.h:71:12: warning:
‘altera_ci_tuner_reset’ defined but not used [-Wunused-function]
  

Prof_Revolution_DVB-S2_8000_PCI-E Linux Kernel 2.6.38-rc8-next-20110314

2011-03-20 Thread Wojciech Myrda
Hi all,

I have purchased Prof_Revolution_DVB-S2_8000_PCI-E which is listed on
the wiki
http://linuxtv.org/wiki/index.php/Prof_Revolution_DVB-S2_8000_PCI-E as
not yet suppoorted, however I found out there is some work ongoing on
the driver for that card as the producer make the folowing patch
http://www.proftuners.com/sites/default/files/prof8000_0.patch available
on their website http://www.prof-tuners.pl/download8000.html This patch
would not apply agaist the recent Linux Kernel 2.6.38-rc8-next-20110314
so I did a few quick fixes that moved few lines (patch in the
attachment). Now that it all applies like it should it fails with the
following error


  CC [M]  kernel/configs.o
  CC [M]  drivers/media/video/cx23885/cx23885-cards.o
  CC [M]  drivers/media/video/cx23885/cx23885-video.o
  CC [M]  drivers/media/video/cx23885/cx23885-vbi.o
  CC [M]  drivers/media/video/cx23885/cx23885-core.o
drivers/media/video/cx23885/altera-ci.h:71:12: warning:
‘altera_ci_tuner_reset’ defined but not used [-Wunused-function]
  CC [M]  drivers/media/video/cx23885/cx23885-i2c.o
  CC [M]  drivers/media/video/cx23885/cx23885-dvb.o
drivers/media/video/cx23885/cx23885-dvb.c:505:15: error: variable
‘prof_8000_stb6100_config’ has initializer but incomplete type
drivers/media/video/cx23885/cx23885-dvb.c:506:2: error: unknown field
‘tuner_address’ specified in initializer
drivers/media/video/cx23885/cx23885-dvb.c:506:2: warning: excess
elements in struct initializer [enabled by default]
drivers/media/video/cx23885/cx23885-dvb.c:506:2: warning: (near
initialization for ‘prof_8000_stb6100_config’) [enabled by default]
drivers/media/video/cx23885/cx23885-dvb.c:507:2: error: unknown field
‘refclock’ specified in initializer
drivers/media/video/cx23885/cx23885-dvb.c:507:2: warning: excess
elements in struct initializer [enabled by default]
drivers/media/video/cx23885/cx23885-dvb.c:507:2: warning: (near
initialization for ‘prof_8000_stb6100_config’) [enabled by default]
drivers/media/video/cx23885/cx23885-dvb.c: In function ‘dvb_register’:
drivers/media/video/cx23885/cx23885-dvb.c:1134:8: error:
‘stb6100_attach’ undeclared (first use in this function)
drivers/media/video/cx23885/cx23885-dvb.c:1134:8: note: each undeclared
identifier is reported only once for each function it appears in
drivers/media/video/cx23885/cx23885-dvb.c:1134:8: error: called object
‘__a’ is not a function
drivers/media/video/cx23885/cx23885-dvb.c:1138:32: error:
‘stb6100_set_freq’ undeclared (first use in this function)
drivers/media/video/cx23885/cx23885-dvb.c:1139:32: error:
‘stb6100_get_freq’ undeclared (first use in this function)
drivers/media/video/cx23885/cx23885-dvb.c:1140:32: error:
‘stb6100_set_bandw’ undeclared (first use in this function)
drivers/media/video/cx23885/cx23885-dvb.c:1141:32: error:
‘stb6100_get_bandw’ undeclared (first use in this function)
drivers/media/video/cx23885/cx23885-dvb.c: At top level:
drivers/media/video/cx23885/altera-ci.h:71:12: warning:
‘altera_ci_tuner_reset’ defined but not used [-Wunused-function]
make[4]: *** [drivers/media/video/cx23885/cx23885-dvb.o] Error 1
make[3]: *** [drivers/media/video/cx23885] Error 2
make[2]: *** [drivers/media/video] Error 2
make[1]: *** [drivers/media] Error 2
make: *** [drivers] Error 2

Please help in making it work as my Kung Fu ends here

Regards,
Wojciech

diff -r 1da5fed5c8b2 linux/drivers/media/video/cx23885/cx23885-cards.c
--- a/linux/drivers/media/video/cx23885/cx23885-cards.c Sun Sep 19 02:23:09 
2010 -0300
+++ b/linux/drivers/media/video/cx23885/cx23885-cards.c Sat Oct 02 11:19:50 
2010 +0300
@@ -169,6 +169,10 @@
.name   = TurboSight TBS 6920,
.portb  = CX23885_MPEG_DVB,
},
+   [CX23885_BOARD_PROF_8000] = {
+   .name   = Prof Revolution DVB-S2 8000,
+   .portb  = CX23885_MPEG_DVB,
+   },
[CX23885_BOARD_TEVII_S470] = {
.name   = TeVii S470,
.portb  = CX23885_MPEG_DVB,
@@ -388,6 +392,10 @@
.subdevice = 0x,
.card  = CX23885_BOARD_TBS_6920,
}, {
+   .subvendor = 0x8000,
+   .subdevice = 0x3034,
+   .card  = CX23885_BOARD_PROF_8000,
+   }, {
.subvendor = 0xd470,
.subdevice = 0x9022,
.card  = CX23885_BOARD_TEVII_S470,
@@ -813,6 +821,7 @@
mdelay(20);
cx_set(GP0_IO, 0x00040004);
break;
+   case CX23885_BOARD_PROF_8000:
case CX23885_BOARD_TBS_6920:
cx_write(MC417_CTL, 0x0036);
cx_write(MC417_OEN, 0x1000);
@@ -1043,6 +1052,7 @@
ts1-ts_clk_en_val = 0x1; /* Enable TS_CLK */
ts1-src_sel_val   = CX23885_SRC_SEL_PARALLEL_MPEG_VIDEO;
break;
+   case CX23885_BOARD_PROF_8000:
case CX23885_BOARD_TEVII_S470:
case