From: Hans de Goede <hdegoede@redhat.com>
To: Lauri Kasanen <cand@gmx.com>, linux-mips@vger.kernel.org
Cc: tsbogend@alpha.franken.de, linux-fbdev@vger.kernel.org
Subject: Re: [PATCH 3/6 v6] fbdev/simplefb: Add the N64's mode
Date: Fri, 15 Jan 2021 14:01:36 +0100 [thread overview]
Message-ID: <70447198-f7e5-ac18-8593-6a995cce6700@redhat.com> (raw)
In-Reply-To: <20210113171159.ed46ea46b7af0cc6cf2a85d8@gmx.com>
Hi,
On 1/13/21 4:11 PM, Lauri Kasanen wrote:
> By keeping it separate for the platform, we save 748 bytes.
> This brings simplefb to 2.5kb from 3.2kb, when a native fb driver
> was 1.5kb.
>
> Signed-off-by: Lauri Kasanen <cand@gmx.com>
> ---
> include/linux/platform_data/simplefb.h | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/include/linux/platform_data/simplefb.h b/include/linux/platform_data/simplefb.h
> index ca83376..c9d4f2c 100644
> --- a/include/linux/platform_data/simplefb.h
> +++ b/include/linux/platform_data/simplefb.h
> @@ -13,6 +13,12 @@
> #include <linux/types.h>
>
> /* format array, use it to initialize a "struct simplefb_format" array */
> +#ifdef CONFIG_MACH_NINTENDO64
> +#define SIMPLEFB_FORMATS \
> +{ \
> + { "r5g5b5a1", 16, {11, 5}, {6, 5}, {1, 5}, {0, 1}, DRM_FORMAT_RGBA5551 }, \
> +}
> +#else
> #define SIMPLEFB_FORMATS \
> { \
> { "r5g6b5", 16, {11, 5}, {5, 6}, {0, 5}, {0, 0}, DRM_FORMAT_RGB565 }, \
> @@ -25,6 +31,7 @@
> { "x2r10g10b10", 32, {20, 10}, {10, 10}, {0, 10}, {0, 0}, DRM_FORMAT_XRGB2101010 }, \
> { "a2r10g10b10", 32, {20, 10}, {10, 10}, {0, 10}, {30, 2}, DRM_FORMAT_ARGB2101010 }, \
> }
> +#endif
>
> /*
> * Data-Format for Simple-Framebuffers
I am honestly not entirely convinced of the #ifdef-ery this adds. I understand that RAM is
tight on the N64, but this saves just 700 bytes, which even on the N64 is not a lot.
Right now it might be just 1 #ifdef for the N64, but if other platforms follow this example?
Honestly I would prefer to just see the format added to the existing SIMPLEFB_FORMATS
define without the #ifdef.
Alternatively:
Are you using devicetree or are you using a board.c file to instantiate everything?
If it is the latter I guess we could add a const struct simplefb_format * to the pdata
and then just pass in the format directly. I can even imagine the code which uses
the SIMPLEFB_FORMATS having a #ifdef CONFIG_OF around it in that case to optimize it out...
That would be a more generic solution which hopefully will save as much if not more
space...
Regards,
Hans
next prev parent reply other threads:[~2021-01-15 13:03 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-13 15:11 [PATCH 3/6 v6] fbdev/simplefb: Add the N64's mode Lauri Kasanen
2021-01-15 11:41 ` Lauri Kasanen
2021-01-15 13:01 ` Hans de Goede [this message]
2021-01-15 13:56 ` Lauri Kasanen
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=70447198-f7e5-ac18-8593-6a995cce6700@redhat.com \
--to=hdegoede@redhat.com \
--cc=cand@gmx.com \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-mips@vger.kernel.org \
--cc=tsbogend@alpha.franken.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;
as well as URLs for NNTP newsgroup(s).