fix for LSI
add support for adaptec
refactor code