Skip to content
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

Intel_adsp_ace1x: Meteorlake board upstream #46323

Merged
merged 21 commits into from
Jul 6, 2022

Conversation

aborisovich
Copy link
Collaborator

@aborisovich aborisovich commented Jun 6, 2022

Publishing new ACE1X SoC Meteorlake board.
This set of commits is related to board and hardware definitions.
Note for reviewers:

  • This PR is a "first half" of the upstream process. It contains zephyr board, soc and hardware characteristics.
  • Second part will be published later - it will contain drivers code.

@mwasko
Copy link
Collaborator

mwasko commented Jun 7, 2022

@aborisovich there is a lot of commits that require squash in this PR. All the renames, remove commits are irrelevant information on the upstream. Similar apply to some minor changes related to board files and ACE 1.x SoC.

mwasko
mwasko previously requested changes Jun 7, 2022
Copy link
Collaborator

@mwasko mwasko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please clean up commits and squash irrelevant ones.

Copy link
Collaborator

@mwasko mwasko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@aborisovich will the Meteorlake board compile without the configuration file? If not then it should be part of the Meteorlake board commit.

Copy link
Collaborator

@kv2019i kv2019i left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @aborisovich ! Overall looks good. Aside a few minor issues, bigger issues are shared definitions with cAVSxx (either clean up the old one, or use common header for common parts), and what we do with xtensa/config.

soc/xtensa/intel_adsp/ace_v1x/Kconfig.soc Outdated Show resolved Hide resolved
soc/xtensa/intel_adsp/ace_v1x/cavs-ipc-regs.h Outdated Show resolved Hide resolved
soc/xtensa/intel_adsp/ace_v1x/cavs-ipc-regs.h Outdated Show resolved Hide resolved
soc/xtensa/intel_adsp/ace_v1x/cavs-ipc-regs.h Outdated Show resolved Hide resolved
soc/xtensa/intel_adsp/ace_v1x/multiprocessing.c Outdated Show resolved Hide resolved
soc/xtensa/intel_adsp/ace_v1x/xtensa/config/core-isa.h Outdated Show resolved Hide resolved
@aborisovich aborisovich force-pushed the mtl-board-upstream branch from a292717 to 2da3178 Compare June 9, 2022 20:01
@marc-hb marc-hb removed their request for review June 10, 2022 01:31
@aborisovich aborisovich force-pushed the mtl-board-upstream branch 3 times, most recently from 3dd89eb to f1c8b79 Compare June 10, 2022 10:02
@aborisovich aborisovich marked this pull request as ready for review June 10, 2022 10:02
@aborisovich aborisovich requested a review from galak as a code owner June 10, 2022 10:02
nashif and others added 17 commits July 6, 2022 18:13
This will add ace compatible DMA driver.

Co-authored-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Meteorlake support as part of the Intel ADSP family.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Co-authored-by: Michal Wasko <michal.wasko@intel.com>
Co-authored-by: Konrad Leszczynski <konrad.leszczynski@intel.com>
Co-authored-by: Rafal Redzimski <rafal.f.redzimski@intel.com>
Co-authored-by: Enjia Mai <enjia.mai@intel.com>
Co-authored-by: Flavio Ceolin <flavio.ceolin@intel.com>
Co-authored-by: Tomasz Leman <tomasz.m.leman@intel.com>
Co-authored-by: Bonislawski Adrian <adrian.bonislawski@intel.com>
Co-authored-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
Co-authored-by: Andrey Borisovich <andrey.borisovich@intel.com>
Board definition for the meteorlake platform.
Enable intel_adsp_ace15_mtpm in the sof sample.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Co-authored-by: Michal Wasko <michal.wasko@intel.com>
Co-authored-by: Konrad Leszczynski <konrad.leszczynski@intel.com>
Add ace/mtl rom flags definitions.
Set the flags in battr to indicate to rom that it should execute
secondary core procedure.

Signed-off-by: Rafal Redzimski <rafal.f.redzimski@intel.com>
Co-authored-by: Andrey Borisovich <andrey.borisovich@intel.com>
Poll for CPA bit by which HW confirms that the core has been powered up.

Signed-off-by: Rafal Redzimski <rafal.f.redzimski@intel.com>
Co-authored-by: Tomasz Leman <tomasz.m.leman@intel.com>
Co-authored-by: Andrey Borisovich <andrey.borisovich@intel.com>
Align CONFIG_HEAP_MEM_POOL_SIZE & CONFIG_DAI with ace hardware.

Signed-off-by: Arsen Eloglian <ArsenX.Eloglian@intel.com>
This patch add soc_adsp_halt_cpu implementation for ace. Function disable
power and check CPA status to report success. Function should be used only
for secondary cores and can be executed only from primary core.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
This patch implements pm_state_set function for ACE platforms.

This is initial implementation and only includes the basic handling of
PM_STATE_SOFT_OFF.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
Implementation of the function used during the exit from the lower power
states.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
Do not duplicate code in new SoC and reuse code from intel_adsp/common.
Move SRAM code into own file in common code and setup SRAM in soc for
MTL platform.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Provided register names to hardcoded addresses in ace_v1x-regs
header.

Signed-off-by: Andrey Borisovich <andrey.borisovich@intel.com>
These two timers were sharing pretty much the same code. Actually
mtl timer was a "superset" of cavs timer. Just merge them into a
single one called intel audio dsp timer (intel_adsp_timer).

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Move power management hooks to its own C file.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Properly prefixing some include files with "zephyr", also organizing
the order they are included.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
General code style fixes.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Updated hal_xtensa module with new xtensa definitions
for intel_adsp_ace1x soc family.

Signed-off-by: Andrey Borisovich <andrey.borisovich@intel.com>
Replaced hardcoded for intel_adsp_ace15_mtpm board
HP_MEMORY_BANKS value used in SOF code with generic approach -
using PLATFORM_HPSRAM_EBB_COUNT read from Devicetree.

Signed-off-by: Andrey Borisovich <andrey.borisovich@intel.com>
@aborisovich aborisovich force-pushed the mtl-board-upstream branch from c182472 to d83138e Compare July 6, 2022 16:13
@aborisovich
Copy link
Collaborator Author

Push update:
As @dcpleung noticed IMR driver source file was not compiled and had errors when enabled.
Removed IMR driver from this PR.

@ceolin ceolin requested a review from dcpleung July 6, 2022 16:18
Header soc.h is included during C++ source file compilation
and required adding C++ casts as implicit casting from void*
is forbidden. Fixed minor warning comparing signed with unsigned
integer.

Signed-off-by: Andrey Borisovich <andrey.borisovich@intel.com>
@aborisovich aborisovich force-pushed the mtl-board-upstream branch from d83138e to a132e5d Compare July 6, 2022 18:05
@nashif
Copy link
Member

nashif commented Jul 6, 2022

net test failure unrelated,

@nashif nashif merged commit e0b1d81 into zephyrproject-rtos:main Jul 6, 2022
@marc-hb
Copy link
Collaborator

marc-hb commented Jul 7, 2022

Most SOF testing is failing today with Zephyr commit 2d54229 example: https://sof-ci.01.org/linuxpr/PR3742/build343/devicetest/

(non-Zephyr tests are fine)

@marc-hb
Copy link
Collaborator

marc-hb commented Jul 7, 2022

My bad, the last successful SOF daily testing (test run 13760 yesterday) was with commit e0b1d81 which happens to be the last commit of this series. Sorry for the noise!

The current suspect is now @ceolin 's "simplify PM" 158a870...

@marc-hb
Copy link
Collaborator

marc-hb commented Jul 8, 2022

and the winner is....

Apologies to @ceolin , I would have never expected a one-line CMake change to have such a devastating run-time impact so the only other actual xtensa code change was the only (and wrong) suspect left.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.