diff options
-rw-r--r-- | drivers/media/video/ivtv/ivtv-cards.c | 55 | ||||
-rw-r--r-- | drivers/media/video/ivtv/ivtv-cards.h | 4 | ||||
-rw-r--r-- | drivers/media/video/ivtv/ivtv-driver.c | 1 |
3 files changed, 59 insertions, 1 deletions
diff --git a/drivers/media/video/ivtv/ivtv-cards.c b/drivers/media/video/ivtv/ivtv-cards.c index 79d0fe4990d6..79c1b7af8824 100644 --- a/drivers/media/video/ivtv/ivtv-cards.c +++ b/drivers/media/video/ivtv/ivtv-cards.c | |||
@@ -1210,6 +1210,60 @@ static const struct ivtv_card ivtv_card_buffalo = { | |||
1210 | .i2c = &ivtv_i2c_std, | 1210 | .i2c = &ivtv_i2c_std, |
1211 | }; | 1211 | }; |
1212 | 1212 | ||
1213 | /* ------------------------------------------------------------------------- */ | ||
1214 | /* Sony Kikyou */ | ||
1215 | |||
1216 | static const struct ivtv_card_pci_info ivtv_pci_kikyou[] = { | ||
1217 | { PCI_DEVICE_ID_IVTV16, IVTV_PCI_ID_SONY, 0x813d }, | ||
1218 | { 0, 0, 0 } | ||
1219 | }; | ||
1220 | |||
1221 | static const struct ivtv_card ivtv_card_kikyou = { | ||
1222 | .type = IVTV_CARD_KIKYOU, | ||
1223 | .name = "Sony VAIO Giga Pocket (ENX Kikyou)", | ||
1224 | .v4l2_capabilities = IVTV_CAP_ENCODER, | ||
1225 | .hw_video = IVTV_HW_SAA7115, | ||
1226 | .hw_audio = IVTV_HW_GPIO, | ||
1227 | .hw_audio_ctrl = IVTV_HW_GPIO, | ||
1228 | .hw_all = IVTV_HW_GPIO | IVTV_HW_SAA7115 | IVTV_HW_TUNER, | ||
1229 | .video_inputs = { | ||
1230 | { IVTV_CARD_INPUT_VID_TUNER, 0, IVTV_SAA71XX_COMPOSITE5 }, | ||
1231 | { IVTV_CARD_INPUT_COMPOSITE1, 1, IVTV_SAA71XX_COMPOSITE4 }, /* rear */ | ||
1232 | { IVTV_CARD_INPUT_COMPOSITE2, 2, IVTV_SAA71XX_COMPOSITE1 }, /* front */ | ||
1233 | { IVTV_CARD_INPUT_SVIDEO1, 1, IVTV_SAA71XX_SVIDEO1 }, | ||
1234 | { IVTV_CARD_INPUT_SVIDEO2, 2, IVTV_SAA71XX_SVIDEO2 }, | ||
1235 | }, | ||
1236 | .audio_inputs = { | ||
1237 | { IVTV_CARD_INPUT_AUD_TUNER, IVTV_GPIO_TUNER }, | ||
1238 | { IVTV_CARD_INPUT_LINE_IN1, IVTV_GPIO_LINE_IN }, | ||
1239 | /* IVTV_GPIO_RADIO?? pretend to have "radio" for 2nd audio GPIO. */ | ||
1240 | { IVTV_CARD_INPUT_LINE_IN2, 2 }, | ||
1241 | }, | ||
1242 | /* | ||
1243 | * Sony windows software seems to set 0x200 when unmuting. | ||
1244 | * Does it do anything? Not clear what 0x100 does either. | ||
1245 | */ | ||
1246 | .gpio_init = { .direction = 0x0381, .initial_value = 0x0320 }, | ||
1247 | .gpio_audio_input = { .mask = 0x0060, | ||
1248 | .tuner = 0x0000, | ||
1249 | .linein = 0x0060, | ||
1250 | .radio = 0x0020 }, | ||
1251 | .gpio_audio_mute = { .mask = 0x0000, | ||
1252 | .mute = 0x0000 }, /* 0x200? Disable for now. */ | ||
1253 | .gpio_audio_mode = { .mask = 0x0080, | ||
1254 | .mono = 0x0000, | ||
1255 | .stereo = 0x0000, /* SAP */ | ||
1256 | .lang1 = 0x0080, | ||
1257 | .lang2 = 0x0000, | ||
1258 | .both = 0x0080 }, | ||
1259 | .tuners = { | ||
1260 | { .std = V4L2_STD_ALL, .tuner = TUNER_SONY_BTF_PXN01Z }, | ||
1261 | }, | ||
1262 | .pci_list = ivtv_pci_kikyou, | ||
1263 | .i2c = &ivtv_i2c_std, | ||
1264 | }; | ||
1265 | |||
1266 | |||
1213 | static const struct ivtv_card *ivtv_card_list[] = { | 1267 | static const struct ivtv_card *ivtv_card_list[] = { |
1214 | &ivtv_card_pvr250, | 1268 | &ivtv_card_pvr250, |
1215 | &ivtv_card_pvr350, | 1269 | &ivtv_card_pvr350, |
@@ -1238,6 +1292,7 @@ static const struct ivtv_card *ivtv_card_list[] = { | |||
1238 | &ivtv_card_aver_m104, | 1292 | &ivtv_card_aver_m104, |
1239 | &ivtv_card_buffalo, | 1293 | &ivtv_card_buffalo, |
1240 | &ivtv_card_aver_ultra1500mce, | 1294 | &ivtv_card_aver_ultra1500mce, |
1295 | &ivtv_card_kikyou, | ||
1241 | 1296 | ||
1242 | /* Variations of standard cards but with the same PCI IDs. | 1297 | /* Variations of standard cards but with the same PCI IDs. |
1243 | These cards must come last in this list. */ | 1298 | These cards must come last in this list. */ |
diff --git a/drivers/media/video/ivtv/ivtv-cards.h b/drivers/media/video/ivtv/ivtv-cards.h index 6148827ec885..78eca992e1fd 100644 --- a/drivers/media/video/ivtv/ivtv-cards.h +++ b/drivers/media/video/ivtv/ivtv-cards.h | |||
@@ -51,7 +51,8 @@ | |||
51 | #define IVTV_CARD_AVER_M104 24 /* AverMedia M104 miniPCI card */ | 51 | #define IVTV_CARD_AVER_M104 24 /* AverMedia M104 miniPCI card */ |
52 | #define IVTV_CARD_BUFFALO_MV5L 25 /* Buffalo PC-MV5L/PCI card */ | 52 | #define IVTV_CARD_BUFFALO_MV5L 25 /* Buffalo PC-MV5L/PCI card */ |
53 | #define IVTV_CARD_AVER_ULTRA1500MCE 26 /* AVerMedia UltraTV 1500 MCE */ | 53 | #define IVTV_CARD_AVER_ULTRA1500MCE 26 /* AVerMedia UltraTV 1500 MCE */ |
54 | #define IVTV_CARD_LAST 26 | 54 | #define IVTV_CARD_KIKYOU 27 /* Sony VAIO Giga Pocket (ENX Kikyou) */ |
55 | #define IVTV_CARD_LAST 27 | ||
55 | 56 | ||
56 | /* Variants of existing cards but with the same PCI IDs. The driver | 57 | /* Variants of existing cards but with the same PCI IDs. The driver |
57 | detects these based on other device information. | 58 | detects these based on other device information. |
@@ -86,6 +87,7 @@ | |||
86 | #define IVTV_PCI_ID_MELCO 0x1154 | 87 | #define IVTV_PCI_ID_MELCO 0x1154 |
87 | #define IVTV_PCI_ID_GOTVIEW1 0xffac | 88 | #define IVTV_PCI_ID_GOTVIEW1 0xffac |
88 | #define IVTV_PCI_ID_GOTVIEW2 0xffad | 89 | #define IVTV_PCI_ID_GOTVIEW2 0xffad |
90 | #define IVTV_PCI_ID_SONY 0x104d | ||
89 | 91 | ||
90 | /* hardware flags, no gaps allowed */ | 92 | /* hardware flags, no gaps allowed */ |
91 | #define IVTV_HW_CX25840 (1 << 0) | 93 | #define IVTV_HW_CX25840 (1 << 0) |
diff --git a/drivers/media/video/ivtv/ivtv-driver.c b/drivers/media/video/ivtv/ivtv-driver.c index 347c3344f56d..9a250548be4d 100644 --- a/drivers/media/video/ivtv/ivtv-driver.c +++ b/drivers/media/video/ivtv/ivtv-driver.c | |||
@@ -193,6 +193,7 @@ MODULE_PARM_DESC(cardtype, | |||
193 | "\t\t\t25 = AverMedia M104 (not yet working)\n" | 193 | "\t\t\t25 = AverMedia M104 (not yet working)\n" |
194 | "\t\t\t26 = Buffalo PC-MV5L/PCI\n" | 194 | "\t\t\t26 = Buffalo PC-MV5L/PCI\n" |
195 | "\t\t\t27 = AVerMedia UltraTV 1500 MCE\n" | 195 | "\t\t\t27 = AVerMedia UltraTV 1500 MCE\n" |
196 | "\t\t\t28 = Sony VAIO Giga Pocket (ENX Kikyou)\n" | ||
196 | "\t\t\t 0 = Autodetect (default)\n" | 197 | "\t\t\t 0 = Autodetect (default)\n" |
197 | "\t\t\t-1 = Ignore this card\n\t\t"); | 198 | "\t\t\t-1 = Ignore this card\n\t\t"); |
198 | MODULE_PARM_DESC(pal, "Set PAL standard: BGH, DK, I, M, N, Nc, 60"); | 199 | MODULE_PARM_DESC(pal, "Set PAL standard: BGH, DK, I, M, N, Nc, 60"); |