Richard Henderson
307119ba50
hw/sd: Constify VMState
...
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20231221031652.119827-53-richard.henderson@linaro.org >
2023-12-30 07:38:06 +11:00
Philippe Mathieu-Daudé
88d2198c08
hw/sd: Declare QOM types using DEFINE_TYPES() macro
...
When multiple QOM types are registered in the same file,
it is simpler to use the the DEFINE_TYPES() macro. In
particular because type array declared with such macro
are easier to review.
Mechanical transformation using the following comby script:
[pattern-x1]
match='''
static const TypeInfo :[i1~.*_info] = {
:[body]
};
static void :[rt1~.*_register_type.](void)
{
type_register_static(&:[i2~.*_info]);
}
type_init(:[rt2~.*_register_type.])
'''
rewrite='''
static const TypeInfo :[i1][] = {
{
:[body]
},
};
DEFINE_TYPES(:[i1])
'''
rule='where :[i1] == :[i2], :[rt1] == :[rt2]'
[pattern-x2]
match='''
static const TypeInfo :[i1a~.*_info] = {
:[body1]
};
...
static const TypeInfo :[i2a~.*_info] = {
:[body2]
};
static void :[rt1~.*_register_type.](void)
{
type_register_static(&:[i1b~.*_info]);
type_register_static(&:[i2b~.*_info]);
}
type_init(:[rt2~.*_register_type.])
'''
rewrite='''
static const TypeInfo :[i1a][] = {
{
:[body1]
},
{
:[body2]
},
};
DEFINE_TYPES(:[i1a])
'''
rule='''
where
:[i1a] == :[i1b],
:[i2a] == :[i2b],
:[rt1] == :[rt2]
'''
and re-indented manually.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Reviewed-by: Cédric Le Goater <clg@kaod.org >
Message-Id: <20231031080603.86889-2-philmd@linaro.org >
2023-11-07 13:08:49 +01:00
Bernhard Beschow
5e78c98b7c
Mark remaining global TypeInfo instances as const
...
More than 1k of TypeInfo instances are already marked as const. Mark the
remaining ones, too.
This commit was created with:
git grep -z -l 'static TypeInfo' -- '*.c' | \
xargs -0 sed -i 's/static TypeInfo/static const TypeInfo/'
Signed-off-by: Bernhard Beschow <shentey@gmail.com >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Reviewed-by: Thomas Huth <thuth@redhat.com >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Cédric Le Goater <clg@kaod.org >
Reviewed-by: Igor Mammedov <imammedo@redhat.com >
Acked-by: Corey Minyard <cminyard@mvista.com >
Message-id: 20220117145805.173070-2-shentey@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2022-02-21 13:30:20 +00:00
Thomas Huth
19f4ed3652
hw: Do not include qemu/log.h if it is not necessary
...
Many files include qemu/log.h without needing it. Remove the superfluous
include statements.
Signed-off-by: Thomas Huth <thuth@redhat.com >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Message-Id: <20210328054833.2351597-1-thuth@redhat.com >
Signed-off-by: Laurent Vivier <laurent@vivier.eu >
2021-05-02 17:24:50 +02:00
Thomas Huth
e924921f5c
hw: Do not include hw/irq.h if it is not necessary
...
Many files include hw/irq.h without needing it. Remove the superfluous
include statements.
Signed-off-by: Thomas Huth <thuth@redhat.com >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Message-Id: <20210327050236.2232347-1-thuth@redhat.com >
Signed-off-by: Laurent Vivier <laurent@vivier.eu >
2021-05-02 17:24:50 +02:00
Bin Meng
c696e1f2b3
hw/sd: Add Cadence SDHCI emulation
...
Cadence SD/SDIO/eMMC Host Controller (SD4HC) is an SDHCI compatible
controller. The SDHCI compatible registers start from offset 0x200,
which are called Slot Register Set (SRS) in its datasheet.
This creates a Cadence SDHCI model built on top of the existing
generic SDHCI model. Cadence specific Host Register Set (HRS) is
implemented to make guest software happy.
Signed-off-by: Bin Meng <bin.meng@windriver.com >
Acked-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Acked-by: Alistair Francis <alistair.francis@wdc.com >
Message-Id: <1598924352-89526-8-git-send-email-bmeng.cn@gmail.com >
Signed-off-by: Alistair Francis <alistair.francis@wdc.com >
2020-09-09 15:54:18 -07:00