[media] mceusb: fix inverted mask inversion logic
authorJarod Wilson <jarod@redhat.com>
Wed, 15 Dec 2010 22:20:55 +0000 (19:20 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 20 Dec 2010 16:11:17 +0000 (14:11 -0200)
commitd8cc7fd7e6371026c15254a35e618d2e5c5bf562
tree8afb236baf74c971b2a8c3648aea31fd89425302
parentfbb1f1b0db9b196928157f97515a7ea537310ebc
[media] mceusb: fix inverted mask inversion logic

As it turns out, somewhere along the way, we managed to invert the
meaning of the tx_mask_inverted flag. Looking back over the old lirc
driver, tx_mask_inverted was set to 0 if the device was in tx_mask_list.
Now we have a tx_mask_inverted flag set to 1 for all the devices that
were in the list, and set tx_mask_inverted to that flag value, which is
actually the opposite of what we used to set, causing set_tx_mask to use
the wrong mask setting option. Since there seem to be more devices with
inverted masks than not (using the original device as the baseline for
inverted vs. normal), lets just call the ones currently marked as
inverted normal instead, and flip the if/else actions that key off of
the inverted flag.

Note: the problem only cropped up if a call to set_tx_mask was made, if
no mask was set, the device would work just fine, which is why this
managed to slip though w/o getting noticed until now.

Tested successfully by myself and Dennis Gilmore.

Reported-by: Dennis Gilmore <dgilmore@redhat.com>
Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/IR/mceusb.c