the following patch was just integrated into master:
commit 97678d28e7833d98b9c1e40e0d5d579b66981136
Author: efdesign98 <efdesign98(a)gmail.com>
Date: Thu Sep 15 11:24:29 2011 -0600
Build warning fix for AMD Family 12
This trivial change adds a prototype to an existing
header file to fix a build warning for the AMD family
12 cpus.
Change-Id: Ic666bfbef867d17607eaa0f59570aea987a31f93
Signed-off-by: Frank Vibrans <frank.vibrans(a)amd.com>
Signed-off-by: efdesign98 <efdesign98(a)gmail.com>
See http://review.coreboot.org/218 for details.
-gerrit
Frank Vibrans III (frank.vibrans(a)amd.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/218
-gerrit
commit 97678d28e7833d98b9c1e40e0d5d579b66981136
Author: efdesign98 <efdesign98(a)gmail.com>
Date: Thu Sep 15 11:24:29 2011 -0600
Build warning fix for AMD Family 12
This trivial change adds a prototype to an existing
header file to fix a build warning for the AMD family
12 cpus.
Change-Id: Ic666bfbef867d17607eaa0f59570aea987a31f93
Signed-off-by: Frank Vibrans <frank.vibrans(a)amd.com>
Signed-off-by: efdesign98 <efdesign98(a)gmail.com>
---
src/include/cpu/amd/amdfam12.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/src/include/cpu/amd/amdfam12.h b/src/include/cpu/amd/amdfam12.h
index 6c0a5ac..cabd532 100755
--- a/src/include/cpu/amd/amdfam12.h
+++ b/src/include/cpu/amd/amdfam12.h
@@ -48,6 +48,7 @@ void wait_all_other_cores_started(u32 bsp_apicid);
void wait_all_aps_started(u32 bsp_apicid);
void allow_all_aps_stop(u32 bsp_apicid);
#endif
+void get_bus_conf(void);
u32 get_initial_apicid(void);
#endif /* CPU_AMD_FAM12_H */
the following patch was just integrated into master:
commit 1c83d12c43d8dac6136b210b9dd789551b62189c
Author: efdesign98 <efdesign98(a)gmail.com>
Date: Thu Sep 15 10:59:55 2011 -0600
AMD Inagua platform updates
These changes update the Inagua platform. The changes
include modifying the Kconfig to suggest video bios
and ahci rom implementations, changing the dimm spd
code to use the correct bus addresses, cleaning up the
makefile a bit, and fixing a duplicate definition
warning associated with the BIOS_SIZE value.
Change-Id: Idab88dda48f08877dbbd2de3136bdf0e54e31247
Signed-off-by: Frank Vibrans <frank.vibrans(a)amd.com>
Signed-off-by: efdesign98 <efdesign98(a)gmail.com>
See http://review.coreboot.org/136 for details.
-gerrit
Frank Vibrans III (frank.vibrans(a)amd.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/136
-gerrit
commit 1c83d12c43d8dac6136b210b9dd789551b62189c
Author: efdesign98 <efdesign98(a)gmail.com>
Date: Thu Sep 15 10:59:55 2011 -0600
AMD Inagua platform updates
These changes update the Inagua platform. The changes
include modifying the Kconfig to suggest video bios
and ahci rom implementations, changing the dimm spd
code to use the correct bus addresses, cleaning up the
makefile a bit, and fixing a duplicate definition
warning associated with the BIOS_SIZE value.
Change-Id: Idab88dda48f08877dbbd2de3136bdf0e54e31247
Signed-off-by: Frank Vibrans <frank.vibrans(a)amd.com>
Signed-off-by: efdesign98 <efdesign98(a)gmail.com>
---
src/mainboard/amd/inagua/Kconfig | 43 +++++++++++++++++----
src/mainboard/amd/inagua/Makefile.inc | 4 +-
src/mainboard/amd/inagua/dimmSpd.c | 14 ++----
src/mainboard/amd/inagua/dimmSpd.h | 63 +++++++++++++++++++++++++++++++
src/mainboard/amd/inagua/platform_cfg.h | 2 +
5 files changed, 106 insertions(+), 20 deletions(-)
diff --git a/src/mainboard/amd/inagua/Kconfig b/src/mainboard/amd/inagua/Kconfig
index b494943..80bc621 100644
--- a/src/mainboard/amd/inagua/Kconfig
+++ b/src/mainboard/amd/inagua/Kconfig
@@ -123,17 +123,44 @@ config SIO_PORT
default 0x2e
config DRIVERS_PS2_KEYBOARD
- bool
- default y
+ bool
+ default y
config WARNINGS_ARE_ERRORS
- bool
- default n
+ bool
+ default n
+
+config ONBOARD_VGA_IS_PRIMARY
+ bool
+ default y
+
+config VGA_BIOS
+ bool
+ default n
+
+#config VGA_BIOS_FILE
+# string "VGA BIOS path and filename"
+# depends on VGA_BIOS
+# default "rom/video/OntarioGenericVBios.bin"
+
+config VGA_BIOS_ID
+ string "VGA device PCI IDs"
+ depends on VGA_BIOS
+ default "1002,9802"
+
+config AHCI_ROM
+ bool
+ default n
+
+#config AHCI_ROM_FILE
+# string "AHCI ROM path and filename"
+# depends on AHCI_ROM
+# default "rom/ahci/sb800.bin"
-config FALLBACK_VGA_BIOS_ID
- string "VGA device PCI IDs"
- depends on VGA_BIOS
- default "1002,9802"
+config AHCI_ROM_ID
+ string "AHCI device PCI IDs"
+ depends on AHCI_ROM
+ default "1002,4391"
endif # BOARD_AMD_INAGUA
diff --git a/src/mainboard/amd/inagua/Makefile.inc b/src/mainboard/amd/inagua/Makefile.inc
index 955ed80..531a736 100755
--- a/src/mainboard/amd/inagua/Makefile.inc
+++ b/src/mainboard/amd/inagua/Makefile.inc
@@ -31,6 +31,4 @@ ramstage-y += PlatformGnbPcie.c
ramstage-y += reset.c
-AGESA_ROOT ?= src/vendorcode/amd/agesa/f14
-subdirs-$(CONFIG_CPU_AMD_AGESA_FAMILY14) += ../../../../$(AGESA_ROOT)
-#subdirs-$(CONFIG_AMD_SB_CIMX) += ../../../vendorcode/amd/cimx
+subdirs-$(CONFIG_CPU_AMD_AGESA_FAMILY14) += $(src)/vendorcode/amd/agesa/f14
\ No newline at end of file
diff --git a/src/mainboard/amd/inagua/dimmSpd.c b/src/mainboard/amd/inagua/dimmSpd.c
index 94e63e1..d6bf5b2 100644
--- a/src/mainboard/amd/inagua/dimmSpd.c
+++ b/src/mainboard/amd/inagua/dimmSpd.c
@@ -30,17 +30,13 @@ AGESA_STATUS AmdMemoryReadSPD (UINT32 unused1, UINT32 unused2, AGESA_READ_SPD_PA
* SPD address table - porting required
*/
-static const UINT8 spdAddressLookup [2] [2] [4] = // socket, channel, dimm
+#define SMBUS_BASE_ADDR 0xB00
+static const UINT8 spdAddressLookup [1] [2] [1] = // socket, channel, dimm
{
// socket 0
{
- {0xA0, 0xA2}, // channel 0 dimms
- {0xA4, 0xA8}, // channel 1 dimms
- },
- // socket 1
- {
- {0x00, 0x00}, // channel 0 dimms
- {0x00, 0x00}, // channel 1 dimms
+ {0xA0}, // channel 0 dimms
+ {0xA2}, // channel 1 dimms
},
};
@@ -160,7 +156,7 @@ AGESA_STATUS AmdMemoryReadSPD (UINT32 unused1, UINT32 unused2, AGESA_READ_SPD_PA
spdAddress = spdAddressLookup [info->SocketId] [info->MemChannelId] [info->DimmId];
if (spdAddress == 0) return AGESA_ERROR;
- ioBase = 0xB00;
+ ioBase = SMBUS_BASE_ADDR;
setupFch (ioBase);
return readspd (ioBase, spdAddress, (void *) info->Buffer, 128);
}
diff --git a/src/mainboard/amd/inagua/dimmSpd.h b/src/mainboard/amd/inagua/dimmSpd.h
new file mode 100755
index 0000000..069c34a
--- /dev/null
+++ b/src/mainboard/amd/inagua/dimmSpd.h
@@ -0,0 +1,63 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2011 Advanced Micro Devices, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+/*----------------------------------------------------------------------------------------
+ * M O D U L E S U S E D
+ *----------------------------------------------------------------------------------------
+ */
+
+#ifndef _DIMMSPD_H_
+#define _DIMMSPD_H_
+
+#include "Porting.h"
+#include "AGESA.h"
+
+/*----------------------------------------------------------------------------------------
+ * D E F I N I T I O N S A N D M A C R O S
+ *----------------------------------------------------------------------------------------
+ */
+
+/*----------------------------------------------------------------------------------------
+ * T Y P E D E F S A N D S T R U C T U R E S
+ *----------------------------------------------------------------------------------------
+ */
+
+/*----------------------------------------------------------------------------------------
+ * P R O T O T Y P E S O F L O C A L F U N C T I O N S
+ *----------------------------------------------------------------------------------------
+ */
+
+/*----------------------------------------------------------------------------------------
+ * E X P O R T E D F U N C T I O N S
+ *----------------------------------------------------------------------------------------
+ */
+
+AGESA_STATUS
+AmdMemoryReadSPD (
+ IN UINT32 Func,
+ IN UINT32 Data,
+ IN OUT AGESA_READ_SPD_PARAMS *SpdData
+ );
+
+/*---------------------------------------------------------------------------------------
+ * L O C A L F U N C T I O N S
+ *---------------------------------------------------------------------------------------
+ */
+
+#endif
diff --git a/src/mainboard/amd/inagua/platform_cfg.h b/src/mainboard/amd/inagua/platform_cfg.h
index d37c7e6..4a3f080 100644
--- a/src/mainboard/amd/inagua/platform_cfg.h
+++ b/src/mainboard/amd/inagua/platform_cfg.h
@@ -36,6 +36,7 @@
* bigger than 1M you have to set the ROM size outside CIMx module and
* before AGESA module get call.
*/
+#ifndef BIOS_SIZE
#if CONFIG_COREBOOT_ROMSIZE_KB_1024 == 1
#define BIOS_SIZE BIOS_SIZE_1M
#elif CONFIG_COREBOOT_ROMSIZE_KB_2048 == 1
@@ -45,6 +46,7 @@
#elif CONFIG_COREBOOT_ROMSIZE_KB_8192 == 1
#define BIOS_SIZE BIOS_SIZE_8M
#endif
+#endif
/**
* @def SPREAD_SPECTRUM
the following patch was just integrated into master:
commit 8e7e2d8fdfde57cf130afd98aeba9535fe8cdad8
Author: efdesign98 <efdesign98(a)gmail.com>
Date: Fri Aug 19 14:25:48 2011 -0600
AMD Torpedo platform updates
This update fixes warnings and supports as necessary
the Agesa infrastructure changes required to support
the AMD Family 14 cpu update to rev C0.
Change-Id: Ib08b49695b925b81f796bf299141fe6f845fdef8
Signed-off-by: Frank Vibrans <frank.vibrans(a)amd.com>
Signed-off-by: efdesign98 <efdesign98(a)gmail.com>
See http://review.coreboot.org/138 for details.
-gerrit
the following patch was just integrated into master:
commit af4f6db8093112637d8b067b7323f118931cccfa
Author: efdesign98 <efdesign98(a)gmail.com>
Date: Wed Sep 14 19:34:13 2011 -0600
AMD Agesa macro expansion fix
This change fixes the use of a macro that was
previously modified to fix a warning. The macro
was used in a manner that doubly incremented a
pointer. The pointer increment was removed from
the macro call and moved elsewhere. In addition,
an unused macro was removed from both Family 12
and Family 14 code.
Change-Id: I577794bbc55d18f21170dda1d0bbdc6d776ce392
Signed-off-by: Frank Vibrans <frank.vibrans(a)amd.com>
Signed-off-by: efdesign98 <efdesign98(a)gmail.com>
See http://review.coreboot.org/217 for details.
-gerrit
Frank Vibrans III (frank.vibrans(a)amd.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/138
-gerrit
commit 8e7e2d8fdfde57cf130afd98aeba9535fe8cdad8
Author: efdesign98 <efdesign98(a)gmail.com>
Date: Fri Aug 19 14:25:48 2011 -0600
AMD Torpedo platform updates
This update fixes warnings and supports as necessary
the Agesa infrastructure changes required to support
the AMD Family 14 cpu update to rev C0.
Change-Id: Ib08b49695b925b81f796bf299141fe6f845fdef8
Signed-off-by: Frank Vibrans <frank.vibrans(a)amd.com>
Signed-off-by: efdesign98 <efdesign98(a)gmail.com>
---
src/mainboard/amd/torpedo/BiosCallOuts.c | 21 +++++---
src/mainboard/amd/torpedo/Kconfig | 18 ++++----
src/mainboard/amd/torpedo/Oem.h | 72 +++++++----------------------
src/mainboard/amd/torpedo/agesawrapper.h | 1 -
src/mainboard/amd/torpedo/get_bus_conf.c | 1 +
5 files changed, 41 insertions(+), 72 deletions(-)
diff --git a/src/mainboard/amd/torpedo/BiosCallOuts.c b/src/mainboard/amd/torpedo/BiosCallOuts.c
index bd6c633..355077f 100755
--- a/src/mainboard/amd/torpedo/BiosCallOuts.c
+++ b/src/mainboard/amd/torpedo/BiosCallOuts.c
@@ -539,25 +539,30 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
Data16 |= Data8;
AcpiMmioAddr = (UINT32)Data16 << 16;
GpioMmioAddr = AcpiMmioAddr + GPIO_BASE;
- if(MemData->ParameterListPtr->DDR3Voltage == VOLT1_5) {
- Data8 = Read64Mem8(GpioMmioAddr+SB_GPIO_REG178);
- Data8 |= BIT6;
- Write64Mem8(GpioMmioAddr+SB_GPIO_REG178, Data8);
- } else if(MemData->ParameterListPtr->DDR3Voltage == VOLT1_35) {
+
+ switch(MemData->ParameterListPtr->DDR3Voltage){
+ case VOLT1_35:
Data8 = Read64Mem8 (GpioMmioAddr+SB_GPIO_REG178);
Data8 &= ~(UINT8)BIT6;
Write64Mem8(GpioMmioAddr+SB_GPIO_REG178, Data8);
Data8 = Read64Mem8 (GpioMmioAddr+SB_GPIO_REG179);
- Data8 |= BIT6;
+ Data8 |= (UINT8)BIT6;
Write64Mem8(GpioMmioAddr+SB_GPIO_REG179, Data8);
- } else if(MemData->ParameterListPtr->DDR3Voltage == VOLT1_25) {
+ break;
+ case VOLT1_25:
Data8 = Read64Mem8 (GpioMmioAddr+SB_GPIO_REG178);
Data8 &= ~(UINT8)BIT6;
Write64Mem8(GpioMmioAddr+SB_GPIO_REG178, Data8);
Data8 = Read64Mem8 (GpioMmioAddr+SB_GPIO_REG179);
Data8 &= ~(UINT8)BIT6;
Write64Mem8(GpioMmioAddr+SB_GPIO_REG179, Data8);
- } else {}
+ break;
+ case VOLT1_5:
+ default:
+ Data8 = Read64Mem8 (GpioMmioAddr+SB_GPIO_REG178);
+ Data8 |= (UINT8)BIT6;
+ Write64Mem8(GpioMmioAddr+SB_GPIO_REG178, Data8);
+ }
return Status;
}
diff --git a/src/mainboard/amd/torpedo/Kconfig b/src/mainboard/amd/torpedo/Kconfig
index e4bde59..6da53a0 100755
--- a/src/mainboard/amd/torpedo/Kconfig
+++ b/src/mainboard/amd/torpedo/Kconfig
@@ -1,7 +1,7 @@
#
# This file is part of the coreboot project.
#
-# Copyright (C) 2010 Advanced Micro Devices, Inc.
+# Copyright (C) 2011 Advanced Micro Devices, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -122,14 +122,6 @@ config SIO_PORT
hex
default 0x2e
-config DRIVERS_PS2_KEYBOARD
- bool
- default y
-
-config WARNINGS_ARE_ERRORS
- bool
- default n
-
config ONBOARD_VGA_IS_PRIMARY
bool
default y
@@ -176,6 +168,14 @@ config XHC_BIOS_ID
depends on XHC_BIOS
default "1022,7812"
+config DRIVERS_PS2_KEYBOARD
+ bool
+ default y
+
+config WARNINGS_ARE_ERRORS
+ bool
+ default n
+
config CONSOLE_POST
bool
depends on !NO_POST
diff --git a/src/mainboard/amd/torpedo/Oem.h b/src/mainboard/amd/torpedo/Oem.h
index 50bb506..a7109dc 100755
--- a/src/mainboard/amd/torpedo/Oem.h
+++ b/src/mainboard/amd/torpedo/Oem.h
@@ -1,57 +1,21 @@
-/*;********************************************************************************
-;
-; Copyright 2011 ADVANCED MICRO DEVICES, INC. All Rights Reserved.
-;
-; AMD is granting you permission to use this software (the Materials)
-; pursuant to the terms and conditions of your Software License Agreement
-; with AMD. This header does *NOT* give you permission to use the Materials
-; or any rights under AMD's intellectual property. Your use of any portion
-; of these Materials shall constitute your acceptance of those terms and
-; conditions. If you do not agree to the terms and conditions of the Software
-; License Agreement, please do not use any portion of these Materials.
-;
-; CONFIDENTIALITY: The Materials and all other information, identified as
-; confidential and provided to you by AMD shall be kept confidential in
-; accordance with the terms and conditions of the Software License Agreement.
-;
-; LIMITATION OF LIABILITY: THE MATERIALS AND ANY OTHER RELATED INFORMATION
-; PROVIDED TO YOU BY AMD ARE PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED
-; WARRANTY OF ANY KIND, INCLUDING BUT NOT LIMITED TO WARRANTIES OF
-; MERCHANTABILITY, NONINFRINGEMENT, TITLE, FITNESS FOR ANY PARTICULAR PURPOSE,
-; OR WARRANTIES ARISING FROM CONDUCT, COURSE OF DEALING, OR USAGE OF TRADE.
-; IN NO EVENT SHALL AMD OR ITS LICENSORS BE LIABLE FOR ANY DAMAGES WHATSOEVER
-; (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS
-; INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF AMD'S NEGLIGENCE,
-; GROSS NEGLIGENCE, THE USE OF OR INABILITY TO USE THE MATERIALS OR ANY OTHER
-; RELATED INFORMATION PROVIDED TO YOU BY AMD, EVEN IF AMD HAS BEEN ADVISED OF
-; THE POSSIBILITY OF SUCH DAMAGES. BECAUSE SOME JURISDICTIONS PROHIBIT THE
-; EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES,
-; THE ABOVE LIMITATION MAY NOT APPLY TO YOU.
-;
-; AMD does not assume any responsibility for any errors which may appear in
-; the Materials or any other related information provided to you by AMD, or
-; result from use of the Materials or any related information.
-;
-; You agree that you will not reverse engineer or decompile the Materials.
-;
-; NO SUPPORT OBLIGATION: AMD is not obligated to furnish, support, or make any
-; further information, software, technical information, know-how, or show-how
-; available to you. Additionally, AMD retains the right to modify the
-; Materials at any time, without notice, and is not obligated to provide such
-; modified Materials to you.
-;
-; U.S. GOVERNMENT RESTRICTED RIGHTS: The Materials are provided with
-; "RESTRICTED RIGHTS." Use, duplication, or disclosure by the Government is
-; subject to the restrictions as set forth in FAR 52.227-14 and
-; DFAR252.227-7013, et seq., or its successor. Use of the Materials by the
-; Government constitutes acknowledgement of AMD's proprietary rights in them.
-;
-; EXPORT ASSURANCE: You agree and certify that neither the Materials, nor any
-; direct product thereof will be exported directly or indirectly, into any
-; country prohibited by the United States Export Administration Act and the
-; regulations thereunder, without the required authorization from the U.S.
-; government nor will be used for any purpose prohibited by the same.
-;*********************************************************************************/
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2011 Advanced Micro Devices, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
#define BIOS_SIZE 0x04 //04 - 1MB
#define LEGACY_FREE 0x00
diff --git a/src/mainboard/amd/torpedo/agesawrapper.h b/src/mainboard/amd/torpedo/agesawrapper.h
index 979f743..c3209f5 100755
--- a/src/mainboard/amd/torpedo/agesawrapper.h
+++ b/src/mainboard/amd/torpedo/agesawrapper.h
@@ -118,7 +118,6 @@ typedef struct {
*---------------------------------------------------------------------------------------
*/
-//void brazos_platform_stage(void);
UINT32 agesawrapper_amdinitreset (void);
UINT32 agesawrapper_amdinitearly (void);
UINT32 agesawrapper_amdinitenv (void);
diff --git a/src/mainboard/amd/torpedo/get_bus_conf.c b/src/mainboard/amd/torpedo/get_bus_conf.c
index 436f6a8..f9b4c84 100755
--- a/src/mainboard/amd/torpedo/get_bus_conf.c
+++ b/src/mainboard/amd/torpedo/get_bus_conf.c
@@ -24,6 +24,7 @@
#include <stdint.h>
#include <stdlib.h>
#include <cpu/amd/amdfam12.h>
+#include "SbEarly.h"
#include "agesawrapper.h"
the following patch was just integrated into master:
commit f1776cd4f022aee49fad497dc0adcc6c224d62fb
Author: efdesign98 <efdesign98(a)gmail.com>
Date: Wed Sep 14 16:22:31 2011 -0600
AMD SB800 early console use fix
This change removes printk's that occur before
console init is called. In the best case, these
would cause an extremely slow boot, and in the
worst case would cause a complete post failure.
Change-Id: I50388e71225e95db602aa45835c39126c1c920a3
Signed-off-by: Frank Vibrans <frank.vibrans(a)amd.com>
Signed-off-by: efdesign98 <efdesign98(a)gmail.com>
See http://review.coreboot.org/216 for details.
-gerrit