zephyr icon indicating copy to clipboard operation
zephyr copied to clipboard

soc: ace_v1x: added ACE SoC IPC/IDC support

Open aborisovich opened this issue 3 years ago • 6 comments

Updated common IPC driver code to support new ACE soc. Refactored existing CAVS IPC API to be common for all Intel ADSP boards. Unified ipc and idc devicetree macros and registers for all Intel ADSP families.

Signed-off-by: Serhiy Katsyuba [email protected] Signed-off-by: Andrey Borisovich [email protected]

aborisovich avatar Jul 11 '22 00:07 aborisovich

This is a whole lot of changes in 1 single commit, makes review VERY difficult if not impossible.

nashif avatar Jul 11 '22 12:07 nashif

This is a whole lot of changes in 1 single commit, makes review VERY difficult if not impossible.

Yes I know, I'm sorry for this. I am just not sure how can I split it right now... I would need to create a commit on top of "unrenamed" CAVS_IPC API (so technically adding ACE code that uses common/CAVS code) to show what had been added for new ace board and then create a separate commit with all the renames and refactoring. It seems to be very tedious to do. Can we stick to existing commit? I can write down parts/files that had been added as new implementation. Will that be sufficient or I this is unacceptable and I need to rewrite? To be honest new implementation is a quite small piece. Most of the code is refactoring.

aborisovich avatar Jul 11 '22 13:07 aborisovich

You could start by listing the number of questions your PR is answering. In the spirit of process: each commit shall be atomic - provide an answer to a single question.

crojewsk-intel avatar Jul 11 '22 17:07 crojewsk-intel

Good page, nice and short: https://wiki.openstack.org/wiki/GitCommitMessages#Structural_split_of_changes

marc-hb avatar Jul 11 '22 20:07 marc-hb

You could start by listing the number of questions your PR is answering. In the spirit of process: each commit shall be atomic - provide an answer to a single question.

Good page, nice and short: https://wiki.openstack.org/wiki/GitCommitMessages#Structural_split_of_changes

Guys I am not doing it from yesterday ok? I know how it should look like. I said that it is tedious to split it now to commits, but ok I will spend that time doing it if you insist. That being said, I am doing this for reviewers convenience only, because necessity of this "split" is very subjective. Refactoring/renames of "common CAVS" to "common INTEL_ADSP" makes no sense without introduction of new IPC for ACE. It will look like that I just change names for CAVS SoC to my liking. That is why it does make sense that this is done in single commit. But ok I will split it for your convenience.

aborisovich avatar Jul 12 '22 19:07 aborisovich

Split PR onto two commits:

  • containing refactorings done with good description on content
  • adding IPC implementation for ACE1X SoC

Removed Kconfig entries from drivers/ipc as @carlocaione and @nashif suggested.

aborisovich avatar Jul 12 '22 22:07 aborisovich

Push update:

  • removed IPC/IDC implementation for ACE SoC from this PR. It is no use to have it here waiting while it can not be tested. ACE implementation will be added after Meteorlake platform is upstreamed in SOF.
  • removed labels from devicetree as @nashif suggested
  • moved ipc registers back to SoC family headers

aborisovich avatar Aug 17 '22 15:08 aborisovich

Can we merge? It gets merge conflicts and needs rebases pretty fast...

aborisovich avatar Sep 02 '22 11:09 aborisovich