On Mon, Feb 20, 2006 at 11:02:32AM -0700, Dax Kelson wrote: > This appears to be the most current version of the driver: > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.16-rc4/2.6.16-rc4-mm1/broken-out/areca-raid-linux-scsi-driver.patch > > Is this the current TODO list? > > ================= > Issues not yet patched: > > 13. uintNN_t int types: use kernel types except for userspace > interfaces > 14. use kernel-doc > 18. Put arcmsr.txt in Documentation/scsi/, not in scsi/arcmsr/. > 19. Maybe use sysfs (/sys) instead of /proc. > 20. check stack usage, init/exit sections; - remove internal queueing - fix hardware datastructures - remove odd ioctls - remove useless forward prototypes - give types like ACB useful names - give variable useful names, especially follow kernel conventions, e.g. a struct pci_dev is usually named pdev - kill ->proc_info method - use normal comment style even for comments not fitting into the kernel-doc item above. kill useless separator comments without text - convert arcmsr_show_firmware_info to useful one value per file attributes. best follow the schemes used in aacraid or lpfc - convert arcmsr_show_driver_state to useful one value per file attributes. - remove never called release method in the host template - audit whether setting unchecked_isa_dma to false really makes sense (I strongly doubt it) - remove shutdown notifier, add pci_driver ->shutdown method instead - remove CameCase PCI Ids. The vendor Id should go into pci_ids.h, the device ids either removed or spelled the normal linux way - arcmsr_do_interrupt should stop walking the global host list and use the private data passed to request_irq - the global host list should go away completely - arcmsr_bios_param looks like duplicating the generic CAM version? - locking needs to be redone. If the driver really needs more than one per-host lock we'll want a very good explanation - arcmsr_device_probe needs to be rewritten to do goto-based error unwinding. - msi should be a module options if at all, but defintitly not a config options - arcmsr_scsi_host_template_init should go away. the host template must be initialized statically with no run-time writes to it - the hardware documentation should be split out of arcmsr.h into a separate file (btw, thanks a lot to areca to provide such detailed hardware informations, it's just the wrong format..) - remove the SCSISTAT_* defines, and use the generic ones from <scsi/scsi.h> instead. Dito for various other SAM defines. - the driver has just two files and should go directly into drivers/scsi instead of a subdirectory - : send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html