asley tview99
dominik na formanek.cz
dominik na formanek.cz
Úterý Květen 23 10:58:56 CEST 2000
Tak ted jsou zkousel opatchovat kernely 2.2.13, 2.2.14 i 2.2.15 (posledni dva jsem neprekladal) a slo mi to bez problemu.
Prikladam svoje patche.
Dominik
On Fri, Mar 31, 2000 at 08:00:42AM +0200, hancik wrote:
> hm :)
> takze ted nezbejva abych byl za kretena ja :))
>
> delam to asi blbe ( urcite blbe )
> dam v /usr/src/linux/drivers/char patch <bttv.*.diff a dostanu hlasku:
> patch: **** malformed at line 4: text radku 4
>
> tak me ted rozthrhejte nakusy a prozradte mi, jak na to
>
> thanx
>
>
> --
> hancik
> ICQ:18595762
> hancik na atlas.cz
>
>
------------- další část ---------------
--- bttv.c Mon Jan 3 19:36:40 2000
+++ bttv.c Mon Jan 3 19:35:48 2000
@@ -520,6 +520,25 @@
/* btaor(0, ~32, BT848_GPIO_OUT_EN); */
}
+static int
+askey_eeprom(struct i2c_bus *bus)
+{
+ struct bttv *btv = (struct bttv*)bus->data;
+ unsigned int id;
+ unsigned int vendor_id;
+
+ readee(bus, eeprom_data);
+ id = (eeprom_data[252] << 8) | eeprom_data[253];
+ vendor_id = (eeprom_data[254] << 8) | eeprom_data[255];
+
+ if (vendor_id == VENDOR_ASKEY)
+ {
+ printk("bttv%d: Askey card detected - Vendor: 0x%04x Model: 0x%04x\n",btv->nr,vendor_id,id);
+ return 1;
+ }
+ return 0;
+}
+
/* ----------------------------------------------------------------------- */
@@ -577,7 +596,9 @@
/* AVEC Intercapture */
{ 3, 1, 9, 2, 0, { 2, 3, 1, 1}, { 0, 0, 0, 0, 0}},
/* LifeView FlyKit w/o Tuner */
- { 3, 1, -1, -1, 0x8dff00, { 2, 3, 1, 1}}
+ { 3, 1, -1, -1, 0x8dff00, { 2, 3, 1, 1}},
+ /* Askey */
+ { 3, 1, 0, 2, 0x551e00, { 2, 0, 1, 1}, { 0x551400, 0x551200, 0, 0, 0x551200}}
};
#define TVCARDS (sizeof(tvcards)/sizeof(tvcard))
@@ -3008,14 +3029,18 @@
btv->tuner_type=-1; /* use default tuner type */
/* If we were asked to auto-detect, then do so!
- Right now this will only recognize Miro, Hauppauge or STB
+ Right now this will only recognize Miro, Hauppauge, Askey or STB
*/
if (btv->type == BTTV_UNKNOWN)
{
if (I2CRead(&(btv->i2c), I2C_HAUPEE)>=0)
{
if(btv->id>849)
- btv->type=BTTV_HAUPPAUGE878;
+ { if (askey_eeprom(&(btv->i2c))>0)
+ btv->type=BTTV_ASKEY;
+ else
+ btv->type=BTTV_HAUPPAUGE878;
+ }
else
btv->type=BTTV_HAUPPAUGE;
@@ -3043,6 +3068,11 @@
btv->pll.pll_crystal=BT848_IFORM_XT0;
}
}
+
+ if (btv->type == BTTV_ASKEY) {
+ btv->pll.pll_ifreq=28636363;
+ btv->pll.pll_crystal=BT848_IFORM_XT0;
+ }
if (btv->type == BTTV_PIXVIEWPLAYTV) {
btv->pll.pll_ifreq=28636363;
@@ -3149,6 +3179,9 @@
break;
case BTTV_AVEC_INTERCAP:
strcpy(btv->video_dev.name,"(AVEC Intercapture)");
+ break;
+ case BTTV_ASKEY:
+ strcpy(btv->video_dev.name,"BT878 (Askey Tview 99)");
break;
}
printk("%s\n",btv->video_dev.name);
------------- další část ---------------
--- bttvold.h Mon Oct 18 10:31:22 1999
+++ bttv.h Mon Jan 3 19:35:53 2000
@@ -212,6 +212,7 @@
#define BTTV_PIXVIEWPLAYTV 0x10
#define BTTV_WINVIEW_601 0x11
#define BTTV_AVEC_INTERCAP 0x12
+#define BTTV_ASKEY 0x14
#define AUDIO_TUNER 0x00
#define AUDIO_RADIO 0x01
@@ -278,6 +279,8 @@
#define TEA6320_S_SC 0x04 /* stereo C */
#define TEA6320_S_GMU 0x80 /* general mute */
+
+#define VENDOR_ASKEY 0x144f
#define PT2254_L_CHANEL 0x10
#define PT2254_R_CHANEL 0x08
Další informace o konferenci Linux