1*74913fd2SJerin Jacob.. SPDX-License-Identifier: BSD-3-Clause 2*74913fd2SJerin Jacob Copyright(c) 2023 Marvell. 3*74913fd2SJerin Jacob 4*74913fd2SJerin JacobAdding a new library 5*74913fd2SJerin Jacob==================== 6*74913fd2SJerin Jacob 7*74913fd2SJerin JacobProcess for approval in principle 8*74913fd2SJerin Jacob--------------------------------- 9*74913fd2SJerin Jacob 10*74913fd2SJerin JacobRationale 11*74913fd2SJerin Jacob~~~~~~~~~ 12*74913fd2SJerin Jacob 13*74913fd2SJerin JacobAdding a new library to DPDK with proper RFC and then full patch-sets is a significant work. 14*74913fd2SJerin JacobIn order to save effort, developers should get an early approval in principle, 15*74913fd2SJerin Jacobor an early feedback in case the library is not suitable for various reasons. 16*74913fd2SJerin Jacob 17*74913fd2SJerin JacobProcess 18*74913fd2SJerin Jacob~~~~~~~ 19*74913fd2SJerin Jacob 20*74913fd2SJerin Jacob#. When a contributor would like to add a new library to DPDK code base, 21*74913fd2SJerin Jacob the contributor must send the following items to DPDK mailing list 22*74913fd2SJerin Jacob for Technical Board approval-in-principle. 23*74913fd2SJerin Jacob 24*74913fd2SJerin Jacob * Purpose of the library. 25*74913fd2SJerin Jacob * Scope of work: outline the various additional tasks planned for this library, 26*74913fd2SJerin Jacob such as developing new test applications, adding new drivers, 27*74913fd2SJerin Jacob and updating existing applications. 28*74913fd2SJerin Jacob * Expected usage models of the library. 29*74913fd2SJerin Jacob * Any licensing constraints. 30*74913fd2SJerin Jacob * Justification for adding to DPDK. 31*74913fd2SJerin Jacob * Any other implementations of the same functionality in other libraries/projects 32*74913fd2SJerin Jacob and how this version differs. 33*74913fd2SJerin Jacob * Public API specification header file as RFC. 34*74913fd2SJerin Jacob 35*74913fd2SJerin Jacob * Optional and good to have. 36*74913fd2SJerin Jacob * Technical Board may additionally request this specification collateral 37*74913fd2SJerin Jacob if needed to get more clarity on scope and purpose. 38*74913fd2SJerin Jacob 39*74913fd2SJerin Jacob * Any new library dependencies to DPDK. 40*74913fd2SJerin Jacob 41*74913fd2SJerin Jacob#. Technical Board to schedule discussion on this in upcoming Technical Board meeting 42*74913fd2SJerin Jacob along with author. 43*74913fd2SJerin Jacob Based on the Technical Board schedule and/or author availability, 44*74913fd2SJerin Jacob Technical Board may need a maximum of **five** Technical Board meeting slots. 45*74913fd2SJerin Jacob 46*74913fd2SJerin Jacob#. Based on mailing list and Technical Board meeting discussions, 47*74913fd2SJerin Jacob Technical Board to vote and share the decision in the mailing list. 48*74913fd2SJerin Jacob The decision outcome can be any of the following: 49*74913fd2SJerin Jacob 50*74913fd2SJerin Jacob * Approved in principle 51*74913fd2SJerin Jacob * Not approved 52*74913fd2SJerin Jacob * Further information needed 53*74913fd2SJerin Jacob 54*74913fd2SJerin Jacob#. Once the Technical Board approves the library in principle, 55*74913fd2SJerin Jacob it is safe to start working on the implementation. 56*74913fd2SJerin Jacob However, the patches will need to meet the usual quality criteria 57*74913fd2SJerin Jacob in order to be effectively accepted. 58