Re: [PATCH v2 24/28] pinctrl: Add support for the Lantic PEF2256 pinmux
From: Herve Codina <herve.codina@bootlin.com>
Date: 2023-08-07 14:27:39
Also in:
alsa-devel, linux-arm-kernel, linux-devicetree, linux-gpio, linuxppc-dev, lkml
Hi Linus, On Mon, 7 Aug 2023 15:05:15 +0200 Linus Walleij [off-list ref] wrote:
Hi Herve, thanks for your patch! First: is this patch something we could merge separately? I don't see any dependency on the other patches.
It depends on pef2256: in drivers/pinctrl/Kconfig:
--- 8< ---
+config PINCTRL_PEF2256
+ tristate "Lantiq PEF2256 (FALC56) pin controller driver"
+ depends on OF && FRAMER_PEF2256
--- 8< ---in drivers/pinctrl/pinctrl-pef2256.c
--- 8< ---
+#include <linux/framer/pef2256.h>
--- 8< ---
All the pef2256 it depends on is provided by path 23/28 "net: wan: framer: Add support for the Lantiq PEF2256 framer"
On Wed, Jul 26, 2023 at 5:04 PM Herve Codina [off-list ref] wrote:quoted
The Lantiq PEF2256 is a framer and line interface component designed to fulfill all required interfacing between an analog E1/T1/J1 line and the digital PCM system highway/H.100 bus. This pinmux support handles the pin muxing part (pins RP(A..D) and pins XP(A..D)) of the PEF2256. Signed-off-by: Herve Codina <herve.codina@bootlin.com>So it is a bridge chip? Please use that terminology since Linux DRM often talks about bridges.quoted
+++ b/drivers/pinctrl/pinctrl-pef2256-regs.h(...)quoted
+#include "linux/bitfield.h"Really? I don't think there is such a file there. Do you mean <linux/bitfield.h> and does this even compile?
Yes and it compiles (even with quoted included file). I will be changed to <linux/bitfield.h> in the next interation.
quoted
diff --git a/drivers/pinctrl/pinctrl-pef2256.c b/drivers/pinctrl/pinctrl-pef2256.c(...)quoted
+struct pef2256_pinctrl { + struct device *dev; + struct regmap *regmap; + enum pef2256_version version; + struct { + struct pinctrl_desc pctrl_desc; + const struct pef2256_function_desc *functions; + unsigned int nfunctions; + } pinctrl;Uh anonymous struct... can't you just define the struct separately with a name? Or fold it into struct pef2256_pinctrl without the additional struct? Thanks.
I will fold it into struct pef2256_pinctrl in the next iteration. Thanks Hervé
Otherwise it looks neat! Yours, Linus Walleij