public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] Allocating a frame buffer in memory
@ 2009-04-10 20:13 Steven Zedeck
  2009-04-17 19:32 ` Jean-Christophe PLAGNIOL-VILLARD
  0 siblings, 1 reply; 2+ messages in thread
From: Steven Zedeck @ 2009-04-10 20:13 UTC (permalink / raw)
  To: u-boot


Hi,
I am trying to allocate a frame buffer for my LCD code. I think I understand
how to set up the LCC controller in the Atmel AT91SAM9. So thats not the
issue, at least not yet. I need to understand how UBoot allocates a block of
memory for the buffer.

My TFT/LCD is 320x240 and in 24 bit mode, so 3 bytes per pixel. So I think I
need 320x240x3 total bytes. Correct?

In my lib_arm/board.c file, there is the following:
#ifdef CONFIG_LCD
	/* board init may have inited fb_base */
	if (!gd->fb_base) {
#		ifndef PAGE_SIZE
#		  define PAGE_SIZE 4096
#		endif
		/*
		 * reserve memory for LCD display (always full pages)
		 */
		/* bss_end is defined in the board-specific linker script */
		addr = (_bss_end + (PAGE_SIZE - 1)) & ~(PAGE_SIZE - 1);
		size = lcd_setmem (addr);
		gd->fb_base = addr;
	}
#endif /* CONFIG_LCD */

Then in lcd.c, there is lcd_setmem which displays:
Reserving 600k for LCD Framebuffer at: 0x23E91000

Even though I call lcd_setmem with an address of: 0x23F27000

Which is the address that I pass to the Atmel LCD controller DMA Address ?
I have been using this: 0x23F27000

Thanks,
Steve
-- 
View this message in context: http://www.nabble.com/Allocating-a-frame-buffer-in-memory-tp22993711p22993711.html
Sent from the Uboot - Users mailing list archive at Nabble.com.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [U-Boot] Allocating a frame buffer in memory
  2009-04-10 20:13 [U-Boot] Allocating a frame buffer in memory Steven Zedeck
@ 2009-04-17 19:32 ` Jean-Christophe PLAGNIOL-VILLARD
  0 siblings, 0 replies; 2+ messages in thread
From: Jean-Christophe PLAGNIOL-VILLARD @ 2009-04-17 19:32 UTC (permalink / raw)
  To: u-boot

On 13:13 Fri 10 Apr     , Steven Zedeck wrote:
> 
> Hi,
> I am trying to allocate a frame buffer for my LCD code. I think I understand
> how to set up the LCC controller in the Atmel AT91SAM9. So thats not the
> issue, at least not yet. I need to understand how UBoot allocates a block of
> memory for the buffer.
> 
> My TFT/LCD is 320x240 and in 24 bit mode, so 3 bytes per pixel. So I think I
> need 320x240x3 total bytes. Correct?
> 
> In my lib_arm/board.c file, there is the following:
> #ifdef CONFIG_LCD
> 	/* board init may have inited fb_base */
> 	if (!gd->fb_base) {
> #		ifndef PAGE_SIZE
> #		  define PAGE_SIZE 4096
> #		endif
> 		/*
> 		 * reserve memory for LCD display (always full pages)
> 		 */
> 		/* bss_end is defined in the board-specific linker script */
> 		addr = (_bss_end + (PAGE_SIZE - 1)) & ~(PAGE_SIZE - 1);
> 		size = lcd_setmem (addr);
> 		gd->fb_base = addr;
> 	}
> #endif /* CONFIG_LCD */
> 
> Then in lcd.c, there is lcd_setmem which displays:
> Reserving 600k for LCD Framebuffer at: 0x23E91000
> 
> Even though I call lcd_setmem with an address of: 0x23F27000
> 
> Which is the address that I pass to the Atmel LCD controller DMA Address ?
> I have been using this: 0x23F27000
on at91sam9 to specify the frambuffer base address you will just need to fill
 gd->fb_base = AT91SAM9263_SRAM0_BASE;
 or something else as done with the PSRAM for the pm9263
 in your board init and specify your "vidinfo_t panel_info"
 that's all (maybe you will need to check the LCD pin out configuration)

Best Regards,
J.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-04-17 19:32 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-10 20:13 [U-Boot] Allocating a frame buffer in memory Steven Zedeck
2009-04-17 19:32 ` Jean-Christophe PLAGNIOL-VILLARD

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox