|
@@ -996,6 +996,7 @@ oktosend:
|
|
|
#ifdef ED_DBGP
|
|
|
printk("send_s870: prdaddr_2 0x%8x tmpcip %x target_id %d\n", dev->id[c][target_id].prdaddr,tmpcip,target_id);
|
|
|
#endif
|
|
|
+ dev->id[c][target_id].prdaddr = dev->id[c][target_id].prd_bus;
|
|
|
outl(dev->id[c][target_id].prdaddr, tmpcip);
|
|
|
tmpcip = tmpcip - 2;
|
|
|
outb(0x06, tmpcip);
|
|
@@ -2572,7 +2573,7 @@ static void atp870u_free_tables(struct Scsi_Host *host)
|
|
|
for (k = 0; k < 16; k++) {
|
|
|
if (!atp_dev->id[j][k].prd_table)
|
|
|
continue;
|
|
|
- pci_free_consistent(atp_dev->pdev, 1024, atp_dev->id[j][k].prd_table, atp_dev->id[j][k].prdaddr);
|
|
|
+ pci_free_consistent(atp_dev->pdev, 1024, atp_dev->id[j][k].prd_table, atp_dev->id[j][k].prd_bus);
|
|
|
atp_dev->id[j][k].prd_table = NULL;
|
|
|
}
|
|
|
}
|
|
@@ -2584,12 +2585,13 @@ static int atp870u_init_tables(struct Scsi_Host *host)
|
|
|
int c,k;
|
|
|
for(c=0;c < 2;c++) {
|
|
|
for(k=0;k<16;k++) {
|
|
|
- atp_dev->id[c][k].prd_table = pci_alloc_consistent(atp_dev->pdev, 1024, &(atp_dev->id[c][k].prdaddr));
|
|
|
+ atp_dev->id[c][k].prd_table = pci_alloc_consistent(atp_dev->pdev, 1024, &(atp_dev->id[c][k].prd_bus));
|
|
|
if (!atp_dev->id[c][k].prd_table) {
|
|
|
printk("atp870u_init_tables fail\n");
|
|
|
atp870u_free_tables(host);
|
|
|
return -ENOMEM;
|
|
|
}
|
|
|
+ atp_dev->id[c][k].prdaddr = atp_dev->id[c][k].prd_bus;
|
|
|
atp_dev->id[c][k].devsp=0x20;
|
|
|
atp_dev->id[c][k].devtype = 0x7f;
|
|
|
atp_dev->id[c][k].curr_req = NULL;
|