-
Notifications
You must be signed in to change notification settings - Fork 140
ASoC: SOF: make sof_ipc_cc_version to fixed length and fix ABI mismatch #1890
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
Changes from all commits
f4e61df
41fb480
8fc1902
1515627
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -26,7 +26,7 @@ | |
|
|
||
| /* SOF ABI version major, minor and patch numbers */ | ||
| #define SOF_ABI_MAJOR 3 | ||
| #define SOF_ABI_MINOR 14 | ||
| #define SOF_ABI_MINOR 15 | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. why do we go from 13 to 15 here?
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @plbossart For FW this change is for ABI 15, but kernel is still 13.
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @xiulipan @plbossart You can get open Linux PRs that modify ABI by searching with ABI tag. 14 update is the DMIC one and it's here #1924
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @kv2019i I think we should align the ABI between FW and Kernel. The FW is already 14 from thesofproject/sof#2398 I send #1929 to clean up the mismatched ABI version and info.h
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ack @xiulipan
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @kv2019i The issue here is So here I think this fix should use 16.
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @xiulipan @lgirdwood This PR anyways includes all changes from ABI13-14-15-16, so this is mostly to get the history records and git commit messages accurate. I'd change this commit in the series to assign ABI14 as that's how the FW was merged. And then align rest of the series as per ABI classifier (and unmerged patches). We'll end up with bumping ABI to 16 in this series in any case.
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. am I the only one who thinks that we're doing something wrong with ABI numbers in general? I see several PRs currently in review changing the ABI version from X to Y, where X is often 13 and Y is one of 14, 15, or 16. And I don't think we practice manual patch merging by maintainers. Can we not try to separate feature merging and version incrementing? How about Then we'll be able to accumulate patches that actually need a new functionality before incrementing the version, but then callers would need to check for that error and "fail gracefully."
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @lyakh This is probably not the best place to discuss other ways to manage ABIs, as this discussion is already pretty complex and we should complete this PR as per our currently agreed process. And currently, the ABI is bumped in FW when a change altering the ABI is merged. This is good if patches are cherry-picked to release branches, or snapshot firmware are used for CI -> the ABI version FW reports will be always accurate. The kernel side is trickier. We have a set of headers describing the FW IPC interface. We should update this in same way as FW in that we update the kernel side headers and bump the ABI version in the same commit. In this git commit we should also document what the ABI changes are about. Kernel patches that take advantage of new FW ABIs can be sent later, that is ok, but we should keep the headers in sync. And for this patch @xiulipan, FW support for debug version reporting, was merged with ABI 14, so any binaries built from FW master, will support this interface and report out ABI 14. So in this kernel patch, where we are the debug version fields to the ipc headers, we should keep the ABI level at 14 as well (that's where it was merged to FW). UPDATE: our ABI process actually already supports grouping (e.g. multiple changes tagged for same minor bump). So you don't have to bump version in every patch. But we need to align the patches to the ABI dashboard decisions.
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @kv2019i I understand that this is complex and that I'm late on the train, and that a lot of people spent many hours thinking this process through, so, they probably had all those ideas and rejected them for some reasons, that I haven't thought through. I just see a couple of difficulties with the current process:
But yes, I understand that it's complex and I'm not sure I have any good ideas how to improve this. |
||
| #define SOF_ABI_PATCH 0 | ||
|
|
||
| /* SOF ABI version number. Format within 32bit word is MMmmmppp */ | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.