Commit a0c59063 authored by Sigmund Augdal's avatar Sigmund Augdal Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (13747): [Mantis] Bug Fix!: Use Register Address rather than register field

parent fbe1e43a
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -190,7 +190,7 @@ void mantis_dma_start(struct mantis_pci *mantis)

	mantis_risc_program(mantis);
	mmwrite(mantis->risc_dma, MANTIS_RISC_START);
	mmwrite(mmread(MANTIS_GPIF_HIFADDR) | MANTIS_GPIF_HIFRDWRN, MANTIS_GPIF_HIFADDR);
	mmwrite(mmread(MANTIS_GPIF_ADDR) | MANTIS_GPIF_HIFRDWRN, MANTIS_GPIF_ADDR);

	mmwrite(0, MANTIS_DMA_CTL);
	mantis->last_block = mantis->finished_block = 0;
@@ -210,7 +210,7 @@ void mantis_dma_stop(struct mantis_pci *mantis)
	mask = mmread(MANTIS_INT_MASK);
	dprintk(verbose, MANTIS_DEBUG, 1, "Mantis Stop DMA engine");

	mmwrite((mmread(MANTIS_GPIF_HIFADDR) & (~(MANTIS_GPIF_HIFRDWRN))), MANTIS_GPIF_HIFADDR);
	mmwrite((mmread(MANTIS_GPIF_ADDR) & (~(MANTIS_GPIF_HIFRDWRN))), MANTIS_GPIF_ADDR);

	mmwrite((mmread(MANTIS_DMA_CTL) & ~(MANTIS_FIFO_EN |
					    MANTIS_DCAP_EN |
+10 −10
Original line number Diff line number Diff line
@@ -72,7 +72,7 @@ int mantis_hif_read_mem(struct mantis_ca *ca, u32 addr)

	udelay(20);

	mmwrite(hif_addr, MANTIS_GPIF_HIFADDR);
	mmwrite(hif_addr, MANTIS_GPIF_ADDR);
	if (mantis_hif_data_available(ca) != 0) {
		dprintk(verbose, MANTIS_ERROR, 1, "Adapter(%d) Slot(0): GPIF Smart Buffer burst read failed", mantis->num);
		return -EREMOTEIO;
@@ -81,7 +81,7 @@ int mantis_hif_read_mem(struct mantis_ca *ca, u32 addr)
		dprintk(verbose, MANTIS_ERROR, 1, "Adapter(%d) Slot(0): GPIF Smart Buffer operation failed", mantis->num);
		return -EREMOTEIO;
	}
	data = mmread(MANTIS_GPIF_HIFDIN);
	data = mmread(MANTIS_GPIF_DIN);

	return (data >> 24) & 0xff;
}
@@ -100,8 +100,8 @@ int mantis_hif_write_mem(struct mantis_ca *ca, u32 addr, u8 data)

	mmwrite(slot->slave_cfg, MANTIS_GPIF_CFGSLA); /* Slot0 alone for now */

	mmwrite(hif_addr, MANTIS_GPIF_HIFADDR);
	mmwrite(data, MANTIS_GPIF_HIFDOUT);
	mmwrite(hif_addr, MANTIS_GPIF_ADDR);
	mmwrite(data, MANTIS_GPIF_DOUT);
	ca->hif_job_queue = MANTIS_HIF_MEMWR;

	if (mantis_hif_sbuf_opdone_wait(ca) != 0) {
@@ -124,7 +124,7 @@ int mantis_hif_read_iom(struct mantis_ca *ca, u32 addr)
	hif_addr |=  MANTIS_GPIF_PCMCIAIOM;
	hif_addr |=  addr;

	mmwrite(hif_addr, MANTIS_GPIF_HIFADDR);
	mmwrite(hif_addr, MANTIS_GPIF_ADDR);
	ca->hif_job_queue = MANTIS_HIF_IOMRD;

	if (mantis_hif_sbuf_opdone_wait(ca) != 0) {
@@ -134,9 +134,9 @@ int mantis_hif_read_iom(struct mantis_ca *ca, u32 addr)
	}
	udelay(50);
	ca->hif_job_queue &= ~MANTIS_HIF_IOMRD;
	data = mmread(MANTIS_GPIF_HIFDIN);
	data = mmread(MANTIS_GPIF_DIN);
	hif_addr |= MANTIS_GPIF_PCMCIAREG;
	mmwrite(hif_addr, MANTIS_GPIF_HIFADDR);
	mmwrite(hif_addr, MANTIS_GPIF_ADDR);

	return data;
}
@@ -152,8 +152,8 @@ int mantis_hif_write_iom(struct mantis_ca *ca, u32 addr, u8 data)
	hif_addr |=  MANTIS_GPIF_PCMCIAIOM;
	hif_addr |=  addr;

	mmwrite(hif_addr, MANTIS_GPIF_HIFADDR);
	mmwrite(data, MANTIS_GPIF_HIFDOUT);
	mmwrite(hif_addr, MANTIS_GPIF_ADDR);
	mmwrite(data, MANTIS_GPIF_DOUT);

	ca->hif_job_queue = MANTIS_HIF_IOMWR;
	if (mantis_hif_sbuf_opdone_wait(ca) != 0) {
@@ -164,7 +164,7 @@ int mantis_hif_write_iom(struct mantis_ca *ca, u32 addr, u8 data)
	udelay(50);
	ca->hif_job_queue &= ~MANTIS_HIF_IOMWR;
	hif_addr |= MANTIS_GPIF_PCMCIAREG;
	mmwrite(hif_addr, MANTIS_GPIF_HIFADDR);
	mmwrite(hif_addr, MANTIS_GPIF_ADDR);

	return 0;
}