100 Commits
Author SHA1 Message Date
David Sidrane 2b68076663 Update Nuttx with F7 i2C fixes 2019-04-18 08:55:50 +02:00
David Sidrane dbd02b1e47 px4io:Detect Running on Cube and set GPIO for heater
Addresses #11832 - configure the mixed use GPIO
   that can be the a BLue LED or a Heater as PUSH
   PULL on Cube as to not let the heater input float.
2019-04-11 08:34:22 +02:00
David Sidrane 46c4a68b62 fmu-v5: Move stage 0 dcache disable to later in boot (#11791) 2019-04-04 11:07:28 -04:00
David Sidrane 1c212e3f84 M7 dcache ctrl via a parameter (#11769)
* Support for armv7-m_dcache control via parameter

  The FORCE_F7_DCACHE parameter can be set to
   0 - (default) if Eratta exits turn dcache off else leave it on
   1 -  Force it off
   2 -  Force it on

   At boot the system will disable the d-cache if the silicon
   has the 1259864 Data corruption in a sequence of Write-Through
   stores and loads eratta.

   Post nsh script execution the FORCE_F7_DCACHE paramater
   will be used to set the d-cache to the state indicated
   above.
2019-04-03 16:14:19 -04:00
David Sidrane 1250fb1b48 RGB order now matchs layout 2019-04-02 13:40:17 -04:00
David Sidrane eb58dae51b lights:Remove conditional rgb led starting (do all of them)
There is no need to not to start a pwm based led or a
   rgbled_ncp5623c if the old TCA62724FMG is started. They
   will all work in parallel.
2019-04-02 13:40:17 -04:00
David Sidrane 91e548000f bmp280:Locate internal to PX4_I2C_BUS_ONBOARD 2019-04-02 13:40:17 -04:00
David Sidrane fd31091fdb bmm150:Restored lost internal i2C 2019-04-02 13:40:17 -04:00
David Sidrane 005db51d7f nxp_fmuk66-v3:Add support for rgbled_ncp5623c 2019-04-02 13:40:17 -04:00
David Sidrane 8504ffd8f2 nxp_fmuk66-v3:Set bmm150 orientation 2019-04-02 13:40:17 -04:00
David Sidrane bfc704b60a fmuk66-v3:Add pullup on LPUART0_RX 2019-04-02 13:40:17 -04:00
David Sidrane ef882989fe [Breaking Change]fmuk66-v3: Only Support Rev BX11
I2C bus chaged I2C0 is external, I2C1 internal
     Added BMM150 on I2C1 @ Addr 0x100
     Added BMP280 on I2C1 @ Addr 0x76

   UART0 (/dev/ttyS1) now used at Telem 2

   Chip select added for W25X40CLUXIG Calibration EE prom
     Driver is not added at this time
2019-04-02 13:40:17 -04:00
David Sidrane 3938574a4a px4_fmuv5:Extend probes to CAP pins
This also fixes a typo in the GPIO defines
2019-03-18 16:16:23 -04:00
David Sidrane dc50a564dd Revert "Jenkins hardware test temporarily disable px4_fmu-v5_stachcheck tests"
This reverts commit 0df34af181.
2019-03-01 23:45:48 -05:00
David Sidrane edd9f91a19 board:Set larger stack margin 2019-03-01 23:45:48 -05:00
David Sidrane 12d442e8dd px4_fmuv5:Stack Check build Increase to 2624
The cause of the stack detection fault is because of the
   level of nesting in the start up script. We need to
   determine the worst case configuration and set the
   bar there.

   This fault occurred some 42 calls deep due to script
   calling script (repeat).

   The HW stack check requires as a margin of 204 bytes. That is
   ISR HW stacking of CPU(8) FPU(18) registers and SW stacking of
   CPU(11) and FPU(16) registers. Total CPU(19) registers is
   68 bytes and the total FPU(34) registers is 136 bytes.  On
   a system with a separate ISR stack This only needs to be 104
   so there is 100 bytes of headroom. But as coded the detection
   will give a false positive detection and fault. This does not
   mean that the stack will be corrupted.

   Adjustments to that stack can have no effect due to rounding.
   A stack size of 2608 and 2616 can yield the exact same size stack.
   So even when the failure is due to a 4 byte overflow, it can take
   greater than a 16 bytes increase to fix it. Because the final
   stack size is calculated with an 8 byte alignment after a 4 byte
   decrease. So 2624 becomes 2620 at runtime and will boot
   with SYS_AUTOSTART=4001.
2019-03-01 23:45:48 -05:00
David Sidrane 0846059646 fmuv5:Repurpose TIM5_SPARE_4 as nARMED
nARMED is a Digital OUTPUT. GPIO will be set as input while not
   armed HW will have Pull UP. While armed it will be configured
   as a GPIO OUT set LOW.
2019-02-26 15:34:10 -05:00
David Sidrane 477152a96d Commander:Support BOARD_INDICATE_ARMED_STATE for HW that supports external armed indiction 2019-02-26 15:34:10 -05:00
David Sidrane bf8a5e9652 board_common:Add BOARD_INDICATE_ARMED_STATE
This adds an optional default support for HW that does not
   have and external armed indiction.
2019-02-26 15:34:10 -05:00
David Sidrane 4e792b2487 Update nuttx with backport f7 i2c fix on 7.28+ 2019-02-21 16:07:58 -05:00
David Sidrane 0705d6c807 stm32 drv_io_timer: Prevent glitch on PWM outputs (#11453)
Rate changes were doing an asynchronous register reload via the EGR_UG. This could extend a PWM pulse up to 2X.

This fix removes the asynchronous update. The net effect is the the rate change will occur on the next counter expiration. The worst case is the rate change is delayed by 20 Ms.
2019-02-18 11:08:04 -05:00
David Sidrane beff3ae66a deprecate gumstix aerocore - no longer supported by mfg 2019-02-12 20:53:45 -05:00
David Sidrane b40f8d52a8 STM32F7 disable d-cache as a precaution (#11374)
- see 1259864 Data corruption in a sequence of Write-Through stores and loads
 - if we can be certain this sequence won't occur in PX4 then the d-cache will be re-enabled
2019-02-10 18:25:16 -05:00
David Sidrane a153148ef5 camera_capture:Use IOCTL to set capture mode. 2019-02-10 18:07:44 -05:00
David Sidrane 928e0140ee fmu:Add MODE_4PWM1CAP, MODE_5PWM, MODE_5PWM1CAP
This extends the  Capture support for FMU
   CHAN 5 and 6.
2019-02-10 18:07:44 -05:00
David Sidrane c6edf41a74 test time: Fixed bad assumption about RAND_MAX (#11414)
usleep range was up to 2147 Seconds

   Per open group: The rand() function shall compute a
   sequence of pseudo-random integers in the range
   [0, {RAND_MAX}]  with a period of at least 2^32

   {RAND_MAX} Maximum value returned by rand();
   at least 32767.

   /* Maximum value returned by rand().  Must be a minimum of 32767. */

   #define RAND_MAX INT_MAX

  and

  #define INT_MAX     2147483647
2019-02-08 14:39:18 -05:00
David Sidrane 6f9a9b3d2c px4_fmu-v4: add runtime external SPI4 detection to support pmw3901 (#11301)
* The build is built with SPI4. At run time the signal GPIO_8266_GPIO2 it tested. If it is low the SPI4 is configured. If it is high SPI4 is not configured.
 * board_common: Add Notion of Board has bus manifest
2019-01-29 13:44:15 -05:00
David Sidrane 53a127beb9 Oversampling rate for MPL3115A2 pressure sensor (#11332)
As reported by @LeoMustafaNXP in https://github.com/PX4/Firmware/issues/11296
2019-01-29 11:41:58 -05:00
David Sidrane b478719079 omnibus_f4sd:Fully remove console 2019-01-25 06:32:37 -08:00
David Sidrane dc73dd7bba px4_init:Nuttx support boards without a console 2019-01-25 06:32:37 -08:00
David Sidrane 1ef9b5ed81 Updated Nuttx 7.28+ 2019-01-25 06:32:37 -08:00
David Sidrane a4841a7179 thiemar_s2740vc-v1: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 477bf384d7 stm_nucleo-F767ZI: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 74898569a0 stm_32f4discovery: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 0f5f4814bb px4_fmu-v5: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 7e863456c4 px4_fmu-v4pro: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 938f1453fe px4_fmu-v4: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 9430854404 px4_fmu-v3: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane b31f29b983 px4_fmu-v2: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 09d279b1e0 px4_esc-v1: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 3032643a0c omnibus_f4sd: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane f943aa5d26 px4_cannode-v1:Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 122519c95f nxp_fmuk66-v3: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 6e63985a10 intel_aerofc-v1: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 9294766658 gumstix_aerocore2: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 48f9d3f3d9 bitcraze_crazyflie: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 47e16e75f2 av_x-v1: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 6872c6900e auav_x21: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 34aabed5e5 auav_esc35-v1: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane e7f8042e90 atmel_same70xplained: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 55559bc72c airmind_mindpx-v2: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 2d7effa342 px4_io-v2: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane cf09a8e933 px4_micro_hal:Upstream nuttx GPIO_OUTPUT_ZER0->GPIO_OUTPUT_ZERO 2019-01-25 06:32:37 -08:00
David Sidrane 3f0c9d5df5 px4_micro_hal:Fix typo 2019-01-25 06:32:37 -08:00
David Sidrane 517add3c8c auav_esc31-v1:Fix build 2019-01-25 06:32:37 -08:00
David Sidrane 869e476af9 uavcanesc:Add cdev 2019-01-25 06:32:37 -08:00
David Sidrane 0cc3bfb10b flashfs:Track upstream nuttx CONFIG_ARCH_HAVE_PROGMEM
Upstream header file is conditional on CONFIG_ARCH_HAVE_PROGMEM
2019-01-25 06:32:37 -08:00
David Sidrane 8f308efa88 upstram NuttX CONFIG_EXAMPLES_NSH_CXXINITIALIZE->CONFIG_SYSTEM_NSH_CXXINITIALIZE 2019-01-25 06:32:37 -08:00
David Sidrane 5c23099eed board_button_irq: API change in upstream 2019-01-25 06:32:37 -08:00
David Sidrane f007c93785 mc_pos_control_main:Use discret init of poll struct
Suport upstream change in nuttx.
2019-01-25 06:32:37 -08:00
David Sidrane 78619514b7 ROMFS/CMakeLists build gencromfs 2019-01-25 06:32:37 -08:00
David Sidrane e7bf0e03d2 px4_nuttx_tasks:Support future removal of env.
CONFIG_DISABLE_ENVIRON can prevent task having to allocate
   memory for the env.
2019-01-25 06:32:37 -08:00
David Sidrane 88d0b163b5 common:board_crashdump must end in reset!
Upstream changes defer the board reset based on the vaule of
   CONFIG_BOARD_RESET_ON_ASSERT
      0 (or not defined) Do not reset on assert
      >= 1 reset if assertion is in an interrupt handler or the idle task
      >= 2 on any asertion.

  up_assert is called from up_hardfault or an asertion failure.
  Part 1 of up_assert will call out to the board_crashdump
  Part 2 on return from board_crashdump will then perform
  the reset.

  board_crashdump needs a chunk of ram to save the complete
  context in. It uses  &_sdata which is the lowest memory and
  it will corrupt that memeory.  We can therfore can not allow
  return to the OS, as it could depend on that area of RAM.

  So all boards need to do a reset at the end of board_crashdump
2019-01-25 06:32:37 -08:00
David Sidrane e358486ef7 aerofc-v1:Scope CRASHDUMP_RESET_ONLY to BOARD_CRASHDUMP_RESET_ONLY 2019-01-25 06:32:37 -08:00
David Sidrane 91d8c31f7b Custom board naming, removed need for tools/nuttx_defconf_tool.sh 2019-01-25 06:32:37 -08:00
David Sidrane 5036a09e22 Add support from cromfs generation 2019-01-25 06:32:37 -08:00
David Sidrane f2208171d5 Add callout for CONFIG_BOARDCTL_FINALINIT 2019-01-25 06:32:37 -08:00
David Sidrane d122a35606 Add STM32 critical section monitor time resources 2019-01-25 06:32:37 -08:00
David Sidrane f00d633196 flashfs:Upstream renamed up_progmem_erasepage to up_progmem_eraseblock 2019-01-25 06:32:37 -08:00
David Sidrane 1f54214224 stm32/drv_io_timer:GTIM_CCER_CC1NP not on all STM32 HW
The F1 series GTIMs to not have GTIM_CCER_CC1NP.
   This bug fix tracks the upstream change that
   made GTIM_CCER_CC1NP conditional on the chip.
2019-01-25 06:32:37 -08:00
David Sidrane 7ba81fac4b Build copies the boards nuttx-config to build at Nuttx level 2019-01-25 06:32:37 -08:00
David Sidrane d294b40fcb Changes to suport Nuttx c++ lib rename 2019-01-25 06:32:37 -08:00
David Sidrane e505fe859d Update Nuttx and NuttX-apps to 7.28+ 2019-01-25 06:32:37 -08:00
David Sidrane 5e53f73ad8 fmu-v5:Add Alias CUAV V5 REV:5, VER:1 2019-01-08 07:34:22 -08:00
David Sidrane d676325ea5 Update Nuttx with env out of memory fix 2018-12-22 19:09:49 +01:00
David Sidrane 53bc357cda nxphlite-v3:SDHC setting is for EMI issue with GPS and FCC (#11029)
This updating of the driver setting is for EMI issue with GPS and FCC.
   With this setting the clock is sinusoidal

   N.B. sd_bench fails on SanDISK HC, but Passes SanDISK **HC1** and
   Kingston cards.

   ****Use HC1 or Kingston cards!***

   Testing done on SanDISK HC all failed sd_bench with Drive/Slew other
   than default and _PIN_OUTPUT_FAST|_PIN_OUTPUT_HIGHDRIVE

	_PIN_OUTPUT_FAST|_PIN_OUTPUT_HIGHDRIVE    Square noisy, pass SanDISK HC
        _PIN_OUTPUT_FAST|_PIN_OUTPUT_LOWDRIVE     Square noisy, pass SanDISK HC
        _PIN_OUTPUT_HIGHDRIVE|_PIN_OUTPUT_SLOW    sinusoidal fail SanDISK HC, pass SanDISK HC1
        _PIN_OUTPUT_LOWDRIVE |_PIN_OUTPUT_SLOW    sinusoidal fail SanDISK HC, pass SanDISK HC1
                              _PIN_OUTPUT_SLOW    sinusoidal fail SanDISK HC, pass SanDISK HC1
2018-12-12 20:51:57 -05:00
David Sidrane 11f9925b02 rcS,rc.serial.jinja:ensure proper unset hygiene
Delete auto generated vars, and others that were missed.
2018-12-12 15:14:11 -05:00
David Sidrane 3e57067b35 fmu-v5:timer_config Move UI LED to 0 and condition status LEDS
If the BOARD_HAS_CONTROL_STATUS_LEDS is set the status LED will
   not be PWM controlled.

   UI LED will always be PWM controlled.
2018-12-02 10:34:04 +01:00
David Sidrane 7350808759 drv_led_pwm:Compile for either BOARD_HAS_LED_PWM or BOARD_HAS_UI_LED_PWM 2018-12-02 10:34:04 +01:00
David Sidrane 1d289f77e3 stm32:drv_led_pwm Null entry check 2018-12-02 10:34:04 +01:00
David Sidrane f3e312e70e fmu-v5:Default the Power LED on 2018-12-02 10:34:04 +01:00
David Sidrane 729d1c32d3 Rename nxphlite-v3 to NXP fmuk66-v3 (#10927) 2018-11-28 12:13:21 -05:00
David Sidrane 2d052c02fa board_common:Use new PX4IO FW name on SD card and remove legacy V1 name 2018-11-26 14:40:14 -08:00
David Sidrane cadda8c263 px4fmu_test:rcS use correct name for px4io bin 2018-11-26 14:40:14 -08:00
David Sidrane b80fa5f2f5 px4fmu-v5:Remove old comment 2018-11-25 21:02:42 +00:00
David Sidrane 1d12827408 Commander:Replace color based LED manipulators with logical ones. 2018-11-19 14:32:47 -05:00
David Sidrane fbc143dc55 sitl:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on sitl
2018-11-19 14:32:47 -05:00
David Sidrane 05ea187b1d px4nucleoF767ZI-v1:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on px4nucleoF767ZI-v1
2018-11-19 14:32:47 -05:00
David Sidrane b37675fa76 px4fmu-v5:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on px4fmu-v5
2018-11-19 14:32:47 -05:00
David Sidrane 26026b5d39 px4fmu-v4pro:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on px4fmu-v4pro
2018-11-19 14:32:47 -05:00
David Sidrane 735830a483 px4fmu-v4:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on px4fmu-v4
2018-11-19 14:32:47 -05:00
David Sidrane 90106c1fd2 px4fmu-v2:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on px4fmu-v2
2018-11-19 14:32:47 -05:00
David Sidrane e40a0839e9 px4-stm32f4discovery:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on px4-stm32f4discovery
2018-11-19 14:32:47 -05:00
David Sidrane 03aae61395 px4-same70xplained-v1:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on px4-same70xplained-v1
2018-11-19 14:32:47 -05:00
David Sidrane 42a8a6ffac omnibus-f4sd:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on omnibus-f4sd
2018-11-19 14:32:47 -05:00
David Sidrane 1da0021be9 nxphlite-v3:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on nxphlite-v3
2018-11-19 14:32:47 -05:00
David Sidrane a12f26aee0 mindpx-v2:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on mindpx-v2
2018-11-19 14:32:47 -05:00
David Sidrane 3c6539257f crazyflie:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on crazyflie
2018-11-19 14:32:47 -05:00
David Sidrane e960978296 auav-x21:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on auav-x21
2018-11-19 14:32:47 -05:00
David Sidrane aa30560d68 aerofc-v1:Added Logical BOARD specific LED mapping
Define the logical LED that are uses on aerofc-v1
2018-11-19 14:32:47 -05:00