All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: Ayush Singh <ayush@beagleboard.org>
Cc: Herve Codina <herve.codina@bootlin.com>,
	Krzysztof Kozlowski <krzk@kernel.org>,
	Rob Herring <robh@kernel.org>, Andrew Davis <afd@ti.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>, Arnd Bergmann <arnd@arndb.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	devicetree@vger.kernel.org, devicetree-compiler@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	Luca Ceresoli <luca.ceresoli@bootlin.com>,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Subject: Re: [PATCH v2 1/7] dt-bindings: Add support for export-symbols node
Date: Mon, 8 Sep 2025 14:44:03 +1000	[thread overview]
Message-ID: <aL5fEzN2S058oSAI@zatzit> (raw)
In-Reply-To: <ed6beb97-12f1-4d71-b4dc-b34d4d611b81@beagleboard.org>

[-- Attachment #1: Type: text/plain, Size: 3371 bytes --]

On Wed, Jun 18, 2025 at 03:24:07PM +0530, Ayush Singh wrote:
> 
> On 6/18/25 15:02, Herve Codina wrote:
> > Hi Krzysztof,
> > 
> > On Wed, 4 Jun 2025 20:35:51 +0200
> > Krzysztof Kozlowski <krzk@kernel.org> wrote:
> > 
> > ...
> > 
> > > > Symbols are exported only when an overlay is applied on the node where the
> > > > export-symbols node is available. Those symbols are visible only from the
> > > > overlay applied. Symbols exported thanks to export-symbols are not global
> > > > to the all device-tree (it is not __symbols__) but local to a node.
> > > > 
> > > > If an overlay is applied at connector1 node, it can use the 'connector'
> > > > symbols and thanks to export-symbols, the 'connector' symbol will be
> > > > resolved to foo_connector.
> > > > 
> > > > If the overlay is applied at connector2 node, the 'connector' symbol is then
> > > > resolved to bar_connector.
> > > OK, this explains a lot. Unless I missed it, would be nice to include it
> > > in binding description.
> > Sure, I will add something in the next iteration.
> > 
> > ...
> > 
> > > > > > +patternProperties:
> > > > > > +  "^[a-zA-Z_]?[a-zA-Z0-9_]*$":
> > > > > This messes up with coding style which I would prefer keep intact.
> > > > > Basically these properties will be using label style.
> > > > Yes, those properties remap phandles.
> > > > 
> > > > Their names are the name of the label used from the overlay and their
> > > > values are the phandle mapped.
> > > > 
> > > > You already have this kind properties using label style in __symbols__,
> > > > __fixups__, __local_fixups__ nodes.
> > > I have them in DTB, but I don't have these in DTS. The exported-symbols
> > > would be in the DTS and that is what coding style is about.
> > > 
> > I think export-symbols has to be in DTS.
> > Maybe it could be described in an other way in order to avoid the coding style
> > issue you reported.
> > 
> > Hardware:
> >    i2c0 from SoC --------- connector 1, I2C A signals
> >    i2c1 from SoC --------- connector 1, I2C B signals
> > 
> >    connector1 {
> >        export-symbols {
> > 	  i2c_a = <&i2c0>;
> > 	  i2c_b = <&i2c1>;
> >        };
> >    };
> > 
> > In order to avoid the coding style issue, this could be replace
> > with:
> >   connector1 {
> >        export-symbols {
> > 	  symbol-names = "i2c_a", "i2c_b";
> > 	  symbols = <&i2c0>, <&i2c1>;
> >        };
> >    };
> > 
> > Krzysztof, Rob, do you think this could be accepted ?
> > 
> > Ayush, David, do you thing this could be easily implemented in fdtoverlay ?
> > 
> > Best regards,
> > Hervé
> > 
> 
> Well, it is possible.
> 
> However, on connectors like pb2 header, there will be 50-100 export symbols.
> So it will start becoming difficult to maintain.
> 
> Additionally, the further away we move from __symbols__ style, the more
> difficult the implementation will become since we can currently very easily
> piggy-back on __symbols__ resolution implementation.

I think that should be a non-goal.  Current __symbols__ resolution was
a quick hack.  Design what makes sense rather than being tied to the
ugly past.

-- 
David Gibson (he or they)	| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you, not the other way
				| around.
http://www.ozlabs.org/~dgibson

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  parent reply	other threads:[~2025-09-08  4:48 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-30 12:51 [PATCH v2 0/7] of: overlay: Add support for export-symbols node feature Herve Codina
2025-04-30 12:51 ` [PATCH v2 1/7] dt-bindings: Add support for export-symbols node Herve Codina
2025-05-02 14:33   ` Luca Ceresoli
2025-05-27 18:31   ` Krzysztof Kozlowski
2025-05-28  7:59     ` Ayush Singh
2025-05-28  8:06       ` Krzysztof Kozlowski
2025-05-28 16:57     ` Herve Codina
2025-06-04 18:35       ` Krzysztof Kozlowski
2025-06-18  9:32         ` Herve Codina
2025-06-18  9:54           ` Ayush Singh
2025-07-04  9:10             ` Herve Codina
2025-08-17  7:41             ` Krzysztof Kozlowski
2025-08-17  8:18               ` Ayush Singh
2025-08-17  8:22                 ` Krzysztof Kozlowski
2025-08-17  8:42                   ` Ayush Singh
2025-08-18 17:05                     ` Rob Herring
2025-08-18 17:37                       ` Ayush Singh
2025-09-08  4:48                         ` David Gibson
2025-09-08  4:46                     ` David Gibson
2025-09-08  4:44             ` David Gibson [this message]
2025-08-17  7:38           ` Krzysztof Kozlowski
2025-04-30 12:51 ` [PATCH v2 2/7] of: resolver: Introduce get_phandle_from_symbols_node() Herve Codina
2025-04-30 12:51 ` [PATCH v2 3/7] of: resolver: Add export_symbols in of_resolve_phandles() parameters Herve Codina
2025-05-02 14:35   ` Luca Ceresoli
2025-05-05  8:10     ` Herve Codina
2025-04-30 12:51 ` [PATCH v2 4/7] of: resolver: Add support for the export symbols node Herve Codina
2025-04-30 12:51 ` [PATCH v2 5/7] of: overlay: Add export_symbols_name in of_overlay_fdt_apply() parameters Herve Codina
2025-05-02 14:40   ` Ayush Singh
2025-05-05  8:17     ` Herve Codina
2025-04-30 12:51 ` [PATCH v2 6/7] of: overlay: Add support for the export symbols node Herve Codina
2025-04-30 12:51 ` [PATCH v2 7/7] of: unittest: Add tests for export symbols Herve Codina

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=aL5fEzN2S058oSAI@zatzit \
    --to=david@gibson.dropbear.id.au \
    --cc=afd@ti.com \
    --cc=arnd@arndb.de \
    --cc=ayush@beagleboard.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree-compiler@vger.kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=geert@linux-m68k.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=herve.codina@bootlin.com \
    --cc=krzk+dt@kernel.org \
    --cc=krzk@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luca.ceresoli@bootlin.com \
    --cc=robh@kernel.org \
    --cc=saravanak@google.com \
    --cc=thomas.petazzoni@bootlin.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.