lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <5ab5c58a-dc44-d1bc-2132-8704d05bf1de@ysoft.com>
Date:   Tue, 12 Jun 2018 17:09:30 +0200
From:   Michal Vokáč <michal.vokac@...ft.com>
To:     linux-gpio@...r.kernel.org
Cc:     linux-arm-kernel@...ts.infradead.org,
        Shawn Guo <shawnguo@...nel.org>,
        Sascha Hauer <kernel@...gutronix.de>,
        Fabio Estevam <fabio.estevam@....com>,
        Rob Herring <robh+dt@...nel.org>, devicetree@...r.kernel.org,
        Dong Aisheng <aisheng.dong@....com>,
        Fabio Estevam <festevam@...il.com>,
        Shawn Guo <shawnguo@...nel.org>,
        Stefan Agner <stefan@...er.ch>,
        Pengutronix Kernel Team <kernel@...gutronix.de>,
        Linus Walleij <linus.walleij@...aro.org>,
        linux-kernel@...r.kernel.org
Subject: Re: [RFC] Configure i.MX6 RGMII pad group control registers from
 device tree

On 11.6.2018 14:36, Michal Vokáč wrote:
> Ahoj,
> 
> To configure individual pad's characteristics on i.MX6 SoC a
> fsl,pins = <PIN_FUNC_ID CONFIG> property can be used. Is there any convenient
> way to configure the pad group control registers?
> 
> The issue is that some bits (DDR_SEL and ODT) in the individual RGMII pad
> control registers are read-only. To tweak those parameters (signal voltage and
> termination resistors) one need to write to the pad group control registers for
> the whole RGMII pad group. Namely IOMUXC_SW_PAD_CTL_GRP_DDR_TYPE_RGMII and
> IOMUXC_SW_PAD_CTL_GRP_RGMII_TERM. The group registers in general are not
> accessible from the list in arch/arm/boot/dts/imx6dl-pinfunc.h.
> 
> I could not find any other way to change the group registers than hacking-in
> some lines into the imx6q_init_machine(void) function in
> arch/arm/mach-imx/mach-imx6q.c source. As I work towards upstreaming my board
> this should be done from my device tree or solved in some universal way.
> 
> Any hints will be much appreciated.
> Michal

I figured out this is more "pinctrl-imx.c" than "device-tree" related
so I am kindly adding maintainers of that file in hope somebody will
shed some light to it.

I am diving deeper into the code and it seems there really is no generic
option to set the i.MX6 pad group control registers from device tree.
Or am I looking at the problem from a wrong angle?

How should we deal with boards that need to configure some pad
characteristics available only through the pad group control registers?

I also raised this question at the NXP community forum [1] and get quite
unsatisfying answer so far. I would love to find/implement a proper
and universal solution.

Thanks in advance for your time,
Michal

[1] https://community.nxp.com/thread/477464

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ