mirror of https://github.com/xemu-project/xemu.git
fsl-imx6: Add SNVS support for i.MX6 boards
SNVS is supported on both i.MX6 and i.MX6UL and is needed to support shutdown on the board. Cc: Peter Maydell <peter.maydell@linaro.org> (odd fixer:SABRELITE / i.MX6) Cc: Jean-Christophe Dubois <jcd@tribudubois.net> (reviewer:SABRELITE / i.MX6) Cc: qemu-arm@nongnu.org (open list:SABRELITE / i.MX6) Cc: qemu-devel@nongnu.org (open list:All patches CC here) Signed-off-by: Vitaly Cheptsov <cheptsov@ispras.ru> Message-id: 20230515095015.66860-1-cheptsov@ispras.ru Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
aa9bbd8655
commit
bbb02509f2
|
@ -53,6 +53,8 @@ static void fsl_imx6_init(Object *obj)
|
||||||
|
|
||||||
object_initialize_child(obj, "src", &s->src, TYPE_IMX6_SRC);
|
object_initialize_child(obj, "src", &s->src, TYPE_IMX6_SRC);
|
||||||
|
|
||||||
|
object_initialize_child(obj, "snvs", &s->snvs, TYPE_IMX7_SNVS);
|
||||||
|
|
||||||
for (i = 0; i < FSL_IMX6_NUM_UARTS; i++) {
|
for (i = 0; i < FSL_IMX6_NUM_UARTS; i++) {
|
||||||
snprintf(name, NAME_SIZE, "uart%d", i + 1);
|
snprintf(name, NAME_SIZE, "uart%d", i + 1);
|
||||||
object_initialize_child(obj, name, &s->uart[i], TYPE_IMX_SERIAL);
|
object_initialize_child(obj, name, &s->uart[i], TYPE_IMX_SERIAL);
|
||||||
|
@ -390,6 +392,12 @@ static void fsl_imx6_realize(DeviceState *dev, Error **errp)
|
||||||
qdev_get_gpio_in(DEVICE(&s->a9mpcore),
|
qdev_get_gpio_in(DEVICE(&s->a9mpcore),
|
||||||
FSL_IMX6_ENET_MAC_1588_IRQ));
|
FSL_IMX6_ENET_MAC_1588_IRQ));
|
||||||
|
|
||||||
|
/*
|
||||||
|
* SNVS
|
||||||
|
*/
|
||||||
|
sysbus_realize(SYS_BUS_DEVICE(&s->snvs), &error_abort);
|
||||||
|
sysbus_mmio_map(SYS_BUS_DEVICE(&s->snvs), 0, FSL_IMX6_SNVSHP_ADDR);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Watchdog
|
* Watchdog
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
#include "hw/cpu/a9mpcore.h"
|
#include "hw/cpu/a9mpcore.h"
|
||||||
#include "hw/misc/imx6_ccm.h"
|
#include "hw/misc/imx6_ccm.h"
|
||||||
#include "hw/misc/imx6_src.h"
|
#include "hw/misc/imx6_src.h"
|
||||||
|
#include "hw/misc/imx7_snvs.h"
|
||||||
#include "hw/watchdog/wdt_imx2.h"
|
#include "hw/watchdog/wdt_imx2.h"
|
||||||
#include "hw/char/imx_serial.h"
|
#include "hw/char/imx_serial.h"
|
||||||
#include "hw/timer/imx_gpt.h"
|
#include "hw/timer/imx_gpt.h"
|
||||||
|
@ -59,6 +60,7 @@ struct FslIMX6State {
|
||||||
A9MPPrivState a9mpcore;
|
A9MPPrivState a9mpcore;
|
||||||
IMX6CCMState ccm;
|
IMX6CCMState ccm;
|
||||||
IMX6SRCState src;
|
IMX6SRCState src;
|
||||||
|
IMX7SNVSState snvs;
|
||||||
IMXSerialState uart[FSL_IMX6_NUM_UARTS];
|
IMXSerialState uart[FSL_IMX6_NUM_UARTS];
|
||||||
IMXGPTState gpt;
|
IMXGPTState gpt;
|
||||||
IMXEPITState epit[FSL_IMX6_NUM_EPITS];
|
IMXEPITState epit[FSL_IMX6_NUM_EPITS];
|
||||||
|
|
Loading…
Reference in New Issue