Question about driver category for submission
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
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?
Best Regards,
HighPoint Linux Team
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
James Bottomley
maintainerQuoted 9 lines · On Tue, 2015-05-05 at 13:00 -0400, [email protected] 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 questions1. 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.
Quoted 10 lines
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 libraryOur 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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
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" <[email protected]>
Sent: Tuesday, May 5, 2015 1:23pm
To: [email protected]
Cc: [email protected]
Subject: Re: Question about driver category for submission
Quoted 9 lines · On Tue, 2015-05-05 at 13:00 -0400, [email protected] 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 questions1. 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.
Quoted 10 lines
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 libraryOur 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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
James Bottomley
maintainerQuoted 2 lines · On Tue, 2015-05-05 at 13:34 -0400, [email protected] wrote:
So you suggest to add new codes in libsas to provide PM support and add other features in mvsas by our own?
well, you seem to be presenting a choice between a new driver and adding a feature to an existing one. The sensible engineering course seems to be to add the feature.
The missing feature, by the way, isn't in mvsas, it's in libsas, which is the helper library used by quite a few other sas cards. That would mean that they'd all gain PM support too.
James
Quoted 52 lines
Regards,
HighPoiny Linux Team-----Original Message-----
From: "James Bottomley" <[email protected]>
Sent: Tuesday, May 5, 2015 1:23pm
To: [email protected]
Cc: [email protected]
Subject: Re: Question about driver category for submissionQuoted 9 lines · On Tue, 2015-05-05 at 13:00 -0400, [email protected] 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 questions1. 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.
Quoted 10 lines
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 libraryOur 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
Quoted 5 lines
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html