The vgafb base address is relative to the SDRAM base address.
uchar vgafb_framebuffer[FB_SIZE*2] __attribute__((aligned(32)));
void fbdev_init(void) {
- VGAFB_BASEADDRESS = (unsigned int)vgafb_framebuffer;
+ //VGAFB_BASEADDRESS = (unsigned int)vgafb_framebuffer;
+ VGAFB_BASEADDRESS = (unsigned int)vgafb_framebuffer & 0x7ffffff;
VGAFB_HRES = PIXELS_PER_ROW;
VGAFB_VRES = PIXELS_PER_COL;
VGAFB_CONTROL = 0;
/* The baseaddress has to be 32 byte aligned. For common screen
* resolutions this requirement is met if the addr points to the
* beginning of a row. */
- VGAFB_BASEADDRESS = (unsigned int)addr;
+ VGAFB_BASEADDRESS = (unsigned int)addr & 0x7ffffff;
}
#endif