hw/fsi: Introduce IBM's FSI Bus

This is a part of patchset where FSI bus is introduced.

The FSI bus is a simple bus where FSI master is attached.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
[ clg: - removed include/hw/fsi/engine-scratchpad.h and
       	 hw/fsi/engine-scratchpad.c
       - dropped FSI_SCRATCHPAD
       - included FSIBus definition
       - dropped hw/fsi/trace-events changes ]
Signed-off-by: Cédric Le Goater <clg@kaod.org>
This commit is contained in:
Ninad Palsule 2024-01-26 04:49:48 -06:00 committed by Cédric Le Goater
parent ca782334cb
commit f4de3ca160
3 changed files with 42 additions and 1 deletions

22
hw/fsi/fsi.c Normal file
View File

@ -0,0 +1,22 @@
/*
* SPDX-License-Identifier: GPL-2.0-or-later
* Copyright (C) 2024 IBM Corp.
*
* IBM Flexible Service Interface
*/
#include "qemu/osdep.h"
#include "hw/fsi/fsi.h"
static const TypeInfo fsi_bus_info = {
.name = TYPE_FSI_BUS,
.parent = TYPE_BUS,
.instance_size = sizeof(FSIBus),
};
static void fsi_bus_register_types(void)
{
type_register_static(&fsi_bus_info);
}
type_init(fsi_bus_register_types);

View File

@ -1 +1 @@
system_ss.add(when: 'CONFIG_FSI', if_true: files('lbus.c'))
system_ss.add(when: 'CONFIG_FSI', if_true: files('lbus.c','fsi.c'))

19
include/hw/fsi/fsi.h Normal file
View File

@ -0,0 +1,19 @@
/*
* SPDX-License-Identifier: GPL-2.0-or-later
* Copyright (C) 2024 IBM Corp.
*
* IBM Flexible Service Interface
*/
#ifndef FSI_FSI_H
#define FSI_FSI_H
#include "hw/qdev-core.h"
#define TYPE_FSI_BUS "fsi.bus"
OBJECT_DECLARE_SIMPLE_TYPE(FSIBus, FSI_BUS)
typedef struct FSIBus {
BusState bus;
} FSIBus;
#endif /* FSI_FSI_H */