1005,8 → 1005,7 |
btwrite(BT848_CONTROL_LDEC, BT848_E_CONTROL); |
btwrite(BT848_CONTROL_LDEC, BT848_O_CONTROL); |
} |
|
/* interrupt */ |
/* |
btwrite(0xfffffUL, BT848_INT_STAT); |
btwrite((btv->triton1) | |
BT848_INT_GPINT | |
1015,6 → 1014,8 |
BT848_INT_RISCI|BT848_INT_OCERR|BT848_INT_VPRES| |
BT848_INT_FMTCHG|BT848_INT_HLOCK, |
BT848_INT_MASK); |
*/ |
|
} |
|
extern void bttv_reinit_bt848(struct bttv *btv) |
3579,11 → 3580,13 |
/* pci stuff (init, get irq/mmio, ... */ |
btv->dev = dev; |
btv->id = dev->device; |
|
if (pci_enable_device(dev)) { |
printk(KERN_WARNING "bttv%d: Can't enable device.\n", |
btv->nr); |
return -EIO; |
} |
|
if (pci_set_dma_mask(dev, 0xffffffff)) { |
printk(KERN_WARNING "bttv%d: No suitable DMA available.\n", |
btv->nr); |
3596,6 → 3599,7 |
btv->nr, pci_resource_start(dev,0)); |
return -EBUSY; |
} |
|
pci_set_master(dev); |
pci_set_command(dev); |
pci_set_drvdata(dev,btv); |
3611,8 → 3615,9 |
bttv_num,btv->id, btv->revision, pci_name(dev)); |
printk("irq: %d, latency: %d, mmio: 0x%lx\n", |
btv->dev->irq, lat, pci_resource_start(dev,0)); |
//schedule(); |
|
|
udelay(1000); |
|
btv->bt848_mmio=ioremap(pci_resource_start(dev,0), 0x1000); |
if (NULL == ioremap(pci_resource_start(dev,0), 0x1000)) { |
printk("bttv%d: ioremap() failed\n", btv->nr); |
3670,9 → 3675,17 |
if (bttv_gpio) |
bttv_gpio_tracking(btv,"init"); |
|
cprintf("Critical Point 1\n"); |
for (result=1;result<1000000000;result++); |
cprintf("Critical Point End 1\n"); |
|
/* needs to be done before i2c is registered */ |
bttv_init_card1(btv); |
|
cprintf("Critical Point 2\n"); |
mdelay(1000); |
cprintf("Critical Point End 2\n"); |
|
/* register i2c */ |
init_bttv_i2c(btv); |
|