Re: [PATCH 1/4] Revert "media/rc/imon.c: make send_packet() delaylarger for 15c2:0036"

From: Mauro Carvalho Chehab
Date: Tue Apr 23 2013 - 16:34:40 EST


Hi Kevin,

Em 22-04-2013 17:09, Kevin Baradon escreveu:
This reverts commit d92f150f9cb80b4df56331d1f42442da78e351f0.
It seems send_packet() is used during initialization, before send_packet_delay is set.

This will be fixed by another patch.

Reverting patches is a resource that we generally use only when
there's something deadly wrong, as it makes the git history
dirtier, hides the reasons why a change is needed, and might be bad
for git bisecting.

In this specific case, by applying both the revert patch and your newer
one, it is clear that your intent is to move the logic that changes
the send packet delay, because it needs to happen earlier.

So, instead of applying both patches, I'll fold them into one,
as enclosed.

-

From: Kevin Baradon <kevin.baradon@xxxxxxxxx>

[media] imon: Use large delays earlier

send_packet() is used during initialization, before send_packet_delay
is set. So, move ictx->send_packet_delay to happen earlier.

[mchehab@xxxxxxxxxx: fold two patches into one to make git history clearer]
Signed-off-by: Kevin Baradon <kevin.baradon@xxxxxxxxx>

diff --git a/drivers/media/rc/imon.c b/drivers/media/rc/imon.c
index b8f9f85..624fd33 100644
--- a/drivers/media/rc/imon.c
+++ b/drivers/media/rc/imon.c
@@ -2093,7 +2093,8 @@ static bool imon_find_endpoints(struct imon_context *ictx,
}
-static struct imon_context *imon_init_intf0(struct usb_interface *intf)
+static struct imon_context *imon_init_intf0(struct usb_interface *intf,
+ const struct usb_device_id *id)
{
struct imon_context *ictx;
struct urb *rx_urb;
@@ -2133,6 +2134,10 @@ static struct imon_context *imon_init_intf0(struct usb_interface *intf)
ictx->vendor = le16_to_cpu(ictx->usbdev_intf0->descriptor.idVendor);
ictx->product = le16_to_cpu(ictx->usbdev_intf0->descriptor.idProduct);
+ /* default send_packet delay is 5ms but some devices need more */
+ ictx->send_packet_delay = id->driver_info & IMON_NEED_20MS_PKT_DELAY ?
+ 20 : 5;
+
ret = -ENODEV;
iface_desc = intf->cur_altsetting;
if (!imon_find_endpoints(ictx, iface_desc)) {
@@ -2311,7 +2316,7 @@ static int imon_probe(struct usb_interface *interface,
first_if_ctx = usb_get_intfdata(first_if);
if (ifnum == 0) {
- ictx = imon_init_intf0(interface);
+ ictx = imon_init_intf0(interface, id);
if (!ictx) {
pr_err("failed to initialize context!\n");
ret = -ENODEV;
@@ -2329,10 +2334,6 @@ static int imon_probe(struct usb_interface *interface,
}
- /* default send_packet delay is 5ms but some devices need more */
- ictx->send_packet_delay = id->driver_info & IMON_NEED_20MS_PKT_DELAY ?
- 20 : 5;
-
usb_set_intfdata(interface, ictx);
if (ifnum == 0) {


--
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/