Хост OHCI LPC2361.

Работает Control, Bulk, Int передачи.
Настроил запуск Iso IN транзакции.
Для простоты, в таблице прерываний HCCA инициализировал только одну точку. Хочу чтобы хост, для начала, выполнил только одну транзакцию.
Вот код настройки:
Код
  // Disable periodic list processing
  HcControl &= ~( OR_CONTROL_PLE | OR_CONTROL_IE );

  Hcca->IntTable[ 0 ]= (unsigned int)EndpointDescriptorInt;

  EndpointDescriptorInt->Control = 1             |            // USB address        
                                  ( 3 << 7  )    |            // Endpoint address      
                                  ( 2 << 11 )    |            // direction IN          
                                  ( ISO_PACKET_SIZE << 16 );  // MaxPkt Size

  EndpointDescriptorInt->HeadTd  = (unsigned int)TDTail;
  EndpointDescriptorInt->TailTd  = (unsigned int)TDTail;
  EndpointDescriptorInt->Next= (unsigned int)EndpointDescriptorIso;

  EndpointDescriptorIso->Control = 1             |            // USB address        
                                  ( 2 << 7  )    |            // Endpoint address      
                                  ( 2 << 11 )    |            // direction IN          
                                  ( 1 << 15 )    |            // format ISO          
                                  ( ISO_PACKET_SIZE << 16 );  // MaxPkt Size
  
  TDHead_ISO->Control = (((HcFmNumber)&0xFFFF) |      // Starting Frame
                        TD_DELAY_INT(0) |                   // Delay Interrupt ( 0 << 21 )      
                        ( 0 << 24 )     |                   // Frame Count ( 0 - 1 packet, 7 - 8 packets )
                        TD_CC);                             // Completition Code 0xF0000000
  TDTail->Control         = 0;
  TDHead_ISO->BP0         = (unsigned int) TDIntBuffer;
  TDTail->CurrBufPtr      = 0;
  TDHead_ISO->Next        = (unsigned int) TDTail;
  TDTail->Next            = 0;
  TDHead_ISO->BufEnd      = 0;
  TDTail->BufEnd          = 0;

  TDHead_ISO->Offset[0] = 0xE000;
  TDHead_ISO->Offset[1] = 0;
  TDHead_ISO->Offset[2] = 0;
  TDHead_ISO->Offset[3] = 0;
  TDHead_ISO->Offset[4] = 0;
  TDHead_ISO->Offset[5] = 0;
  TDHead_ISO->Offset[6] = 0;
  TDHead_ISO->Offset[7] = 0;


  EndpointDescriptorIso->HeadTd  = (unsigned int)TDHead_ISO |
                                      ((EndpointDescriptorIso->HeadTd) & 0x00000002);
  EndpointDescriptorIso->TailTd  = (unsigned int)TDTail;
  EndpointDescriptorIso->Next= 0;

  // Set the time when periodic list processing should start
  HcPeriodicStart= ( HcFmInterval & 0x00003fff ) / 2;

  // Enable periodic list processing
  HcControl |= ( OR_CONTROL_PLE | OR_CONTROL_IE );


В результате хост трансфер дескриптор на обработку берет, но сразу же ставит его в Done со статусом Data Overrun.
При этом не ставит точку в Halt состояние и не меняет статуса в поле Offset[0].
Эта ситуация описана в доке на хост, как случающаяся, когда хост не может завершить транзакцию в указанном фрейме,
но он ее даже не начинает!
Я смотрю аппаратным анализатором шину, никакой активности хост на шине не показывает.

Помогите пожалуйста куда смотреть?