soc/amd/common: Don't use CAR_GLOBAL
All platforms using this code have NO_CAR_GLOBAL_MIGRATION. Change-Id: I422d5637caa1b55fa6bad30d25f5e34cbba40851 Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/c/30509 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Marshall Dawson <marshalldawson3rd@gmail.com>
This commit is contained in:
parent
a8eb477c2e
commit
85e9f28461
|
@ -14,7 +14,6 @@
|
|||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#include <arch/early_variables.h>
|
||||
#include <arch/acpi.h>
|
||||
#include <cpu/x86/mtrr.h>
|
||||
#include <cbfs.h>
|
||||
|
@ -613,23 +612,20 @@ const void *agesawrapper_locate_module(const char name[8])
|
|||
return (AMD_MODULE_HEADER *)image->ModuleInfoOffset;
|
||||
}
|
||||
|
||||
static MODULE_ENTRY agesa_dispatcher CAR_GLOBAL;
|
||||
static MODULE_ENTRY agesa_dispatcher;
|
||||
|
||||
MODULE_ENTRY agesa_get_dispatcher(void)
|
||||
{
|
||||
const AMD_MODULE_HEADER *module;
|
||||
static const char id[8] = AGESA_ID;
|
||||
MODULE_ENTRY val = car_get_var(agesa_dispatcher);
|
||||
|
||||
if (val != NULL)
|
||||
return val;
|
||||
if (agesa_dispatcher != NULL)
|
||||
return agesa_dispatcher;
|
||||
|
||||
module = agesawrapper_locate_module(id);
|
||||
if (!module)
|
||||
return NULL;
|
||||
|
||||
val = module->ModuleDispatcher;
|
||||
car_set_var(agesa_dispatcher, val);
|
||||
|
||||
return val;
|
||||
agesa_dispatcher = module->ModuleDispatcher;
|
||||
return agesa_dispatcher;
|
||||
}
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <arch/io.h>
|
||||
#include <arch/early_variables.h>
|
||||
#include <lib.h>
|
||||
#include <timer.h>
|
||||
#include <console/console.h>
|
||||
|
@ -32,36 +31,31 @@
|
|||
|
||||
#define SPI_DEBUG_DRIVER IS_ENABLED(CONFIG_DEBUG_SPI_FLASH)
|
||||
|
||||
static uintptr_t spibar CAR_GLOBAL;
|
||||
|
||||
static uintptr_t get_spibase(void)
|
||||
{
|
||||
return car_get_var(spibar);
|
||||
}
|
||||
static uintptr_t spibar;
|
||||
|
||||
static void set_spibar(uintptr_t base)
|
||||
{
|
||||
car_set_var(spibar, base);
|
||||
spibar = base;
|
||||
}
|
||||
|
||||
static inline uint8_t spi_read8(uint8_t reg)
|
||||
{
|
||||
return read8((void *)(get_spibase() + reg));
|
||||
return read8((void *)(spibar + reg));
|
||||
}
|
||||
|
||||
static inline uint32_t spi_read32(uint8_t reg)
|
||||
{
|
||||
return read32((void *)(get_spibase() + reg));
|
||||
return read32((void *)(spibar + reg));
|
||||
}
|
||||
|
||||
static inline void spi_write8(uint8_t reg, uint8_t val)
|
||||
{
|
||||
write8((void *)(get_spibase() + reg), val);
|
||||
write8((void *)(spibar + reg), val);
|
||||
}
|
||||
|
||||
static inline void spi_write32(uint8_t reg, uint32_t val)
|
||||
{
|
||||
write32((void *)(get_spibase() + reg), val);
|
||||
write32((void *)(spibar + reg), val);
|
||||
}
|
||||
|
||||
static void dump_state(const char *str)
|
||||
|
@ -75,7 +69,7 @@ static void dump_state(const char *str)
|
|||
printk(BIOS_DEBUG, "TxByteCount: %x\n", spi_read8(SPI_TX_BYTE_COUNT));
|
||||
printk(BIOS_DEBUG, "RxByteCount: %x\n", spi_read8(SPI_RX_BYTE_COUNT));
|
||||
printk(BIOS_DEBUG, "CmdCode: %x\n", spi_read8(SPI_CMD_CODE));
|
||||
hexdump((void *)(get_spibase() + SPI_FIFO), SPI_FIFO_DEPTH);
|
||||
hexdump((void *)(spibar + SPI_FIFO), SPI_FIFO_DEPTH);
|
||||
}
|
||||
|
||||
static int wait_for_ready(void)
|
||||
|
|
Loading…
Reference in New Issue