Closed veremenko-y closed 3 months ago
@davidgiven
Pinging you to help with the review.
One thing that I'm not sure about is handling of interrupts. I had issues with deadlocks, and I think adding udata.u_ininterrupt
to timer_tick_cb
helped, but I'm not sure if that's 100% correct, as I never fully track the deadlock down.
I can't reproduce this build error locally
/usr/include/newlib/sys/_timeval.h:42:18: error: conflicting types for 'time_t'
42 | typedef _TIME_T_ time_t;
I'm building with the newer version of newlib though. What do you want me to do in this case? E.g. leave it, or should I get an ubuntu VM and ensure it builds there as well?
Name : arm-none-eabi-newlib
Version : 4.4.0.20231231-1
Can we split this up a bit. It's very hard to navigate all the bits that do differing things.
For the extra device I think it would be better to instead define CONFIG_DEV_PLATFORM at which point misc dev minor 6 ioctls call plt_dev_ioctl to implement any platform specific stuff that doesn't fit anywhere else. Eg the COCO3 port uses it for hooking SWI2/3 for emulating Flex and OS/9 stuff.
Absolutely. I got a bit carried away with the changes. I'll split and push them as separate PRs.
For the extra device I think it would be better to instead define CONFIG_DEV_PLATFORM
This is the part of the change I wasn't sure about. Thank you for the info. I'll rewrite the device portion.