V4L/DVB: em28xx: fix a regression caused by the rc-map changes
authorMauro Carvalho Chehab <mchehab@redhat.com>
Thu, 8 Apr 2010 01:57:04 +0000 (22:57 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 19 May 2010 15:57:00 +0000 (12:57 -0300)
commitc373cabfbbb7631526003f17d470c0d1e5915a4c
treea7182689854e29355ed7f3934fe53e29699b7be9
parent9b09df51b8c2b4615376e5ada3e2eb7eeed3cf5d
V4L/DVB: em28xx: fix a regression caused by the rc-map changes

The patch that adds the rc-map changes didn't take into account that an
a table with IR_TYPE_UNKNOWN would make change_protocol to return -EINVAL.

As this function is fundamental to initialize some data, including a
callback to the getkey function, this caused the driver to stop working,
hanging the machine most of the times.

The fix were simply to add a handler for the IR type, but, to avoid further
issues, explicitly call change_protocol and handle the error before
initializing the IR. Also, let input_dev to start/stop IR handling,
after the opening of the input device.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/em28xx/em28xx-input.c