Skip to contentSkip to conversation

atmel_lcdfb: fix initialization of a pre-allocated framebuffer

PATCH New Nicolas Ferre 1 participant 1 message May 7, 2008

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 atmel_lcdfb: fix initialization of a pre-allocated framebuffer

Fix initialization of framebuffer not calling ioremap_writecombine() function and not using internal SRAM for at91sam9rl.

This is a little rework of the
"Don't initialize a pre-allocated framebuffer" patch that corrects the call to ioremap_writecombine() function.

It also cuts the use of internal SRAM for at91sam9rl : it is a bit small for a framebuffer.

---
arch/arm/mach-at91/at91sam9261_devices.c | 4 ++--
arch/arm/mach-at91/at91sam9rl_devices.c | 21 ---------------------

2 files changed, 2 insertions(+), 23 deletions(-)
arch/arm/mach-at91/at91sam9261_devices.c +0 -0
index 728bb8f..0babb64 100644
@@ -544,10 +544,10 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_info *data)
		struct resource *fb_res = &lcdc_resources[2];
		size_t fb_len = fb_res->end - fb_res->start + 1;

- fb = ioremap_writecombine(fb_res->start, fb_len);

+		fb = ioremap(fb_res->start, fb_len);
		if (fb) {
			memset(fb, 0, fb_len);
-			iounmap(fb, fb_len);
+			iounmap(fb);
		}
	}
	lcdc_data = *data;
arch/arm/mach-at91/at91sam9rl_devices.c +0 -0
index 0546898..450db30 100644
@@ -332,13 +332,6 @@ static struct resource lcdc_resources[] = {
		.end	= AT91SAM9RL_ID_LCDC,
		.flags	= IORESOURCE_IRQ,
	},

-#if defined(CONFIG_FB_INTSRAM)
- [2] = {
- .start = AT91SAM9RL_SRAM_BASE,
- .end = AT91SAM9RL_SRAM_BASE + AT91SAM9RL_SRAM_SIZE - 1,
- .flags = IORESOURCE_MEM,
- },
-#endif
};

static struct platform_device at91_lcdc_device = {
@@ -381,20 +374,6 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_info *data)

	at91_set_B_periph(AT91_PIN_PC24, 0);	/* LCDD22 */
	at91_set_B_periph(AT91_PIN_PC25, 0);	/* LCDD23 */

-#ifdef CONFIG_FB_INTSRAM
- {
- void __iomem *fb;
- struct resource *fb_res = &lcdc_resources[2];
- size_t fb_len = fb_res->end - fb_res->start + 1;
-
- fb = ioremap_writecombine(fb_res->start, fb_len);
- if (fb) {
- memset(fb, 0, fb_len);
- iounmap(fb, fb_len);
- }
- }
-#endif
-

	lcdc_data = *data;
	platform_device_register(&at91_lcdc_device);
}
Signature · 1 line
1.5.3.7