From 9680f958408f49a75ea7b49dade839e72937a074 Mon Sep 17 00:00:00 2001 From: patacongo Date: Sat, 12 Nov 2011 17:49:00 +0000 Subject: Prep for 6.11 release git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4090 42af7a65-404d-4744-a932-0658087f49c3 --- nuttx/ChangeLog | 12 +- nuttx/Documentation/NuttX.html | 279 ++++++++++++------------------ nuttx/ReleaseNotes | 42 ++++- nuttx/arch/mips/src/mips32/up_swint0.c | 4 + nuttx/arch/mips/src/pic32mx/pic32mx-irq.c | 15 +- 5 files changed, 171 insertions(+), 181 deletions(-) (limited to 'nuttx') diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog index 2f83184f6..ed9670b3c 100644 --- a/nuttx/ChangeLog +++ b/nuttx/ChangeLog @@ -2146,7 +2146,7 @@ supports X11 graphics, C++, and exercises graphic functions as built-in commands. -6.11 2011-xx-xx Gregory Nutt +6.11 2011-11-12 Gregory Nutt * arch/arm/stm32/Make.defs: Don't build stm32_rtc.c if CONFIG_RTC is not selected. Doing so will cause errors if other configuration dependencies @@ -2176,8 +2176,8 @@ conversion macros. * tools/incdir.sh: Fix issues when g++ is used as the compiler. It was not being recognized and handled properly. - * graphics/nxsu/nx_releasebkgdg.c: Fix a bad cast that was causing - problems with the backgournd window was released. + * graphics/nxsu/nx_releasebkgd.c: Fix a bad cast that was causing + problems with the background window was released. * fs/nxffs/nxffs_pack.c: Correct a critical bug in the NXFFS file system: When repacking the filesystem, there was a missing check to see if an inode structure would fit at the end of a block. This is a rare case @@ -2196,5 +2196,9 @@ macros. * arch/arm/src/common/up_createstack.c and up_usestack.c: For ARM EABI the stack must be aligned to 8-byte boundaries. This is necessary for - passing aligned floating point values under EABI. + passing aligned floating point values under EABI. Fix contributed by + David Sidrane. + * Numerous changes and fixes to the PIC32 interrupt handing logic. The + PIC32 port is almost complete but still not ready for prime time. +6.12 2011-xx-xx Gregory Nutt diff --git a/nuttx/Documentation/NuttX.html b/nuttx/Documentation/NuttX.html index 56c90ef44..870c64d09 100644 --- a/nuttx/Documentation/NuttX.html +++ b/nuttx/Documentation/NuttX.html @@ -8,7 +8,7 @@

NuttX RTOS

-

Last Updated: October 6, 2011

+

Last Updated: November 12, 2011

@@ -905,81 +905,66 @@ -

nuttx-6.10 Release Notes: +

NuttX-6.11 Release Notes

- The 77th release of NuttX, Version 6.10, was made on October 6, 2011, and is available for download from the + The 78th release of NuttX, Version 6.11, was made on November 12, 2011, and is available for download from the SourceForge website. - Note that release consists of two tarballs: nuttx-6.10.tar.gz and apps-6.10.tar.gz. + Note that the release consists of two tarballs: nuttx-6.11.tar.gz and apps-6.11.tar.gz. Both may be needed (see the top-level nuttx/README.txt file for build information) The change log associated with the release is available here. Unreleased changes after this release are available in SVN. These unreleased changes are also listed here.

- This release includes a few new features and several important bug fixes. - The new features (some still incomplete) include: + This release is a maintenance release that includes a few new features + and some important bugfixes. New features include:

    -
  • USB Device. - CDC ACM serial class device-side driver +
  • NX Graphics. + New interfaces to read from graphics memory.
  • -
  • RTC. - Now supports hi-res and lo-res hardware RTC. The lo-res RTC runs at 1Hz. +
  • Drivers. + The AT24xx FLASH drivers will now support clustering of blocks to achieve a larger, more usable block size for FAT.
  • -
  • STM32 I2C driver. - Now supports faster, polled mode of operation. Added an I2C trace capability. +
  • STM32. + LCD color corrections.
  • -
  • ADS7843E touchscreen driver. - As used on the SAM3U-EK development board. +
  • PIC32. + Board configuration for the Microchip PIC32 Ethernet Starter kit (not yet verified), + new GPIO support library, + button and LED support for the Sure Electronics PIC32MX board. + A lot of progress has been made on the PIC32 NuttX port, but it is still not ready for prime time.
  • -
  • AT91SAM3U SPI driver. - To support the ADS7843E toucscreen -
  • -
  • X11 Support on simulation target. - Build errors in the X11 windows for the simulated target have been correct. - Added support for a simulated touchscreen on the X11 window (based on mouse inputs). -
  • -
  • System Timer. - Added support for a 64-bit system timer. -
  • -
  • TIFF Support. - Added a TIFF library (currently used for storing LCD screen shots). -
  • -
  • LCD Support. - Added a test to verify that we read and write correct to LCD GRAM memory. -
  • -
  • I2C tool. - Extended to support to include a verify command and repititions and auto-address increment for most commands. -
  • -
  • USB terminal example. - Line oriented serial bridge connects a host USB serial terminal to a host UART serial terminal. -
  • -
  • Build System. - apps/Makefile will now include external directories in the application build. +
  • NXP LPC3152. + Board configuration for the Embedded Artists EA3152.

Bugfixes, order roughly on decreasing criticality include the following. - The first two bugs are consider critical. + The first two bugfixes are considered critical.

    -
  • Message Queues. - Correct errors inmq_timedsend() and mq_timedrecieve(). +
  • NXFFS. + Corrected critical bugs in initialization, some full FLASH handling, + and errors in certain cases where the FLASH is repacked.
  • -
  • . - Writes that cross sector boundaries, stray write into the FAT, and a FAT long file name issue. +
  • ARM EABI. + Fix stack aligment required for passing floating point values.
  • -
  • NXFFS. - Added a missed error check. Files cannot be opened for writing if they are already opened for reading. +
  • Build system. + Fix build issues when g++ is used as the compiler. +
  • +
  • NX Graphics. + Bitmap error handling, correct RGB color conversion macros, Error when the background window is released.
  • -
  • Library. - fopen() for append modse was not appending. +
  • STM32. + RTC build fixes, LCD color corrections.
  • -
  • STM32 I2C driver. - Correct another conflict between concurrent FSMC and I2C1 accesses. Fixed some bad error detection logic. +
  • C Library. + fclose() return value.
  • -
  • STM32 SDHC driver. - Interrupts were being left disabled. +
  • Simulation target. + build fixes.

@@ -1281,15 +1266,20 @@
- NXP LPC315x. + NXP LPC315x. Support for the NXP LPC315x family has been incorporated into the code base as of NuttX-6.4. + Support has added for the Embedded Artists EA3152 board in NuttX-6.11.

    STATUS: - The MCU support logic is present but as of this writing has not been verified on hardware. - Because of the high degree of compatibility between the LPC313x and LPC315x family, it + Basic support is in place for both the LPC3152 MCU and the EA3152 board. + Verification of the port was deferred due to tool issues + However, because of the high degree of compatibility between the LPC313x and LPC315x family, it is very likely that the support is in place (or at least very close). + At this point, verification of the EA3152 port has been overcome by events and + may never happen. + However, the port is available for anyone who may want to use it.

@@ -1985,10 +1975,10 @@

    STATUS: - This port is code complete and has begun testing. - Testing is, unfortunately, delayed until I obtain some additional test equipment - (you can't use PICkit 2 with the PIC32; you need PICkit 3. And, to make things worse, - my PICKit3 just hangs when I try to debug). + This port is code complete and partially testing. + Initial testing was, unfortunately, delayed due to test equipment issues. + In the mean time, I received the Sure Electronics and the Microchip PIC32 Ethernet Starter kit. + I expect that this port will be functional when those other ports are functional, but I have not revisited this.

@@ -2009,9 +1999,9 @@

    STATUS: - This port is code complete and has begun testing. - I hope to use the on-board LEDs to work around the debug problems with the PCL Logic board (see above). - Update: Work on this board has stalled due to higher priority tasks. + This port is code complete and has considerable test testing. + The port for this board was nearly complete in NuttX 6.11, but still requires a few bug fixes before it will be ready for prime time. + Work is ongoing as time permits and I expect a solid port for this board in NuttX 6.12.

@@ -2032,7 +2022,8 @@

STATUS: This port was started a shelved... The Starter Kit (even with the MEB) has no serial port. - I will have to come up with a different bring-up strategy to work with this board. + I will have to come up with a different bring-up strategy to work with this board (probably using + an external MAX2232 board for UART support).

@@ -2615,93 +2606,64 @@ Other memory:
    -nuttx-6.10 2011-10-06 Gregory Nutt <gnutt@nuttx.org>
    -
    -    * lib/stdio/lib_fopen.c:  Fix an error in fopen(); the file pointer was not
    -      being positioned at the end of the file when the "a" and "a+" modes are
    -      used.  There are other issues with the "a+" modes (see the top-level TODO
    -      list).
    -    * drivers/usbdev/cdc_serial.c and include/nuttx/usb/cdc.h and cdc_serial.h:
    -      Add support for the CDC ACM serial device class.
    -    * fs/fat/fs_fat32.c: Fix a critical bug in the write logic:  It a tiny write
    -      cross a sector boundary, then two sector writes will occur.  The first part
    -      in the first sector may be written to the wrong sector number.
    -    * fs/fat/fs_fat32util.c:  Fix a stray write into the FAT (always sector 964 on
    -      FAT32).  This bug will cause some lost chains.  I'm sure this bug could
    -      corrupt files but at present, the only thing I have seen is that before
    -      fixing this bug, the Windows chkdsk utility would report these lost chains.
    -    * arch/arm/src/stm32/stm32_i2c.c: Driver can now operate in a faster polled
    -      mode (at the expense of using more cpu cycles).
    -    * arch/arm/src/stm32/stm32_i2c.c: Add trace debug capability.  Enabled with
    -      CONFIG_I2C_TRACE.
    -    * arch/arm/src/stm32/stm32_i2c.c: Fix another bug where I2C conflicts with FSMC
    -      being enabled.  That time at the tail end of the transaction where there is
    -      an unfinished stop condition.
    -    * sched/mq_timedreceive.c and sched/mq_timedsend.c:  The count of threads
    -      waiting on the message queues was not being decremented after a timeout.
    -      This would cause the accounting logic to become out of sync and the, perhaps,
    -      an assertion to be triggered.  This is an important bug and fixes a
    -      potential crash when using mq_timedreceived() and mq_timedsend().
    -    * sched/mq_sndinternal.c: Related to the above, the send logic was incrementing
    -      the wrong counter when it waited as part of the mq_timedsend.c logic.
    -    * fs/fat:  Fix an error in the long file name logic:  If the long file name
    -      is an even multiple of 13 bytes in length, then it should not include a
    -      NULL terminating character.  Fix contributed by Kaushal Parikh.
    -    * configs/sim/nx11: Created a separate configuration to build the NX
    -      example using the a simulated framebuffer driver on an X11 window.  This
    -      example has been verified on Ubuntu 9.09 (it does not work on Cygwin).
    -    * arch/sim/src/up_touchscreen.c and up_x11eventloop.c: Adds support for a
    -      simulated NuttX touchscreen device using mouse/pointer feedback from an
    -      x11 window.
    -    * configs/sim/touchscreen: Adds a configuration to verify the simulated
    -      touchscreen driver (Does not work on Cygwin).
    -    * configs/sam3u/touchscreen: This is the configuration that I plan to use
    -      to verify the SAM3U-EK touchscreen driver.  However, as of this writing,
    -      there is no touchscreen driver for the board.
    -    * CONFIG_RTC_HIRES: Add an option to support either a high-resolution RTC
    -      that completely replaces the system timer tick but may overflow and lose
    -      time when the MCU is off and also for a low-resolution (1 sec/tick) RTC
    -      that can run until 2106 with no overflow.  But in this latter case, higher
    -      resolution time must come from the system timer.
    -    * CONFIG_SYSTEM_UTC: Removed support for the UTC system timer.  It just
    -      doesn't do enough to be worth the CPU cycles or the complexity.
    -    * CONFIG_SYSTEM_TIME16: Added support for an optional 64-bit system timer.
    -    * fs/fat/fs_fat32util.c: Add support for FAT date/time stamps; Enabled via
    -      CONFIG_FS_FATTIME.
    -    * arch/arm/src/sam3u/sam3u_spi.c: Add an SPI driver for the AT91SAM3U.
    -    * drivers/input/ads7843e.c and include/nuttx/input/ads7843e.h: Add a
    -      driver for the TI ADS7843E touchscreen controller.
    -    * fs/nxffs/nxffs_open.c:  Fix an error when a file is open for writing; since
    -      the file will get deleted it is already exists, there must be a check if
    -      there are other open references to the file.
    -    * arch/arm/src/stm32/stm32_sdio.c: Fixed an error where during SDHC
    -      initialization interrupts were not being re-enabled.  Caused more subtle
    -      errors than you would think.
    -    * arch/arm/src/stm32/stm32_i2c.c:  Fixed an error where I2C timeouts appeared
    -      to be successful transfers.
    -    * configs/sim/nsh2: Add another simulated NSH configuration.  This one
    -      supports X11 graphics, C++, and exercises graphic functions as built-in
    -      commands.
    -
    -apps-6.10 2011-10-06 Gregory Nutt <gnutt@nuttx.org>
    -
    -    * apps/system/i2c:  Add repitition and address auto-incrementing so that
    -      and command can be executed numerous times.  Add a new verify command
    -      that will write to a register, read from register, and verify that
    -      returned value.
    -    * apps/graphics/tiff:  Add a library that can be used to create TIFF files.
    -    * apps/examples/tiff:  Add a unit test for the TIFF file creation logic
    -    * apps/examples/lcdrw:  Add a test to verify if you can or can or read
    -      data from an LCD correctly.
    -    * apps/examples/usbterm:  A USB terminal example.. more of a USB chat or
    -      serial bridge:  Data received on local console echoed via USB serial; 
    -      data received on USB serial is echoed on the local console.
    -    * apps/examples/touchscreen:  Add a simple, generic test for any
    -      touschscreen driver.
    -    * Makefile:  The apps/ Makefile now checks for an apps/external directory
    -      or symbolic link.  If such a directory/link exists (and has a Makefile),
    -      it will be added to the apps/ build.  This allows external directories
    -      to be included into the apps/ build by simply creating a symbolic link.
    +nuttx-6.11 2011-11-12 Gregory Nutt <gnutt@nuttx.org>
    +
    +    * arch/arm/stm32/Make.defs:  Don't build stm32_rtc.c if CONFIG_RTC is not
    +      selected.  Doing so will cause errors if other configuration dependencies
    +      are not met.
    +    * configs/stm3210e-eval/src/up_lcd.c:  Color corrections for SPFD5408B LCD
    +      do not work with R61580 LCD.
    +    * configs/pic32-starterkit: Beginning of a configuration for the Microchip
    +      PIC32 Ethernet Starter Kit.  Hmmm.. I don't have a clue how to test this
    +      with no serial port?!
    +    * lib/stdio/lib_fclose.c: fclose() always returns an error (EOF) when it
    +      closes a read-only file.  This is because it calls flush() which will
    +      fail on read-only files.  No harm is done other that a bad value is
    +      returned.
    +    * arch/sim/src/Makefile: Correct build issue for sim/nsh2 target.  Old
    +      libboard.a was not being cleaned.
    +    * arch/mips/src/pic32mx/pic32mx-gpio*.c:  Add GPIO support for the PIC32MX.
    +    * configs/sure-pic32mx/src/up_leds.c and up_buttons.c:  Add button and LED
    +      support for the Sure Electronics PIC32MX board.
    +    * configs/ea3152:  Add a configuration for the Embedded Artists LPC3152
    +      daughter board (with the same base-board used with configs/ea3131)
    +    * graphics/nxmu/nx_getrectangle.c, graphics/nxsu/nx_getrectangle.c,
    +      graphics/mxtk/nx_getwindow.c, graphics/nxmu/nx_gettoobar.c:  New
    +      interfaces to read from graphics memory
    +    * graphics/nxbe/nxbe_bitmap.c: Fix an error in the error handling that
    +      can cause valid bitmaps to fail to render.
    +    * include/nuttx/rgbcolors.h: Fix errors in some 16- and 8-bit color
    +      conversion macros.
    +    * tools/incdir.sh: Fix issues when g++ is used as the compiler.  It was
    +      not being recognized and handled properly.
    +    * graphics/nxsu/nx_releasebkgd.c: Fix a bad cast that was causing
    +      problems with the background window was released.
    +    * fs/nxffs/nxffs_pack.c:  Correct a critical bug in the NXFFS file system:
    +      When repacking the filesystem, there was a missing check to see if an
    +      inode structure would fit at the end of a block.  This is a rare case
    +      if the block size is large, but can be common for tiny block sizes
    +      and results in a crash and file system corruption.
    +    * fs/nxffs/nxffs_initialize.c:  Fix an initialize error.  If the FLASH
    +      is on power-up, NXFFS will fail to initialize correctly.
    +    * fs/nxffs/nxffs_write.c and nxffs_pack.c:  Fix an error that can occur
    +      when attempt to write to FLASH volume that is completely full but
    +      has no value inodes on it.
    +    * drivers/mtd/at24xx.c:  Now supports a configurable block size that
    +      supports using "clusters" of AT24 pages as blocks.  This allows bigger
    +      block sizes and more efficient use of EEPROM when the AT24 is used to
    +      support a file system (such as NXFFS). (Contributed by Hal Glenn).
    +    * include/nuttx/rgbcolors.h: More fixes to RGB color conversion
    +      macros.
    +    * arch/arm/src/common/up_createstack.c and up_usestack.c:  For ARM EABI
    +      the stack must be aligned to 8-byte boundaries.  This is necessary for
    +      passing aligned floating point values under EABI.  Fix contributed by
    +      David Sidrane.
    +    * Numerous changes and fixes to the PIC32 interrupt handing logic. The
    +      PIC32 port is almost complete but still not ready for prime time.
    +
    +apps-6.11 2011-11-12 Gregory Nutt <gnutt@nuttx.org>
    +
    +    There were no major changes to the apps package in NuttX 6.11
     
     pascal-1.0 2011-05-15 Gregory Nutt <gnutt@nuttx.org>
     
    @@ -2744,24 +2706,9 @@ buildroot-1.10 2011-05-06 <gnutt@nuttx.org>
     
     
     
      -nuttx-6.11 2011-xx-xx Gregory Nutt <gnutt@nuttx.org>
      -
      -    * arch/arm/stm32/Make.defs:  Don't build stm32_rtc.c if CONFIG_RTC is not
      -      selected.  Doing so will cause errors if other configuration dependencies
      -      are not met.
      -    * configs/stm3210e-eval/src/up_lcd.c:  Color corrections for SPFD5408B LCD
      -      do not work with R61580 LCD.
      -    * configs/pic32-starterkit: Beginning of a configuration for the Microchip
      -      PIC32 Ethernet Starter Kit.  Hmmm.. I don't have a clue how to test this
      -      with no serial port?!
      -    * lib/stdio/lib_fclose.c: fclose() always returns an error (EOF) when it
      -      closes a read-only file.  This is because it calls flush() which will
      -      fail on read-only files.  No harm is done other that a bad value is
      -      returned.
      -    * arch/sim/src/Makefile: Correct build issue for sim/nsh2 target.  Old
      -      libboard.a was not being cleaned.
      +nuttx-6.12 2011-xx-xx Gregory Nutt <gnutt@nuttx.org>
       
      -apps-6.11 2011-xx-xx Gregory Nutt <gnutt@nuttx.org>
      +apps-6.12 2011-xx-xx Gregory Nutt <gnutt@nuttx.org>
       
       pascal-3.1 2011-xx-xx Gregory Nutt <gnutt@nuttx.org>
       
      diff --git a/nuttx/ReleaseNotes b/nuttx/ReleaseNotes
      index cee318ebe..dad712a3a 100644
      --- a/nuttx/ReleaseNotes
      +++ b/nuttx/ReleaseNotes
      @@ -1503,10 +1503,10 @@ include:
           you will need to make a couple of changes:
       
             - Replace all occurrences of CONFIG_EXAMPLE=foobar with
      -	CONFIG_APP_DIR=examples/foobar in all of the configuration
      -	files.
      +    CONFIG_APP_DIR=examples/foobar in all of the configuration
      +    files.
             - Replace any occurrences of examples/$(CONFIG_EXAMPLE) with
      -	$(CONFIG_APP_DIR)
      +    $(CONFIG_APP_DIR)
             - Replace any occurrences of lib$(CONFIG_EXAMPLE)$(LIBEXT)
               with libapp$(LIBEXT) in your Makefiles.
             - Check any other occurrences of CONFIG_EXAMPLE.
      @@ -2360,3 +2360,39 @@ Bugfixes, order roughly on decreasing criticality include:
           and I2C1 accesses.  Fixed some bad error detection logic.
       
         * STM32 SDHC driver.  Interrupts were being left disabled.
      +
      +NuttX-6.11
      +^^^^^^^^^^
      +
      +The 78th release of NuttX, Version 6.12, was made on November 12, 2011
      +and is available for download from the SourceForge website.  Note
      +that release consists of two tarballs:  nuttx-6.11.tar.gz and
      +apps-6.11.tar.gz.  Both may be needed (see the top-level nuttx/README.txt
      +file for build information).
      +
      +This release is a maintenance release that includes a few new features
      +and some important bugfixes.  New features include:
      +
      +    * NX Graphics:  New interfaces to read from graphics memory
      +    * Drivers:  AT24 FLASH drivers will now support clustering of blocks
      +      to achieve a larger, more usable block size for FAT.
      +    * STM32: LCD color corrections
      +    * PIC32: Board configuration for the Microchip PIC32 Ethernet Starter kit
      +      (not yet verified), new GPIO support library, button and LED support
      +      for the Sure Electronics PIC32MX board.  A lot of progress has been
      +      made on the PIC32 NuttX port, but it is still not ready for prime time.
      +    * NXP LPC3152: Board configuration for the Embedded Artists EA3152.
      +
      +Bugfixes, order roughly on decreasing criticality include:
      +
      +    * NXFFS: Corrected critical bugs in initialization, some full FLASH handling,
      +      and errors in certain cases where the FLASH is repacked.
      +    * ARM EABI: Fix stack aligment required for passing floating point values.
      +    * Build system: Fix build issues when g++ is used as the compiler.
      +    * NX Graphics: Bitmap error handling, correct RGB color conversion macros,
      +      Error when the background window is released.
      +    * STM32: RTC build fixes, LCD color corrections
      +    * Simulation target: build fixes
      +    * C Library: fclose() return value.
      +
      +See the change log for more detailed information.
      \ No newline at end of file
      diff --git a/nuttx/arch/mips/src/mips32/up_swint0.c b/nuttx/arch/mips/src/mips32/up_swint0.c
      index df1a63e35..f302ad92f 100644
      --- a/nuttx/arch/mips/src/mips32/up_swint0.c
      +++ b/nuttx/arch/mips/src/mips32/up_swint0.c
      @@ -359,5 +359,9 @@ int up_swint0(int irq, FAR void *context)
           }
       #endif
       
      +  /* Clear the pending software interrupt 0 */
      + 
      +  up_clrpend_irq(PIC32MX_IRQSRC_CS0);
      +  
         return OK;
       }
      diff --git a/nuttx/arch/mips/src/pic32mx/pic32mx-irq.c b/nuttx/arch/mips/src/pic32mx/pic32mx-irq.c
      index ae2b8ce07..96b4bc08b 100644
      --- a/nuttx/arch/mips/src/pic32mx/pic32mx-irq.c
      +++ b/nuttx/arch/mips/src/pic32mx/pic32mx-irq.c
      @@ -314,7 +314,7 @@ bool up_pending_irq(int irq)
       
                 ifsaddr = PIC32MX_INT_IFS0;
                 iecaddr = PIC32MX_INT_IEC0;
      -          bitno  -= PIC32MX_IRQSRC0_FIRST;
      +          bitno   = irq - PIC32MX_IRQSRC0_FIRST;
               }
             else if (irq <= PIC32MX_IRQSRC1_LAST)
               {
      @@ -322,7 +322,7 @@ bool up_pending_irq(int irq)
       
                 ifsaddr = PIC32MX_INT_IFS1;
                 iecaddr = PIC32MX_INT_IEC1;
      -          bitno  -= PIC32MX_IRQSRC1_FIRST;
      +          bitno   = irq - PIC32MX_IRQSRC1_FIRST;
               }
       #ifdef PIC32MX_IRQSRC2_FIRST
             else if (irq <= PIC32MX_IRQSRC2_LAST)
      @@ -331,7 +331,7 @@ bool up_pending_irq(int irq)
       
                 ifsaddr = PIC32MX_INT_IFS2;
                 iecaddr = PIC32MX_INT_IEC2;
      -          bitno  -= PIC32MX_IRQSRC2_FIRST;
      +          bitno   = irq - PIC32MX_IRQSRC2_FIRST;
               }
       #endif
             else
      @@ -365,8 +365,7 @@ void up_clrpend_irq(int irq)
         uint32_t regaddr;
         int bitno;
       
      -  /* Disable the interrupt by clearing the associated bit in the IEC and then
      -   * acknowledge the interrupt by clearing the associated bit in the IFS
      +  /* Acknowledge the interrupt by clearing the associated bit in the IFS
          * register.  It is necessary to do this BEFORE lowering the interrupt
          * priority level otherwise recursive interrupts would occur.
          */
      @@ -379,14 +378,14 @@ void up_clrpend_irq(int irq)
                 /* Use IFS0 */
       
                 regaddr = PIC32MX_INT_IFS0CLR;
      -          bitno  -= PIC32MX_IRQSRC0_FIRST;
      +          bitno   = irq - PIC32MX_IRQSRC0_FIRST;
               }
             else if (irq <= PIC32MX_IRQSRC1_LAST)
               {
                 /* Use IFS1 */
       
                 regaddr = PIC32MX_INT_IFS1CLR;
      -          bitno  -= PIC32MX_IRQSRC1_FIRST;
      +          bitno   = irq - PIC32MX_IRQSRC1_FIRST;
               }
       #ifdef PIC32MX_IRQSRC2_FIRST
             else if (irq <= PIC32MX_IRQSRC2_LAST)
      @@ -394,7 +393,7 @@ void up_clrpend_irq(int irq)
                 /* Use IFS2 */
       
                 regaddr = PIC32MX_INT_IFS2CLR;
      -          bitno  -= PIC32MX_IRQSRC2_FIRST;
      +          bitno   = irq - PIC32MX_IRQSRC2_FIRST;
               }
       #endif
             else
      -- 
      cgit v1.2.3