linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: thierry.reding@gmail.com (Thierry Reding)
To: linux-arm-kernel@lists.infradead.org
Subject: [GIT PULL 9/9] ARM: tegra: Default configuration updates for v4.3-rc1
Date: Fri, 11 Sep 2015 15:57:40 +0200	[thread overview]
Message-ID: <20150911135738.GA23109@ulmo.nvidia.com> (raw)
In-Reply-To: <55F2D995.50906@nvidia.com>

On Fri, Sep 11, 2015 at 02:39:33PM +0100, Jon Hunter wrote:
> 
> On 11/09/15 14:21, Thierry Reding wrote:
> > * PGP Signed by an unknown key
> > 
> > On Fri, Sep 11, 2015 at 02:15:00PM +0100, Jon Hunter wrote:
> >>
> >> On 11/09/15 13:38, Thierry Reding wrote:
> >>>> Old Signed by an unknown key
> >>>
> >>> On Fri, Sep 11, 2015 at 11:39:01AM +0100, Jon Hunter wrote:
> >>>> Hi Kevin,
> >>>>
> >>>> On 10/09/15 22:29, Kevin Hilman wrote:
> >>>>
> >>>> [snip]
> >>>>
> >>>>> Since there is no movement on this, and jetson hasn't been boot for
> >>>>> multi_v7_defconfig for a while[1], I think it's time to undo the
> >>>>> option causing this problem[2] so that v4.3 will actually boot on the
> >>>>> jetson.
> >>>>>
> >>>>> Unless I hear a good reason otherwise, I'll be posting a patch to
> >>>>> disable the HDA related options in multi_v7_defconfig.
> >>>>
> >>>> So curiosity got the better of this cat, as to why we are not seeing
> >>>> this ;-)
> >>>>
> >>>> The main difference I see between the tegra_defconfig and 
> >>>> multi_v7_defconfig is all the sound drivers are modules (including 
> >>>> this one).
> >>>>
> >>>> So trying a quick modprobe of the hda-tegra driver I do see it hang ...
> >>>>
> >>>> / # modprobe snd-hda-tegra
> >>>> [  625.213864] snd_hda_tegra: Unknown symbol azx_probe_codecs (err 0)
> >>>> [  625.220215] snd_hda_tegra: Unknown symbol azx_init_streams (err 0)
> >>>> [  625.226480] snd_hda_tegra: Unknown symbol azx_stop_all_streams (err 0)
> >>>> [  625.233168] snd_hda_tegra: Unknown symbol azx_bus_init (err 0)
> >>>> [  625.239062] snd_hda_tegra: Unknown symbol azx_free_streams (err 0)
> >>>> [  625.245314] snd_hda_tegra: Unknown symbol azx_init_chip (err 0)
> >>>> [  625.251321] snd_hda_tegra: Unknown symbol snd_hda_set_power_save (err 0)
> >>>> [  625.258081] snd_hda_tegra: Unknown symbol azx_stop_chip (err 0)
> >>>> [  625.264078] snd_hda_tegra: Unknown symbol azx_codec_configure (err 0)
> >>>> [  625.270607] snd_hda_tegra: Unknown symbol azx_interrupt (err 0)
> >>>> [  840.117528] INFO: task modprobe:137 blocked for more than 120 seconds.
> >>>> [  840.124192]       Not tainted 4.2.0-next-20150909-40826-gb799053 #1
> >>>> [  840.130584] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
> >>>> [  840.138540] modprobe        D c09ac3a4     0   137     82 0x00000000
> >>>> [  840.145123] [<c09ac3a4>] (__schedule) from [<c09ac838>] (schedule+0x34/0x98)
> >>>> [  840.152310] [<c09ac838>] (schedule) from [<c09acaac>] (schedule_preempt_disabled+0xc/0x10)
> >>>> [  840.160734] [<c09acaac>] (schedule_preempt_disabled) from [<c09adeec>] (__mutex_lock_slowpath+0x9c/0x150)
> >>>> [  840.170458] [<c09adeec>] (__mutex_lock_slowpath) from [<c09adfec>] (mutex_lock+0x4c/0x50)
> >>>> [  840.178807] [<c09adfec>] (mutex_lock) from [<c062999c>] (__driver_attach+0x44/0x90)
> >>>> [  840.186627] [<c062999c>] (__driver_attach) from [<c0627fcc>] (bus_for_each_dev+0x54/0x88)
> >>>> [  840.194966] [<c0627fcc>] (bus_for_each_dev) from [<c0628f88>] (bus_add_driver+0xe4/0x1f0)
> >>>> [  840.203305] [<c0628f88>] (bus_add_driver) from [<c062a1d0>] (driver_register+0x78/0xf4)
> >>>> [  840.211475] [<c062a1d0>] (driver_register) from [<c020ac04>] (do_one_initcall+0x80/0x1d0)
> >>>> [  840.219818] [<c020ac04>] (do_one_initcall) from [<c02c8abc>] (do_init_module+0x58/0x354)
> >>>> [  840.228081] [<c02c8abc>] (do_init_module) from [<c02afae8>] (load_module+0x17e0/0x1d8c)
> >>>> [  840.236258] [<c02afae8>] (load_module) from [<c02b016c>] (SyS_init_module+0xd8/0x138)
> >>>> [  840.244260] [<c02b016c>] (SyS_init_module) from [<c0210b00>] (ret_fast_syscall+0x0/0x3c)
> >>>>
> >>>> Adding some debug it appears to hang on snd-hda-codec-hdmi  (the following show
> >>>> the order in which modules are being loaded) ...
> >>>>
> >>>> / # modprobe snd-hda-tegra
> >>>> [   22.450276] snd_hda_tegra: err = -2
> >>>> [   22.484535] soundcore: err = 0
> >>>> [   22.488964] snd: err = 0
> >>>> [   22.493242] snd_timer: err = 0
> >>>> [   22.498380] snd_pcm: err = 0
> >>>> [   22.502479] snd_hda_core: err = 0
> >>>> [   22.508337] snd_hda_codec: err = 0
> >>>> [   22.513386] snd_hda_tegra: err = 0
> >>>> [   22.740216] snd_hda_codec_hdmi: err = 0
> >>>>
> >>>> [hangs here]
> >>>>
> >>>> However, if I do the following, this works ...
> >>>>
> >>>> / # modprobe snd-hda-codec-hdmi
> >>>> / # modprobe snd-hda-tegra
> >>>>
> >>>> So it implies that snd-hda-codec-hdmi needs to be loaded first otherwise it hangs.
> >>>>
> >>>> Thierry, any thoughts?
> >>>
> >>> I can't reproduce this. Booting multi_v7_defconfig on my setup works
> >>> just fine. I don't ever see snd-hda-codec-hdmi being probed, but then
> >>> probing it manually works fine. No hangs.
> >>
> >> To be clear, booting multi_v7_defconfig works just fine for me too and
> >> has been working fine for months. However, the reason I am not seeing
> >> the issue Kevin and Tyler are reporting is because I never attempt to
> >> "modprobe snd-hda-tegra" after boot. If I do then I see a hang. So I
> >> believe the only reason we don't see this is because their setup is
> >> loading modules.
> > 
> > snd-hda-tegra is auto-loaded on boot for me as well and I don't see any
> > hangs either. I can also unload and reload the module just fine. I've
> > tested this on next-20150911.
> 
> What else are you auto-loading? For my testing there appears to be a
> sensitivity to order outside of the depmod order.
> 
> Can you try unloading all the sound modules and then do a "modprobe
> snd-hda-tegra"?

Here's the list of loaded modules right after boot:

	-sh-4.3# lsmod
	Module                  Size  Used by
	snd_hda_tegra           4764  0 
	snd_hda_codec_hdmi     35010  1 
	snd_soc_tegra30_i2s     5380  2 
	snd_soc_tegra_pcm       1184  1 snd_soc_tegra30_i2s
	snd_soc_tegra_rt5640     3960  0 
	snd_soc_rt5640         56972  1 
	snd_soc_tegra_utils     2825  1 snd_soc_tegra_rt5640
	snd_soc_rl6231          1897  1 snd_soc_rt5640
	snd_soc_core          107271  4
	snd_soc_tegra_pcm,snd_soc_rt5640,snd_soc_tegra_rt5640,snd_soc_tegra30_i2s
	snd_hda_codec          75955  2 snd_hda_codec_hdmi,snd_hda_tegra
	snd_compress            7363  1 snd_soc_core
	snd_hda_core           26603  3
	snd_hda_codec_hdmi,snd_hda_codec,snd_hda_tegra
	snd_pcm_dmaengine       2943  1 snd_soc_core
	snd_pcm                69108  7
	snd_soc_rt5640,snd_soc_core,snd_hda_codec_hdmi,snd_hda_codec,snd_hda_tegra,snd_pcm_dmaengine,snd_hda_core
	snd_timer              17264  1 snd_pcm
	snd_soc_tegra30_ahub     8299  1 snd_soc_tegra30_i2s
	snd                    42248  7
	snd_soc_core,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_hda_codec,snd_hda_tegra,snd_compress
	nouveau              1302185  0 
	soundcore                858  1 snd
	tegra_devfreq           5375  0 
	ttm                    65238  1 nouveau

Then I went and unloaded a couple of modules until I was left with this:

	-sh-4.3# lsmod
	Module                  Size  Used by
	nouveau              1302185  0 
	tegra_devfreq           5375  0 
	ttm                    65238  1 nouveau

Then I did the following:

	-sh-4.3# modprobe snd-hda-tegra
	[ 2243.786143] hdaudio hdaudioC0D3: Unable to bind the codec
	-sh-4.3# lsmod
	Module                  Size  Used by
	snd_hda_tegra           4764  0 
	snd_hda_codec          75955  1 snd_hda_tegra
	snd_hda_core           26603  2 snd_hda_codec,snd_hda_tegra
	snd_pcm                69108  3 snd_hda_codec,snd_hda_tegra,snd_hda_core
	snd_timer              17264  1 snd_pcm
	snd                    42248  4 snd_timer,snd_pcm,snd_hda_codec,snd_hda_tegra
	soundcore                858  1 snd
	nouveau              1302185  0 
	tegra_devfreq           5375  0 
	ttm                    65238  1 nouveau
	-sh-4.3# modprobe snd-hda-codec-hdmi
	-sh-4.3# modprobe -r snd-hda-tegra
	-sh-4.3# modprobe snd-hda-tegra
	[ 2263.934328] input: tegra-hda HDMI/DP,pcm=3 as /devices/soc0/70030000.hda/sound/card0/input4

So all worked just fine.

Thierry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150911/04b503b1/attachment.sig>

  reply	other threads:[~2015-09-11 13:57 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-14 14:48 [GIT PULL 0/9] ARM: tegra: Changes for v4.3-rc1 Thierry Reding
2015-08-14 14:48 ` [GIT PULL 1/9] clk: " Thierry Reding
2015-08-25 23:43   ` Stephen Boyd
2015-08-14 14:48 ` [GIT PULL 2/9] pinctrl: " Thierry Reding
2015-08-14 14:48 ` [GIT PULL 3/9] ARM: tegra: Cleanup patches " Thierry Reding
2015-08-21  1:42   ` Olof Johansson
2015-08-14 14:48 ` [GIT PULL 4/9] ARM: tegra: Core SoC changes " Thierry Reding
2015-08-21  1:45   ` Olof Johansson
2015-08-14 14:48 ` [GIT PULL 5/9] ARM: tegra: CPU frequency scaling " Thierry Reding
2015-08-21  1:47   ` Olof Johansson
2015-08-14 14:48 ` [GIT PULL 6/9] iommu/tegra-smmu: Changes " Thierry Reding
2015-08-17 12:40   ` Joerg Roedel
2015-08-14 14:48 ` [GIT PULL 7/9] ARM: tegra: Memory controller updates " Thierry Reding
2015-08-21  1:57   ` Olof Johansson
2015-08-14 14:48 ` [GIT PULL 8/9] ARM: tegra: Devicetree changes " Thierry Reding
2015-08-21  1:58   ` Olof Johansson
2015-08-21 16:09     ` Olof Johansson
2015-08-21 16:27       ` Jon Hunter
2015-08-21 16:33         ` Olof Johansson
2015-08-21 16:52   ` [GIT PULL 8/9] ARM: tegra: Devicetree changes for v4.3-rc1 (updated) Thierry Reding
2015-08-21 17:16     ` Olof Johansson
2015-08-14 14:48 ` [GIT PULL 9/9] ARM: tegra: Default configuration updates for v4.3-rc1 Thierry Reding
2015-08-18 22:30   ` Tyler Baker
2015-08-19  9:14     ` Thierry Reding
2015-08-19  9:48       ` Sjoerd Simons
2015-08-19 10:33         ` Thierry Reding
2015-08-19 16:48           ` Tyler Baker
2015-09-03 23:08           ` Tyler Baker
2015-09-10 21:29             ` Kevin Hilman
2015-09-11 10:39               ` Jon Hunter
2015-09-11 11:04                 ` Jon Hunter
2015-09-11 12:38                 ` Thierry Reding
2015-09-11 13:10                   ` Jon Hunter
2015-09-11 13:25                     ` Thierry Reding
2015-09-11 13:43                       ` Jon Hunter
2015-09-11 15:51                       ` Jon Hunter
2015-09-11 15:59                         ` Thierry Reding
2015-09-11 16:33                           ` Thierry Reding
2015-09-11 17:08                             ` Kevin Hilman
2015-09-17 10:26                               ` Thierry Reding
2015-09-11 13:15                   ` Jon Hunter
2015-09-11 13:21                     ` Thierry Reding
2015-09-11 13:39                       ` Jon Hunter
2015-09-11 13:57                         ` Thierry Reding [this message]
2015-09-11 14:08                           ` Jon Hunter
2015-08-19 20:36       ` Olof Johansson
2015-08-19 11:15     ` Mikko Perttunen
2015-08-19 16:50       ` Tyler Baker
2015-08-21  2:00   ` Olof Johansson
2015-08-21  2:39     ` Tyler Baker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150911135738.GA23109@ulmo.nvidia.com \
    --to=thierry.reding@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).