Jeff, From the below link (from Sergei) it seems that you have already re-factored the AHCI implementation dependency on PCI. I would like to add support for the OMAPL138 SATA on top of your changes. That would be the ideal way forward for me. Have the ahci re-factoring changes queued for mainline merge already? I just joined the list and hence do not know the status. Sergei, Appreciate the response. Regards swami -----Original Message----- From: Sergei Shtylyov [mailto:sshtylyov@xxxxxxxxxxxxx] Sent: Monday, August 10, 2009 2:33 PM To: Subbrathnam, Swaminathan Cc: linux-ide@xxxxxxxxxxxxxxx Subject: Re: sata AHCI controller over non-PCI bus Hello. Subbrathnam, Swaminathan wrote: > Hi, > > I would like to post support for OMAPL138 SATA controller that is AHCI 1.1 compliant. OMAPL138 is an ARM926 based platform. > > Current "ahci.c" assumes that AHCI is getting supported over PCI by default, whereas the SATA AHCI controller on OMAPL138 is connected to a non-PCI bus. Since I am in the process of posting the support I would like to get the opinion from the community on how to proceed on this front. Well, you're not the first with this problem, Marvell already had it. > I see the following 2 options today > > 1. #ifdef the PCI specific code in ahci.c and implement the platform_device based implementation to support non-PCI AHCI controllers. > I don't think this is a community-acceptable option at all. > 2. Re-organize the ahci.c to abstract the AHCI functionalities from PCI, non-PCI bus dependencies. > > Currently we have implemented Option 1 in our internal tree to support SATA on OMAPL138 platform and it works well. Ideally I would want to proceed with Option 2 but would like get feedback from the community before proceeding in this direction. See http://git.kernel.org/?p=linux/kernel/git/jgarzik/libata-dev.git;a=shortlog;h=libahci for Jeff Garzik's work on separating AHCI support from PCI. MBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html