From: Lukasz Majewski <lukma@denx.de>
To: u-boot@lists.denx.de
Subject: [PATCH 12/20] pinctrl: add i.MXRT driver
Date: Thu, 12 Dec 2019 00:46:10 +0100 [thread overview]
Message-ID: <20191212004610.2cf4c290@jawa> (raw)
In-Reply-To: <75052489-5fc5-d704-8c6f-1cc678a1cb47@benettiengineering.com>
On Wed, 11 Dec 2019 13:40:01 +0100
Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
> Hi Lukasz,
>
> On 12/10/19 12:46 AM, Lukasz Majewski wrote:
> > On Mon, 9 Dec 2019 12:54:33 +0100
> > Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
> >
> >> Hi Lukasz, Stefano, Fabio, all,
> >>
> >> On 12/8/19 3:45 PM, Lukasz Majewski wrote:
> >>> On Wed, 4 Dec 2019 18:44:31 +0100
> >>> Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
> >>>
> >>>> Add i.MXRT pinctrl driver.
> >>>>
> >>>> Signed-off-by: Giulio Benetti
> >>>> <giulio.benetti@benettiengineering.com> ---
> >>>> drivers/pinctrl/nxp/Kconfig | 14 ++++++++++
> >>>> drivers/pinctrl/nxp/Makefile | 1 +
> >>>> drivers/pinctrl/nxp/pinctrl-imxrt.c | 40
> >>>> +++++++++++++++++++++++++++++ 3 files changed, 55 insertions(+)
> >>>> create mode 100644 drivers/pinctrl/nxp/pinctrl-imxrt.c
> >>>>
> >>>> diff --git a/drivers/pinctrl/nxp/Kconfig
> >>>> b/drivers/pinctrl/nxp/Kconfig index f2e67ca231..ec55351e61 100644
> >>>> --- a/drivers/pinctrl/nxp/Kconfig
> >>>> +++ b/drivers/pinctrl/nxp/Kconfig
> >>>> @@ -99,6 +99,20 @@ config PINCTRL_MXS
> >>>> familiy, e.g. i.MX28. This feature depends on device
> >>>> tree configuration.
> >>>>
> >>>> +config PINCTRL_IMXRT
> >>>> + bool "IMXRT pinctrl driver"
> >>>> + depends on ARCH_IMXRT && PINCTRL_FULL
> >>>> + select DEVRES
> >>>> + select PINCTRL_IMX
> >>>> + help
> >>>> + Say Y here to enable the imxrt pinctrl driver
> >>>> +
> >>>> + This provides a simple pinctrl driver for i.MXRT SoC
> >>>> familiy.
> >>>> + This feature depends on device tree configuration.
> >>>> This driver
> >>>> + is different from the linux one, this is a simple
> >>>> implementation,
> >>>
> >>> Could you add proper documentation entry (in ./doc/*) in which you
> >>> would point out the differences between the full blown Linux
> >>> driver and this U-Boot driver (I do guess that "only parsing
> >>> 'fsl,pins'" is not the only difference - more details are
> >>> welcome).
> >>
> >> Sure, but isn't maybe something to be done in the document
> >> below?...
> >
> > +1
> >
> >>
> >>> And a bit more generic request - it is also nice to add some kind
> >>> of ./doc/README.* documentation in which one can put some hints
> >>> (or usage patterns) for in-uboot boards (like during development
> >>> discovered HW issues, etc.). Such information is priceless when
> >>> other community member wants to use this code/board (and NXP is
> >>> very often silence about them :-) ).
> >>
> >> Sure, I'm going to provide a
> >> ./doc/device-tree-bindings/pinctrl/fsl,imx-pinctrl.txt unique for
> >> every imx at this point, ok?
> >
> > I think that it would be ok, to first focus on iMXRT.
>
> Ok
>
> >>
> >> And what do you think to provide defines in
> >> ./include/dt-bindings/pinctrl/pinctrl-imxrt1050.h for every setting
> >> in PAD? Or better, in a pinctrl-imxrt.h to be included in
> >> pinctrl-imxrt1050.h(since they are the same)
> >> I mean for pull-up/down, drive strength etc.
> >
> > I would prefer to have the same files as are (or would be) in the
> > Linux kernel.
> >
> > Moreover, there are already added
> > ./include/dt-bindings/pinctrl/pads-imx8q* files in this directory.
> > Maybe you could provide similar structure ?
>
> They are already exactly the same structure.
Ok.
>
> >>
> >> Because, even for me that I'm developing, I see it very difficult
> >> to recognize every setting from hexadecimal in dts file, and I
> >> loose the overview. I've already used IMX_PAD_SION to set pad as
> >> input.
> >
> > User readable defines DO HELP a lot.
> >
> > IMX6Q uses for example:
> >
> > fsl,pins = <
> > MX6QDL_PAD_CSI0_DAT10__ECSPI2_MISO
> > 0x100b1 MX6QDL_PAD_CSI0_DAT9__ECSPI2_MOSI 0x100b1
> > MX6QDL_PAD_CSI0_DAT8__ECSPI2_SCLK
> > 0x100b1
> > >;
> >
> > which is in sync with Linux kernel.
>
> Yes, but what I was asking is about those 0x100b1 that is a bitmask.
> I would like to introduce or'ed short macros to compose that value.
> But if the first goal is to keep in sync with Linux kernel then I
> leave as is and later I will try to introduce this on Linux first and
> later sync here.
Ok.
>
> >>
> >> Then I would be happy, to add all definitions for every imx and
> >> modify every dts file, but I'd need everyone to re-test its board.
> >> What about this?
> >
> > Let's keep things in sync with Linux kernel as much as possible.
> > This is one of U-Boot's recent goals to:
> >
> > 1. Reduce maintenance effort
> >
> > 2. Ease porting of Linux drivers.
> >
> > What we do need to focus on (in U-Boot) to trim those drivers to
> > keep U-Boot's footprint _really_ small or at least as small as it
> > was before DTS was introduced (in SPL for e.g. i.MX).
>
> Ok
>
> Thank you
>
> Best regards
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20191212/fc1f9255/attachment.sig>
next prev parent reply other threads:[~2019-12-11 23:46 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-04 17:44 [PATCH 00/20] Add i.MXRT family support Giulio Benetti
2019-12-04 17:44 ` [PATCH 01/20] armv7m: cache: add mmu_set_region_dcache_behaviour() stub for compatibility Giulio Benetti
2019-12-04 17:44 ` [PATCH 02/20] spl: fix entry_point equal to load_addr Giulio Benetti
2019-12-08 14:37 ` Lukasz Majewski
2019-12-09 10:47 ` Giulio Benetti
2019-12-04 17:44 ` [PATCH 03/20] clk: imx: pllv3: register PLLV3 GENERIC and USB as 2 different clocks Giulio Benetti
2019-12-08 14:33 ` Lukasz Majewski
2019-12-04 17:44 ` [PATCH 04/20] clk: imx: pllv3: set div_mask differently if PLLV3 is GENERIC or USB Giulio Benetti
2019-12-08 14:32 ` Lukasz Majewski
2019-12-04 17:44 ` [PATCH 05/20] clk: imx: pllv3: add enable() support Giulio Benetti
2019-12-04 17:44 ` [PATCH 06/20] clk: imx: pllv3: add disable() support Giulio Benetti
2019-12-08 14:27 ` Lukasz Majewski
2019-12-04 17:44 ` [PATCH 07/20] clk: imx: pllv3: add set_rate() support Giulio Benetti
2019-12-08 14:27 ` Lukasz Majewski
2019-12-04 17:44 ` [PATCH 08/20] clk: imx: pllv3: add PLLV3_SYS support Giulio Benetti
2019-12-08 14:28 ` Lukasz Majewski
2019-12-04 17:44 ` [PATCH 09/20] clk: imx: pllv3: add support for PLLV3_AV type Giulio Benetti
2019-12-08 15:05 ` Lukasz Majewski
2019-12-09 17:13 ` Giulio Benetti
2019-12-10 0:07 ` Lukasz Majewski
2019-12-11 12:47 ` Giulio Benetti
2019-12-12 10:05 ` Lukasz Majewski
2019-12-04 17:44 ` [PATCH 10/20] clk: imx: pfd: add set_rate() Giulio Benetti
2019-12-08 14:38 ` Lukasz Majewski
2019-12-04 17:44 ` [PATCH 11/20] clk: imx: add i.IMXRT1050 clk driver Giulio Benetti
2019-12-08 14:40 ` Lukasz Majewski
2019-12-09 10:49 ` Giulio Benetti
2019-12-09 10:53 ` Giulio Benetti
2019-12-09 23:36 ` Lukasz Majewski
2019-12-11 12:30 ` Giulio Benetti
2019-12-04 17:44 ` [PATCH 12/20] pinctrl: add i.MXRT driver Giulio Benetti
2019-12-08 14:45 ` Lukasz Majewski
2019-12-09 11:54 ` Giulio Benetti
2019-12-09 23:46 ` Lukasz Majewski
2019-12-11 12:40 ` Giulio Benetti
2019-12-11 23:46 ` Lukasz Majewski [this message]
2019-12-04 17:44 ` [PATCH 13/20] ARM: dts: imxrt1050: add dtsi file Giulio Benetti
2019-12-04 23:01 ` Giulio Benetti
2019-12-08 14:46 ` Lukasz Majewski
2019-12-09 10:51 ` Giulio Benetti
2019-12-04 17:44 ` [PATCH 14/20] serial_lpuart: add clock enable if CONFIG_CLK is defined Giulio Benetti
2019-12-08 14:52 ` Lukasz Majewski
2019-12-09 15:20 ` Giulio Benetti
2019-12-09 23:48 ` Lukasz Majewski
2019-12-17 18:37 ` Giulio Benetti
2019-12-30 1:21 ` Simon Glass
2019-12-04 17:44 ` [PATCH 15/20] serial_lpuart: add support for i.MXRT Giulio Benetti
2019-12-08 14:58 ` Lukasz Majewski
2019-12-09 12:56 ` Giulio Benetti
2020-01-03 11:39 ` [PATCH 00/20] Add i.MXRT family support Stefano Babic
2020-01-03 14:14 ` Giulio Benetti
2020-01-07 17:23 ` Giulio Benetti
2020-01-08 17:39 ` Simon Glass
2020-01-08 17:53 ` Giulio Benetti
2020-01-09 20:04 ` Simon Glass
2020-01-10 14:05 ` Giulio Benetti
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=20191212004610.2cf4c290@jawa \
--to=lukma@denx.de \
--cc=u-boot@lists.denx.de \
/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