mirror of https://gitee.com/openkylin/linux.git
V4L/DVB (4632): Zoran: Implement pcipci failure check
We should be doing this on all devices doing PCI<->PCI DMA. We only set the _FAIL ones when the DMA will fail or may cause crashes. This relies on the PCIAGP_FAIL patch I sent to Andrew already Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
d7e7a15678
commit
e355880b83
|
@ -1621,10 +1621,10 @@ init_dc10_cards (void)
|
|||
dprintk(5, KERN_DEBUG "Jotti is een held!\n");
|
||||
|
||||
/* some mainboards might not do PCI-PCI data transfer well */
|
||||
if (pci_pci_problems & PCIPCI_FAIL) {
|
||||
if (pci_pci_problems & (PCIPCI_FAIL|PCIAGP_FAIL|PCIPCI_ALIMAGIK)) {
|
||||
dprintk(1,
|
||||
KERN_WARNING
|
||||
"%s: chipset may not support reliable PCI-PCI DMA\n",
|
||||
"%s: chipset does not support reliable PCI-PCI DMA\n",
|
||||
ZORAN_NAME);
|
||||
}
|
||||
|
||||
|
@ -1632,7 +1632,7 @@ init_dc10_cards (void)
|
|||
for (i = 0; i < zoran_num; i++) {
|
||||
struct zoran *zr = &zoran[i];
|
||||
|
||||
if (pci_pci_problems & PCIPCI_NATOMA && zr->revision <= 1) {
|
||||
if ((pci_pci_problems & PCIPCI_NATOMA) && zr->revision <= 1) {
|
||||
zr->jpg_buffers.need_contiguous = 1;
|
||||
dprintk(1,
|
||||
KERN_INFO
|
||||
|
|
|
@ -1512,6 +1512,13 @@ setup_fbuffer (struct file *file,
|
|||
if (!capable(CAP_SYS_ADMIN) && !capable(CAP_SYS_RAWIO))
|
||||
return -EPERM;
|
||||
|
||||
/* Don't allow frame buffer overlay if PCI or AGP is buggy, or on
|
||||
ALi Magik (that needs very low latency while the card needs a
|
||||
higher value always) */
|
||||
|
||||
if (pci_pci_problems & (PCIPCI_FAIL | PCIAGP_FAIL | PCIPCI_ALIMAGIK))
|
||||
return -ENXIO;
|
||||
|
||||
/* we need a bytesperline value, even if not given */
|
||||
if (!bytesperline)
|
||||
bytesperline = width * ((fmt->depth + 7) & ~7) / 8;
|
||||
|
|
Loading…
Reference in New Issue