Skip to content
  1. Jul 31, 2016
    • Gregory Nutt's avatar
      I/O Expander: Remove hard-coded PCA9555 fields from ioexpander.h definitons. ... · 5f9ee792
      Gregory Nutt authored
      I/O Expander: Remove hard-coded PCA9555 fields from ioexpander.h definitons.  Add support for an attach() method that may be used when any subset of pin interrupts occur.
      
      PCA9555 Driver:  Replace the signalling logic with a simple callback using the new definitons of ioexpander.h.  This repartitioning of functionality is necessary because (1) the I/O expander driver is the lower-lower part of any driver that uses GPIOs (include the GPIO driver itself) and should not be interacting directly with the much higher level application layer.  And (2) in order to be compatible with the GPIO driver (and any arbitrary upper half driver), the PCA9555 should not directly signal, but should call back into the upper half.  The upper half driver that interacts directly with the application is the appropriate place to be generating signal.
      5f9ee792
    • Gregory Nutt's avatar
  2. Jul 30, 2016
    • David S. Alessio's avatar
      This commit fixes the following libc/math issues: · c145159c
      David S. Alessio authored
      1) asin[f l]() use Newton’s method to converge on a solution. But Newton’s method converges very slowly (> 500,000 iterations) for values of x close to 1.0; and, in the case of asinl(), sometimes fails to converge (loops forever). The attached patch uses an trig identity for values of x > sqrt(2). The resultant functions converge in no more than 5 iterations, 6 for asinl().
      
      2) The NuttX erf[f l]() functions are based on Chebyshev fitting to a good guess. The problem there’s a bug in the implementation that causes the functions to blow up with x near -3.0. This patch fixes that problem. It should be noted that this method returns the error function erf(x) with fractional error less than 1.2E-07 and that’s fine for the float version erff(), but the same method is used for double and long double version which will yield only slightly better precision. This patch doesn't address the issue of lower precision for erf() and erfl().
      
      3) a faster version of copysignf() for floats is included.
      c145159c
    • Gregory Nutt's avatar
  3. Jul 29, 2016
  4. Jul 28, 2016
  5. Jul 27, 2016
  6. Jul 26, 2016
  7. Jul 25, 2016
  8. Jul 24, 2016