diff options
Diffstat (limited to 'drivers/staging/vme/TODO')
-rw-r--r-- | drivers/staging/vme/TODO | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/drivers/staging/vme/TODO b/drivers/staging/vme/TODO new file mode 100644 index 000000000000..adc5fca42afd --- /dev/null +++ b/drivers/staging/vme/TODO @@ -0,0 +1,98 @@ + TODO + ==== + +API +=== + +DMA Resource Allocation incomplete +---------------------------------- + +The current DMA resource Allocation provides no means of selecting the +suitability of a DMA controller based on it's supported modes of operation, as +opposed to the resource allocation mechanisms for master and slave windows: + + struct vme_resource *vme_request_dma(struct device *dev); + +As opposed to: + + struct vme_resource * vme_master_request(struct device *dev, + vme_address_t aspace, vme_cycle_t cycle, vme_width_t width); + +The TSI148 can perform, VME-to-PCI, PCI-to-VME, PATTERN-to-VME, PATTERN-to-PCI, +VME-to-VME and PCI-to-PCI transfers. The CA91C142 can only provide VME-to-PCI +and PCI-to-VME. + +Add a mechanism to select a VME controller based on source/target type, +required aspace, cycle and width requirements. + + +Master window broadcast select mask +----------------------------------- + +API currently provides no method to set or get Broadcast Select mask. Suggest +somthing like: + + int vme_master_bmsk_set (struct vme_resource *res, int mask); + int vme_master_bmsk_get (struct vme_resource *res, int *mask); + + +Interrupt Generation +-------------------- + +Add optional timeout when waiting for an IACK. + + +CR/CSR Buffer +------------- + +The VME API provides no functions to access the buffer mapped into the CR/CSR +space. + + +Mailboxes +--------- + +Whilst not part of the VME specification, they are provided by a number of +chips. They are currently not supported at all by the API. + + +Core +==== + +- Rename vme_master_resource's "pci_resource" to be bus agnostic. +- Improve generic sanity checks (Such as does an offset and size fit within a + window and parameter checking). + +Bridge Support +============== + +Tempe (tsi148) +-------------- + +- Driver can currently only support a single bridge. +- 2eSST Broadcast mode. +- Mailboxes unsupported. +- Improve error detection. +- Control of prefetch size, threshold. +- Arbiter control +- Requestor control + +Universe II (ca91c142) +---------------------- + +- Driver can currently only support a single bridge. +- DMA unsupported. +- RMW transactions unsupported. +- Location Monitors unsupported. +- Mailboxes unsupported. +- Error Detection. +- Control of prefetch size, threshold. +- Arbiter control +- Requestor control +- Slot detection + +Universe I (ca91x042) +--------------------- + +Currently completely unsupported. + |