hw/intc: openpic: Drop Raven related codes
There is no machine that uses Motorola MCP750 (aka Raven) model. Drop the related codes. While we are here, drop the mentioning of Intel GW80314 I/O companion chip in the comments as it has been obsolete for years, and correct a typo too. Signed-off-by: Bin Meng <bin.meng@windriver.com> Message-Id: <20210918032653.646370-2-bin.meng@windriver.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
457279cb49
commit
86229b68a2
@ -25,12 +25,8 @@
|
|||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
* Based on OpenPic implementations:
|
* Based on OpenPic implementations:
|
||||||
* - Intel GW80314 I/O companion chip developer's manual
|
|
||||||
* - Motorola MPC8245 & MPC8540 user manuals.
|
* - Motorola MPC8245 & MPC8540 user manuals.
|
||||||
* - Motorola MCP750 (aka Raven) programmer manual.
|
* - Motorola Harrier programmer manual
|
||||||
* - Motorola Harrier programmer manuel
|
|
||||||
*
|
|
||||||
* Serial interrupts, as implemented in Raven chipset are not supported yet.
|
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -1564,28 +1560,6 @@ static void openpic_realize(DeviceState *dev, Error **errp)
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case OPENPIC_MODEL_RAVEN:
|
|
||||||
opp->nb_irqs = RAVEN_MAX_EXT;
|
|
||||||
opp->vid = VID_REVISION_1_3;
|
|
||||||
opp->vir = VIR_GENERIC;
|
|
||||||
opp->vector_mask = 0xFF;
|
|
||||||
opp->tfrr_reset = 4160000;
|
|
||||||
opp->ivpr_reset = IVPR_MASK_MASK | IVPR_MODE_MASK;
|
|
||||||
opp->idr_reset = 0;
|
|
||||||
opp->max_irq = RAVEN_MAX_IRQ;
|
|
||||||
opp->irq_ipi0 = RAVEN_IPI_IRQ;
|
|
||||||
opp->irq_tim0 = RAVEN_TMR_IRQ;
|
|
||||||
opp->brr1 = -1;
|
|
||||||
opp->mpic_mode_mask = GCR_MODE_MIXED;
|
|
||||||
|
|
||||||
if (opp->nb_cpus != 1) {
|
|
||||||
error_setg(errp, "Only UP supported today");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
map_list(opp, list_le, &list_count);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case OPENPIC_MODEL_KEYLARGO:
|
case OPENPIC_MODEL_KEYLARGO:
|
||||||
opp->nb_irqs = KEYLARGO_MAX_EXT;
|
opp->nb_irqs = KEYLARGO_MAX_EXT;
|
||||||
opp->vid = VID_REVISION_1_2;
|
opp->vid = VID_REVISION_1_2;
|
||||||
|
@ -21,7 +21,6 @@ enum {
|
|||||||
|
|
||||||
typedef struct IrqLines { qemu_irq irq[OPENPIC_OUTPUT_NB]; } IrqLines;
|
typedef struct IrqLines { qemu_irq irq[OPENPIC_OUTPUT_NB]; } IrqLines;
|
||||||
|
|
||||||
#define OPENPIC_MODEL_RAVEN 0
|
|
||||||
#define OPENPIC_MODEL_FSL_MPIC_20 1
|
#define OPENPIC_MODEL_FSL_MPIC_20 1
|
||||||
#define OPENPIC_MODEL_FSL_MPIC_42 2
|
#define OPENPIC_MODEL_FSL_MPIC_42 2
|
||||||
#define OPENPIC_MODEL_KEYLARGO 3
|
#define OPENPIC_MODEL_KEYLARGO 3
|
||||||
@ -32,13 +31,6 @@ typedef struct IrqLines { qemu_irq irq[OPENPIC_OUTPUT_NB]; } IrqLines;
|
|||||||
#define OPENPIC_MAX_IRQ (OPENPIC_MAX_SRC + OPENPIC_MAX_IPI + \
|
#define OPENPIC_MAX_IRQ (OPENPIC_MAX_SRC + OPENPIC_MAX_IPI + \
|
||||||
OPENPIC_MAX_TMR)
|
OPENPIC_MAX_TMR)
|
||||||
|
|
||||||
/* Raven */
|
|
||||||
#define RAVEN_MAX_CPU 2
|
|
||||||
#define RAVEN_MAX_EXT 48
|
|
||||||
#define RAVEN_MAX_IRQ 64
|
|
||||||
#define RAVEN_MAX_TMR OPENPIC_MAX_TMR
|
|
||||||
#define RAVEN_MAX_IPI OPENPIC_MAX_IPI
|
|
||||||
|
|
||||||
/* KeyLargo */
|
/* KeyLargo */
|
||||||
#define KEYLARGO_MAX_CPU 4
|
#define KEYLARGO_MAX_CPU 4
|
||||||
#define KEYLARGO_MAX_EXT 64
|
#define KEYLARGO_MAX_EXT 64
|
||||||
@ -49,14 +41,6 @@ typedef struct IrqLines { qemu_irq irq[OPENPIC_OUTPUT_NB]; } IrqLines;
|
|||||||
/* Timers don't exist but this makes the code happy... */
|
/* Timers don't exist but this makes the code happy... */
|
||||||
#define KEYLARGO_TMR_IRQ (KEYLARGO_IPI_IRQ + KEYLARGO_MAX_IPI)
|
#define KEYLARGO_TMR_IRQ (KEYLARGO_IPI_IRQ + KEYLARGO_MAX_IPI)
|
||||||
|
|
||||||
/* Interrupt definitions */
|
|
||||||
#define RAVEN_FE_IRQ (RAVEN_MAX_EXT) /* Internal functional IRQ */
|
|
||||||
#define RAVEN_ERR_IRQ (RAVEN_MAX_EXT + 1) /* Error IRQ */
|
|
||||||
#define RAVEN_TMR_IRQ (RAVEN_MAX_EXT + 2) /* First timer IRQ */
|
|
||||||
#define RAVEN_IPI_IRQ (RAVEN_TMR_IRQ + RAVEN_MAX_TMR) /* First IPI IRQ */
|
|
||||||
/* First doorbell IRQ */
|
|
||||||
#define RAVEN_DBL_IRQ (RAVEN_IPI_IRQ + (RAVEN_MAX_CPU * RAVEN_MAX_IPI))
|
|
||||||
|
|
||||||
typedef struct FslMpicInfo {
|
typedef struct FslMpicInfo {
|
||||||
int max_ext;
|
int max_ext;
|
||||||
} FslMpicInfo;
|
} FslMpicInfo;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user