rsta2 / circle

A C++ bare metal environment for Raspberry Pi with USB (32 and 64 bit)

Home Page:https://circle-rpi.readthedocs.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

release-45.2 usb samples compile with errors

ArnoldUK opened this issue · comments

I'm not sure if it is this release only but worked perfectly before. All usb samples (keyboard,mouse etc..) are not compiling due to undefined references in dwhcidevice.cpp:736 references.

arm-none-eabi-ld: ../../lib/usb/libusb.a(dwhcidevice.o): in function `CDWHCIDevice::TransferStage(CUSBRequest*, bool, bool, unsigned int)':
/home/pi/projects/circle/lib/usb/dwhcidevice.cpp:736: undefined reference to `CScheduler::Get()'
arm-none-eabi-ld: /home/pi/projects/circle/lib/usb/dwhcidevice.cpp:736: undefined reference to `CScheduler::Yield()'
make: *** [../../Rules.mk:209: kernel.img] Error 1

Appears to be with this line of code at line 736 in dwhcidevice.cpp where NO_BUSY_WAIT is defined:

#ifdef NO_BUSY_WAIT
		CScheduler::Get ()->Yield ();
#endif

These samples have to be compiled without the system option NO_BUSY_WAIT defined. NO_BUSY_WAIT can be used only, when the scheduler is in the system, which is not the case here.

Yes, I figured it out now and undefined the NO_BUSY_WAIT option. Compiles without errors now, thanks.