|
@@ -76,9 +76,9 @@ static unsigned int gbuffers = 8;
|
|
|
static unsigned int gbufsize = 0x208000;
|
|
|
static unsigned int reset_crop = 1;
|
|
|
|
|
|
-static int video_nr = -1;
|
|
|
-static int radio_nr = -1;
|
|
|
-static int vbi_nr = -1;
|
|
|
+static int video_nr[BTTV_MAX] = { [0 ... (BTTV_MAX-1)] = -1 };
|
|
|
+static int radio_nr[BTTV_MAX] = { [0 ... (BTTV_MAX-1)] = -1 };
|
|
|
+static int vbi_nr[BTTV_MAX] = { [0 ... (BTTV_MAX-1)] = -1 };
|
|
|
static int debug_latency;
|
|
|
|
|
|
static unsigned int fdsr;
|
|
@@ -108,9 +108,6 @@ module_param(irq_debug, int, 0644);
|
|
|
module_param(debug_latency, int, 0644);
|
|
|
|
|
|
module_param(fdsr, int, 0444);
|
|
|
-module_param(video_nr, int, 0444);
|
|
|
-module_param(radio_nr, int, 0444);
|
|
|
-module_param(vbi_nr, int, 0444);
|
|
|
module_param(gbuffers, int, 0444);
|
|
|
module_param(gbufsize, int, 0444);
|
|
|
module_param(reset_crop, int, 0444);
|
|
@@ -130,7 +127,10 @@ module_param(uv_ratio, int, 0444);
|
|
|
module_param(full_luma_range, int, 0444);
|
|
|
module_param(coring, int, 0444);
|
|
|
|
|
|
-module_param_array(radio, int, NULL, 0444);
|
|
|
+module_param_array(radio, int, NULL, 0444);
|
|
|
+module_param_array(video_nr, int, NULL, 0444);
|
|
|
+module_param_array(radio_nr, int, NULL, 0444);
|
|
|
+module_param_array(vbi_nr, int, NULL, 0444);
|
|
|
|
|
|
MODULE_PARM_DESC(radio,"The TV card supports radio, default is 0 (no)");
|
|
|
MODULE_PARM_DESC(bigendian,"byte order of the framebuffer, default is native endian");
|
|
@@ -152,6 +152,9 @@ MODULE_PARM_DESC(irq_iswitch,"switch inputs in irq handler");
|
|
|
MODULE_PARM_DESC(uv_ratio,"ratio between u and v gains, default is 50");
|
|
|
MODULE_PARM_DESC(full_luma_range,"use the full luma range, default is 0 (no)");
|
|
|
MODULE_PARM_DESC(coring,"set the luma coring level, default is 0 (no)");
|
|
|
+MODULE_PARM_DESC(video_nr, "video device numbers");
|
|
|
+MODULE_PARM_DESC(vbi_nr, "vbi device numbers");
|
|
|
+MODULE_PARM_DESC(radio_nr, "radio device numbers");
|
|
|
|
|
|
MODULE_DESCRIPTION("bttv - v4l/v4l2 driver module for bt848/878 based cards");
|
|
|
MODULE_AUTHOR("Ralph Metzler & Marcus Metzler & Gerd Knorr");
|
|
@@ -4252,7 +4255,8 @@ static int __devinit bttv_register_video(struct bttv *btv)
|
|
|
|
|
|
if (NULL == btv->video_dev)
|
|
|
goto err;
|
|
|
- if (video_register_device(btv->video_dev,VFL_TYPE_GRABBER,video_nr)<0)
|
|
|
+ if (video_register_device(btv->video_dev, VFL_TYPE_GRABBER,
|
|
|
+ video_nr[btv->c.nr]) < 0)
|
|
|
goto err;
|
|
|
printk(KERN_INFO "bttv%d: registered device video%d\n",
|
|
|
btv->c.nr,btv->video_dev->minor & 0x1f);
|
|
@@ -4268,7 +4272,8 @@ static int __devinit bttv_register_video(struct bttv *btv)
|
|
|
|
|
|
if (NULL == btv->vbi_dev)
|
|
|
goto err;
|
|
|
- if (video_register_device(btv->vbi_dev,VFL_TYPE_VBI,vbi_nr)<0)
|
|
|
+ if (video_register_device(btv->vbi_dev, VFL_TYPE_VBI,
|
|
|
+ vbi_nr[btv->c.nr]) < 0)
|
|
|
goto err;
|
|
|
printk(KERN_INFO "bttv%d: registered device vbi%d\n",
|
|
|
btv->c.nr,btv->vbi_dev->minor & 0x1f);
|
|
@@ -4279,7 +4284,8 @@ static int __devinit bttv_register_video(struct bttv *btv)
|
|
|
btv->radio_dev = vdev_init(btv, &radio_template, "radio");
|
|
|
if (NULL == btv->radio_dev)
|
|
|
goto err;
|
|
|
- if (video_register_device(btv->radio_dev, VFL_TYPE_RADIO,radio_nr)<0)
|
|
|
+ if (video_register_device(btv->radio_dev, VFL_TYPE_RADIO,
|
|
|
+ radio_nr[btv->c.nr]) < 0)
|
|
|
goto err;
|
|
|
printk(KERN_INFO "bttv%d: registered device radio%d\n",
|
|
|
btv->c.nr,btv->radio_dev->minor & 0x1f);
|