[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 20/23] aspeed: Add an AST2600 eval board
From: |
Cédric Le Goater |
Subject: |
[PATCH v2 20/23] aspeed: Add an AST2600 eval board |
Date: |
Wed, 25 Sep 2019 16:32:45 +0200 |
Signed-off-by: Cédric Le Goater <address@hidden>
Reviewed-by: Joel Stanley <address@hidden>
---
include/hw/arm/aspeed.h | 1 +
hw/arm/aspeed.c | 23 +++++++++++++++++++++++
2 files changed, 24 insertions(+)
diff --git a/include/hw/arm/aspeed.h b/include/hw/arm/aspeed.h
index 02073a6b4d61..f49bc7081e4d 100644
--- a/include/hw/arm/aspeed.h
+++ b/include/hw/arm/aspeed.h
@@ -18,6 +18,7 @@ typedef struct AspeedBoardConfig {
const char *desc;
const char *soc_name;
uint32_t hw_strap1;
+ uint32_t hw_strap2;
const char *fmc_model;
const char *spi_model;
uint32_t num_cs;
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index 52993f84b461..65453278a757 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -88,6 +88,10 @@ struct AspeedBoardState {
/* Witherspoon hardware value: 0xF10AD216 (but use romulus definition) */
#define WITHERSPOON_BMC_HW_STRAP1 ROMULUS_BMC_HW_STRAP1
+/* AST2600 evb hardware value */
+#define AST2600_EVB_HW_STRAP1 0x000000C0
+#define AST2600_EVB_HW_STRAP2 0x00000003
+
/*
* The max ram region is for firmwares that scan the address space
* with load/store to guess how much RAM the SoC has.
@@ -187,6 +191,8 @@ static void aspeed_board_init(MachineState *machine,
&error_abort);
object_property_set_int(OBJECT(&bmc->soc), cfg->hw_strap1, "hw-strap1",
&error_abort);
+ object_property_set_int(OBJECT(&bmc->soc), cfg->hw_strap2, "hw-strap2",
+ &error_abort);
object_property_set_int(OBJECT(&bmc->soc), cfg->num_cs, "num-cs",
&error_abort);
object_property_set_int(OBJECT(&bmc->soc), machine->smp.cpus, "num-cpus",
@@ -308,6 +314,12 @@ static void ast2500_evb_i2c_init(AspeedBoardState *bmc)
i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 11), "ds1338",
0x32);
}
+static void ast2600_evb_i2c_init(AspeedBoardState *bmc)
+{
+ /* Start with some devices on our I2C busses */
+ ast2500_evb_i2c_init(bmc);
+}
+
static void romulus_bmc_i2c_init(AspeedBoardState *bmc)
{
AspeedSoCState *soc = &bmc->soc;
@@ -455,6 +467,17 @@ static const AspeedBoardConfig aspeed_boards[] = {
.num_cs = 2,
.i2c_init = witherspoon_bmc_i2c_init,
.ram = 512 * MiB,
+ }, {
+ .name = MACHINE_TYPE_NAME("ast2600-evb"),
+ .desc = "Aspeed AST2600 EVB (Cortex A7)",
+ .soc_name = "ast2600-a0",
+ .hw_strap1 = AST2600_EVB_HW_STRAP1,
+ .hw_strap2 = AST2600_EVB_HW_STRAP2,
+ .fmc_model = "w25q512jv",
+ .spi_model = "mx66u51235f",
+ .num_cs = 1,
+ .i2c_init = ast2600_evb_i2c_init,
+ .ram = 2 * GiB,
},
};
--
2.21.0
- [PATCH v2 13/23] aspeed/smc: Add AST2600 support, (continued)
- [PATCH v2 13/23] aspeed/smc: Add AST2600 support, Cédric Le Goater, 2019/09/25
- [PATCH v2 14/23] hw/gpio: Add in AST2600 specific implementation, Cédric Le Goater, 2019/09/25
- [PATCH v2 15/23] aspeed/i2c: Introduce an object class per SoC, Cédric Le Goater, 2019/09/25
- [PATCH v2 16/23] aspeed/i2c: Add AST2600 support, Cédric Le Goater, 2019/09/25
- [PATCH v2 17/23] aspeed: Introduce an object class per SoC, Cédric Le Goater, 2019/09/25
- [PATCH v2 18/23] aspeed/soc: Add AST2600 support, Cédric Le Goater, 2019/09/25
- [PATCH v2 19/23] m25p80: Add support for w25q512jv, Cédric Le Goater, 2019/09/25
- [PATCH v2 20/23] aspeed: Add an AST2600 eval board,
Cédric Le Goater <=
- [PATCH v2 21/23] aspeed: Parameterise number of MACs, Cédric Le Goater, 2019/09/25
- [PATCH v2 22/23] aspeed: add support for the Aspeed MII controller of the AST2600, Cédric Le Goater, 2019/09/25
- [PATCH v2 23/23] aspeed/soc: Add ASPEED Video stub, Cédric Le Goater, 2019/09/25