Skip to content

ICL ICCMAX support - #2548

Merged
kv2019i merged 5 commits into
thesofproject:topic/sof-devfrom
fredoh9:fix/icl_iccmax
Nov 16, 2020
Merged

ICL ICCMAX support#2548
kv2019i merged 5 commits into
thesofproject:topic/sof-devfrom
fredoh9:fix/icl_iccmax

Conversation

@fredoh9

@fredoh9fredoh9 commented Oct 31, 2020

Copy link
Copy Markdown
Collaborator

Updated Nov 2,
First 3 commits are from PR 2297. Last a commit is for ICL ICCMAX support change.

Updated Nov 3,
First 3 commits are from PR 2297. Last four commits are for ICL ICCMAX support change.

For last commit, for explicit header inclusion. This is the right header required. This is valid style compliance fix per Documentation/process/submit-checklist.rst.

#include <linux/kernel.h>	// ARRAY_SIZE
#include <linux/kconfig.h>	// IS_ENABLED, CONFIG_
#include <linux/export.h>	// EXPORT_SYMBOL_
#include <linux/bits.h> // GENMASK, BIT
#include <linux/module.h>	// MODULE_

Updated Nov 4,
Dropped symatrical changes for other dsp interface.
Re-ordered and combining commits. Now last two are ICL ICCMAX change.

Comment threadsound/soc/sof/intel/icl.c Outdated
Comment threadsound/soc/sof/ops.h
Comment threadsound/soc/sof/intel/icl.c Outdated
Comment threadsound/soc/sof/intel/icl.c Outdated
Comment threadsound/soc/sof/intel/ext_manifest.h

@kv2019ikv2019i left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks @fredoh9 ! Could we run some stress tests whether this PR helps with thesofproject/sof#3395 ? It would be really useful info and help to prioritize this PR.

Comment threadsound/soc/sof/intel/ext_manifest.h
Comment threadsound/soc/sof/intel/icl.c Outdated
Comment threadsound/soc/sof/sof-priv.h Outdated
@fredoh9fredoh9 changed the title [WIP] ICL ICCMAX supportICL ICCMAX supportNov 2, 2020
@fredoh9

Copy link
Copy Markdown
CollaboratorAuthor

Thanks @fredoh9 ! Could we run some stress tests whether this PR helps with thesofproject/sof#3395 ? It would be really useful info and help to prioritize this PR.

I will run stress-test with this PR. I'm also curious about the result.

Comment threadsound/soc/sof/intel/hda-loader.c Outdated
@fredoh9

Copy link
Copy Markdown
CollaboratorAuthor

I'm able to reproduce same error with the DEVICE TEST failure on ICL RVP. Looking at it.

jf-icl-rvp-hda-4 kernel: [ 5.405310] sof-audio-pci 0000:00:1f.3: error: ipc timed out for 0x90030000 size 80
jf-icl-rvp-hda-4 kernel: [ 5.405314] sof-audio-pci 0000:00:1f.3: info: preventing DSP entering D3 state to preserve context
jf-icl-rvp-hda-4 kernel: [ 5.405335] sof-audio-pci 0000:00:1f.3: status: fw entered - code 00000005
jf-icl-rvp-hda-4 kernel: [ 5.405512] sof-audio-pci 0000:00:1f.3: error: unexpected fault 0x00000000 trace 0x00004000
jf-icl-rvp-hda-4 kernel: [ 5.405521] sof-audio-pci 0000:00:1f.3: error: hda irq intsts 0x00000000 intlctl 0xc0000000 rirb 00
jf-icl-rvp-hda-4 kernel: [ 5.405522] sof-audio-pci 0000:00:1f.3: error: dsp irq ppsts 0x00000000 adspis 0x00000000
jf-icl-rvp-hda-4 kernel: [ 5.405529] sof-audio-pci 0000:00:1f.3: error: host status 0x00000000 dsp status 0x00000000 mask 0x00000003
jf-icl-rvp-hda-4 kernel: [ 5.405530] sof-audio-pci 0000:00:1f.3: error: can't set params for DMA for trace -110
jf-icl-rvp-hda-4 kernel: [ 5.405556] sof-audio-pci 0000:00:1f.3: warning: failed to initialize trace -110

Comment threadsound/soc/sof/intel/hda-loader.c Outdated
Comment threadsound/soc/sof/intel/hda-loader.c
Comment threadsound/soc/sof/intel/hda-loader.c Outdated
Comment threadsound/soc/sof/intel/hda-loader.c Outdated
Comment threadsound/soc/sof/intel/icl.c Outdated
@fredoh9
fredoh9force-pushed the fix/icl_iccmax branch 2 times, most recently from d610910 to ab2ec32CompareNovember 5, 2020 23:34
ranj063
ranj063 previously approved these changes Nov 6, 2020

@ranj063ranj063 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM. Thanks @fredoh9 for being patient.

abonislawski
abonislawski previously approved these changes Nov 6, 2020

@kv2019ikv2019i left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks @fredoh9 ! This indeed starts to look. I'll leave a bit more time to double-check before giving my approval. I left a few notes inline already now.

Comment threadsound/soc/sof/intel/hda-loader.c Outdated
@@ -8,7 +8,7 @@ snd-sof-intel-ipc-objs := intel-ipc.o
snd-sof-intel-hda-common-objs := hda.o hda-loader.o hda-stream.o hda-trace.o \

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Btw, @ranj063 and @fredoh9 -- while ICCMAX is somewhat known as a concept, in this case this is a very specific and non-obvious quirk of our DSP bootflow. I won't complain now as the same text is already merged for TGL in upstream, but the commit message is not very helpful for people outside SOF project. But yeah, I'm ok to go with this The bit about "recommended hw programming sequence" is key and it's there...

Comment threadsound/soc/sof/intel/ext_manifest.h Outdated
@fredoh9

Copy link
Copy Markdown
CollaboratorAuthor

@ranj063 I lost your approval after addressing Kai's comment.
@plbossart@kv2019i do you have any comment or concern?

ranj063
ranj063 previously approved these changes Nov 10, 2020

@kv2019ikv2019i left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks @fredoh9 ! Code looks good now and seems to align as expected with merged FW.

I do not three warnings about lines over 100 columns in checkpatch. Please address these.

@fredoh9

Copy link
Copy Markdown
CollaboratorAuthor

I do not three warnings about lines over 100 columns in checkpatch. Please address these.

Sure, I will address that now!

Add parse_platform_ext_manifest() op to parse platform-specific config
data in the extended manifest.
Signed-off-by: Fred Oh <fred.oh@linux.intel.com>
Define the parse_platform_ext_manifest() op for HDA platforms to parse
the SOF_EXT_MAN_CAVS_CONFIG_CAVS_LPRO config item to determine if the FW
is configured for LPRO. The default clock configuration is assumed to be
HPRO in the absence of this item in the extended manifest.
New member clk_config_lpro is added to struct sof_intel_hda_dev to store
the FW clock config information and that this will be used later to perform
platform-specific operations in the post_fw_run op.
Signed-off-by: Fred Oh <fred.oh@linux.intel.com>
OUTBOX_SIZE, INBOX_SIZE are defined but not being used yet. Handle
these elements to avoid warning about unknown token type.
Signed-off-by: Fred Oh <fred.oh@linux.intel.com>
Modify the signature of stall op to specify core_mask to stall cores.
Signed-off-by: Fred Oh <fred.oh@linux.intel.com>
Separate the dsp ops for ICL ops to specify the use of ICCMAX
FW boot sequence in the run op. All other ops are identical with TGL
except post_fw_run. The recommended HW programming sequence for ICL
is to power up core 3 and keep it in stall if HPRO is enabled.
Signed-off-by: Fred Oh <fred.oh@linux.intel.com>

@kv2019ikv2019i left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks @fredoh9 !

@kv2019i

Copy link
Copy Markdown
Collaborator

Ping @plbossart , you still have changes requested. Otherwise, I'm ready to press merge on this.

@plbossartplbossart left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@kv2019i I don't know what this fixes or improves, and the code looks good enough so I'll let you merge if you think it's fine.

@kv2019i
kv2019i merged commit 6dd92d1 into thesofproject:topic/sof-devNov 16, 2020
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@fredoh9@kv2019i@ranj063@plbossart@lyakh@RanderWang@abonislawski@marc-hb