Lines Matching refs:intmask
857 static bool bcm2835_check_cmd_error(struct bcm2835_host *host, u32 intmask) in bcm2835_check_cmd_error() argument
861 if (!(intmask & SDHSTS_ERROR_MASK)) in bcm2835_check_cmd_error()
867 dev_err(dev, "sdhost_busy_irq: intmask %08x\n", intmask); in bcm2835_check_cmd_error()
868 if (intmask & SDHSTS_CRC7_ERROR) { in bcm2835_check_cmd_error()
870 } else if (intmask & (SDHSTS_CRC16_ERROR | in bcm2835_check_cmd_error()
876 } else if (intmask & SDHSTS_REW_TIME_OUT) { in bcm2835_check_cmd_error()
881 } else if (intmask & SDHSTS_CMD_TIME_OUT) { in bcm2835_check_cmd_error()
888 static void bcm2835_check_data_error(struct bcm2835_host *host, u32 intmask) in bcm2835_check_data_error() argument
892 if (intmask & (SDHSTS_CRC16_ERROR | SDHSTS_FIFO_ERROR)) in bcm2835_check_data_error()
894 if (intmask & SDHSTS_REW_TIME_OUT) in bcm2835_check_data_error()
914 static void bcm2835_data_irq(struct bcm2835_host *host, u32 intmask) in bcm2835_data_irq() argument
925 bcm2835_check_data_error(host, intmask); in bcm2835_data_irq()
978 u32 intmask; in bcm2835_irq() local
982 intmask = readl(host->ioaddr + SDHSTS); in bcm2835_irq()
990 if (intmask & SDHSTS_BLOCK_IRPT) { in bcm2835_irq()
991 bcm2835_check_data_error(host, intmask); in bcm2835_irq()
996 if (intmask & SDHSTS_BUSY_IRPT) { in bcm2835_irq()
997 if (!bcm2835_check_cmd_error(host, intmask)) { in bcm2835_irq()
1009 if ((intmask & SDHSTS_DATA_FLAG) && in bcm2835_irq()
1011 bcm2835_data_irq(host, intmask); in bcm2835_irq()