From: "Andreas Färber" <afaerber@suse.de>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 0/7] Pinctrl support for Zynq
Date: Thu, 06 Nov 2014 03:51:54 +0000 [thread overview]
Message-ID: <545AF05A.1040300@suse.de> (raw)
In-Reply-To: <44de30f0237545c6b62871d6c0480a67@BY2FFO11FD050.protection.gbl>
[-- Attachment #1: Type: text/plain, Size: 1933 bytes --]
Am 05.11.2014 um 18:03 schrieb Sören Brinkmann:
> On Wed, 2014-11-05 at 06:56AM +0100, Andreas Färber wrote:
>> I've tracked down all 54 MIO pins of the Parallella and cooked up the
>> equivalent DT patch. [...] For testing purposes I've configured a
>> heartbeat trigger for the USER_LED (CR10).
>>
>> To my disappointment these pinctrl additions did not fix one issue:
>> Whenever a write access to be handled by the bitstream (0x808f0f04) is
>> performed, the board hangs and the heartbeat stops. Would a bug in the
>> bitstream allow this to happen, or are more drivers missing to actually
>> make use of the PL in general? With a downstream ADI/Xilinx 3.12 kernel
>> that problem does not surface.
>
> This doesn't sound like being related to pinctrl at all.
> Devices in the PL are just memory mapped on the AXI bus. There is
> nothing needed to access those. Hangs do in most cases indicate that the
> IP does not respond (properly). In my experience this is mostly caused
> by
> - level shifters not enabled
> - IP kept in reset
> - IP is clock gated
> With the clock gating being the culprit in most cases. Did you check
> those things?
Figured it out: zynq-7000.dtsi sets fclk-enable = <0>, i.e., all PL
clocks are disabled by default. When overriding that tiny property with
0xf it suddenly works as expected! I'll send a patch later in the day.
Are boards expected to use clocks = <&clkc 15>, ...; on individual nodes
relying on the PL? Or does enabling those clocks require actually
loading a bitstream so that it is not being done by default?
It seems ranger dangerous to me that a single MMIO write can freeze the
system - as a software developer I would've expected this to be caught
and handled as a SIGBUS.
Regards,
Andreas
--
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 21284 AG Nürnberg
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: afaerber@suse.de (Andreas Färber)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 0/7] Pinctrl support for Zynq
Date: Thu, 06 Nov 2014 04:51:54 +0100 [thread overview]
Message-ID: <545AF05A.1040300@suse.de> (raw)
In-Reply-To: <44de30f0237545c6b62871d6c0480a67@BY2FFO11FD050.protection.gbl>
Am 05.11.2014 um 18:03 schrieb S?ren Brinkmann:
> On Wed, 2014-11-05 at 06:56AM +0100, Andreas F?rber wrote:
>> I've tracked down all 54 MIO pins of the Parallella and cooked up the
>> equivalent DT patch. [...] For testing purposes I've configured a
>> heartbeat trigger for the USER_LED (CR10).
>>
>> To my disappointment these pinctrl additions did not fix one issue:
>> Whenever a write access to be handled by the bitstream (0x808f0f04) is
>> performed, the board hangs and the heartbeat stops. Would a bug in the
>> bitstream allow this to happen, or are more drivers missing to actually
>> make use of the PL in general? With a downstream ADI/Xilinx 3.12 kernel
>> that problem does not surface.
>
> This doesn't sound like being related to pinctrl at all.
> Devices in the PL are just memory mapped on the AXI bus. There is
> nothing needed to access those. Hangs do in most cases indicate that the
> IP does not respond (properly). In my experience this is mostly caused
> by
> - level shifters not enabled
> - IP kept in reset
> - IP is clock gated
> With the clock gating being the culprit in most cases. Did you check
> those things?
Figured it out: zynq-7000.dtsi sets fclk-enable = <0>, i.e., all PL
clocks are disabled by default. When overriding that tiny property with
0xf it suddenly works as expected! I'll send a patch later in the day.
Are boards expected to use clocks = <&clkc 15>, ...; on individual nodes
relying on the PL? Or does enabling those clocks require actually
loading a bitstream so that it is not being done by default?
It seems ranger dangerous to me that a single MMIO write can freeze the
system - as a software developer I would've expected this to be caught
and handled as a SIGBUS.
Regards,
Andreas
--
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 21284 AG N?rnberg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141106/d0f54ffe/attachment.sig>
WARNING: multiple messages have this Message-ID (diff)
From: "Andreas Färber" <afaerber@suse.de>
To: "Sören Brinkmann" <soren.brinkmann@xilinx.com>
Cc: Linus Walleij <linus.walleij@linaro.org>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Heiko Stuebner <heiko@sntech.de>,
linux-sh@vger.kernel.org, Michal Simek <michal.simek@xilinx.com>,
linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
Alessandro Rubini <rubini@unipv.it>,
Olof Johansson <olof@lixom.net>,
Punnaiah Choudary Kalluri <punnaiah.choudary.kalluri@xilinx.com>,
Andreas Olofsson <andreas@adapteva.com>
Subject: Re: [PATCH 0/7] Pinctrl support for Zynq
Date: Thu, 06 Nov 2014 04:51:54 +0100 [thread overview]
Message-ID: <545AF05A.1040300@suse.de> (raw)
In-Reply-To: <44de30f0237545c6b62871d6c0480a67@BY2FFO11FD050.protection.gbl>
[-- Attachment #1: Type: text/plain, Size: 1933 bytes --]
Am 05.11.2014 um 18:03 schrieb Sören Brinkmann:
> On Wed, 2014-11-05 at 06:56AM +0100, Andreas Färber wrote:
>> I've tracked down all 54 MIO pins of the Parallella and cooked up the
>> equivalent DT patch. [...] For testing purposes I've configured a
>> heartbeat trigger for the USER_LED (CR10).
>>
>> To my disappointment these pinctrl additions did not fix one issue:
>> Whenever a write access to be handled by the bitstream (0x808f0f04) is
>> performed, the board hangs and the heartbeat stops. Would a bug in the
>> bitstream allow this to happen, or are more drivers missing to actually
>> make use of the PL in general? With a downstream ADI/Xilinx 3.12 kernel
>> that problem does not surface.
>
> This doesn't sound like being related to pinctrl at all.
> Devices in the PL are just memory mapped on the AXI bus. There is
> nothing needed to access those. Hangs do in most cases indicate that the
> IP does not respond (properly). In my experience this is mostly caused
> by
> - level shifters not enabled
> - IP kept in reset
> - IP is clock gated
> With the clock gating being the culprit in most cases. Did you check
> those things?
Figured it out: zynq-7000.dtsi sets fclk-enable = <0>, i.e., all PL
clocks are disabled by default. When overriding that tiny property with
0xf it suddenly works as expected! I'll send a patch later in the day.
Are boards expected to use clocks = <&clkc 15>, ...; on individual nodes
relying on the PL? Or does enabling those clocks require actually
loading a bitstream so that it is not being done by default?
It seems ranger dangerous to me that a single MMIO write can freeze the
system - as a software developer I would've expected this to be caught
and handled as a SIGBUS.
Regards,
Andreas
--
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 21284 AG Nürnberg
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
next prev parent reply other threads:[~2014-11-06 3:51 UTC|newest]
Thread overview: 126+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-03 19:05 [PATCH 0/7] Pinctrl support for Zynq Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` [PATCH 1/7] pinctrl: pinconf-generic: Declare dt_params/conf_items const Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-11 12:00 ` Linus Walleij
2014-11-11 12:00 ` Linus Walleij
2014-11-11 12:00 ` Linus Walleij
2014-11-03 19:05 ` [PATCH 2/7] pinctrl: pinconf-generic: Infer map type from DT property Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-05 13:56 ` Laurent Pinchart
2014-11-05 13:56 ` Laurent Pinchart
2014-11-05 13:56 ` Laurent Pinchart
2014-11-05 18:09 ` Sören Brinkmann
2014-11-05 18:09 ` Sören Brinkmann
2014-11-05 18:09 ` Sören Brinkmann
2014-11-05 18:17 ` Laurent Pinchart
2014-11-05 18:17 ` Laurent Pinchart
2014-11-05 18:17 ` Laurent Pinchart
2014-11-11 12:29 ` Linus Walleij
2014-11-11 12:29 ` Linus Walleij
2014-11-11 12:29 ` Linus Walleij
2014-11-12 18:43 ` Sören Brinkmann
2014-11-12 18:43 ` Sören Brinkmann
2014-11-12 18:43 ` Sören Brinkmann
2014-11-11 12:47 ` Linus Walleij
2014-11-11 12:47 ` Linus Walleij
2014-11-11 12:47 ` Linus Walleij
2014-11-12 18:46 ` Sören Brinkmann
2014-11-12 18:46 ` Sören Brinkmann
2014-11-12 18:46 ` Sören Brinkmann
2014-11-12 19:38 ` Sören Brinkmann
2014-11-12 19:38 ` Sören Brinkmann
2014-11-12 19:38 ` Sören Brinkmann
2014-11-03 19:05 ` [PATCH 3/7] pinctrl: pinconf-generic: Allow driver to specify DT params Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:12 ` Geert Uytterhoeven
2014-11-03 19:12 ` Geert Uytterhoeven
2014-11-03 19:12 ` Geert Uytterhoeven
2014-11-11 14:53 ` Linus Walleij
2014-11-11 14:53 ` Linus Walleij
2014-11-11 14:53 ` Linus Walleij
2014-11-18 8:50 ` Ivan T. Ivanov
2014-11-18 8:50 ` Ivan T. Ivanov
2014-11-18 8:50 ` Ivan T. Ivanov
2014-11-18 17:25 ` Sören Brinkmann
2014-11-18 17:25 ` Sören Brinkmann
2014-11-18 17:25 ` Sören Brinkmann
2014-11-19 7:49 ` Ivan T. Ivanov
2014-11-19 7:49 ` Ivan T. Ivanov
2014-11-19 7:49 ` Ivan T. Ivanov
2014-11-19 15:35 ` Sören Brinkmann
2014-11-19 15:35 ` Sören Brinkmann
2014-11-19 15:35 ` Sören Brinkmann
2014-11-20 8:06 ` Ivan T. Ivanov
2014-11-20 8:06 ` Ivan T. Ivanov
2014-11-20 8:06 ` Ivan T. Ivanov
2014-11-20 16:22 ` Sören Brinkmann
2014-11-20 16:22 ` Sören Brinkmann
2014-11-20 16:22 ` Sören Brinkmann
2014-11-21 7:35 ` Ivan T. Ivanov
2014-11-21 7:35 ` Ivan T. Ivanov
2014-11-21 7:35 ` Ivan T. Ivanov
2014-11-22 16:06 ` Sören Brinkmann
2014-11-22 16:06 ` Sören Brinkmann
2014-11-22 16:06 ` Sören Brinkmann
2014-11-24 8:52 ` Ivan T. Ivanov
2014-11-24 8:52 ` Ivan T. Ivanov
2014-11-24 8:52 ` Ivan T. Ivanov
2014-11-27 17:53 ` Sören Brinkmann
2014-11-27 17:53 ` Sören Brinkmann
2014-11-27 17:53 ` Sören Brinkmann
2014-11-03 19:05 ` [PATCH 4/7] pinctrl: zynq: Document DT binding Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-05 3:35 ` Andreas Färber
2014-11-05 3:35 ` Andreas Färber
2014-11-05 3:35 ` Andreas Färber
2014-11-05 17:07 ` Sören Brinkmann
2014-11-05 17:07 ` Sören Brinkmann
2014-11-05 17:07 ` Sören Brinkmann
2014-11-11 15:00 ` Linus Walleij
2014-11-11 15:00 ` Linus Walleij
2014-11-11 15:00 ` Linus Walleij
2014-11-12 18:53 ` Sören Brinkmann
2014-11-12 18:53 ` Sören Brinkmann
2014-11-12 18:53 ` Sören Brinkmann
2014-11-27 13:10 ` Linus Walleij
2014-11-27 13:10 ` Linus Walleij
2014-11-27 13:10 ` Linus Walleij
2014-11-03 19:05 ` [PATCH 5/7] pinctrl: Add driver for Zynq Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-05 3:24 ` Andreas Färber
2014-11-05 3:24 ` Andreas Färber
2014-11-05 3:24 ` Andreas Färber
2014-11-05 17:10 ` Sören Brinkmann
2014-11-05 17:10 ` Sören Brinkmann
2014-11-05 17:10 ` Sören Brinkmann
2014-11-05 5:12 ` Andreas Färber
2014-11-05 5:12 ` Andreas Färber
2014-11-05 5:12 ` Andreas Färber
2014-11-05 17:14 ` Sören Brinkmann
2014-11-05 17:14 ` Sören Brinkmann
2014-11-05 17:14 ` Sören Brinkmann
2014-11-03 19:05 ` [PATCH 6/7] ARM: zynq: Enable pinctrl Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` [PATCH 7/7] ARM: zynq: DT: Add pinctrl information Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-03 19:05 ` Soren Brinkmann
2014-11-05 5:56 ` [PATCH 0/7] Pinctrl support for Zynq Andreas Färber
2014-11-05 5:56 ` Andreas Färber
2014-11-05 5:56 ` Andreas Färber
2014-11-05 17:03 ` Sören Brinkmann
2014-11-05 17:03 ` Sören Brinkmann
2014-11-05 17:03 ` Sören Brinkmann
2014-11-06 3:51 ` Andreas Färber [this message]
2014-11-06 3:51 ` Andreas Färber
2014-11-06 3:51 ` Andreas Färber
2014-11-06 4:13 ` Sören Brinkmann
2014-11-06 4:13 ` Sören Brinkmann
2014-11-06 4:13 ` Sören Brinkmann
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=545AF05A.1040300@suse.de \
--to=afaerber@suse.de \
--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 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.