aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/vme/bridges
diff options
context:
space:
mode:
authorMartyn Welch <martyn.welch@ge.com>2015-02-26 10:53:11 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-03-06 20:03:22 -0500
commit08e03c268e3af302649bb85f79fb7c78c9e22ec8 (patch)
tree3b3ea80c98a723856235e1e30346a7d8ae47769d /drivers/vme/bridges
parentc74a804f115bdedcac72ea52ca33f46cfae3b74f (diff)
vme: tsi148: Master windows support USERx and CR/CSR accesses, not slaves
The tsi148 driver is registering the slave images as supporting the "USER" access modes and CR/CSR access mode rather than the master images as it should. Remove the incorrect case entries for these modes from the tsi148_slave_set() function, stop registering slave_images as supporting these modes and instead register master windows as supporting these modes. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Acked-by: Dmitry Kalinkin <dmitry.kalinkin@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/vme/bridges')
-rw-r--r--drivers/vme/bridges/vme_tsi148.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/vme/bridges/vme_tsi148.c b/drivers/vme/bridges/vme_tsi148.c
index e07cfa8001bb..895c2a31918d 100644
--- a/drivers/vme/bridges/vme_tsi148.c
+++ b/drivers/vme/bridges/vme_tsi148.c
@@ -587,11 +587,6 @@ static int tsi148_slave_set(struct vme_slave_resource *image, int enabled,
587 granularity = 0x10000; 587 granularity = 0x10000;
588 addr |= TSI148_LCSR_ITAT_AS_A64; 588 addr |= TSI148_LCSR_ITAT_AS_A64;
589 break; 589 break;
590 case VME_CRCSR:
591 case VME_USER1:
592 case VME_USER2:
593 case VME_USER3:
594 case VME_USER4:
595 default: 590 default:
596 dev_err(tsi148_bridge->parent, "Invalid address space\n"); 591 dev_err(tsi148_bridge->parent, "Invalid address space\n");
597 return -EINVAL; 592 return -EINVAL;
@@ -2471,7 +2466,8 @@ static int tsi148_probe(struct pci_dev *pdev, const struct pci_device_id *id)
2471 master_image->locked = 0; 2466 master_image->locked = 0;
2472 master_image->number = i; 2467 master_image->number = i;
2473 master_image->address_attr = VME_A16 | VME_A24 | VME_A32 | 2468 master_image->address_attr = VME_A16 | VME_A24 | VME_A32 |
2474 VME_A64; 2469 VME_A64 | VME_CRCSR | VME_USER1 | VME_USER2 |
2470 VME_USER3 | VME_USER4;
2475 master_image->cycle_attr = VME_SCT | VME_BLT | VME_MBLT | 2471 master_image->cycle_attr = VME_SCT | VME_BLT | VME_MBLT |
2476 VME_2eVME | VME_2eSST | VME_2eSSTB | VME_2eSST160 | 2472 VME_2eVME | VME_2eSST | VME_2eSSTB | VME_2eSST160 |
2477 VME_2eSST267 | VME_2eSST320 | VME_SUPER | VME_USER | 2473 VME_2eSST267 | VME_2eSST320 | VME_SUPER | VME_USER |
@@ -2500,8 +2496,7 @@ static int tsi148_probe(struct pci_dev *pdev, const struct pci_device_id *id)
2500 slave_image->locked = 0; 2496 slave_image->locked = 0;
2501 slave_image->number = i; 2497 slave_image->number = i;
2502 slave_image->address_attr = VME_A16 | VME_A24 | VME_A32 | 2498 slave_image->address_attr = VME_A16 | VME_A24 | VME_A32 |
2503 VME_A64 | VME_CRCSR | VME_USER1 | VME_USER2 | 2499 VME_A64;
2504 VME_USER3 | VME_USER4;
2505 slave_image->cycle_attr = VME_SCT | VME_BLT | VME_MBLT | 2500 slave_image->cycle_attr = VME_SCT | VME_BLT | VME_MBLT |
2506 VME_2eVME | VME_2eSST | VME_2eSSTB | VME_2eSST160 | 2501 VME_2eVME | VME_2eSST | VME_2eSSTB | VME_2eSST160 |
2507 VME_2eSST267 | VME_2eSST320 | VME_SUPER | VME_USER | 2502 VME_2eSST267 | VME_2eSST320 | VME_SUPER | VME_USER |