* [patch 1/4] fbdev: extract fb_show_logo_line()
2007-07-10 12:27 [patch 0/4] Cell SPE logos Geert Uytterhoeven
@ 2007-07-10 12:27 ` Geert Uytterhoeven
2007-07-10 12:27 ` [patch 2/4] fbdev: Add fb_append_extra_logo() Geert Uytterhoeven
` (3 subsequent siblings)
4 siblings, 0 replies; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-10 12:27 UTC (permalink / raw)
To: Antonino A. Daplas, Andrew Morton
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
Geert Uytterhoeven, James Simmons, cbe-oss-dev
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: spe-logo/fb_show_logo_line.diff --]
[-- Type: text/plain, Size: 3986 bytes --]
Extract the code to draw one line of logos into fb_show_logo_line()
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Acked-By: James Simmons <jsimmons@infradead.org>
---
drivers/video/fbmem.c | 39 +++++++++++++++++++++++----------------
1 files changed, 23 insertions(+), 16 deletions(-)
--- a/drivers/video/fbmem.c
+++ b/drivers/video/fbmem.c
@@ -477,22 +477,24 @@ int fb_prepare_logo(struct fb_info *info
return fb_logo.logo->height;
}
-int fb_show_logo(struct fb_info *info, int rotate)
+static int fb_show_logo_line(struct fb_info *info, int rotate,
+ const struct linux_logo *logo, int y,
+ unsigned int n)
{
u32 *palette = NULL, *saved_pseudo_palette = NULL;
unsigned char *logo_new = NULL, *logo_rotate = NULL;
struct fb_image image;
/* Return if the frame buffer is not mapped or suspended */
- if (fb_logo.logo == NULL || info->state != FBINFO_STATE_RUNNING ||
+ if (logo == NULL || info->state != FBINFO_STATE_RUNNING ||
info->flags & FBINFO_MODULE)
return 0;
image.depth = 8;
- image.data = fb_logo.logo->data;
+ image.data = logo->data;
if (fb_logo.needs_cmapreset)
- fb_set_logocmap(info, fb_logo.logo);
+ fb_set_logocmap(info, logo);
if (fb_logo.needs_truepalette ||
fb_logo.needs_directpalette) {
@@ -501,17 +503,16 @@ int fb_show_logo(struct fb_info *info, i
return 0;
if (fb_logo.needs_truepalette)
- fb_set_logo_truepalette(info, fb_logo.logo, palette);
+ fb_set_logo_truepalette(info, logo, palette);
else
- fb_set_logo_directpalette(info, fb_logo.logo, palette);
+ fb_set_logo_directpalette(info, logo, palette);
saved_pseudo_palette = info->pseudo_palette;
info->pseudo_palette = palette;
}
if (fb_logo.depth <= 4) {
- logo_new = kmalloc(fb_logo.logo->width * fb_logo.logo->height,
- GFP_KERNEL);
+ logo_new = kmalloc(logo->width * logo->height, GFP_KERNEL);
if (logo_new == NULL) {
kfree(palette);
if (saved_pseudo_palette)
@@ -519,29 +520,35 @@ int fb_show_logo(struct fb_info *info, i
return 0;
}
image.data = logo_new;
- fb_set_logo(info, fb_logo.logo, logo_new, fb_logo.depth);
+ fb_set_logo(info, logo, logo_new, fb_logo.depth);
}
image.dx = 0;
- image.dy = 0;
- image.width = fb_logo.logo->width;
- image.height = fb_logo.logo->height;
+ image.dy = y;
+ image.width = logo->width;
+ image.height = logo->height;
if (rotate) {
- logo_rotate = kmalloc(fb_logo.logo->width *
- fb_logo.logo->height, GFP_KERNEL);
+ logo_rotate = kmalloc(logo->width *
+ logo->height, GFP_KERNEL);
if (logo_rotate)
fb_rotate_logo(info, logo_rotate, &image, rotate);
}
- fb_do_show_logo(info, &image, rotate, num_online_cpus());
+ fb_do_show_logo(info, &image, rotate, n);
kfree(palette);
if (saved_pseudo_palette != NULL)
info->pseudo_palette = saved_pseudo_palette;
kfree(logo_new);
kfree(logo_rotate);
- return fb_logo.logo->height;
+ return logo->height;
+}
+
+int fb_show_logo(struct fb_info *info, int rotate)
+{
+ return fb_show_logo_line(info, rotate, fb_logo.logo, 0,
+ num_online_cpus());
}
#else
int fb_prepare_logo(struct fb_info *info, int rotate) { return 0; }
--
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village ������ Da Vincilaan 7-D1 ������ B-1935 Zaventem ������ Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 ������ B-1840 Londerzeel ������ Belgium
VAT BE 0413.825.160 ������ RPR Brussels
Fortis Bank Zaventem ������ Swift GEBABEBB08A ������ IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread* [patch 2/4] fbdev: Add fb_append_extra_logo()
2007-07-10 12:27 [patch 0/4] Cell SPE logos Geert Uytterhoeven
2007-07-10 12:27 ` [patch 1/4] fbdev: extract fb_show_logo_line() Geert Uytterhoeven
@ 2007-07-10 12:27 ` Geert Uytterhoeven
2007-07-13 0:15 ` Antonino A. Daplas
2007-07-10 12:27 ` [patch 3/4] fbdev: SPE helper penguin logo Geert Uytterhoeven
` (2 subsequent siblings)
4 siblings, 1 reply; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-10 12:27 UTC (permalink / raw)
To: Antonino A. Daplas, Andrew Morton
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
Geert Uytterhoeven, James Simmons, cbe-oss-dev
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: spe-logo/fb_append_extra_logo.diff --]
[-- Type: text/plain, Size: 3772 bytes --]
Add fb_append_extra_logo(), to append extra lines of logos below the standard
Linux logo.
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Acked-By: James Simmons <jsimmons@infradead.org>
---
drivers/video/fbmem.c | 50 +++++++++++++++++++++++++++++++++++++++++----
include/linux/linux_logo.h | 8 +++++++
2 files changed, 54 insertions(+), 4 deletions(-)
--- a/drivers/video/fbmem.c
+++ b/drivers/video/fbmem.c
@@ -318,6 +318,13 @@ static struct logo_data {
const struct linux_logo *logo;
} fb_logo __read_mostly;
+#define FB_LOGO_EX_NUM_MAX 10
+static struct logo_data_extra {
+ const struct linux_logo *logo;
+ unsigned int n;
+} fb_logo_ex[FB_LOGO_EX_NUM_MAX];
+static unsigned int fb_logo_ex_num;
+
static void fb_rotate_logo_ud(const u8 *in, u8 *out, u32 width, u32 height)
{
u32 size = width * height, i;
@@ -411,10 +418,22 @@ static void fb_do_show_logo(struct fb_in
}
}
+#ifdef CONFIG_FB
+void fb_append_extra_logo(const struct linux_logo *logo, unsigned int n)
+{
+ if (!n || fb_logo_ex_num == FB_LOGO_EX_NUM_MAX)
+ return;
+
+ fb_logo_ex[fb_logo_ex_num].logo = logo;
+ fb_logo_ex[fb_logo_ex_num].n = n;
+ fb_logo_ex_num++;
+}
+#endif
+
int fb_prepare_logo(struct fb_info *info, int rotate)
{
int depth = fb_get_color_depth(&info->var, &info->fix);
- int yres;
+ unsigned int yres, height, i;
memset(&fb_logo, 0, sizeof(struct logo_data));
@@ -474,7 +493,21 @@ int fb_prepare_logo(struct fb_info *info
fb_logo.depth = 4;
else
fb_logo.depth = 1;
- return fb_logo.logo->height;
+
+ /* FIXME: logo_ex supports only truecolor fb. */
+ if (info->fix.visual != FB_VISUAL_TRUECOLOR)
+ fb_logo_ex_num = 0;
+
+ height = fb_logo.logo->height;
+ for (i = 0; i < fb_logo_ex_num; i++) {
+ height += fb_logo_ex[i].logo->height;
+ if (height > yres) {
+ height -= fb_logo_ex[i].logo->height;
+ fb_logo_ex_num = i;
+ break;
+ }
+ }
+ return height;
}
static int fb_show_logo_line(struct fb_info *info, int rotate,
@@ -547,8 +580,17 @@ static int fb_show_logo_line(struct fb_i
int fb_show_logo(struct fb_info *info, int rotate)
{
- return fb_show_logo_line(info, rotate, fb_logo.logo, 0,
- num_online_cpus());
+ int y, i;
+
+ y = fb_show_logo_line(info, rotate, fb_logo.logo, 0,
+ num_online_cpus());
+
+ for (i = 0; i < fb_logo_ex_num; i++) {
+ y += fb_show_logo_line(info, rotate,
+ fb_logo_ex[i].logo, y, fb_logo_ex[i].n);
+ }
+
+ return y;
}
#else
int fb_prepare_logo(struct fb_info *info, int rotate) { return 0; }
--- a/include/linux/linux_logo.h
+++ b/include/linux/linux_logo.h
@@ -33,5 +33,13 @@ struct linux_logo {
};
extern const struct linux_logo *fb_find_logo(int depth);
+#if defined(CONFIG_LOGO) && defined(CONFIG_FB)
+extern void fb_append_extra_logo(const struct linux_logo *logo,
+ unsigned int n);
+#else
+static inline void fb_append_extra_logo(const struct linux_logo *logo,
+ unsigned int n)
+{}
+#endif
#endif /* _LINUX_LINUX_LOGO_H */
--
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village ������ Da Vincilaan 7-D1 ������ B-1935 Zaventem ������ Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 ������ B-1840 Londerzeel ������ Belgium
VAT BE 0413.825.160 ������ RPR Brussels
Fortis Bank Zaventem ������ Swift GEBABEBB08A ������ IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [patch 2/4] fbdev: Add fb_append_extra_logo()
2007-07-10 12:27 ` [patch 2/4] fbdev: Add fb_append_extra_logo() Geert Uytterhoeven
@ 2007-07-13 0:15 ` Antonino A. Daplas
2007-07-13 6:56 ` Geert Uytterhoeven
2007-07-13 6:58 ` Geert Uytterhoeven
0 siblings, 2 replies; 19+ messages in thread
From: Antonino A. Daplas @ 2007-07-13 0:15 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
James Simmons, Andrew Morton, cbe-oss-dev
On Tue, 2007-07-10 at 14:27 +0200, Geert Uytterhoeven wrote:
> plain text document attachment (spe-logo)
> Add fb_append_extra_logo(), to append extra lines of logos below the standard
> Linux logo.
>
> Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
> Acked-By: James Simmons <jsimmons@infradead.org>
> ---
> drivers/video/fbmem.c | 50 +++++++++++++++++++++++++++++++++++++++++----
> include/linux/linux_logo.h | 8 +++++++
> 2 files changed, 54 insertions(+), 4 deletions(-)
>
> --- a/drivers/video/fbmem.c
> +++ b/drivers/video/fbmem.c
> @@ -318,6 +318,13 @@ static struct logo_data {
> const struct linux_logo *logo;
> } fb_logo __read_mostly;
>
> +#define FB_LOGO_EX_NUM_MAX 10
> +static struct logo_data_extra {
> + const struct linux_logo *logo;
> + unsigned int n;
> +} fb_logo_ex[FB_LOGO_EX_NUM_MAX];
> +static unsigned int fb_logo_ex_num;
> +
> static void fb_rotate_logo_ud(const u8 *in, u8 *out, u32 width, u32 height)
> {
> u32 size = width * height, i;
> @@ -411,10 +418,22 @@ static void fb_do_show_logo(struct fb_in
> }
> }
>
> +#ifdef CONFIG_FB
The #ifdef is redundant.
> +void fb_append_extra_logo(const struct linux_logo *logo, unsigned int n)
> +{
> + if (!n || fb_logo_ex_num == FB_LOGO_EX_NUM_MAX)
> + return;
> +
> + fb_logo_ex[fb_logo_ex_num].logo = logo;
> + fb_logo_ex[fb_logo_ex_num].n = n;
> + fb_logo_ex_num++;
> +}
> +#endif
> +
> int fb_prepare_logo(struct fb_info *info, int rotate)
> {
> int depth = fb_get_color_depth(&info->var, &info->fix);
> - int yres;
> + unsigned int yres, height, i;
>
> memset(&fb_logo, 0, sizeof(struct logo_data));
>
> @@ -474,7 +493,21 @@ int fb_prepare_logo(struct fb_info *info
> fb_logo.depth = 4;
> else
> fb_logo.depth = 1;
> - return fb_logo.logo->height;
> +
> + /* FIXME: logo_ex supports only truecolor fb. */
> + if (info->fix.visual != FB_VISUAL_TRUECOLOR)
> + fb_logo_ex_num = 0;
> +
> + height = fb_logo.logo->height;
> + for (i = 0; i < fb_logo_ex_num; i++) {
> + height += fb_logo_ex[i].logo->height;
> + if (height > yres) {
> + height -= fb_logo_ex[i].logo->height;
> + fb_logo_ex_num = i;
> + break;
> + }
> + }
> + return height;
> }
>
> static int fb_show_logo_line(struct fb_info *info, int rotate,
> @@ -547,8 +580,17 @@ static int fb_show_logo_line(struct fb_i
>
> int fb_show_logo(struct fb_info *info, int rotate)
> {
> - return fb_show_logo_line(info, rotate, fb_logo.logo, 0,
> - num_online_cpus());
> + int y, i;
> +
> + y = fb_show_logo_line(info, rotate, fb_logo.logo, 0,
> + num_online_cpus());
> +
> + for (i = 0; i < fb_logo_ex_num; i++) {
> + y += fb_show_logo_line(info, rotate,
> + fb_logo_ex[i].logo, y, fb_logo_ex[i].n);
> + }
> +
> + return y;
> }
> #else
> int fb_prepare_logo(struct fb_info *info, int rotate) { return 0; }
> --- a/include/linux/linux_logo.h
> +++ b/include/linux/linux_logo.h
> @@ -33,5 +33,13 @@ struct linux_logo {
> };
>
> extern const struct linux_logo *fb_find_logo(int depth);
> +#if defined(CONFIG_LOGO) && defined(CONFIG_FB)
The CONFIG_LOGO is also probably redundant, but that's arguable.
Tony
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [patch 2/4] fbdev: Add fb_append_extra_logo()
2007-07-13 0:15 ` Antonino A. Daplas
@ 2007-07-13 6:56 ` Geert Uytterhoeven
2007-07-13 11:45 ` Antonino A. Daplas
2007-07-13 6:58 ` Geert Uytterhoeven
1 sibling, 1 reply; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-13 6:56 UTC (permalink / raw)
To: Antonino A. Daplas
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
James Simmons, Andrew Morton, cbe-oss-dev
[-- Attachment #1: Type: TEXT/PLAIN, Size: 1471 bytes --]
On Fri, 13 Jul 2007, Antonino A. Daplas wrote:
> On Tue, 2007-07-10 at 14:27 +0200, Geert Uytterhoeven wrote:
> > --- a/drivers/video/fbmem.c
> > +++ b/drivers/video/fbmem.c
> > @@ -318,6 +318,13 @@ static struct logo_data {
> > const struct linux_logo *logo;
> > } fb_logo __read_mostly;
> >
> > +#define FB_LOGO_EX_NUM_MAX 10
> > +static struct logo_data_extra {
> > + const struct linux_logo *logo;
> > + unsigned int n;
> > +} fb_logo_ex[FB_LOGO_EX_NUM_MAX];
> > +static unsigned int fb_logo_ex_num;
> > +
> > static void fb_rotate_logo_ud(const u8 *in, u8 *out, u32 width, u32 height)
> > {
> > u32 size = width * height, i;
> > @@ -411,10 +418,22 @@ static void fb_do_show_logo(struct fb_in
> > }
> > }
> >
> > +#ifdef CONFIG_FB
>
> The #ifdef is redundant.
IIRC, it's needed for the CONFIG_FB=m case.
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 · B-1840 Londerzeel · Belgium
VAT BE 0413.825.160 · RPR Brussels
Fortis Bank Zaventem · Swift GEBABEBB08A · IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [patch 2/4] fbdev: Add fb_append_extra_logo()
2007-07-13 6:56 ` Geert Uytterhoeven
@ 2007-07-13 11:45 ` Antonino A. Daplas
2007-07-13 12:02 ` Geert Uytterhoeven
0 siblings, 1 reply; 19+ messages in thread
From: Antonino A. Daplas @ 2007-07-13 11:45 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
James Simmons, Andrew Morton, cbe-oss-dev
On Fri, 2007-07-13 at 08:56 +0200, Geert Uytterhoeven wrote:
> On Fri, 13 Jul 2007, Antonino A. Daplas wrote:
> > On Tue, 2007-07-10 at 14:27 +0200, Geert Uytterhoeven wrote:
> > > --- a/drivers/video/fbmem.c
> > > +++ b/drivers/video/fbmem.c
> > > @@ -318,6 +318,13 @@ static struct logo_data {
> > > const struct linux_logo *logo;
> > > } fb_logo __read_mostly;
> > >
> > > +#define FB_LOGO_EX_NUM_MAX 10
> > > +static struct logo_data_extra {
> > > + const struct linux_logo *logo;
> > > + unsigned int n;
> > > +} fb_logo_ex[FB_LOGO_EX_NUM_MAX];
> > > +static unsigned int fb_logo_ex_num;
> > > +
> > > static void fb_rotate_logo_ud(const u8 *in, u8 *out, u32 width, u32 height)
> > > {
> > > u32 size = width * height, i;
> > > @@ -411,10 +418,22 @@ static void fb_do_show_logo(struct fb_in
> > > }
> > > }
> > >
> > > +#ifdef CONFIG_FB
> >
> > The #ifdef is redundant.
>
> IIRC, it's needed for the CONFIG_FB=m case.
What would happen if CONFIG_FB=m? (We already have a patch that prevents
logo drawing if the driver or fbcon is modular)
Tony
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [patch 2/4] fbdev: Add fb_append_extra_logo()
2007-07-13 11:45 ` Antonino A. Daplas
@ 2007-07-13 12:02 ` Geert Uytterhoeven
0 siblings, 0 replies; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-13 12:02 UTC (permalink / raw)
To: Antonino A. Daplas
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
James Simmons, Andrew Morton, cbe-oss-dev
[-- Attachment #1: Type: TEXT/PLAIN, Size: 1895 bytes --]
On Fri, 13 Jul 2007, Antonino A. Daplas wrote:
> On Fri, 2007-07-13 at 08:56 +0200, Geert Uytterhoeven wrote:
> > On Fri, 13 Jul 2007, Antonino A. Daplas wrote:
> > > On Tue, 2007-07-10 at 14:27 +0200, Geert Uytterhoeven wrote:
> > > > --- a/drivers/video/fbmem.c
> > > > +++ b/drivers/video/fbmem.c
> > > > @@ -318,6 +318,13 @@ static struct logo_data {
> > > > const struct linux_logo *logo;
> > > > } fb_logo __read_mostly;
> > > >
> > > > +#define FB_LOGO_EX_NUM_MAX 10
> > > > +static struct logo_data_extra {
> > > > + const struct linux_logo *logo;
> > > > + unsigned int n;
> > > > +} fb_logo_ex[FB_LOGO_EX_NUM_MAX];
> > > > +static unsigned int fb_logo_ex_num;
> > > > +
> > > > static void fb_rotate_logo_ud(const u8 *in, u8 *out, u32 width, u32 height)
> > > > {
> > > > u32 size = width * height, i;
> > > > @@ -411,10 +418,22 @@ static void fb_do_show_logo(struct fb_in
> > > > }
> > > > }
> > > >
> > > > +#ifdef CONFIG_FB
> > >
> > > The #ifdef is redundant.
> >
> > IIRC, it's needed for the CONFIG_FB=m case.
>
> What would happen if CONFIG_FB=m? (We already have a patch that prevents
> logo drawing if the driver or fbcon is modular)
Then we use the dummy fb_append_extra_logo() in <linux/linux_logo.h>.
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 · B-1840 Londerzeel · Belgium
VAT BE 0413.825.160 · RPR Brussels
Fortis Bank Zaventem · Swift GEBABEBB08A · IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [patch 2/4] fbdev: Add fb_append_extra_logo()
2007-07-13 0:15 ` Antonino A. Daplas
2007-07-13 6:56 ` Geert Uytterhoeven
@ 2007-07-13 6:58 ` Geert Uytterhoeven
2007-07-13 11:53 ` Antonino A. Daplas
1 sibling, 1 reply; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-13 6:58 UTC (permalink / raw)
To: Antonino A. Daplas
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
James Simmons, Andrew Morton, cbe-oss-dev
[-- Attachment #1: Type: TEXT/PLAIN, Size: 1143 bytes --]
On Fri, 13 Jul 2007, Antonino A. Daplas wrote:
> On Tue, 2007-07-10 at 14:27 +0200, Geert Uytterhoeven wrote:
> > --- a/include/linux/linux_logo.h
> > +++ b/include/linux/linux_logo.h
> > @@ -33,5 +33,13 @@ struct linux_logo {
> > };
> >
> > extern const struct linux_logo *fb_find_logo(int depth);
> > +#if defined(CONFIG_LOGO) && defined(CONFIG_FB)
>
> The CONFIG_LOGO is also probably redundant, but that's arguable.
You can have CONFIG_LOGO without CONFIG_FB (depends on FB ||
SGI_NEWPORT_CONSOLE).
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 · B-1840 Londerzeel · Belgium
VAT BE 0413.825.160 · RPR Brussels
Fortis Bank Zaventem · Swift GEBABEBB08A · IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [patch 2/4] fbdev: Add fb_append_extra_logo()
2007-07-13 6:58 ` Geert Uytterhoeven
@ 2007-07-13 11:53 ` Antonino A. Daplas
0 siblings, 0 replies; 19+ messages in thread
From: Antonino A. Daplas @ 2007-07-13 11:53 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
James Simmons, Andrew Morton, cbe-oss-dev
On Fri, 2007-07-13 at 08:58 +0200, Geert Uytterhoeven wrote:
> On Fri, 13 Jul 2007, Antonino A. Daplas wrote:
> > On Tue, 2007-07-10 at 14:27 +0200, Geert Uytterhoeven wrote:
> > > --- a/include/linux/linux_logo.h
> > > +++ b/include/linux/linux_logo.h
> > > @@ -33,5 +33,13 @@ struct linux_logo {
> > > };
> > >
> > > extern const struct linux_logo *fb_find_logo(int depth);
> > > +#if defined(CONFIG_LOGO) && defined(CONFIG_FB)
> >
> > The CONFIG_LOGO is also probably redundant, but that's arguable.
>
> You can have CONFIG_LOGO without CONFIG_FB (depends on FB ||
> SGI_NEWPORT_CONSOLE).
>
Okay.
Tony
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
^ permalink raw reply [flat|nested] 19+ messages in thread
* [patch 3/4] fbdev: SPE helper penguin logo
2007-07-10 12:27 [patch 0/4] Cell SPE logos Geert Uytterhoeven
2007-07-10 12:27 ` [patch 1/4] fbdev: extract fb_show_logo_line() Geert Uytterhoeven
2007-07-10 12:27 ` [patch 2/4] fbdev: Add fb_append_extra_logo() Geert Uytterhoeven
@ 2007-07-10 12:27 ` Geert Uytterhoeven
2007-07-10 12:27 ` [patch 4/4] Cell: Draw SPE helper penguin logos Geert Uytterhoeven
2007-07-12 23:06 ` [patch 0/4] Cell SPE logos Andrew Morton
4 siblings, 0 replies; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-10 12:27 UTC (permalink / raw)
To: Antonino A. Daplas, Andrew Morton
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
Geert Uytterhoeven, James Simmons, cbe-oss-dev
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: spe-logo/logo_spe_clut224.diff --]
[-- Type: text/plain, Size: 16110 bytes --]
Add the SPE helper penguin logo
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Acked-By: James Simmons <jsimmons@infradead.org>
---
drivers/video/logo/Makefile | 2
drivers/video/logo/logo_spe_clut224.ppm | 283 ++++++++++++++++++++++++++++++++
2 files changed, 285 insertions(+)
--- a/drivers/video/logo/Makefile
+++ b/drivers/video/logo/Makefile
@@ -14,6 +14,8 @@ obj-$(CONFIG_LOGO_SUPERH_VGA16) += logo
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
obj-$(CONFIG_LOGO_M32R_CLUT224) += logo_m32r_clut224.o
+obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o
+
# How to generate logo's
# Use logo-cfiles to retrieve list of .c files to be built
--- /dev/null
+++ b/drivers/video/logo/logo_spe_clut224.ppm
@@ -0,0 +1,283 @@
+P3
+40 40
+255
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 6 6 6
+15 15 15 21 21 21 19 19 19 14 14 14 6 6 6 2 2 2
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 2 2 2 21 21 21 55 55 55
+56 56 56 54 54 54 53 53 53 60 60 60 56 56 56 25 25 25
+6 6 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 2 2 2 27 27 27 62 62 62 17 17 19
+2 2 6 2 2 6 2 2 6 2 2 6 16 16 18 57 57 57
+45 45 45 8 8 8 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 16 16 16 62 62 62 8 8 10 2 2 6
+2 2 6 2 2 6 2 2 6 12 12 14 67 67 67 16 16 17
+45 45 45 41 41 41 4 4 4 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 2 2 2 35 35 35 40 40 40 2 2 6 2 2 6
+2 2 6 2 2 6 2 2 6 15 15 17 70 70 70 27 27 27
+3 3 6 62 62 62 20 20 20 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 4 4 4 58 58 58 12 12 14 2 2 6 2 2 6
+2 2 6 2 2 6 2 2 6 4 4 7 4 4 7 2 2 6
+2 2 6 34 34 36 40 40 40 3 3 3 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 7 7 7 64 64 64 2 2 6 5 5 5 17 17 17
+3 3 6 2 2 6 2 2 6 15 15 15 21 21 21 7 7 10
+2 2 6 8 8 10 62 62 62 6 6 6 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 7 7 7 66 66 66 5 5 8 122 122 122 122 122 122
+9 9 11 3 3 6 104 96 81 179 179 179 122 122 122 13 13 13
+2 2 6 2 2 6 67 67 67 10 10 10 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 7 7 7 65 65 65 41 41 43 152 149 142 192 191 189
+48 48 49 23 23 24 228 210 210 86 86 86 192 191 189 59 59 61
+2 2 6 2 2 6 64 64 64 14 14 14 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 7 7 7 66 66 66 59 59 59 59 59 61 86 86 86
+99 84 50 78 66 28 152 149 142 5 5 8 122 122 122 104 96 81
+2 2 6 2 2 6 67 67 67 14 14 14 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 5 5 5 63 63 63 24 24 24 152 149 142 175 122 13
+238 184 12 220 170 13 226 181 52 112 86 32 194 165 151 46 46 47
+2 2 6 2 2 6 65 65 65 17 17 17 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 5 5 5 59 59 59 21 21 21 175 122 13 231 174 11
+240 192 13 237 183 61 240 192 13 240 192 13 234 179 16 81 64 9
+2 2 6 2 2 6 63 63 63 25 25 25 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 5 5 5 54 54 54 51 48 39 189 138 9 238 184 12
+240 192 13 240 192 13 240 192 13 215 161 11 207 152 19 81 64 9
+16 16 18 5 5 8 40 40 40 44 44 44 4 4 4 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 5 5 5 59 59 59 27 27 27 126 107 64 187 136 12
+220 170 13 201 147 20 189 138 9 198 154 46 199 182 125 70 70 70
+27 27 27 104 96 81 12 12 14 70 70 70 16 16 16 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 17 17 17 70 70 70 12 12 12 168 168 168 174 135 135
+175 122 13 175 122 13 178 151 83 192 191 189 233 233 233 179 179 179
+3 3 6 29 29 31 3 3 6 41 41 41 44 44 44 5 5 5
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+8 8 8 53 53 53 44 44 44 59 59 59 238 238 238 192 191 189
+192 191 189 192 191 189 221 205 205 240 240 240 253 253 253 253 253 253
+70 70 70 2 2 6 2 2 6 5 5 8 67 67 67 22 22 22
+2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 5 5
+38 38 38 56 56 56 7 7 9 221 205 205 253 253 253 233 233 233
+221 205 205 233 233 233 251 251 251 253 253 253 253 253 253 253 253 253
+192 191 189 2 2 6 2 2 6 2 2 6 25 25 25 64 64 64
+15 15 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 27 27 27
+66 66 66 7 7 9 86 86 86 252 252 252 253 253 253 253 253 253
+252 252 252 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253
+244 244 244 19 19 21 2 2 6 2 2 6 2 2 6 38 38 38
+54 54 54 10 10 10 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 14 14 14 62 62 62
+10 10 12 3 3 6 122 122 122 235 235 235 251 251 251 248 248 248
+235 235 235 248 248 248 252 252 252 246 246 246 233 233 233 237 228 228
+223 207 207 70 70 70 2 2 6 2 2 6 2 2 6 2 2 6
+46 46 47 38 38 38 4 4 4 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 2 2 2 33 33 33 44 44 44
+4 4 7 9 9 11 168 168 168 240 240 240 252 252 252 252 252 252
+246 246 246 253 253 253 253 253 253 251 251 251 245 241 241 233 233 233
+221 205 205 192 191 189 29 29 31 27 27 27 9 9 12 2 2 6
+3 3 6 65 65 65 15 15 15 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 6 6 6 59 59 59 19 19 21
+24 24 24 86 86 86 249 249 249 253 253 253 253 253 253 253 253 253
+253 253 253 228 210 210 241 230 230 253 253 253 253 253 253 253 253 253
+251 251 251 228 210 210 152 149 142 5 5 8 27 27 27 4 4 7
+2 2 6 46 46 47 34 34 34 2 2 2 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 16 16 16 67 67 67 19 19 21
+12 12 14 223 207 207 254 20 20 254 20 20 253 127 127 242 223 223
+254 20 20 253 127 127 254 48 48 242 223 223 254 86 86 254 20 20
+254 20 20 253 137 137 233 233 233 32 32 32 35 35 35 23 23 24
+2 2 6 15 15 15 60 60 60 6 6 6 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 4 4 4 38 38 38 48 48 49 22 22 22
+86 86 86 253 253 253 254 20 20 241 230 230 227 216 186 253 137 137
+253 137 137 253 253 253 253 137 137 253 137 137 254 48 48 253 253 253
+253 253 253 253 253 253 253 253 253 62 62 62 2 2 6 23 23 24
+2 2 6 2 2 6 62 62 62 17 17 17 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 14 14 14 70 70 70 14 14 14 16 16 18
+179 179 179 253 253 253 227 216 186 254 48 48 240 219 160 253 127 127
+254 20 20 253 137 137 254 86 86 231 203 141 254 20 20 254 20 20
+253 137 137 253 253 253 253 253 253 104 96 81 2 2 6 23 23 24
+2 2 6 2 2 6 46 46 47 27 27 27 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 4 4 4 39 39 39 42 42 43 19 19 21 13 13 13
+228 210 210 242 223 223 253 253 253 242 223 223 253 127 127 253 127 127
+253 127 127 253 127 127 253 137 137 253 253 253 254 48 48 253 253 253
+228 210 210 253 253 253 253 253 253 122 122 122 2 2 6 19 19 19
+2 2 6 2 2 6 39 39 39 38 38 38 3 3 3 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 8 8 8 60 60 60 3 3 6 33 33 33 38 38 38
+253 137 137 254 86 86 253 137 137 254 86 86 253 137 137 209 197 168
+253 127 127 253 253 253 253 253 253 253 253 253 253 127 127 254 86 86
+254 86 86 253 137 137 253 253 253 122 122 122 2 2 6 17 17 17
+2 2 6 2 2 6 34 34 36 42 42 43 3 3 3 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 13 13 13 59 59 59 2 2 6 9 9 12 56 56 56
+252 252 252 240 219 160 253 137 137 240 219 160 253 253 253 237 228 228
+254 86 86 253 253 253 253 253 253 253 253 253 253 253 253 242 223 223
+227 216 186 249 249 249 253 253 253 122 122 122 16 16 17 17 17 17
+12 12 14 3 3 6 39 39 39 38 38 38 3 3 3 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2
+5 5 5 22 22 22 104 96 81 187 136 12 207 152 19 51 48 39
+221 205 205 253 253 253 253 253 253 253 253 253 253 253 253 240 240 240
+250 247 243 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253
+253 253 253 250 247 243 240 219 160 99 84 50 5 5 8 2 2 6
+7 7 9 46 46 47 58 58 58 35 35 35 3 3 3 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 8 8 8 33 33 33
+58 58 58 86 86 86 170 136 53 239 182 13 246 190 14 220 170 13
+44 38 29 179 179 179 253 253 253 253 253 253 253 253 253 240 240 240
+253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253
+253 253 253 240 219 160 240 192 13 112 86 32 2 2 6 2 2 6
+3 3 6 41 33 20 220 170 13 53 53 53 4 4 4 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 2 2 2 32 32 32 150 116 44
+215 161 11 215 161 11 228 170 11 245 188 14 246 190 14 246 190 14
+187 136 12 9 9 11 122 122 122 251 251 251 253 253 253 253 253 253
+253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253
+248 248 248 211 196 135 239 182 13 175 122 13 6 5 6 2 2 6
+16 14 12 187 136 12 238 184 12 84 78 65 10 10 10 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 4 4 4 53 53 53 207 152 19
+242 185 13 245 188 14 246 190 14 246 190 14 246 190 14 246 190 14
+240 192 13 81 64 9 2 2 6 86 86 86 244 244 244 253 253 253
+253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253
+233 233 233 199 182 125 231 174 11 207 152 19 175 122 13 175 122 13
+201 147 20 239 182 13 244 187 14 150 116 44 35 35 35 6 6 6
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 5 5 5 53 53 53 201 147 20
+242 185 13 246 190 14 246 190 14 246 190 14 246 190 14 246 190 14
+246 190 14 220 170 13 13 11 10 2 2 6 152 149 142 253 253 253
+253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253
+235 235 235 199 182 125 228 170 11 234 177 12 226 168 11 226 168 11
+234 177 12 246 190 14 246 190 14 234 179 16 126 107 64 36 36 36
+6 6 6 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 3 3 3 48 48 49 189 142 35
+242 185 13 246 190 14 246 190 14 246 190 14 246 190 14 246 190 14
+246 190 14 246 190 14 140 112 39 36 36 36 192 191 189 253 253 253
+253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253
+192 191 189 112 86 32 226 168 11 244 187 14 244 187 14 244 187 14
+245 188 14 246 190 14 246 190 14 246 190 14 242 185 13 150 116 44
+27 27 27 2 2 2 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 6 6 6 58 58 58 189 142 35
+239 182 13 246 190 14 246 190 14 246 190 14 246 190 14 246 190 14
+246 190 14 246 190 14 239 188 14 209 197 168 253 253 253 253 253 253
+253 253 253 253 253 253 253 253 253 253 253 253 252 252 252 168 168 168
+16 16 18 97 67 8 228 170 11 245 188 14 246 190 14 246 190 14
+246 190 14 246 190 14 246 190 14 246 190 14 244 187 14 198 154 46
+35 35 35 3 3 3 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 13 13 13 84 78 65 215 161 11
+244 187 14 246 190 14 246 190 14 246 190 14 246 190 14 246 190 14
+246 190 14 246 190 14 238 184 12 187 136 12 168 168 168 244 244 244
+253 253 253 252 252 252 240 240 240 179 179 179 67 67 67 2 2 6
+2 2 6 97 67 8 228 170 11 246 190 14 246 190 14 246 190 14
+246 190 14 246 190 14 245 188 14 234 177 12 189 142 35 86 77 61
+16 16 16 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 13 13 13 103 92 56 207 152 19
+228 170 11 234 177 12 239 182 13 242 186 14 245 188 14 246 190 14
+246 190 14 246 190 14 239 182 13 189 138 9 41 33 20 10 10 12
+30 30 31 23 23 24 5 5 8 2 2 6 2 2 6 2 2 6
+4 4 6 112 86 32 215 161 11 245 188 14 246 190 14 245 188 14
+239 182 13 228 170 11 189 142 35 104 96 81 48 48 49 17 17 17
+2 2 2 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 5 5 5 39 39 39 103 92 56
+141 109 44 175 122 13 187 136 12 189 138 9 207 152 19 228 170 11
+239 182 13 239 182 13 215 161 11 175 122 13 41 33 20 2 2 6
+15 15 17 20 20 22 20 20 22 20 20 22 20 20 22 8 8 10
+4 4 6 97 67 8 189 138 9 231 174 11 239 182 13 226 168 11
+189 138 9 126 107 64 59 59 59 21 21 21 5 5 5 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 5 5 5 17 17 17
+34 34 34 57 57 57 84 78 65 103 92 56 125 101 41 140 112 39
+175 122 13 175 122 13 175 122 13 97 67 8 72 67 58 84 78 65
+60 60 60 56 56 56 56 56 56 56 56 56 57 57 57 65 65 65
+86 86 86 95 73 34 175 122 13 187 136 12 187 136 12 175 122 13
+103 92 56 41 41 41 10 10 10 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+2 2 2 4 4 4 12 12 12 24 24 24 40 40 40 70 70 70
+86 77 61 95 73 34 88 72 41 72 67 58 36 36 36 10 10 10
+5 5 5 5 5 5 5 5 5 4 4 4 5 5 5 6 6 6
+22 22 22 61 61 59 88 72 41 112 86 32 112 86 32 84 78 65
+32 32 32 6 6 6 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 10 10 10
+21 21 21 33 33 33 31 31 31 16 16 16 2 2 2 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+2 2 2 12 12 12 30 30 31 40 40 40 32 32 32 16 16 16
+2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0
--
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village ������ Da Vincilaan 7-D1 ������ B-1935 Zaventem ������ Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 ������ B-1840 Londerzeel ������ Belgium
VAT BE 0413.825.160 ������ RPR Brussels
Fortis Bank Zaventem ������ Swift GEBABEBB08A ������ IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread
* [patch 4/4] Cell: Draw SPE helper penguin logos
2007-07-10 12:27 [patch 0/4] Cell SPE logos Geert Uytterhoeven
` (2 preceding siblings ...)
2007-07-10 12:27 ` [patch 3/4] fbdev: SPE helper penguin logo Geert Uytterhoeven
@ 2007-07-10 12:27 ` Geert Uytterhoeven
2007-07-10 16:54 ` [Cbe-oss-dev] " Arnd Bergmann
2007-07-12 23:06 ` [patch 0/4] Cell SPE logos Andrew Morton
4 siblings, 1 reply; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-10 12:27 UTC (permalink / raw)
To: Antonino A. Daplas, Andrew Morton
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
Geert Uytterhoeven, James Simmons, cbe-oss-dev
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: spe-logo/logo-extra-spe-glue-2.6.21.diff --]
[-- Type: text/plain, Size: 3144 bytes --]
Let spu_management_ops.enumerate_spus() return the number of found SPEs
and use that information to draw some little helper penguin logos.
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Acked-By: James Simmons <jsimmons@infradead.org>
---
arch/powerpc/platforms/cell/spu_base.c | 15 ++++++++++++++-
arch/powerpc/platforms/cell/spu_manage.c | 4 +++-
arch/powerpc/platforms/ps3/spu.c | 6 ++++--
3 files changed, 21 insertions(+), 4 deletions(-)
--- a/arch/powerpc/platforms/cell/spu_base.c
+++ b/arch/powerpc/platforms/cell/spu_base.c
@@ -31,6 +31,7 @@
#include <linux/mm.h>
#include <linux/io.h>
#include <linux/mutex.h>
+#include <linux/linux_logo.h>
#include <asm/spu.h>
#include <asm/spu_priv1.h>
#include <asm/xmon.h>
@@ -603,12 +604,24 @@ static int __init init_spu_base(void)
ret = spu_enumerate_spus(create_spu);
- if (ret) {
+ if (ret < 0) {
printk(KERN_WARNING "%s: Error initializing spus\n",
__FUNCTION__);
goto out_unregister_sysdev_class;
}
+ if (ret > 0) {
+ /*
+ * We cannot put the forward declaration in
+ * <linux/linux_logo.h> because of conflicting session type
+ * conflicts for const and __initdata with different compiler
+ * versions
+ */
+ extern const struct linux_logo logo_spe_clut224;
+
+ fb_append_extra_logo(&logo_spe_clut224, ret);
+ }
+
xmon_register_spus(&spu_full_list);
return 0;
--- a/arch/powerpc/platforms/cell/spu_manage.c
+++ b/arch/powerpc/platforms/cell/spu_manage.c
@@ -279,6 +279,7 @@ static int __init of_enumerate_spus(int
{
int ret;
struct device_node *node;
+ unsigned int n = 0;
ret = -ENODEV;
for (node = of_find_node_by_type(NULL, "spe");
@@ -289,8 +290,9 @@ static int __init of_enumerate_spus(int
__FUNCTION__, node->name);
break;
}
+ n++;
}
- return ret;
+ return ret ? ret : n;
}
static int __init of_create_spu(struct spu *spu, void *data)
--- a/arch/powerpc/platforms/ps3/spu.c
+++ b/arch/powerpc/platforms/ps3/spu.c
@@ -400,11 +400,13 @@ static int __init ps3_enumerate_spus(int
}
}
- if (result)
+ if (result) {
printk(KERN_WARNING "%s:%d: Error initializing spus\n",
__func__, __LINE__);
+ return result;
+ }
- return result;
+ return num_resource_id;
}
const struct spu_management_ops spu_management_ps3_ops = {
--
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village ������ Da Vincilaan 7-D1 ������ B-1935 Zaventem ������ Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 ������ B-1840 Londerzeel ������ Belgium
VAT BE 0413.825.160 ������ RPR Brussels
Fortis Bank Zaventem ������ Swift GEBABEBB08A ������ IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [Cbe-oss-dev] [patch 4/4] Cell: Draw SPE helper penguin logos
2007-07-10 12:27 ` [patch 4/4] Cell: Draw SPE helper penguin logos Geert Uytterhoeven
@ 2007-07-10 16:54 ` Arnd Bergmann
0 siblings, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2007-07-10 16:54 UTC (permalink / raw)
To: cbe-oss-dev
Cc: James Simmons, Antonino A. Daplas, linux-kernel,
Geert Uytterhoeven, linux-fbdev-devel, Andrew Morton
On Tuesday 10 July 2007, Geert Uytterhoeven wrote:
> Let spu_management_ops.enumerate_spus() return the number of found SPEs
> and use that information to draw some little helper penguin logos.
>
> Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
> Cc: Arnd Bergmann <arnd@arndb.de>
> Acked-By: James Simmons <jsimmons@infradead.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [patch 0/4] Cell SPE logos
2007-07-10 12:27 [patch 0/4] Cell SPE logos Geert Uytterhoeven
` (3 preceding siblings ...)
2007-07-10 12:27 ` [patch 4/4] Cell: Draw SPE helper penguin logos Geert Uytterhoeven
@ 2007-07-12 23:06 ` Andrew Morton
2007-07-13 8:52 ` Geert Uytterhoeven
4 siblings, 1 reply; 19+ messages in thread
From: Andrew Morton @ 2007-07-12 23:06 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Antonino A. Daplas, Arnd Bergmann, James Simmons,
linux-fbdev-devel, cbe-oss-dev, linux-kernel, Paul Mackerras,
Benjamin Herrenschmidt
On Tue, 10 Jul 2007 14:27:02 +0200
Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> wrote:
> The Cell Broadband Engine contains a 64-bit PowerPC core with 2 hardware
> threads (called PPEs) and 8 Synergistic Processing Engines (called SPEs).
> When booting Linux, 2 penguins logos are shown on the graphical console by
> the standard frame buffer console logo code.
>
> To emphasize the existence of the SPEs (which can be used under Linux), we
> added a second row of (smaller) helper penguin logos, one for each SPE.
>
> A sample screenshot can be found at
> http://www.kernel.org/pub/linux/kernel/people/geoff/cell/debian-penguin-shot.png
> (or on the ps3linux T-shirts we wore at OLS :-)
Does this mean I'll get penguins on my PS3 now?
> Summaries:
> [1] fbdev: extract fb_show_logo_line()
> [2] fbdev: Add fb_append_extra_logo()
This one does give additional code and data to all fbdev users while only
being useful to cell machines. Should we fix that?
> [3] fbdev: SPE helper penguin logo
> [4] Cell: Draw SPE helper penguin logos
I queued #4 up along with the fbdev patches, even though it isn't really an
fbdev patch.
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [patch 0/4] Cell SPE logos
2007-07-12 23:06 ` [patch 0/4] Cell SPE logos Andrew Morton
@ 2007-07-13 8:52 ` Geert Uytterhoeven
2007-07-13 9:06 ` Andrew Morton
2007-07-13 10:05 ` [Cbe-oss-dev] " Arnd Bergmann
0 siblings, 2 replies; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-13 8:52 UTC (permalink / raw)
To: Andrew Morton
Cc: linux-fbdev-devel, Antonino A. Daplas, Arnd Bergmann,
Benjamin Herrenschmidt, linux-kernel, Paul Mackerras,
James Simmons, cbe-oss-dev
[-- Attachment #1: Type: TEXT/PLAIN, Size: 2021 bytes --]
On Thu, 12 Jul 2007, Andrew Morton wrote:
> On Tue, 10 Jul 2007 14:27:02 +0200
> Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> wrote:
>
> > The Cell Broadband Engine contains a 64-bit PowerPC core with 2 hardware
> > threads (called PPEs) and 8 Synergistic Processing Engines (called SPEs).
> > When booting Linux, 2 penguins logos are shown on the graphical console by
> > the standard frame buffer console logo code.
> >
> > To emphasize the existence of the SPEs (which can be used under Linux), we
> > added a second row of (smaller) helper penguin logos, one for each SPE.
> >
> > A sample screenshot can be found at
> > http://www.kernel.org/pub/linux/kernel/people/geoff/cell/debian-penguin-shot.png
> > (or on the ps3linux T-shirts we wore at OLS :-)
>
> Does this mean I'll get penguins on my PS3 now?
Sure!
> > Summaries:
> > [1] fbdev: extract fb_show_logo_line()
> > [2] fbdev: Add fb_append_extra_logo()
>
> This one does give additional code and data to all fbdev users while only
> being useful to cell machines. Should we fix that?
I can protect it by #ifdef CONFIG_PPC_CELL (as long as there are no other
users). Would that be OK?
> > [3] fbdev: SPE helper penguin logo
> > [4] Cell: Draw SPE helper penguin logos
>
> I queued #4 up along with the fbdev patches, even though it isn't really an
> fbdev patch.
OK, thanks!
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 · B-1840 Londerzeel · Belgium
VAT BE 0413.825.160 · RPR Brussels
Fortis Bank Zaventem · Swift GEBABEBB08A · IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [patch 0/4] Cell SPE logos
2007-07-13 8:52 ` Geert Uytterhoeven
@ 2007-07-13 9:06 ` Andrew Morton
2007-07-13 9:09 ` Geert Uytterhoeven
2007-07-13 10:05 ` [Cbe-oss-dev] " Arnd Bergmann
1 sibling, 1 reply; 19+ messages in thread
From: Andrew Morton @ 2007-07-13 9:06 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Antonino A. Daplas, Arnd Bergmann, James Simmons,
linux-fbdev-devel, cbe-oss-dev, linux-kernel, Paul Mackerras,
Benjamin Herrenschmidt
On Fri, 13 Jul 2007 10:52:10 +0200 (CEST) Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> wrote:
> > > Summaries:
> > > [1] fbdev: extract fb_show_logo_line()
> > > [2] fbdev: Add fb_append_extra_logo()
> >
> > This one does give additional code and data to all fbdev users while only
> > being useful to cell machines. Should we fix that?
>
> I can protect it by #ifdef CONFIG_PPC_CELL (as long as there are no other
> users). Would that be OK?
umm, your call. If that makes sense, sure.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [patch 0/4] Cell SPE logos
2007-07-13 9:06 ` Andrew Morton
@ 2007-07-13 9:09 ` Geert Uytterhoeven
2007-07-13 12:30 ` Benjamin Herrenschmidt
0 siblings, 1 reply; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-13 9:09 UTC (permalink / raw)
To: Andrew Morton
Cc: linux-fbdev-devel, Antonino A. Daplas, Arnd Bergmann,
Benjamin Herrenschmidt, linux-kernel, Paul Mackerras,
James Simmons, cbe-oss-dev
[-- Attachment #1: Type: TEXT/PLAIN, Size: 1360 bytes --]
On Fri, 13 Jul 2007, Andrew Morton wrote:
> On Fri, 13 Jul 2007 10:52:10 +0200 (CEST) Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> wrote:
>
> > > > Summaries:
> > > > [1] fbdev: extract fb_show_logo_line()
> > > > [2] fbdev: Add fb_append_extra_logo()
> > >
> > > This one does give additional code and data to all fbdev users while only
> > > being useful to cell machines. Should we fix that?
> >
> > I can protect it by #ifdef CONFIG_PPC_CELL (as long as there are no other
> > users). Would that be OK?
>
> umm, your call. If that makes sense, sure.
I just don't like putting platform-specific checks in common code.
Perhaps I better add CONFIG_FB_LOGO_EXTRA and make it depend on
CONFIG_PPC_CELL?
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 · B-1840 Londerzeel · Belgium
VAT BE 0413.825.160 · RPR Brussels
Fortis Bank Zaventem · Swift GEBABEBB08A · IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [patch 0/4] Cell SPE logos
2007-07-13 9:09 ` Geert Uytterhoeven
@ 2007-07-13 12:30 ` Benjamin Herrenschmidt
0 siblings, 0 replies; 19+ messages in thread
From: Benjamin Herrenschmidt @ 2007-07-13 12:30 UTC (permalink / raw)
To: linux-fbdev-devel
Cc: James Simmons, Antonino A. Daplas, Arnd Bergmann, linux-kernel,
Paul Mackerras, Andrew Morton, cbe-oss-dev
On Fri, 2007-07-13 at 11:09 +0200, Geert Uytterhoeven wrote:
> On Fri, 13 Jul 2007, Andrew Morton wrote:
> > On Fri, 13 Jul 2007 10:52:10 +0200 (CEST) Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> wrote:
> >
> > > > > Summaries:
> > > > > [1] fbdev: extract fb_show_logo_line()
> > > > > [2] fbdev: Add fb_append_extra_logo()
> > > >
> > > > This one does give additional code and data to all fbdev users while only
> > > > being useful to cell machines. Should we fix that?
> > >
> > > I can protect it by #ifdef CONFIG_PPC_CELL (as long as there are no other
> > > users). Would that be OK?
> >
> > umm, your call. If that makes sense, sure.
>
> I just don't like putting platform-specific checks in common code.
>
> Perhaps I better add CONFIG_FB_LOGO_EXTRA and make it depend on
> CONFIG_PPC_CELL?
I hate depends when it's not a dependency... the logo extra code doesn't
-depend- technically on cell (it doesn't call cell only stuff). However,
cell wants it enabled, thus I'd rather use either the "default y if
PP_CELL" construct or select it from the cell option.
Ben.
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Cbe-oss-dev] [patch 0/4] Cell SPE logos
2007-07-13 8:52 ` Geert Uytterhoeven
2007-07-13 9:06 ` Andrew Morton
@ 2007-07-13 10:05 ` Arnd Bergmann
1 sibling, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2007-07-13 10:05 UTC (permalink / raw)
To: cbe-oss-dev
Cc: James Simmons, Antonino A. Daplas, linux-kernel,
Geert Uytterhoeven, linux-fbdev-devel, Andrew Morton
On Friday 13 July 2007, Geert Uytterhoeven wrote:
> > > Summaries:
> > > [1] fbdev: extract fb_show_logo_line()
> > > [2] fbdev: Add fb_append_extra_logo()
> >
> > This one does give additional code and data to all fbdev users while only
> > being useful to cell machines. Should we fix that?
>
> I can protect it by #ifdef CONFIG_PPC_CELL (as long as there are no other
> users). Would that be OK?
If you want to have an #ifdef in there, it should probably be
CONFIG_FB_EXTRA_LOGO and have that autoselected by CONFIG_SPU_BASE.
A nicer alternative to the #ifdef might be to mark it __init, so
that it will just go away after boot. Not sure if that's safe
though.
Arnd <><
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
^ permalink raw reply [flat|nested] 19+ messages in thread
* [patch 2/4] fbdev: Add fb_append_extra_logo()
2007-07-16 13:55 Geert Uytterhoeven
@ 2007-07-16 13:55 ` Geert Uytterhoeven
0 siblings, 0 replies; 19+ messages in thread
From: Geert Uytterhoeven @ 2007-07-16 13:55 UTC (permalink / raw)
To: Antonino A. Daplas, Andrew Morton
Cc: linux-fbdev-devel, Geoff Levand, Arnd Bergmann, linux-kernel,
Geert Uytterhoeven, James Simmons, cbe-oss-dev
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: spe-logo/fb_append_extra_logo.diff --]
[-- Type: text/plain, Size: 7447 bytes --]
Add fb_append_extra_logo(), to append extra lines of logos below the standard
Linux logo.
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Acked-By: James Simmons <jsimmons@infradead.org>
---
Changes since last version:
- Introduce CONFIG_FB_LOGO_EXTRA to protect all new code
- Move fb_prepare_logo() down to satisfy declaration dependencies
drivers/video/fbmem.c | 210 ++++++++++++++++++++++++++++++---------------
drivers/video/logo/Kconfig | 4
include/linux/linux_logo.h | 8 +
3 files changed, 154 insertions(+), 68 deletions(-)
--- a/drivers/video/fbmem.c
+++ b/drivers/video/fbmem.c
@@ -411,72 +411,6 @@ static void fb_do_show_logo(struct fb_in
}
}
-int fb_prepare_logo(struct fb_info *info, int rotate)
-{
- int depth = fb_get_color_depth(&info->var, &info->fix);
- int yres;
-
- memset(&fb_logo, 0, sizeof(struct logo_data));
-
- if (info->flags & FBINFO_MISC_TILEBLITTING ||
- info->flags & FBINFO_MODULE)
- return 0;
-
- if (info->fix.visual == FB_VISUAL_DIRECTCOLOR) {
- depth = info->var.blue.length;
- if (info->var.red.length < depth)
- depth = info->var.red.length;
- if (info->var.green.length < depth)
- depth = info->var.green.length;
- }
-
- if (info->fix.visual == FB_VISUAL_STATIC_PSEUDOCOLOR && depth > 4) {
- /* assume console colormap */
- depth = 4;
- }
-
- if (depth >= 8) {
- switch (info->fix.visual) {
- case FB_VISUAL_TRUECOLOR:
- fb_logo.needs_truepalette = 1;
- break;
- case FB_VISUAL_DIRECTCOLOR:
- fb_logo.needs_directpalette = 1;
- fb_logo.needs_cmapreset = 1;
- break;
- case FB_VISUAL_PSEUDOCOLOR:
- fb_logo.needs_cmapreset = 1;
- break;
- }
- }
-
- /* Return if no suitable logo was found */
- fb_logo.logo = fb_find_logo(depth);
-
- if (!fb_logo.logo) {
- return 0;
- }
-
- if (rotate == FB_ROTATE_UR || rotate == FB_ROTATE_UD)
- yres = info->var.yres;
- else
- yres = info->var.xres;
-
- if (fb_logo.logo->height > yres) {
- fb_logo.logo = NULL;
- return 0;
- }
-
- /* What depth we asked for might be different from what we get */
- if (fb_logo.logo->type == LINUX_LOGO_CLUT224)
- fb_logo.depth = 8;
- else if (fb_logo.logo->type == LINUX_LOGO_VGA16)
- fb_logo.depth = 4;
- else
- fb_logo.depth = 1;
- return fb_logo.logo->height;
-}
-
static int fb_show_logo_line(struct fb_info *info, int rotate,
const struct linux_logo *logo, int y,
unsigned int n)
@@ -545,10 +479,150 @@ static int fb_show_logo_line(struct fb_i
return logo->height;
}
+
+#ifdef CONFIG_FB_LOGO_EXTRA
+
+#define FB_LOGO_EX_NUM_MAX 10
+static struct logo_data_extra {
+ const struct linux_logo *logo;
+ unsigned int n;
+} fb_logo_ex[FB_LOGO_EX_NUM_MAX];
+static unsigned int fb_logo_ex_num;
+
+void fb_append_extra_logo(const struct linux_logo *logo, unsigned int n)
+{
+ if (!n || fb_logo_ex_num == FB_LOGO_EX_NUM_MAX)
+ return;
+
+ fb_logo_ex[fb_logo_ex_num].logo = logo;
+ fb_logo_ex[fb_logo_ex_num].n = n;
+ fb_logo_ex_num++;
+}
+
+static int fb_prepare_extra_logos(struct fb_info *info, unsigned int height,
+ unsigned int yres)
+{
+ unsigned int i;
+
+ /* FIXME: logo_ex supports only truecolor fb. */
+ if (info->fix.visual != FB_VISUAL_TRUECOLOR)
+ fb_logo_ex_num = 0;
+
+ for (i = 0; i < fb_logo_ex_num; i++) {
+ height += fb_logo_ex[i].logo->height;
+ if (height > yres) {
+ height -= fb_logo_ex[i].logo->height;
+ fb_logo_ex_num = i;
+ break;
+ }
+ }
+ return height;
+}
+
+static int fb_show_extra_logos(struct fb_info *info, int y, int rotate)
+{
+ unsigned int i;
+
+ for (i = 0; i < fb_logo_ex_num; i++)
+ y += fb_show_logo_line(info, rotate,
+ fb_logo_ex[i].logo, y, fb_logo_ex[i].n);
+
+ return y;
+}
+
+#else /* !CONFIG_FB_LOGO_EXTRA */
+
+static inline int fb_prepare_extra_logos(struct fb_info *info,
+ unsigned int height,
+ unsigned int yres)
+{
+ return height;
+}
+
+static inline int fb_show_extra_logos(struct fb_info *info, int y, int rotate)
+{
+ return y;
+}
+
+#endif /* CONFIG_FB_LOGO_EXTRA */
+
+
+int fb_prepare_logo(struct fb_info *info, int rotate)
+{
+ int depth = fb_get_color_depth(&info->var, &info->fix);
+ unsigned int yres;
+
+ memset(&fb_logo, 0, sizeof(struct logo_data));
+
+ if (info->flags & FBINFO_MISC_TILEBLITTING ||
+ info->flags & FBINFO_MODULE)
+ return 0;
+
+ if (info->fix.visual == FB_VISUAL_DIRECTCOLOR) {
+ depth = info->var.blue.length;
+ if (info->var.red.length < depth)
+ depth = info->var.red.length;
+ if (info->var.green.length < depth)
+ depth = info->var.green.length;
+ }
+
+ if (info->fix.visual == FB_VISUAL_STATIC_PSEUDOCOLOR && depth > 4) {
+ /* assume console colormap */
+ depth = 4;
+ }
+
+ if (depth >= 8) {
+ switch (info->fix.visual) {
+ case FB_VISUAL_TRUECOLOR:
+ fb_logo.needs_truepalette = 1;
+ break;
+ case FB_VISUAL_DIRECTCOLOR:
+ fb_logo.needs_directpalette = 1;
+ fb_logo.needs_cmapreset = 1;
+ break;
+ case FB_VISUAL_PSEUDOCOLOR:
+ fb_logo.needs_cmapreset = 1;
+ break;
+ }
+ }
+
+ /* Return if no suitable logo was found */
+ fb_logo.logo = fb_find_logo(depth);
+
+ if (!fb_logo.logo) {
+ return 0;
+ }
+
+ if (rotate == FB_ROTATE_UR || rotate == FB_ROTATE_UD)
+ yres = info->var.yres;
+ else
+ yres = info->var.xres;
+
+ if (fb_logo.logo->height > yres) {
+ fb_logo.logo = NULL;
+ return 0;
+ }
+
+ /* What depth we asked for might be different from what we get */
+ if (fb_logo.logo->type == LINUX_LOGO_CLUT224)
+ fb_logo.depth = 8;
+ else if (fb_logo.logo->type == LINUX_LOGO_VGA16)
+ fb_logo.depth = 4;
+ else
+ fb_logo.depth = 1;
+
+ return fb_prepare_extra_logos(info, fb_logo.logo->height, yres);
+}
+
int fb_show_logo(struct fb_info *info, int rotate)
{
- return fb_show_logo_line(info, rotate, fb_logo.logo, 0,
- num_online_cpus());
+ int y;
+
+ y = fb_show_logo_line(info, rotate, fb_logo.logo, 0,
+ num_online_cpus());
+ y = fb_show_extra_logos(info, y, rotate);
+
+ return y;
}
#else
int fb_prepare_logo(struct fb_info *info, int rotate) { return 0; }
--- a/drivers/video/logo/Kconfig
+++ b/drivers/video/logo/Kconfig
@@ -10,6 +10,10 @@ menuconfig LOGO
if LOGO
+config FB_LOGO_EXTRA
+ bool
+ depends on FB
+
config LOGO_LINUX_MONO
bool "Standard black and white Linux logo"
default y
--- a/include/linux/linux_logo.h
+++ b/include/linux/linux_logo.h
@@ -33,5 +33,13 @@ struct linux_logo {
};
extern const struct linux_logo *fb_find_logo(int depth);
+#ifdef CONFIG_FB_LOGO_EXTRA
+extern void fb_append_extra_logo(const struct linux_logo *logo,
+ unsigned int n);
+#else
+static inline void fb_append_extra_logo(const struct linux_logo *logo,
+ unsigned int n)
+{}
+#endif
#endif /* _LINUX_LINUX_LOGO_H */
--
With kind regards,
Geert Uytterhoeven
Software Architect
Sony Network and Software Technology Center Europe
The Corporate Village ������ Da Vincilaan 7-D1 ������ B-1935 Zaventem ������ Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven@sonycom.com
Internet: http://www.sony-europe.com/
Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 ������ B-1840 Londerzeel ������ Belgium
VAT BE 0413.825.160 ������ RPR Brussels
Fortis Bank Zaventem ������ Swift GEBABEBB08A ������ IBAN BE39001382358619
[-- Attachment #2: Type: text/plain, Size: 286 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
[-- Attachment #3: Type: text/plain, Size: 182 bytes --]
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel
^ permalink raw reply [flat|nested] 19+ messages in thread