Re: [PATCH] media: gpio-ir-recv: add allowed_protos and map_namefor platform data

From: Mauro Carvalho Chehab
Date: Fri Jul 06 2012 - 17:23:51 EST


Em 03-07-2012 08:19, BenoÃt ThÃbaudeau escreveu:
> Hi Changbin,
>
> On Tue, Jul 3, 2012 at 12:27:19PM +0200, Changbin Du wrote:
>> It's better to give platform code a chance to specify the allowed
>> protocols and which keymap to use.
>
> Already half done here:
> http://git.linuxtv.org/media_tree.git?a=commitdiff;h=2bd237b

OK. Applied just the other half of the change.

Regards,
Mauro

-

[media] media: gpio-ir-recv: add allowed_protos for platform data

From: Du, Changbin <changbin.du@xxxxxxxxx>

It's better to give platform code a chance to specify the allowed
protocols to use.

[mchehab@xxxxxxxxxx: fix merge conflict with a patch that made
half of this change]
Signed-off-by: Du, Changbin <changbin.du@xxxxxxxxx>
Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx>

diff --git a/drivers/media/rc/gpio-ir-recv.c b/drivers/media/rc/gpio-ir-recv.c
index 59fe60c..04cb272 100644
--- a/drivers/media/rc/gpio-ir-recv.c
+++ b/drivers/media/rc/gpio-ir-recv.c
@@ -84,7 +84,6 @@ static int __devinit gpio_ir_recv_probe(struct platform_device *pdev)

rcdev->priv = gpio_dev;
rcdev->driver_type = RC_DRIVER_IR_RAW;
- rcdev->allowed_protos = RC_TYPE_ALL;
rcdev->input_name = GPIO_IR_DEVICE_NAME;
rcdev->input_phys = GPIO_IR_DEVICE_NAME "/input0";
rcdev->input_id.bustype = BUS_HOST;
@@ -93,6 +92,10 @@ static int __devinit gpio_ir_recv_probe(struct platform_device *pdev)
rcdev->input_id.version = 0x0100;
rcdev->dev.parent = &pdev->dev;
rcdev->driver_name = GPIO_IR_DRIVER_NAME;
+ if (pdata->allowed_protos)
+ rcdev->allowed_protos = pdata->allowed_protos;
+ else
+ rcdev->allowed_protos = RC_TYPE_ALL;
rcdev->map_name = pdata->map_name ?: RC_MAP_EMPTY;

gpio_dev->rcdev = rcdev;
diff --git a/include/media/gpio-ir-recv.h b/include/media/gpio-ir-recv.h
index 91546f3..0142736 100644
--- a/include/media/gpio-ir-recv.h
+++ b/include/media/gpio-ir-recv.h
@@ -14,9 +14,10 @@
#define __GPIO_IR_RECV_H__

struct gpio_ir_recv_platform_data {
- int gpio_nr;
- bool active_low;
- const char *map_name;
+ int gpio_nr;
+ bool active_low;
+ u64 allowed_protos;
+ const char *map_name;
};

#endif /* __GPIO_IR_RECV_H__ */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/