int rhea_force_sleep(suspend_state_t state) { struct kona_idle_state s; int i; memset(&s, 0, sizeof(s)); s.state = get_force_sleep_state(); /* No more scheduling out */ local_irq_disable(); local_fiq_disable(); force_sleep = 1; while (1) { for (i = 0; i < PWR_MGR_NUM_EVENTS; i++) { int test = 0; test |= (i == SOFTWARE_0_EVENT) ? 1 : 0; test |= (i == SOFTWARE_2_EVENT) ? 1 : 0; test |= (i == VREQ_NONZERO_PI_MODEM_EVENT) ? 1 : 0; if (test == 0) pwr_mgr_event_trg_enable(i, 0); } disable_all_interrupts(); enter_idle_state(&s); } }
void __init harp_init_irq(void) { int irq; disable_all_interrupts(); for (irq = 0; irq < NUM_EXTERNAL_IRQS; irq++) { disable_irq_nosync(irq); set_irq_chip_and_handler_name(irq, &harp_chips[irq], handle_level_irq, "level"); disable_harp_irq(irq); } }
/** * init_hw() - initialize the I2C hardware * @dev: private data of I2C Driver */ static int init_hw(struct nmk_i2c_dev *dev) { int stat; stat = flush_i2c_fifo(dev); if (stat) return stat; /* disable the controller */ i2c_clr_bit(dev->virtbase + I2C_CR , I2C_CR_PE); disable_all_interrupts(dev); clear_all_interrupts(dev); dev->cli.operation = I2C_NO_OPERATION; return 0; }