The ast2700a0-evb machine represents the first revision of the AST2700 and
serves as the initial engineering sample rather than a production version.
A newer revision, A1, is now supported, and the ast2700a1-evb should replace
the older A0 version.
Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
---
docs/about/deprecated.rst | 8 ------
hw/arm/aspeed.c | 28 +------------------
.../functional/aarch64/test_aspeed_ast2700.py | 12 --------
3 files changed, 1 insertion(+), 47 deletions(-)
diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index 5d1579dcf8..8a273e019a 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -305,14 +305,6 @@ deprecated; use the new name ``dtb-randomness`` instead. The new name
better reflects the way this property affects all random data within
the device tree blob, not just the ``kaslr-seed`` node.
-Arm ``ast2700a0-evb`` machine (since 10.1)
-''''''''''''''''''''''''''''''''''''''''''
-
-The ``ast2700a0-evb`` machine represents the first revision of the AST2700
-and serves as the initial engineering sample rather than a production version.
-A newer revision, A1, is now supported, and the ``ast2700a1-evb`` should
-replace the older A0 version.
-
Mips ``mipssim`` machine (since 10.0)
'''''''''''''''''''''''''''''''''''''
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index c31bbe7701..e729edfe13 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -1989,35 +1989,13 @@ static void ast2700_evb_i2c_init(AspeedMachineState *bmc)
TYPE_TMP105, 0x4d);
}
-static void aspeed_machine_ast2700a0_evb_class_init(ObjectClass *oc,
- const void *data)
-{
- MachineClass *mc = MACHINE_CLASS(oc);
- AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc);
-
- mc->alias = "ast2700-evb";
- mc->desc = "Aspeed AST2700 A0 EVB (Cortex-A35)";
- amc->soc_name = "ast2700-a0";
- amc->hw_strap1 = AST2700_EVB_HW_STRAP1;
- amc->hw_strap2 = AST2700_EVB_HW_STRAP2;
- amc->fmc_model = "w25q01jvq";
- amc->spi_model = "w25q512jv";
- amc->num_cs = 2;
- amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON | ASPEED_MAC2_ON;
- amc->uart_default = ASPEED_DEV_UART12;
- amc->i2c_init = ast2700_evb_i2c_init;
- amc->vbootrom = true;
- mc->auto_create_sdcard = true;
- mc->default_ram_size = 1 * GiB;
- aspeed_machine_class_init_cpus_defaults(mc);
-}
-
static void aspeed_machine_ast2700a1_evb_class_init(ObjectClass *oc,
const void *data)
{
MachineClass *mc = MACHINE_CLASS(oc);
AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc);
+ mc->alias = "ast2700-evb";
mc->desc = "Aspeed AST2700 A1 EVB (Cortex-A35)";
amc->soc_name = "ast2700-a1";
amc->hw_strap1 = AST2700_EVB_HW_STRAP1;
@@ -2166,10 +2144,6 @@ static const TypeInfo aspeed_machine_types[] = {
.class_init = aspeed_minibmc_machine_ast1030_evb_class_init,
#ifdef TARGET_AARCH64
}, {
- .name = MACHINE_TYPE_NAME("ast2700a0-evb"),
- .parent = TYPE_ASPEED_MACHINE,
- .class_init = aspeed_machine_ast2700a0_evb_class_init,
- }, {
.name = MACHINE_TYPE_NAME("ast2700a1-evb"),
.parent = TYPE_ASPEED_MACHINE,
.class_init = aspeed_machine_ast2700a1_evb_class_init,
diff --git a/tests/functional/aarch64/test_aspeed_ast2700.py b/tests/functional/aarch64/test_aspeed_ast2700.py
index d02dc7991c..063d9e572c 100755
--- a/tests/functional/aarch64/test_aspeed_ast2700.py
+++ b/tests/functional/aarch64/test_aspeed_ast2700.py
@@ -46,10 +46,6 @@ def verify_openbmc_boot_and_login(self, name):
exec_command_and_wait_for_pattern(self, 'root', 'Password:')
exec_command_and_wait_for_pattern(self, '0penBmc', f'root@{name}:~#')
- ASSET_SDK_V906_AST2700 = Asset(
- 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.06/ast2700-a0-default-obmc.tar.gz',
- '7247b6f19dbfb700686f8d9f723ac23f3eb229226c0589cb9b06b80d1b61f3cb')
-
ASSET_SDK_V906_AST2700A1 = Asset(
'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.06/ast2700-default-obmc.tar.gz',
'f1d53e0be8a404ecce3e105f72bc50fa4e090ad13160ffa91b10a6e0233a9dc6')
@@ -111,14 +107,6 @@ def start_ast2700_test_vbootrom(self, name):
self.do_test_aarch64_aspeed_sdk_start(
self.scratch_file(name, 'image-bmc'))
- def test_aarch64_ast2700_evb_sdk_v09_06(self):
- self.set_machine('ast2700-evb')
-
- self.archive_extract(self.ASSET_SDK_V906_AST2700)
- self.start_ast2700_test('ast2700-a0-default')
- self.verify_openbmc_boot_and_login('ast2700-a0-default')
- self.do_ast2700_i2c_test()
-
def test_aarch64_ast2700a1_evb_sdk_v09_06(self):
self.set_machine('ast2700a1-evb')
--
2.43.0
Hello Jamin, On 9/1/25 06:08, Jamin Lin wrote: > The ast2700a0-evb machine represents the first revision of the AST2700 and > serves as the initial engineering sample rather than a production version. > A newer revision, A1, is now supported, and the ast2700a1-evb should replace > the older A0 version. > > Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> > --- > docs/about/deprecated.rst | 8 ------ > hw/arm/aspeed.c | 28 +------------------ > .../functional/aarch64/test_aspeed_ast2700.py | 12 -------- > 3 files changed, 1 insertion(+), 47 deletions(-) > > diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst > index 5d1579dcf8..8a273e019a 100644 > --- a/docs/about/deprecated.rst > +++ b/docs/about/deprecated.rst > @@ -305,14 +305,6 @@ deprecated; use the new name ``dtb-randomness`` instead. The new name > better reflects the way this property affects all random data within > the device tree blob, not just the ``kaslr-seed`` node. > > -Arm ``ast2700a0-evb`` machine (since 10.1) > -'''''''''''''''''''''''''''''''''''''''''' We need to wait *two* releases after deprecation before removing a machine or any other feature. So removal of the ast2700a0-evb machine will be possible for QEMU 11.0 (next after QEMU 10.2). > - > -The ``ast2700a0-evb`` machine represents the first revision of the AST2700 > -and serves as the initial engineering sample rather than a production version. > -A newer revision, A1, is now supported, and the ``ast2700a1-evb`` should > -replace the older A0 version. > - File docs/about/removed-features.rst should be updated too. > Mips ``mipssim`` machine (since 10.0) > ''''''''''''''''''''''''''''''''''''' > > diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c > index c31bbe7701..e729edfe13 100644 > --- a/hw/arm/aspeed.c > +++ b/hw/arm/aspeed.c > @@ -1989,35 +1989,13 @@ static void ast2700_evb_i2c_init(AspeedMachineState *bmc) > TYPE_TMP105, 0x4d); > } > > -static void aspeed_machine_ast2700a0_evb_class_init(ObjectClass *oc, > - const void *data) > -{ > - MachineClass *mc = MACHINE_CLASS(oc); > - AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc); > - > - mc->alias = "ast2700-evb"; The "ast2700-evb" alias should be moved first to the ast2700a1_evb machine. This can be done in this QEMU cycle Thanks, C. > - mc->desc = "Aspeed AST2700 A0 EVB (Cortex-A35)"; > - amc->soc_name = "ast2700-a0"; > - amc->hw_strap1 = AST2700_EVB_HW_STRAP1; > - amc->hw_strap2 = AST2700_EVB_HW_STRAP2; > - amc->fmc_model = "w25q01jvq"; > - amc->spi_model = "w25q512jv"; > - amc->num_cs = 2; > - amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON | ASPEED_MAC2_ON; > - amc->uart_default = ASPEED_DEV_UART12; > - amc->i2c_init = ast2700_evb_i2c_init; > - amc->vbootrom = true; > - mc->auto_create_sdcard = true; > - mc->default_ram_size = 1 * GiB; > - aspeed_machine_class_init_cpus_defaults(mc); > -} > - > static void aspeed_machine_ast2700a1_evb_class_init(ObjectClass *oc, > const void *data) > { > MachineClass *mc = MACHINE_CLASS(oc); > AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc); > > + mc->alias = "ast2700-evb"; > mc->desc = "Aspeed AST2700 A1 EVB (Cortex-A35)"; > amc->soc_name = "ast2700-a1"; > amc->hw_strap1 = AST2700_EVB_HW_STRAP1; > @@ -2166,10 +2144,6 @@ static const TypeInfo aspeed_machine_types[] = { > .class_init = aspeed_minibmc_machine_ast1030_evb_class_init, > #ifdef TARGET_AARCH64 > }, { > - .name = MACHINE_TYPE_NAME("ast2700a0-evb"), > - .parent = TYPE_ASPEED_MACHINE, > - .class_init = aspeed_machine_ast2700a0_evb_class_init, > - }, { > .name = MACHINE_TYPE_NAME("ast2700a1-evb"), > .parent = TYPE_ASPEED_MACHINE, > .class_init = aspeed_machine_ast2700a1_evb_class_init, > diff --git a/tests/functional/aarch64/test_aspeed_ast2700.py b/tests/functional/aarch64/test_aspeed_ast2700.py > index d02dc7991c..063d9e572c 100755 > --- a/tests/functional/aarch64/test_aspeed_ast2700.py > +++ b/tests/functional/aarch64/test_aspeed_ast2700.py > @@ -46,10 +46,6 @@ def verify_openbmc_boot_and_login(self, name): > exec_command_and_wait_for_pattern(self, 'root', 'Password:') > exec_command_and_wait_for_pattern(self, '0penBmc', f'root@{name}:~#') > > - ASSET_SDK_V906_AST2700 = Asset( > - 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.06/ast2700-a0-default-obmc.tar.gz', > - '7247b6f19dbfb700686f8d9f723ac23f3eb229226c0589cb9b06b80d1b61f3cb') > - > ASSET_SDK_V906_AST2700A1 = Asset( > 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.06/ast2700-default-obmc.tar.gz', > 'f1d53e0be8a404ecce3e105f72bc50fa4e090ad13160ffa91b10a6e0233a9dc6') > @@ -111,14 +107,6 @@ def start_ast2700_test_vbootrom(self, name): > self.do_test_aarch64_aspeed_sdk_start( > self.scratch_file(name, 'image-bmc')) > > - def test_aarch64_ast2700_evb_sdk_v09_06(self): > - self.set_machine('ast2700-evb') > - > - self.archive_extract(self.ASSET_SDK_V906_AST2700) > - self.start_ast2700_test('ast2700-a0-default') > - self.verify_openbmc_boot_and_login('ast2700-a0-default') > - self.do_ast2700_i2c_test() > - > def test_aarch64_ast2700a1_evb_sdk_v09_06(self): > self.set_machine('ast2700a1-evb') >
Hi Cédric > From: Cédric Le Goater <clg@kaod.org> > Sent: Monday, September 1, 2025 4:28 PM > To: Jamin Lin <jamin_lin@aspeedtech.com>; reviewer:Incompatible changes > <devel@lists.libvirt.org>; Peter Maydell <peter.maydell@linaro.org>; Steven > Lee <steven_lee@aspeedtech.com>; Troy Lee <leetroy@gmail.com>; Andrew > Jeffery <andrew@codeconstruct.com.au>; Joel Stanley <joel@jms.id.au>; open > list:All patches CC here <qemu-devel@nongnu.org>; open list:ASPEED BMCs > <qemu-arm@nongnu.org> > Cc: Troy Lee <troy_lee@aspeedtech.com>; Kane Chen > <kane_chen@aspeedtech.com> > Subject: Re: [SPAM] [PATCH v1 1/4] hw/arm: Remove ast2700a0-evb machine > > Hello Jamin, > > On 9/1/25 06:08, Jamin Lin wrote: > > The ast2700a0-evb machine represents the first revision of the AST2700 > > and serves as the initial engineering sample rather than a production > version. > > A newer revision, A1, is now supported, and the ast2700a1-evb should > > replace the older A0 version. > > > > Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> > > --- > > docs/about/deprecated.rst | 8 ------ > > hw/arm/aspeed.c | 28 > +------------------ > > .../functional/aarch64/test_aspeed_ast2700.py | 12 -------- > > 3 files changed, 1 insertion(+), 47 deletions(-) > > > > diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst > > index 5d1579dcf8..8a273e019a 100644 > > --- a/docs/about/deprecated.rst > > +++ b/docs/about/deprecated.rst > > @@ -305,14 +305,6 @@ deprecated; use the new name ``dtb-randomness`` > instead. The new name > > better reflects the way this property affects all random data within > > the device tree blob, not just the ``kaslr-seed`` node. > > > > -Arm ``ast2700a0-evb`` machine (since 10.1) > > -'''''''''''''''''''''''''''''''''''''''''' > > We need to wait *two* releases after deprecation before removing a machine > or any other feature. So removal of the ast2700a0-evb machine will be > possible for QEMU 11.0 (next after QEMU 10.2). > Got it. Thanks for review. > > - > > -The ``ast2700a0-evb`` machine represents the first revision of the > > AST2700 -and serves as the initial engineering sample rather than a > production version. > > -A newer revision, A1, is now supported, and the ``ast2700a1-evb`` > > should -replace the older A0 version. > > - > > File docs/about/removed-features.rst should be updated too. > > > Mips ``mipssim`` machine (since 10.0) > > ''''''''''''''''''''''''''''''''''''' > > > > diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index > > c31bbe7701..e729edfe13 100644 > > --- a/hw/arm/aspeed.c > > +++ b/hw/arm/aspeed.c > > @@ -1989,35 +1989,13 @@ static void > ast2700_evb_i2c_init(AspeedMachineState *bmc) > > TYPE_TMP105, 0x4d); > > } > > > > -static void aspeed_machine_ast2700a0_evb_class_init(ObjectClass *oc, > > - const void > *data) > > -{ > > - MachineClass *mc = MACHINE_CLASS(oc); > > - AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc); > > - > > - mc->alias = "ast2700-evb"; > > The "ast2700-evb" alias should be moved first to the ast2700a1_evb machine. > This can be done in this QEMU cycle > Will do. Thanks-Jamin > > Thanks, > > C. > > > > > > - mc->desc = "Aspeed AST2700 A0 EVB (Cortex-A35)"; > > - amc->soc_name = "ast2700-a0"; > > - amc->hw_strap1 = AST2700_EVB_HW_STRAP1; > > - amc->hw_strap2 = AST2700_EVB_HW_STRAP2; > > - amc->fmc_model = "w25q01jvq"; > > - amc->spi_model = "w25q512jv"; > > - amc->num_cs = 2; > > - amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON | > ASPEED_MAC2_ON; > > - amc->uart_default = ASPEED_DEV_UART12; > > - amc->i2c_init = ast2700_evb_i2c_init; > > - amc->vbootrom = true; > > - mc->auto_create_sdcard = true; > > - mc->default_ram_size = 1 * GiB; > > - aspeed_machine_class_init_cpus_defaults(mc); > > -} > > - > > static void aspeed_machine_ast2700a1_evb_class_init(ObjectClass *oc, > > const void > *data) > > { > > MachineClass *mc = MACHINE_CLASS(oc); > > AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc); > > > > + mc->alias = "ast2700-evb"; > > mc->desc = "Aspeed AST2700 A1 EVB (Cortex-A35)"; > > amc->soc_name = "ast2700-a1"; > > amc->hw_strap1 = AST2700_EVB_HW_STRAP1; @@ -2166,10 > +2144,6 @@ > > static const TypeInfo aspeed_machine_types[] = { > > .class_init = > aspeed_minibmc_machine_ast1030_evb_class_init, > > #ifdef TARGET_AARCH64 > > }, { > > - .name = MACHINE_TYPE_NAME("ast2700a0-evb"), > > - .parent = TYPE_ASPEED_MACHINE, > > - .class_init = aspeed_machine_ast2700a0_evb_class_init, > > - }, { > > .name = MACHINE_TYPE_NAME("ast2700a1-evb"), > > .parent = TYPE_ASPEED_MACHINE, > > .class_init = aspeed_machine_ast2700a1_evb_class_init, > > diff --git a/tests/functional/aarch64/test_aspeed_ast2700.py > > b/tests/functional/aarch64/test_aspeed_ast2700.py > > index d02dc7991c..063d9e572c 100755 > > --- a/tests/functional/aarch64/test_aspeed_ast2700.py > > +++ b/tests/functional/aarch64/test_aspeed_ast2700.py > > @@ -46,10 +46,6 @@ def verify_openbmc_boot_and_login(self, name): > > exec_command_and_wait_for_pattern(self, 'root', 'Password:') > > exec_command_and_wait_for_pattern(self, '0penBmc', > > f'root@{name}:~#') > > > > - ASSET_SDK_V906_AST2700 = Asset( > > - > 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.06/ast > 2700-a0-default-obmc.tar.gz', > > - > '7247b6f19dbfb700686f8d9f723ac23f3eb229226c0589cb9b06b80d1b61f3cb') > > - > > ASSET_SDK_V906_AST2700A1 = Asset( > > > 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.06/ast > 2700-default-obmc.tar.gz', > > > > > 'f1d53e0be8a404ecce3e105f72bc50fa4e090ad13160ffa91b10a6e0233a9dc6') > > @@ -111,14 +107,6 @@ def start_ast2700_test_vbootrom(self, name): > > self.do_test_aarch64_aspeed_sdk_start( > > self.scratch_file(name, 'image-bmc')) > > > > - def test_aarch64_ast2700_evb_sdk_v09_06(self): > > - self.set_machine('ast2700-evb') > > - > > - self.archive_extract(self.ASSET_SDK_V906_AST2700) > > - self.start_ast2700_test('ast2700-a0-default') > > - self.verify_openbmc_boot_and_login('ast2700-a0-default') > > - self.do_ast2700_i2c_test() > > - > > def test_aarch64_ast2700a1_evb_sdk_v09_06(self): > > self.set_machine('ast2700a1-evb') > >
© 2016 - 2025 Red Hat, Inc.