This directory contains external library code.

The pjrc_usb_serial directory contains code from:
  http://www.pjrc.com/teensy/usb_serial.html
version 1.7 (extracted on 20160605). It has been modified to compile
on recent versions of gcc, to support asynchronous notification of
incoming data, and to not use SOF interrupts. See usb_serial.patch for
the modifications.

The cmsis-sam3x8e directory contains code from the Arduino project:
  https://www.arduino.cc/
version 1.5.1 (extracted on 20160608). It has been modified to compile
with gcc's LTO feature. See cmsis-sam3x8e.patch for the modifications.

The lpc176x directory contains code from the mbed project:
  https://github.com/ARMmbed/mbed-os
version mbed-os-5.8.3 (c05d72c3c005fbb7e92c3994c32bda45218ae7fe).
Contents taken from the targets/TARGET_NXP/TARGET_LPC176X/ directory
and the cmsis/TARGET_CORTEX_M/ directory. It has been modified to
compile with gcc's LTO feature and to use appropriate clock speeds on
the LPC1768 and LPC1769. See lpc176x.patch for the modifications.

The cmsis-stm32f1 and the hal-stm32f1 directories contain code from
STMicroelectronics:
  http://www.st.com/en/embedded-software/stm32cubef1.html
version 1.6.0 (extracted 20180330).

The hub-ctrl directory contains code from:
  https://github.com/codazoda/hub-ctrl.c/
revision 42095e522859059e8a5f4ec05c1e3def01a870a9.

The pru_rpmsg directory contains code from:
  https://github.com/dinuxbg/pru-gcc-examples
revision 425a42d82006cf0aa24be27b483d2f6a41607489. The code is taken
from the repo's hc-sr04-range-sensor directory. It has been modified
so that the IEP definitions compile correctly. See pru_rpmsg.patch for
the modifications.
