All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hector Martin <marcan@marcan.st>
To: Thomas Zimmermann <tzimmermann@suse.de>,
	Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
	Maxime Ripard <mripard@kernel.org>,
	David Airlie <airlied@linux.ie>, Daniel Vetter <daniel@ffwll.ch>,
	Rob Herring <robh+dt@kernel.org>
Cc: dri-devel@lists.freedesktop.org,
	Alyssa Rosenzweig <alyssa@rosenzweig.io>,
	linux-kernel@vger.kernel.org, Rob Herring <robh+dt@kernel.org>
Subject: Re: [PATCH 1/3] drm/simpledrm: Bind to OF framebuffers in /chosen
Date: Sat, 20 Nov 2021 12:23:58 +0900	[thread overview]
Message-ID: <36f3cf18-6654-e1bf-1fa6-a5797751ee86@marcan.st> (raw)
In-Reply-To: <f3582c00-925d-91ec-c829-0aaa8f0157c0@suse.de>

On 18/11/2021 18.19, Thomas Zimmermann wrote:
> Hi
> 
> Am 17.11.21 um 15:58 schrieb Hector Martin:
>> @@ -897,5 +898,21 @@ static struct platform_driver simpledrm_platform_driver = {
>>    
>>    module_platform_driver(simpledrm_platform_driver);
>>    
>> +static int __init simpledrm_init(void)
>> +{
>> +	struct device_node *np;
>> +
>> +	if (IS_ENABLED(CONFIG_OF_ADDRESS) && of_chosen) {
>> +		for_each_child_of_node(of_chosen, np) {
>> +			if (of_device_is_compatible(np, "simple-framebuffer"))
>> +				of_platform_device_create(np, NULL, NULL);
>> +		}
>> +	}
>> +
>> +	return 0;
>> +}
>> +
>> +fs_initcall(simpledrm_init);
>> +
> 
> Simpledrm is just a driver, but this is platform setup code. Why is this
> code located here and not under arch/ or drivers/firmware/?
> 
> I know that other drivers do similar things, it doesn't seem to belong here.

This definitely doesn't belong in either of those, since it is not arch- 
or firmware-specific. It is implementing support for the standard 
simple-framebuffer OF binding, which specifies that it must be located 
within the /chosen node (and thus the default OF setup code won't do the 
matching for you); this applies to all OF platforms [1]

Adding Rob; do you think this should move from simplefb/simpledrm to 
common OF code? (where?)

[1] Documentation/devicetree/bindings/display/simple-framebuffer.yaml

-- 
Hector Martin (marcan@marcan.st)
Public Key: https://mrcn.st/pub

WARNING: multiple messages have this Message-ID (diff)
From: Hector Martin <marcan@marcan.st>
To: Thomas Zimmermann <tzimmermann@suse.de>,
	Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
	Maxime Ripard <mripard@kernel.org>,
	David Airlie <airlied@linux.ie>, Daniel Vetter <daniel@ffwll.ch>,
	Rob Herring <robh+dt@kernel.org>
Cc: Rob Herring <robh+dt@kernel.org>,
	Alyssa Rosenzweig <alyssa@rosenzweig.io>,
	dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/3] drm/simpledrm: Bind to OF framebuffers in /chosen
Date: Sat, 20 Nov 2021 12:23:58 +0900	[thread overview]
Message-ID: <36f3cf18-6654-e1bf-1fa6-a5797751ee86@marcan.st> (raw)
In-Reply-To: <f3582c00-925d-91ec-c829-0aaa8f0157c0@suse.de>

On 18/11/2021 18.19, Thomas Zimmermann wrote:
> Hi
> 
> Am 17.11.21 um 15:58 schrieb Hector Martin:
>> @@ -897,5 +898,21 @@ static struct platform_driver simpledrm_platform_driver = {
>>    
>>    module_platform_driver(simpledrm_platform_driver);
>>    
>> +static int __init simpledrm_init(void)
>> +{
>> +	struct device_node *np;
>> +
>> +	if (IS_ENABLED(CONFIG_OF_ADDRESS) && of_chosen) {
>> +		for_each_child_of_node(of_chosen, np) {
>> +			if (of_device_is_compatible(np, "simple-framebuffer"))
>> +				of_platform_device_create(np, NULL, NULL);
>> +		}
>> +	}
>> +
>> +	return 0;
>> +}
>> +
>> +fs_initcall(simpledrm_init);
>> +
> 
> Simpledrm is just a driver, but this is platform setup code. Why is this
> code located here and not under arch/ or drivers/firmware/?
> 
> I know that other drivers do similar things, it doesn't seem to belong here.

This definitely doesn't belong in either of those, since it is not arch- 
or firmware-specific. It is implementing support for the standard 
simple-framebuffer OF binding, which specifies that it must be located 
within the /chosen node (and thus the default OF setup code won't do the 
matching for you); this applies to all OF platforms [1]

Adding Rob; do you think this should move from simplefb/simpledrm to 
common OF code? (where?)

[1] Documentation/devicetree/bindings/display/simple-framebuffer.yaml

-- 
Hector Martin (marcan@marcan.st)
Public Key: https://mrcn.st/pub

  reply	other threads:[~2021-11-20  3:24 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-17 14:58 [PATCH 0/3] drm/simpledrm: Apple M1 / DT platform support fixes Hector Martin
2021-11-17 14:58 ` Hector Martin
2021-11-17 14:58 ` [PATCH 1/3] drm/simpledrm: Bind to OF framebuffers in /chosen Hector Martin
2021-11-17 14:58   ` Hector Martin
2021-11-18  9:19   ` Thomas Zimmermann
2021-11-18  9:19     ` Thomas Zimmermann
2021-11-20  3:23     ` Hector Martin [this message]
2021-11-20  3:23       ` Hector Martin
2021-11-29 11:26       ` Thomas Zimmermann
2021-11-29 11:26         ` Thomas Zimmermann
2021-11-29 19:29       ` Rob Herring
2021-11-29 19:29         ` Rob Herring
2021-11-30  6:44         ` Javier Martinez Canillas
2021-11-30  6:44           ` Javier Martinez Canillas
2021-11-30  8:31           ` Thomas Zimmermann
2021-11-30  8:31             ` Thomas Zimmermann
2021-11-30  9:31             ` Javier Martinez Canillas
2021-11-30  9:31               ` Javier Martinez Canillas
2021-11-30 18:25           ` Rob Herring
2021-11-30 18:25             ` Rob Herring
2021-11-19  1:21   ` kernel test robot
2021-11-19  1:21     ` kernel test robot
2021-11-17 14:58 ` [PATCH 2/3] drm/format-helper: Add drm_fb_xrgb8888_to_xrgb2101010_dstclip() Hector Martin
2021-11-17 14:58   ` Hector Martin
2021-11-18  9:16   ` Thomas Zimmermann
2021-11-18  9:16     ` Thomas Zimmermann
2021-11-22  9:52   ` Pekka Paalanen
2021-11-22  9:52     ` Pekka Paalanen
2021-11-22 10:05     ` Hector Martin
2021-11-22 10:05       ` Hector Martin
2021-11-22 10:39       ` Pekka Paalanen
2021-11-22 10:39         ` Pekka Paalanen
2021-11-17 14:58 ` [PATCH 3/3] drm/simpledrm: Enable XRGB2101010 format Hector Martin
2021-11-17 14:58   ` Hector Martin
2021-11-18  9:16   ` Thomas Zimmermann
2021-11-18  9:16     ` Thomas Zimmermann

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=36f3cf18-6654-e1bf-1fa6-a5797751ee86@marcan.st \
    --to=marcan@marcan.st \
    --cc=airlied@linux.ie \
    --cc=alyssa@rosenzweig.io \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mripard@kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=tzimmermann@suse.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 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.