Re: [PATCH 00/13] soundwire: intel: add power management support

From: Pierre-Louis Bossart
Date: Mon Aug 17 2020 - 10:46:30 EST




On 8/17/20 7:08 AM, Vinod Koul wrote:
On 22-07-20, 04:37, Bard Liao wrote:
This series adds power management support for Intel soundwire links.

I had applied except 3 & 9 (few skipped in middle due to conflict while
applying), BUT I get a build failure on patch 2 onwards :(

drivers/soundwire/intel_init.c: In function ‘sdw_intel_cleanup’:
drivers/soundwire/intel_init.c:72:4: error: implicit declaration of function ‘pm_runtime_disable’ [-Werror=implicit-function-declaration]
72 | pm_runtime_disable(&link->pdev->dev);

I suspect due to missing header? I was on x64 build with allmodconfig

So only patch 1 is applied and pushed now

I just tried on these series applied on top of soundwire/next

commit 9b3b4b3f2f2af863d2f6dd65afd295a5a673afa2 (soundwire/next)

soundwire: intel: Add basic power management support

And I don't see any issue?

If you want to double-check merge issues, I pushed the code here: https://github.com/plbossart/sound/tree/sdw/pm_runtime_soundwire_next

I am really not sure what conflicts you are referring to, git am worked fine for me, only skipped the first patch that's already applied.

$git am ~/Downloads/alsa/122/\[PATCH\ *
Applying: soundwire: intel: Add basic power management support
error: patch failed: drivers/soundwire/intel.c:463
error: drivers/soundwire/intel.c: patch does not apply
Patch failed at 0001 soundwire: intel: Add basic power management support
hint: Use 'git am --show-current-patch' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
$ git am --skip
Applying: soundwire: intel: add pm_runtime support
Applying: soundwire: intel: reset pm_runtime status during system resume
Applying: soundwire: intel: fix race condition on system resume
Applying: soundwire: intel: call helper to reset Slave states on resume
Applying: soundwire: intel: reinitialize IP+DSP in .prepare(), but only when resuming
Applying: soundwire: intel: pm_runtime idle scheduling
Applying: soundwire: intel: add CLK_STOP_TEARDOWN for pm_runtime suspend
Applying: soundwire: intel: add CLK_STOP_BUS_RESET support
Applying: soundwire: intel: add CLK_STOP_NOT_ALLOWED support
Applying: soundwire: intel_init: handle power rail dependencies for clock stop mode
Applying: soundwire: intel: support clock_stop mode without quirks
Applying: soundwire: intel: refine runtime pm for SDW_INTEL_CLK_STOP_BUS_RESET

I tried the compilation twice, once with our default SOF config and once with allmodconfig.

make drivers/soundwire/ W=1
GEN Makefile
YACC scripts/genksyms/parse.tab.[ch]
/data/pbossart/ktest/broonie-next/scripts/genksyms/parse.y: warning: 9 shift/reduce conflicts [-Wconflicts-sr]
/data/pbossart/ktest/broonie-next/scripts/genksyms/parse.y: warning: 5 reduce/reduce conflicts [-Wconflicts-rr]
HOSTCC scripts/genksyms/parse.tab.o
HOSTCC scripts/genksyms/lex.lex.o
HOSTLD scripts/genksyms/genksyms
CC scripts/mod/empty.o
MKELF scripts/mod/elfconfig.h
HOSTCC scripts/mod/modpost.o
CC scripts/mod/devicetable-offsets.s
HOSTCC scripts/mod/file2alias.o
HOSTCC scripts/mod/sumversion.o
HOSTLD scripts/mod/modpost
CC kernel/bounds.s
CC arch/x86/kernel/asm-offsets.s
CALL /data/pbossart/ktest/broonie-next/scripts/checksyscalls.sh
CALL /data/pbossart/ktest/broonie-next/scripts/atomic/check-atomics.sh
DESCEND objtool
CC [M] drivers/soundwire/bus_type.o
CC [M] drivers/soundwire/bus.o
CC [M] drivers/soundwire/master.o
CC [M] drivers/soundwire/slave.o
CC [M] drivers/soundwire/mipi_disco.o
CC [M] drivers/soundwire/stream.o
CC [M] drivers/soundwire/sysfs_slave.o
CC [M] drivers/soundwire/sysfs_slave_dpn.o
CC [M] drivers/soundwire/debugfs.o
LD [M] drivers/soundwire/soundwire-bus.o
CC [M] drivers/soundwire/cadence_master.o
LD [M] drivers/soundwire/soundwire-cadence.o
CC [M] drivers/soundwire/intel.o
CC [M] drivers/soundwire/intel_init.o
LD [M] drivers/soundwire/soundwire-intel.o
CC [M] drivers/soundwire/qcom.o
LD [M] drivers/soundwire/soundwire-qcom.o