V4L/DVB (4814): Remote support for Avermedia 777

I didn't test it personally since I don't have this card, but A16AR uses the
same interface and that one certainly does work perfectly (see the next patch).
This patch was originally sent in
http://marc.theaimsgroup.com/?l=linux-video&m=114743413825375&w=2
https://www.redhat.com/mailman/private/video4linux-list/2006-May/msg00103.html
but never got applied. This version has some trivial modifications and drops
the weird gpio hack (it's not clear what practical purpose does it serve).

Signed-off-by: Jose Alberto Reguero <jareguero@telefonica.net>
Signed-off-by: Petr Baudis <pasky@ucw.cz>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

authored by pasky@ucw.cz and committed by Mauro Carvalho Chehab 450efcfd ce48d5ec

+9
+1
drivers/media/video/saa7134/saa7134-cards.c
··· 3718 3718 case SAA7134_BOARD_AVERMEDIA_STUDIO_307: 3719 3719 case SAA7134_BOARD_AVERMEDIA_307: 3720 3720 case SAA7134_BOARD_AVERMEDIA_GO_007_FM: 3721 + case SAA7134_BOARD_AVERMEDIA_777: 3721 3722 /* case SAA7134_BOARD_SABRENT_SBTTVFM: */ /* not finished yet */ 3722 3723 case SAA7134_BOARD_VIDEOMATE_TV_PVR: 3723 3724 case SAA7134_BOARD_VIDEOMATE_GOLD_PLUS:
+8
drivers/media/video/saa7134/saa7134-input.c
··· 194 194 saa_setb(SAA7134_GPIO_GPMODE0, 0x4); 195 195 saa_setb(SAA7134_GPIO_GPSTATUS0, 0x4); 196 196 break; 197 + case SAA7134_BOARD_AVERMEDIA_777: 198 + ir_codes = ir_codes_avermedia; 199 + mask_keycode = 0x02F200; 200 + mask_keydown = 0x000400; 201 + polling = 50; // ms 202 + /* Without this we won't receive key up events */ 203 + saa_setb(SAA7134_GPIO_GPMODE1, 0x1); 204 + saa_setb(SAA7134_GPIO_GPSTATUS1, 0x1); 197 205 case SAA7134_BOARD_KWORLD_TERMINATOR: 198 206 ir_codes = ir_codes_pixelview; 199 207 mask_keycode = 0x00001f;