-
Notifications
You must be signed in to change notification settings - Fork 1.7k
[PDDF] multifpgapci driver support for multiple protocols #24070
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PDDF] multifpgapci driver support for multiple protocols #24070
Conversation
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
a778a86 to
fb1dd0b
Compare
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
@geans-pin |
- Accept upstream change for pddf-device.json (now auto-generated) - Add multifpgapci protocol modules to pddf-device.json.j2 template: - pddf_multifpgapci_i2c_module - pddf_multifpgapci_gpio_module - pddf_multifpgapci_spi_module
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
This reverts commit d457bf7.
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
I pulled out the MDIO change into #24348 |
|
HLD: sonic-net/SONiC#2090 |
geans-pin
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please provide UT verification log based on the PR changes
Thanks @geans-pin , I have attachd the dmesg logs which show the pddf kernel module initialization. It is running the image built from this PR itself. |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
[PDDF] Structure and API for protocol modules to register their ops with the driver
[PDDF] Make multifpgapci i2c protocol handler a standalone kernel module
[PDDF] Make multifpgapci gpio protocol handler a standalone kernel module
[PDDF] Cleanup driver private data from having protocol info
Why I did it
Addition of new protocols requires changes to the multifpgapci driver including changes to the internal structure to be able to maintain protocol specific information. This affects speed and ease of development of features, long term maintainability and most importantly the code quality.
Work item tracking
How I did it
Defined a set of operations in the driver that a protocol module should implement. These operations are registered by protocol modules with the driver using an API. As part of this change, all the protocol specific handling is moved to the modules -in this case i2c code is refactored out of the driver and into a separate module. Similarly, the gpio protocol code is converted into an independent loadable module.
How to verify it
Used the latest passing build to verify the loading of modules and detection of i2c devices:
i2c module logs:
gpio module logs
gpio devices
i2c devices
Which release branch to backport (provide reason below if selected)
Tested branch (Please provide the tested image version)
Description for the changelog
Link to config_db schema for YANG module changes
A picture of a cute animal (not mandatory but encouraged)