So you suggest to add new codes in libsas to provide PM support and add other features in mvsas by our own? Regards, HighPoiny Linux Team -----Original Message----- From: "James Bottomley" <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> Sent: Tuesday, May 5, 2015 1:23pm To: linux@xxxxxxxxxxxxxxxxxx Cc: linux-scsi@xxxxxxxxxxxxxxx Subject: Re: Question about driver category for submission On Tue, 2015-05-05 at 13:00 -0400, linux@xxxxxxxxxxxxxxxxxx wrote: > Hello, > We would like to submit our driver for Linux kernel embedded. Our > product is using Marvell 9480/9495 SAS/SATA controller with Marvell > Port Multiplier(PM) controller to provide PM feature for SATA HDDs. > From driver source package, we found the Marvell has provided “mvsas” > source package that covers this chip. But here are questions > > 1. The “mvsas” is based on SCSI modules so it links to scsi library > where it doesn’t support PM feature It links to libsas, which has SATA support provided via libata but has the PM code stubbed out. The reason for that is that it was always thought the benefit of cheap SAS chips was to drive SAS expanders loaded with SATA devices, since PMs are very functionally lacking compared to SAS expanders, so no-one was motivated to do the work. > 2. We use the same controller chip, so we can’t have the code in > other category. > 3. To use PM feature, we need to link to SATA library > > Our current code is proprietary which uses scsi module and add PM and > staggered drive spin up features. Hence, this question is to ask Linux > community to tell us how should we proceed this if we want to open our > code and get driver embedded? Do we need to add our code based on > mvsas source? How do we include SATA library in scsi module? or other > alternatives? Well, you're already including it via libsas; just do the extra libsas work to plug in port multipliers and the existing mvsas driver should work for you. Staggered spin-ups are more problematic: it needs to be done in the sd module but there's never been a clear idea of how to do the grouping (that's why most enterprise devices do staggered spin ups on their own). James -- To unsubscribe from this list: 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