DSTATUS disk_initialize(BYTE drv, WORD *ss) { s32 r; int i; while(1) { dbgprintf("FFS:Initializing TinyEHCI...\n"); tiny_ehci_init(); udelay(50000); dbgprintf("FFS:Discovering EHCI devices...\n"); i = 1; while(ehci_discover() == -ENODEV) { dbgprintf("FFS:Waiting for device to become ready (%d)\n", i); udelay(4000); i++; } r = USBStorage_Init(); if(r == 0) break; } s_cnt = USBStorage_Get_Capacity(&s_size); *ss = s_size; dbgprintf("FFS:Drive size: %dMB SectorSize:%d\n", s_cnt / 1024 * s_size / 1024, s_size); return r; }
s32 USBStorage_devsectors_2(void) { u32 tmp; return USBStorage_Get_Capacity(2, &tmp); }