Yep there is a 0 altsetting, however it has no bandwidth available to
it making it pointless to allow use of it for ISOC

On Thu, Jan 1, 2009 at 1:40 PM, GWater <[email protected]> wrote:
> Brian Johnson schrieb:
>>
>> Alright i've pushed out these patches.
>> Modified the bandwidth patch abit to check tht the value is between 1 and
>> 8
>>
>> On Thu, Jan 1, 2009 at 10:16 AM, GWater <[email protected]> wrote:
>>>>>
>>>>> 0009:
>>>>> - ok, but maybe a "bandwidth" parameter will make them interesting in
>>>>> the
>>>>> future (AMcap has a similar setting)
>>>>
>>>> I believe AMcap bandwidth just changes what alternate setting is used
>>>> which neither  of those functions did. At anyrate I don't think its
>>>> really a good idea keeping unused functions around simply because we
>>>> might use them later. If we need them later its not that much of a
>>>> problem to reimplement them at a later date.
>>>
>>> Here's a patch that should implement the idea.
>>>
>>> GWater
>>>
>>> From 45b00b81c6c098eade88218afa48f0051aa1c4b1 Mon Sep 17 00:00:00 2001
>>> From: GWater <[email protected]>
>>> Date: Thu, 1 Jan 2009 16:14:26 +0100
>>> Subject: [PATCH] Add "bandwidth" parameter for ISOC
>>>
>>> Signed-off-by: GWater <[email protected]>
>>> ---
>>>  sn9c20x-usb.c |   14 ++++++++++++--
>>>  1 files changed, 12 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/sn9c20x-usb.c b/sn9c20x-usb.c
>>> index 1651ba7..c7fd1b0 100644
>>> --- a/sn9c20x-usb.c
>>> +++ b/sn9c20x-usb.c
>>> @@ -60,6 +60,12 @@ static __u8 bulk;
>>>  __u8 jpeg = 1;
>>>
>>>  /**
>>> + * @var bandwidth
>>> + *  Module parameter to set the available bandwidth via the alternate
>>> setting
>>> + */
>>> +static __u8 bandwidth = 8;
>>> +
>>> +/**
>>>  * @var hflip
>>>  *  Module parameter to enable/disable the horizontal flip process
>>>  */
>>> @@ -373,12 +379,14 @@ int usb_sn9c20x_init_urbs(struct usb_sn9c20x *dev)
>>>               return ret;
>>>
>>>       if (!bulk) {
>>> -               ep = find_endpoint(usb_altnum_to_altsetting(intf, 8),
>>> SN9C20X_VID_ISOC);
>>> +               if (bandwidth > 8)
>>> +                       return -EINVAL;
>>>
>>> +               ep = find_endpoint(usb_altnum_to_altsetting(intf,
>>> bandwidth), SN9C20X_VID_ISOC);
>>>               if (ep == NULL)
>>>                       return -EIO;
>>>
>>> -               ret = usb_set_interface(dev->udev, 0, 8);
>>> +               ret = usb_set_interface(dev->udev, 0, bandwidth);
>>>               if (ret < 0)
>>>                       return ret;
>>>
>>> @@ -858,6 +866,7 @@ static struct usb_driver usb_sn9c20x_driver = {
>>>  module_param(fps, byte, 0444);                 /**< @brief Module
>>> parameter
>>> frames per second */
>>>  module_param(bulk, byte, 0444);
>>>  module_param(jpeg, byte, 0444);
>>> +module_param(bandwidth, byte, 0444);
>>>  module_param(hflip, byte, 0444);                       /**< @brief
>>> Module
>>> parameter horizontal flip process */
>>>  module_param(vflip, byte, 0444);                       /**< @brief
>>> Module
>>> parameter vertical flip process */
>>>  module_param(flip_detect, byte, 0444);         /**< @brief Module
>>> parameter
>>> flip detect */
>>> @@ -1001,6 +1010,7 @@ MODULE_PARM_DESC(fps, "Frames per second [10-30]");
>>>    /**< @brief Description of '
>>>
>>>  MODULE_PARM_DESC(jpeg, "Enable JPEG support (default is enabled)");
>>>  MODULE_PARM_DESC(bulk, "Enable Bulk transfer (default is to use ISOC)");
>>> +MODULE_PARM_DESC(bandwidth, "Bandwidth Setting (only for ISOC)");
>>>
>>>  MODULE_PARM_DESC(hflip, "Horizontal image flip");      /**< @brief
>>> Description of 'hflip' parameter */
>>>  MODULE_PARM_DESC(vflip, "Vertical image flip");                /**<
>>> @brief
>>> Description of 'vflip' parameter */
>>> --
>>> 1.6.0.6
>>>
>>>
>>>
>>
>> >>
>
> AFAIK there is an altSetting 0. And negative values are impossible in __u8.
>
> GWater
>
>

--~--~---------~--~----~------------~-------~--~----~
Lets make microdia webcams plug'n play, (currently plug'n pray)
To post to this group, send email to [email protected]
Visit us online https://groups.google.com/group/microdia
-~----------~----~----~----~------~----~------~--~---

Reply via email to