/*
* SSP INTC Registers
*/
-REG32(SSPINT128_EN, 0x2000)
-REG32(SSPINT128_STATUS, 0x2004)
-REG32(SSPINT129_EN, 0x2100)
-REG32(SSPINT129_STATUS, 0x2104)
-REG32(SSPINT130_EN, 0x2200)
-REG32(SSPINT130_STATUS, 0x2204)
-REG32(SSPINT131_EN, 0x2300)
-REG32(SSPINT131_STATUS, 0x2304)
-REG32(SSPINT132_EN, 0x2400)
-REG32(SSPINT132_STATUS, 0x2404)
-REG32(SSPINT133_EN, 0x2500)
-REG32(SSPINT133_STATUS, 0x2504)
-REG32(SSPINT134_EN, 0x2600)
-REG32(SSPINT134_STATUS, 0x2604)
-REG32(SSPINT135_EN, 0x2700)
-REG32(SSPINT135_STATUS, 0x2704)
-REG32(SSPINT136_EN, 0x2800)
-REG32(SSPINT136_STATUS, 0x2804)
-REG32(SSPINT137_EN, 0x2900)
-REG32(SSPINT137_STATUS, 0x2904)
-REG32(SSPINT138_EN, 0x2A00)
-REG32(SSPINT138_STATUS, 0x2A04)
REG32(SSPINT160_169_EN, 0x2B00)
REG32(SSPINT160_169_STATUS, 0x2B04)
trace_aspeed_intc_write(name, offset, size, data);
switch (reg) {
- case R_SSPINT128_EN:
- case R_SSPINT129_EN:
- case R_SSPINT130_EN:
- case R_SSPINT131_EN:
- case R_SSPINT132_EN:
- case R_SSPINT133_EN:
- case R_SSPINT134_EN:
- case R_SSPINT135_EN:
- case R_SSPINT136_EN:
case R_SSPINT160_169_EN:
aspeed_intc_enable_handler(s, offset, data);
break;
- case R_SSPINT128_STATUS:
- case R_SSPINT129_STATUS:
- case R_SSPINT130_STATUS:
- case R_SSPINT131_STATUS:
- case R_SSPINT132_STATUS:
- case R_SSPINT133_STATUS:
- case R_SSPINT134_STATUS:
- case R_SSPINT135_STATUS:
- case R_SSPINT136_STATUS:
- aspeed_intc_status_handler(s, offset, data);
- break;
case R_SSPINT160_169_STATUS:
aspeed_intc_status_handler_multi_outpins(s, offset, data);
break;
static AspeedINTCIRQ aspeed_2700ssp_intc_irqs[ASPEED_INTC_MAX_INPINS] = {
{0, 0, 10, R_SSPINT160_169_EN, R_SSPINT160_169_STATUS},
- {1, 10, 1, R_SSPINT128_EN, R_SSPINT128_STATUS},
- {2, 11, 1, R_SSPINT129_EN, R_SSPINT129_STATUS},
- {3, 12, 1, R_SSPINT130_EN, R_SSPINT130_STATUS},
- {4, 13, 1, R_SSPINT131_EN, R_SSPINT131_STATUS},
- {5, 14, 1, R_SSPINT132_EN, R_SSPINT132_STATUS},
- {6, 15, 1, R_SSPINT133_EN, R_SSPINT133_STATUS},
- {7, 16, 1, R_SSPINT134_EN, R_SSPINT134_STATUS},
- {8, 17, 1, R_SSPINT135_EN, R_SSPINT135_STATUS},
- {9, 18, 1, R_SSPINT136_EN, R_SSPINT136_STATUS},
};
static void aspeed_2700ssp_intc_class_init(ObjectClass *klass, const void *data)
dc->desc = "ASPEED 2700 SSP INTC Controller";
aic->num_lines = 32;
- aic->num_inpins = 10;
- aic->num_outpins = 19;
+ aic->num_inpins = 1;
+ aic->num_outpins = 10;
aic->mem_size = 0x4000;
aic->nr_regs = 0x2B08 >> 2;
aic->reg_offset = 0x0;