|
Hi,
Have you confirmed proper working of HPI interface? Please check it using the initialization code.
Please add the following code to your processor's initialization code and let me know the behavior. This is to ensure proper working of HPI interface.
MailboxData = XIo_In16(USB_MAILBOX);>>>>>read from mailbox
XIo_Out16(USB_ADDRESS,0x0142);//HPI_IRQ_ROUTING_REG>>>>>select address
XIo_Out16(USB_DATA,0x0000);>>>>>>write data
MailboxData = XIo_In16(USB_MAILBOX);
Status = XIo_In16(USB_STATUS);
XIo_Out16(USB_ADDRESS,0x0144);
XIo_Out16(USB_DATA,0x0000);
Status = XIo_In16(0x0144);
XIo_Out16(USB_ADDRESS,0x0148);
XIo_Out16(USB_DATA,0x0000);
Status = XIo_In16(0x0148);
XIo_Out16(USB_ADDRESS,0xC090);
XIo_Out16(USB_DATA,0xFFFF);
XIo_Out16(USB_ADDRESS,0xC0B0);
XIo_Out16(USB_DATA,0xFFFF);
//usleep(10*1000);
for(i = 0;i<10000;i++)
XIo_Out16(USB_ADDRESS, 0x01C2);
XIo_Out16(USB_DATA, 0x0072);
XIo_Out16(USB_ADDRESS,0x01C4);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01C6);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01C8);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01CA);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01CC);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01CE);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01D0);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01D2);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01D4);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01D6);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01D8);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01DA);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01DC);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_ADDRESS,0x01DE);
XIo_Out16(USB_DATA,0x0000);
XIo_Out16(USB_MAILBOX, 0xFA50);
MailboxData = XIo_In16(USB_MAILBOX);
Status = XIo_In16(USB_STATUS);
//}
while (XIo_In16(USB_MAILBOX) != 0X0FED) {;}
Thanks
Prajith
|