tegra132: remove framebuffer reservation

There's no need to reserve the framebuffer within coreboot. If the
payloads need a framebuffer they can allocate one themselves.

BUG=chrome-os-partner:31355
BRANCH=None
TEST=Built and booted on ryu.

Original-Change-Id: I8d8b159e7fdd877e392193c5474a7518e9b3ad21
Original-Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/221726
Original-Reviewed-by: Furquan Shaikh <furquan@chromium.org>
Original-Tested-by: Furquan Shaikh <furquan@chromium.org>
Original-Commit-Queue: Furquan Shaikh <furquan@chromium.org>

(cherry picked from commit 1ff8da9fed414fceeda3f94b296312f4531b320f)
Signed-off-by: Aaron Durbin <adurbin@chromium.org>

Change-Id: I4e7c0417824f2be9836b1bc2bb99322c78490ca2
Reviewed-on: http://review.coreboot.org/9256
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
Aaron Durbin 2014-10-07 16:16:48 -05:00 committed by Aaron Durbin
parent b6092b7e39
commit acbf32a042
5 changed files with 11 additions and 37 deletions

View File

@ -22,7 +22,6 @@
#include <stdlib.h> #include <stdlib.h>
#include <console/console.h> #include <console/console.h>
#include <soc/addressmap.h> #include <soc/addressmap.h>
#include <soc/display.h>
#include <soc/id.h> #include <soc/id.h>
#include "mc.h" #include "mc.h"
#include "sdram.h" #include "sdram.h"
@ -166,20 +165,6 @@ void memory_in_range_above_4gb(uintptr_t *base_mib, uintptr_t *end_mib)
memory_in_range(base_mib, end_mib, 0); memory_in_range(base_mib, end_mib, 0);
} }
uintptr_t framebuffer_attributes(size_t *size_mib)
{
uintptr_t begin;
uintptr_t end;
/* Place the framebuffer just below the 32-bit addressable limit. */
memory_in_range_below_4gb(&begin, &end);
*size_mib = FB_SIZE_MB;
end -= *size_mib;
return end;
}
void trustzone_region_init(void) void trustzone_region_init(void)
{ {
struct tegra_mc_regs * const mc = (void *)(uintptr_t)TEGRA_MC_BASE; struct tegra_mc_regs * const mc = (void *)(uintptr_t)TEGRA_MC_BASE;

View File

@ -23,18 +23,18 @@
void *cbmem_top(void) void *cbmem_top(void)
{ {
static uintptr_t addr; static uintptr_t addr;
size_t fb_size;
/* if (addr == 0) {
* FIXME(adurbin): The TZ registers are not accessible to the AVP. uintptr_t begin_mib;
* Therefore, if there is a TZ carveout then it needs to be handled uintptr_t end_mib;
* here while executing on the AVP in order to properly place the
* CBMEM region.
*/
/* CBMEM starts downwards from the framebuffer. */ memory_in_range_below_4gb(&begin_mib, &end_mib);
if (addr == 0) /* Make sure we consume everything up to 4GiB. */
addr = framebuffer_attributes(&fb_size); if (end_mib == 4096)
addr = ~(uint32_t)0;
return (void *)(addr << 20UL); else
addr = end_mib << 20;
}
return (void *)addr;
} }

View File

@ -130,7 +130,4 @@ void mainboard_add_memory_ranges(struct memranges *map);
*/ */
void trustzone_region_init(void); void trustzone_region_init(void);
/* Return pointer and size in 1MiB units. */
uintptr_t framebuffer_attributes(size_t *size_mib);
#endif /* __SOC_NVIDIA_TEGRA132_INCLUDE_SOC_ADDRESS_MAP_H__ */ #endif /* __SOC_NVIDIA_TEGRA132_INCLUDE_SOC_ADDRESS_MAP_H__ */

View File

@ -197,6 +197,4 @@ void dp_misc_setting(u32 panel_bpp, u32 width, u32 height, u32 winb_addr,
u32 lane_count, u32 enhanced_framing, u32 panel_edp, u32 lane_count, u32 enhanced_framing, u32 panel_edp,
u32 pclkfreq, u32 linkfreq); u32 pclkfreq, u32 linkfreq);
#define FB_SIZE_MB (32)
#endif /* __SOC_NVIDIA_TEGRA132_INCLUDE_SOC_DISPLAY_H__ */ #endif /* __SOC_NVIDIA_TEGRA132_INCLUDE_SOC_DISPLAY_H__ */

View File

@ -47,12 +47,6 @@ static void soc_read_resources(device_t dev)
reserved_ram_resource(dev, index++, begin * KiB, size * KiB); reserved_ram_resource(dev, index++, begin * KiB, size * KiB);
} }
/*
* TODO: Frame buffer needs to handled as a carveout from the below_4G
* uintptr_t framebuffer_begin = framebuffer_attributes(&framebuffer_size);
*/
memory_in_range_below_4gb(&begin, &end); memory_in_range_below_4gb(&begin, &end);
size = end - begin; size = end - begin;
ram_resource(dev, index++, begin * KiB, size * KiB); ram_resource(dev, index++, begin * KiB, size * KiB);