On 7/5/22 09:58, Peter Delevoryas wrote:
On Tue, Jul 05, 2022 at 06:53:43AM +0000, Joel Stanley wrote:
On Mon, 4 Jul 2022 at 21:55, Peter Delevoryas <pe...@pjd.dev> wrote:
Signed-off-by: Peter Delevoryas <pe...@pjd.dev>
Reviewed-by: Cédric Le Goater <c...@kaod.org>
---
MAINTAINERS | 1 +
hw/arm/fby35.c | 39 +++++++++++++++++++++++++++++++++++++++
hw/arm/meson.build | 3 ++-
3 files changed, 42 insertions(+), 1 deletion(-)
create mode 100644 hw/arm/fby35.c
diff --git a/MAINTAINERS b/MAINTAINERS
index d9378511b7..147330ddd7 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1067,6 +1067,7 @@ F: hw/net/ftgmac100.c
F: include/hw/net/ftgmac100.h
F: docs/system/arm/aspeed.rst
F: tests/qtest/*aspeed*
+F: hw/arm/fby35.c
NRF51
M: Joel Stanley <j...@jms.id.au>
diff --git a/hw/arm/fby35.c b/hw/arm/fby35.c
new file mode 100644
index 0000000000..03b458584c
--- /dev/null
+++ b/hw/arm/fby35.c
@@ -0,0 +1,39 @@
+/*
+ * Copyright (c) Meta Platforms, Inc. and affiliates. (http://www.meta.com)
Can you mention what fby35 means? I keep reading your patches but can't recall.
Oh yeah sure, it means "Facebook Yosemite version 3.5". Facebook has a series
of multi-node compute server designs named Yosemite, the most recent version
was Yosemite 3:
https://www.opencompute.org/documents/ocp-yosemite-v3-platform-design-specification-1v16-pdf
Yosemite 3.5 is an iteration on this design. It's actually very similar in terms
of there being a BMC on the baseboard, and a Bridge IC (BIC) on each server
board, with room for expansion boards as well.
You just wrote the commit log :)
C.
I'm still debugging I2C a little bit, but my goal is to be able to test BMC <->
BIC IPMB messages with the full OpenBMC firmware running on the BMC and the
OpenBIC firmware running on the BIC, and to expand this machine to include the
other 3 slot BIC's (in this patch series, I only included the BIC in the first
slot).
+ *
+ * This code is licensed under the GPL version 2 or later. See the COPYING
+ * file in the top-level directory.
+ */
+
+#include "qemu/osdep.h"
+#include "hw/boards.h"
+
+#define TYPE_FBY35 MACHINE_TYPE_NAME("fby35")
+OBJECT_DECLARE_SIMPLE_TYPE(Fby35State, FBY35);
+
+struct Fby35State {
+ MachineState parent_obj;
+};
+
+static void fby35_init(MachineState *machine)
+{
+}
+
+static void fby35_class_init(ObjectClass *oc, void *data)
+{
+ MachineClass *mc = MACHINE_CLASS(oc);
+
+ mc->desc = "Meta Platforms fby35";
+ mc->init = fby35_init;
+}
+
+static const TypeInfo fby35_types[] = {
+ {
+ .name = MACHINE_TYPE_NAME("fby35"),
+ .parent = TYPE_MACHINE,
+ .class_init = fby35_class_init,
+ .instance_size = sizeof(Fby35State),
+ },
+};
+
+DEFINE_TYPES(fby35_types);
diff --git a/hw/arm/meson.build b/hw/arm/meson.build
index 2d8381339c..92f9f6e000 100644
--- a/hw/arm/meson.build
+++ b/hw/arm/meson.build
@@ -51,7 +51,8 @@ arm_ss.add(when: 'CONFIG_ASPEED_SOC', if_true: files(
'aspeed_soc.c',
'aspeed.c',
'aspeed_ast2600.c',
- 'aspeed_ast10x0.c'))
+ 'aspeed_ast10x0.c',
+ 'fby35.c'))
arm_ss.add(when: 'CONFIG_MPS2', if_true: files('mps2.c'))
arm_ss.add(when: 'CONFIG_MPS2', if_true: files('mps2-tz.c'))
arm_ss.add(when: 'CONFIG_MSF2', if_true: files('msf2-soc.c'))
--
2.37.0