All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Gerlach <d-gerlach@ti.com>
To: Suman Anna <s-anna@ti.com>,
	Kishon Vijay Abraham I <kishon@ti.com>,
	Paul Walmsley <paul@pwsan.com>, Tony Lindgren <tony@atomide.com>,
	<bhelgaas@google.com>, <richardcochran@gmail.com>
Cc: Russell King <linux@arm.linux.org.uk>,
	<linux-omap@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>, <bcousson@baylibre.com>,
	<nsekhar@ti.com>
Subject: Re: [PATCH 0/3] omap: hwmod: add default reset handling support
Date: Tue, 9 Feb 2016 14:19:32 -0600	[thread overview]
Message-ID: <56BA49D4.8040900@ti.com> (raw)
In-Reply-To: <56BA258D.3040002@ti.com>

Hi,
On 02/09/2016 11:44 AM, Suman Anna wrote:
> On 02/08/2016 11:17 PM, Kishon Vijay Abraham I wrote:
>> Hi,
>>
>> On Tuesday 09 February 2016 02:37 AM, Suman Anna wrote:
>>> On 02/08/2016 05:12 AM, Kishon Vijay Abraham I wrote:
>>>> Add a new hwmod flag to indicate custom reset handling and use it
>>>> for devices that require custom reset handling (like dsp, ipu, iva).
>>>>
>>>> Tested PCIe on dra7-evm and dra72-evm.
>>>> I need help in testing DSP, IPU, IVA, PRU, GFX, M3 in other platforms.
>>>> Or a way to test these cores to see if reset is not broken. Suman?
>>>
>>> I won't be able to test this week, and have requested Dave to check on
>>> wkup_m3_rproc driver atleast. I see one potential issue (see my commment
>>> on the other thread), but can confirm that only after testing.
>>>
>>> Have you tested multiple probe/removal sequences? Can you check the
>>> return status on the _hardreset_deassert call with your PCIe driver,
>>> believe even that one would return an error on multiple probes.
>>
>> hmm.. the PCIe driver is built-in and can't be made as module because of other
>> issues in PCIe core. But looks like the first deassert succeeded since I didn't
>> observe the boot hang because of PCIe.
>
> You can try unbind and bind through sysfs, it should result in a remove
> and probe even if your driver is built-in.

Sorry got held up by the discussion here [1], that regression affects 
rmmod/re-insmod of wkup_m3_rproc as well. If I revert the guilty patch 
5de85b9d57ab ("PM / runtime: Re-init runtime
PM states at probe error and driver unbind") and apply these three 
patches, on initial probe of the wkup_m3_rproc and wkup_m3_ipc drivers 
in v4.5-rc3 I see:

[   15.593460] omap_hwmod: wkup_m3: _wait_target_disable failed

Which is triggered by the reset of the wkup_m3 from the wkup_m3_ipc 
driver when booting the wkup_m3_rproc. Flow is:

1. wkup_m3_rproc probes and calls pm_runtime_get_sync, which calls hwmod 
_enable but bails out because _are_all_hardreset_lines_asserted(oh) 
causes it to return 0.

2. wkup_m3_ipc probes and calls rproc_boot, which triggers 
omap_device_deassert_hardreset in order to let the wkup_m3 start.

It is inside the omap_device_deassert_hardreset ( and inside that, 
omap_hwmod_deassert_hardreset) where I end up with the error message, 
but after that rmmod/insmod of the module over and over again shows no 
additional error messages (at least with the above mentioned PM patch 
reverted).

Regards,
Dave

[1] http://www.spinics.net/lists/arm-kernel/msg477160.html

>
> regards
> Suman
>>>
>>>>
>>>> I'll post this series once again after performing these tests.
>>>>
>>>> Paul Walmsley (3):
>>>>    ARM: omap2+: omap_hwmod: introduce hwmod flag for custom reset
>>>>      handling
>>>>    ARM: OMAP2+: hwmod: use HWMOD_CUSTOM_HARDRESET for custom reset
>>>>      handling
>>>>    ARM: OMAP2+: hwmod: Add default reset handling
>>>>
>>>>   arch/arm/mach-omap2/omap_hwmod.c                   |   16 +++++++++++-----
>>>>   arch/arm/mach-omap2/omap_hwmod.h                   |   12 ++++++++++++
>>>>   arch/arm/mach-omap2/omap_hwmod_2420_data.c         |    2 ++
>>>>   arch/arm/mach-omap2/omap_hwmod_2430_data.c         |    1 +
>>>>   .../mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c |    2 ++
>>>>   arch/arm/mach-omap2/omap_hwmod_33xx_data.c         |    1 +
>>>>   arch/arm/mach-omap2/omap_hwmod_3xxx_data.c         |    3 +++
>>>>   arch/arm/mach-omap2/omap_hwmod_43xx_data.c         |    1 +
>>>>   arch/arm/mach-omap2/omap_hwmod_44xx_data.c         |    6 ++++++
>>>>   arch/arm/mach-omap2/omap_hwmod_54xx_data.c         |    2 ++
>>>>   10 files changed, 41 insertions(+), 5 deletions(-)
>>>>
>>>
>

WARNING: multiple messages have this Message-ID (diff)
From: Dave Gerlach <d-gerlach@ti.com>
To: Suman Anna <s-anna@ti.com>,
	Kishon Vijay Abraham I <kishon@ti.com>,
	Paul Walmsley <paul@pwsan.com>, Tony Lindgren <tony@atomide.com>,
	bhelgaas@google.com, richardcochran@gmail.com
Cc: Russell King <linux@arm.linux.org.uk>,
	linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, bcousson@baylibre.com,
	nsekhar@ti.com
Subject: Re: [PATCH 0/3] omap: hwmod: add default reset handling support
Date: Tue, 9 Feb 2016 14:19:32 -0600	[thread overview]
Message-ID: <56BA49D4.8040900@ti.com> (raw)
In-Reply-To: <56BA258D.3040002@ti.com>

Hi,
On 02/09/2016 11:44 AM, Suman Anna wrote:
> On 02/08/2016 11:17 PM, Kishon Vijay Abraham I wrote:
>> Hi,
>>
>> On Tuesday 09 February 2016 02:37 AM, Suman Anna wrote:
>>> On 02/08/2016 05:12 AM, Kishon Vijay Abraham I wrote:
>>>> Add a new hwmod flag to indicate custom reset handling and use it
>>>> for devices that require custom reset handling (like dsp, ipu, iva).
>>>>
>>>> Tested PCIe on dra7-evm and dra72-evm.
>>>> I need help in testing DSP, IPU, IVA, PRU, GFX, M3 in other platforms.
>>>> Or a way to test these cores to see if reset is not broken. Suman?
>>>
>>> I won't be able to test this week, and have requested Dave to check on
>>> wkup_m3_rproc driver atleast. I see one potential issue (see my commment
>>> on the other thread), but can confirm that only after testing.
>>>
>>> Have you tested multiple probe/removal sequences? Can you check the
>>> return status on the _hardreset_deassert call with your PCIe driver,
>>> believe even that one would return an error on multiple probes.
>>
>> hmm.. the PCIe driver is built-in and can't be made as module because of other
>> issues in PCIe core. But looks like the first deassert succeeded since I didn't
>> observe the boot hang because of PCIe.
>
> You can try unbind and bind through sysfs, it should result in a remove
> and probe even if your driver is built-in.

Sorry got held up by the discussion here [1], that regression affects 
rmmod/re-insmod of wkup_m3_rproc as well. If I revert the guilty patch 
5de85b9d57ab ("PM / runtime: Re-init runtime
PM states at probe error and driver unbind") and apply these three 
patches, on initial probe of the wkup_m3_rproc and wkup_m3_ipc drivers 
in v4.5-rc3 I see:

[   15.593460] omap_hwmod: wkup_m3: _wait_target_disable failed

Which is triggered by the reset of the wkup_m3 from the wkup_m3_ipc 
driver when booting the wkup_m3_rproc. Flow is:

1. wkup_m3_rproc probes and calls pm_runtime_get_sync, which calls hwmod 
_enable but bails out because _are_all_hardreset_lines_asserted(oh) 
causes it to return 0.

2. wkup_m3_ipc probes and calls rproc_boot, which triggers 
omap_device_deassert_hardreset in order to let the wkup_m3 start.

It is inside the omap_device_deassert_hardreset ( and inside that, 
omap_hwmod_deassert_hardreset) where I end up with the error message, 
but after that rmmod/insmod of the module over and over again shows no 
additional error messages (at least with the above mentioned PM patch 
reverted).

Regards,
Dave

[1] http://www.spinics.net/lists/arm-kernel/msg477160.html

>
> regards
> Suman
>>>
>>>>
>>>> I'll post this series once again after performing these tests.
>>>>
>>>> Paul Walmsley (3):
>>>>    ARM: omap2+: omap_hwmod: introduce hwmod flag for custom reset
>>>>      handling
>>>>    ARM: OMAP2+: hwmod: use HWMOD_CUSTOM_HARDRESET for custom reset
>>>>      handling
>>>>    ARM: OMAP2+: hwmod: Add default reset handling
>>>>
>>>>   arch/arm/mach-omap2/omap_hwmod.c                   |   16 +++++++++++-----
>>>>   arch/arm/mach-omap2/omap_hwmod.h                   |   12 ++++++++++++
>>>>   arch/arm/mach-omap2/omap_hwmod_2420_data.c         |    2 ++
>>>>   arch/arm/mach-omap2/omap_hwmod_2430_data.c         |    1 +
>>>>   .../mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c |    2 ++
>>>>   arch/arm/mach-omap2/omap_hwmod_33xx_data.c         |    1 +
>>>>   arch/arm/mach-omap2/omap_hwmod_3xxx_data.c         |    3 +++
>>>>   arch/arm/mach-omap2/omap_hwmod_43xx_data.c         |    1 +
>>>>   arch/arm/mach-omap2/omap_hwmod_44xx_data.c         |    6 ++++++
>>>>   arch/arm/mach-omap2/omap_hwmod_54xx_data.c         |    2 ++
>>>>   10 files changed, 41 insertions(+), 5 deletions(-)
>>>>
>>>
>

WARNING: multiple messages have this Message-ID (diff)
From: d-gerlach@ti.com (Dave Gerlach)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 0/3] omap: hwmod: add default reset handling support
Date: Tue, 9 Feb 2016 14:19:32 -0600	[thread overview]
Message-ID: <56BA49D4.8040900@ti.com> (raw)
In-Reply-To: <56BA258D.3040002@ti.com>

Hi,
On 02/09/2016 11:44 AM, Suman Anna wrote:
> On 02/08/2016 11:17 PM, Kishon Vijay Abraham I wrote:
>> Hi,
>>
>> On Tuesday 09 February 2016 02:37 AM, Suman Anna wrote:
>>> On 02/08/2016 05:12 AM, Kishon Vijay Abraham I wrote:
>>>> Add a new hwmod flag to indicate custom reset handling and use it
>>>> for devices that require custom reset handling (like dsp, ipu, iva).
>>>>
>>>> Tested PCIe on dra7-evm and dra72-evm.
>>>> I need help in testing DSP, IPU, IVA, PRU, GFX, M3 in other platforms.
>>>> Or a way to test these cores to see if reset is not broken. Suman?
>>>
>>> I won't be able to test this week, and have requested Dave to check on
>>> wkup_m3_rproc driver atleast. I see one potential issue (see my commment
>>> on the other thread), but can confirm that only after testing.
>>>
>>> Have you tested multiple probe/removal sequences? Can you check the
>>> return status on the _hardreset_deassert call with your PCIe driver,
>>> believe even that one would return an error on multiple probes.
>>
>> hmm.. the PCIe driver is built-in and can't be made as module because of other
>> issues in PCIe core. But looks like the first deassert succeeded since I didn't
>> observe the boot hang because of PCIe.
>
> You can try unbind and bind through sysfs, it should result in a remove
> and probe even if your driver is built-in.

Sorry got held up by the discussion here [1], that regression affects 
rmmod/re-insmod of wkup_m3_rproc as well. If I revert the guilty patch 
5de85b9d57ab ("PM / runtime: Re-init runtime
PM states at probe error and driver unbind") and apply these three 
patches, on initial probe of the wkup_m3_rproc and wkup_m3_ipc drivers 
in v4.5-rc3 I see:

[   15.593460] omap_hwmod: wkup_m3: _wait_target_disable failed

Which is triggered by the reset of the wkup_m3 from the wkup_m3_ipc 
driver when booting the wkup_m3_rproc. Flow is:

1. wkup_m3_rproc probes and calls pm_runtime_get_sync, which calls hwmod 
_enable but bails out because _are_all_hardreset_lines_asserted(oh) 
causes it to return 0.

2. wkup_m3_ipc probes and calls rproc_boot, which triggers 
omap_device_deassert_hardreset in order to let the wkup_m3 start.

It is inside the omap_device_deassert_hardreset ( and inside that, 
omap_hwmod_deassert_hardreset) where I end up with the error message, 
but after that rmmod/insmod of the module over and over again shows no 
additional error messages (at least with the above mentioned PM patch 
reverted).

Regards,
Dave

[1] http://www.spinics.net/lists/arm-kernel/msg477160.html

>
> regards
> Suman
>>>
>>>>
>>>> I'll post this series once again after performing these tests.
>>>>
>>>> Paul Walmsley (3):
>>>>    ARM: omap2+: omap_hwmod: introduce hwmod flag for custom reset
>>>>      handling
>>>>    ARM: OMAP2+: hwmod: use HWMOD_CUSTOM_HARDRESET for custom reset
>>>>      handling
>>>>    ARM: OMAP2+: hwmod: Add default reset handling
>>>>
>>>>   arch/arm/mach-omap2/omap_hwmod.c                   |   16 +++++++++++-----
>>>>   arch/arm/mach-omap2/omap_hwmod.h                   |   12 ++++++++++++
>>>>   arch/arm/mach-omap2/omap_hwmod_2420_data.c         |    2 ++
>>>>   arch/arm/mach-omap2/omap_hwmod_2430_data.c         |    1 +
>>>>   .../mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c |    2 ++
>>>>   arch/arm/mach-omap2/omap_hwmod_33xx_data.c         |    1 +
>>>>   arch/arm/mach-omap2/omap_hwmod_3xxx_data.c         |    3 +++
>>>>   arch/arm/mach-omap2/omap_hwmod_43xx_data.c         |    1 +
>>>>   arch/arm/mach-omap2/omap_hwmod_44xx_data.c         |    6 ++++++
>>>>   arch/arm/mach-omap2/omap_hwmod_54xx_data.c         |    2 ++
>>>>   10 files changed, 41 insertions(+), 5 deletions(-)
>>>>
>>>
>

  reply	other threads:[~2016-02-09 20:22 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-08 11:12 [PATCH 0/3] omap: hwmod: add default reset handling support Kishon Vijay Abraham I
2016-02-08 11:12 ` Kishon Vijay Abraham I
2016-02-08 11:12 ` Kishon Vijay Abraham I
2016-02-08 11:12 ` [PATCH 1/3] ARM: omap2+: omap_hwmod: introduce hwmod flag for custom reset handling Kishon Vijay Abraham I
2016-02-08 11:12   ` Kishon Vijay Abraham I
2016-02-08 11:12   ` Kishon Vijay Abraham I
2016-02-08 11:12 ` [RFT PATCH 2/3] ARM: OMAP2+: hwmod: use HWMOD_CUSTOM_HARDRESET " Kishon Vijay Abraham I
2016-02-08 11:12   ` Kishon Vijay Abraham I
2016-02-08 11:12   ` Kishon Vijay Abraham I
2016-02-08 11:12 ` [PATCH 3/3] ARM: OMAP2+: hwmod: Add default " Kishon Vijay Abraham I
2016-02-08 11:12   ` Kishon Vijay Abraham I
2016-02-08 11:12   ` Kishon Vijay Abraham I
2016-02-08 20:44 ` [PATCH 0/3] omap: hwmod: add default reset handling support Tony Lindgren
2016-02-08 20:44   ` Tony Lindgren
2016-02-09  5:13   ` Kishon Vijay Abraham I
2016-02-09  5:13     ` Kishon Vijay Abraham I
2016-02-09  5:13     ` Kishon Vijay Abraham I
2016-02-09 15:58     ` Tony Lindgren
2016-02-09 15:58       ` Tony Lindgren
2016-02-08 21:07 ` Suman Anna
2016-02-08 21:07   ` Suman Anna
2016-02-08 21:07   ` Suman Anna
2016-02-09  5:17   ` Kishon Vijay Abraham I
2016-02-09  5:17     ` Kishon Vijay Abraham I
2016-02-09  5:17     ` Kishon Vijay Abraham I
2016-02-09 17:44     ` Suman Anna
2016-02-09 17:44       ` Suman Anna
2016-02-09 17:44       ` Suman Anna
2016-02-09 20:19       ` Dave Gerlach [this message]
2016-02-09 20:19         ` Dave Gerlach
2016-02-09 20:19         ` Dave Gerlach
2016-02-09 21:34         ` Paul Walmsley
2016-02-09 21:34           ` Paul Walmsley

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=56BA49D4.8040900@ti.com \
    --to=d-gerlach@ti.com \
    --cc=bcousson@baylibre.com \
    --cc=bhelgaas@google.com \
    --cc=kishon@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=nsekhar@ti.com \
    --cc=paul@pwsan.com \
    --cc=richardcochran@gmail.com \
    --cc=s-anna@ti.com \
    --cc=tony@atomide.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.