mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 01:33:56 -06:00
hw/ppc: Remove unused ppcuic_init()
Now we've converted all the callsites to directly create the QOM UIC device themselves, the ppcuic_init() function is unused and can be removed. The enum defining PPCUIC symbolic constants can be moved to the ppc-uic.h header where it more naturally belongs. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Tested-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Message-Id: <20210108171212.16500-5-peter.maydell@linaro.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
71c3c44bc3
commit
f7c4acf572
3 changed files with 7 additions and 47 deletions
|
@ -77,44 +77,6 @@ PowerPCCPU *ppc4xx_init(const char *cpu_type,
|
||||||
return cpu;
|
return cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/* "Universal" Interrupt controller */
|
|
||||||
|
|
||||||
qemu_irq *ppcuic_init (CPUPPCState *env, qemu_irq *irqs,
|
|
||||||
uint32_t dcr_base, int has_ssr, int has_vr)
|
|
||||||
{
|
|
||||||
DeviceState *uicdev = qdev_new(TYPE_PPC_UIC);
|
|
||||||
SysBusDevice *uicsbd = SYS_BUS_DEVICE(uicdev);
|
|
||||||
qemu_irq *uic_irqs;
|
|
||||||
int i;
|
|
||||||
|
|
||||||
qdev_prop_set_uint32(uicdev, "dcr-base", dcr_base);
|
|
||||||
qdev_prop_set_bit(uicdev, "use-vectors", has_vr);
|
|
||||||
object_property_set_link(OBJECT(uicdev), "cpu", OBJECT(env_cpu(env)),
|
|
||||||
&error_fatal);
|
|
||||||
sysbus_realize_and_unref(uicsbd, &error_fatal);
|
|
||||||
|
|
||||||
sysbus_connect_irq(uicsbd, PPCUIC_OUTPUT_INT, irqs[PPCUIC_OUTPUT_INT]);
|
|
||||||
sysbus_connect_irq(uicsbd, PPCUIC_OUTPUT_CINT, irqs[PPCUIC_OUTPUT_CINT]);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Return an allocated array of the UIC's input IRQ lines.
|
|
||||||
* This is an ugly temporary API to retain compatibility with
|
|
||||||
* the ppcuic_init() interface from the pre-QOM-conversion UIC.
|
|
||||||
* None of the callers free this array, so it is leaked -- but
|
|
||||||
* so was the array allocated by qemu_allocate_irqs() in the
|
|
||||||
* old code.
|
|
||||||
*
|
|
||||||
* The callers should just instantiate the UIC and wire it up
|
|
||||||
* themselves rather than passing qemu_irq* in and out of this function.
|
|
||||||
*/
|
|
||||||
uic_irqs = g_new0(qemu_irq, UIC_MAX_IRQ);
|
|
||||||
for (i = 0; i < UIC_MAX_IRQ; i++) {
|
|
||||||
uic_irqs[i] = qdev_get_gpio_in(uicdev, i);
|
|
||||||
}
|
|
||||||
return uic_irqs;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/* SDRAM controller */
|
/* SDRAM controller */
|
||||||
typedef struct ppc4xx_sdram_t ppc4xx_sdram_t;
|
typedef struct ppc4xx_sdram_t ppc4xx_sdram_t;
|
||||||
|
|
|
@ -47,6 +47,13 @@ OBJECT_DECLARE_SIMPLE_TYPE(PPCUIC, PPC_UIC)
|
||||||
|
|
||||||
#define UIC_MAX_IRQ 32
|
#define UIC_MAX_IRQ 32
|
||||||
|
|
||||||
|
/* Symbolic constants for the sysbus IRQ outputs */
|
||||||
|
enum {
|
||||||
|
PPCUIC_OUTPUT_INT = 0,
|
||||||
|
PPCUIC_OUTPUT_CINT = 1,
|
||||||
|
PPCUIC_OUTPUT_NB,
|
||||||
|
};
|
||||||
|
|
||||||
struct PPCUIC {
|
struct PPCUIC {
|
||||||
/*< private >*/
|
/*< private >*/
|
||||||
SysBusDevice parent_obj;
|
SysBusDevice parent_obj;
|
||||||
|
|
|
@ -33,15 +33,6 @@ PowerPCCPU *ppc4xx_init(const char *cpu_model,
|
||||||
clk_setup_t *cpu_clk, clk_setup_t *tb_clk,
|
clk_setup_t *cpu_clk, clk_setup_t *tb_clk,
|
||||||
uint32_t sysclk);
|
uint32_t sysclk);
|
||||||
|
|
||||||
/* PowerPC 4xx universal interrupt controller */
|
|
||||||
enum {
|
|
||||||
PPCUIC_OUTPUT_INT = 0,
|
|
||||||
PPCUIC_OUTPUT_CINT = 1,
|
|
||||||
PPCUIC_OUTPUT_NB,
|
|
||||||
};
|
|
||||||
qemu_irq *ppcuic_init (CPUPPCState *env, qemu_irq *irqs,
|
|
||||||
uint32_t dcr_base, int has_ssr, int has_vr);
|
|
||||||
|
|
||||||
void ppc4xx_sdram_banks(MemoryRegion *ram, int nr_banks,
|
void ppc4xx_sdram_banks(MemoryRegion *ram, int nr_banks,
|
||||||
MemoryRegion ram_memories[],
|
MemoryRegion ram_memories[],
|
||||||
hwaddr ram_bases[], hwaddr ram_sizes[],
|
hwaddr ram_bases[], hwaddr ram_sizes[],
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue