-
Notifications
You must be signed in to change notification settings - Fork 6.8k
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
Migrate DesignWare I2C driver to new PCIe system #16222
Conversation
This option is no longer used in the dts_fixup.h file since there are no SBL-specific fixups. Signed-off-by: Charles E. Youse <charles.youse@intel.com>
This needs to be pushed down to the SoC level, as it's an Apollo Lake feature, not a feature of the UpSquared. Remove the Apollo Lake references to the PCI devices because these will not be used when I2C support is restored. Signed-off-by: Charles E. Youse <charles.youse@intel.com>
The SBL configuration no longer differs in any detail (except its name) from the "standard" UpSquared configuration, so it is removed. Signed-off-by: Charles E. Youse <charles.youse@intel.com>
I have physically confirmed the driver still works properly on a galileo with an I2C blinkM. |
All checks are passing now. Review history of this comment for details about previous failed status. |
The 50-odd lines of boilerplate per I2C port is moved into a template which is generated by CMake as needed at build-time. Signed-off-by: Charles E. Youse <charles.youse@intel.com>
The legacy PCI support in the DesignWare I2C driver is replaced with the new PCIe support. The Intel Quark X1000 SoC and the galileo board configurations are updated accordingly. Signed-off-by: Charles E. Youse <charles.youse@intel.com>
The Apollo Lake devicetree is augmented with its 8 I2C interfaces. The default number of dynamic IRQ stubs is increased to deal with these new interfaces having IRQ vector detection at runtime. Signed-off-by: Charles E. Youse <charles.youse@intel.com>
I2C support has been added back into the up_squared, leveraging the new PCIe support in the DesignWare I2C driver. Signed-off-by: Charles E. Youse <charles.youse@intel.com>
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.
Honestly the devicetree stuff is a little beyond me, but the C changes look great.
Force-push to restart CI checks after @ulfalizer's updates. |
CI fix merged now. |
recheck Looks like |
Mark myself (reluctant) owner of the Designware I2C driver. Signed-off-by: Charles E. Youse <charles.youse@intel.com>
Yeah. I've force-pushed again.. fingers crossed! |
This only affects the galileo and up_squared boards, as they are the only targets that use the PCI functionality of the driver. I've refactored a few things to make adding future Apollo Lake targets easier.
Fixes: #13963