void USB_MIDI_ChangeConnectionState(uint8_t connected){ FIFO_FLUSH(USB_midi_packets_in); if (connected){ // USB_TxBufferBusy=0; USB_transferPossible=1; }else{ // USB_TxBufferBusy=1; USB_transferPossible=0; } }
static int sun4i_ts_open(struct input_dev *dev) { struct sun4i_ts_data *ts = input_get_drvdata(dev); /* Flush, set trig level to 1, enable temp, data and up irqs */ writel(TEMP_IRQ_EN(1) | DATA_IRQ_EN(1) | FIFO_TRIG(1) | FIFO_FLUSH(1) | TP_UP_IRQ_EN(1), ts->base + TP_INT_FIFOC); return 0; }
void espTimeoutError(void){ if (espAttemptIsEnded()){ //Остались попытки? espModuleRemove(); //Считаем, что модуль отсутствует } else{ espStatusFlags--; //Минус одна попытка espReset(); //Сбрасываем FIFO_FLUSH(espTxBuf); //SetTimerTask(espCheckStart, CLK_TIMEOUT); //И запускаем проверку модуля espStart(); SetTimerTask(espTimeoutError, ESP_WHITE_START); //Ждем пока модуль не перестартует } }