I was looking into AHCI stuff this morning and found something kinda disturbing, namely the fact Intel requires a license for AHCI. The real trouble is I can't tell if they *only* require it for hardware/chips, or if the require the license universally i.e. including the OpenBSD software support for AHCI.
Where would a virtualized HBA supporting AHCI fall on the infamous hardware/software dividing line? If anyone would be kind enough to beat me with a lawyer clue stick, it would be much appreciated. -jcr (details from intel below) http://www.intel.com/technology/serialata/ahci.htm [quote] Implementation of the Advanced Host Controller Interface Specification requires a license from Intel. Contributors of the Advanced Host Controller Interface Specification for Serial ATA have signed the Advanced Host Controller Interface Specification for Serial ATA - Contributors Agreement in order to be licensed to use and implement this Specification. This Contributors Agreement provides Contributors with a reciprocal, royalty-free license to certain intellectual property rights from Intel and other Contributors for their products that are compliant with the licensed versions of the Advanced Host Controller Interface Specification for Serial ATA. [/quote] http://www.intel.com/technology/serialata/pdf/AHCI_Contrib060706.pdf [quote] 1.2 "Adopter" means any party that has properly entered into or later properly enters into a license or other agreement for the adoption of the Final Specification and has delivered it to the Secretary within the Adoption Period. 4.4 To Adopters and other Contributing Parties. (a) Revision 0.95 Specification. Effective upon Intel's Adoption of the Revision 0.95 Specification (and subject to the withdrawal provisions under Section 7.3), Intel and Contributor each agree to grant to the Contributing Parties a non-exclusive, world-wide license under any Necessary Claims of a patent or patent application reading on any of those Contributions made by Intel or Contributor, respectively, to make, have made, use, import, sell, offer to sell, and otherwise distribute and dispose of Compliant Portions, but only to the extent that it is incorporated as part of a Discrete Controller, and provided that such license need not extend to any part or function of a product in which a Compliant Portion is incor- porated that is not itself part of the Compliant Portion. Such license will be granted on a royalty-free basis and under terms that are reasonable and non-discriminatory, provided that such license grant will be conditioned upon each Contributing Party's grant of a reciprocal license to Intel and Contributor, as evidenced by each such Contributing Party's execution of an Identical Form of Agreement. (b) Final Specification. Effective upon thirty (30) days following Intel's Adoption of the Final Specifi- cation (and subject to the withdrawal provisions under Section 7.3), Intel and Contributor each agree to grant to each Adopter and to each other Contributing Party a non-exclusive, world-wide license under Necessary Claims of a patent or patent application reading on any of those Contributions made by Intel or Contributor, respectively, to make, have made, use, import, sell, offer to sell, and otherwise distribute and dispose of Compliant Portions; provided that such license need not extend to any part or function of a product in which a Compliant Portion is incorporated that is not itself part of the Compliant Portion. Such license shall be granted on a royalty-free basis and under terms that are reasonable and non- discriminatory, provided that such license grant will be conditioned upon each Contributing Party's grant of a reciprocal license to Intel and Contributor, as evidenced by each such Contributing Party's execution of an Identical Form of Agreement. [/quote] -- J.C. Roberts

