Commit Graph
44 Commits
Author SHA1 Message Date
David Sidrane 69661df783 tap-v1:spi_dev_e is now uint32_t in NuttX
Using new type of uint32_t for spi device and macros
   that define a PX4 device on a given BUS and Chip Select
2017-09-29 10:13:51 -04:00
David Sidrane 3bdbd53441 Update tap-v1 tap_pwr to uses NuttX IRQ API changes 2017-09-29 10:13:51 -04:00
David Sidrane 8c1f506944 tapv1:Use BOARD_NUMBER_I2C_BUSES and BOARD_I2C_BUS_CLOCK_INIT 2017-08-08 21:45:01 +02:00
Beat Küng b89deaf8e3 tap-v1/tap_pwr.c: make sure to invoke the button notification on registering the cb 2017-07-29 23:10:47 +02:00
Beat Küng e129969ea2 tap_pwr: fix definition of board_shutdown() 2017-04-20 10:01:51 +02:00
Beat Küng 0165633bf3 board_config: remove px4_board_pwr, use px4_shutdown_request instead
px4_board_pwr has become obsolete with the addition of board_shutdown
2017-04-20 10:01:51 +02:00
David Sidrane 211837c73b tap:Use board power button notification API
This adds the board power button notification registration
  and shutdown API points.
2017-04-20 10:01:51 +02:00
David Sidrane 26d50d2c98 tap-v1 Remove GPIO_RC_OUT and vetted RC_IN wiring
Removed the legacy FMUv4 define that was activating a nonexistent
   pull up and on some HW driving the PPM_IN aka RC_IN aka SPEKTRUM_RX
   to VDD.

   Also detailed the connections of this pins for the board.

   The simplest connection is RC_IN to a timer capture pin
   and a UART.
   In this case the UART_RX pin and just be left as is.
   While the pin can be configured as the PPM_IN (Timer capture)
   or as SPEKTRUM_RX_AS_GPIO_OUTPUT to use it as and GPIO to
   facilitate binding.

  Renamed the macros and defines to be more explicit as to what
  Is being done and the sense of the parameters
2017-03-30 16:19:26 -10:00
Beat Küng b0439836f6 refactor drv_led.h: rename to drv_board_led.h
This makes it clear that it's used to control the board LED's, not external
LED's.
2017-03-12 00:08:35 +01:00
Beat Küng df8f0da70c param & param_shmem: enable locking
We need to protect access to the param_values array. This is dynamically
allocated and resized (utarray_reserve() calls realloc). If some thread
was iterating the array while another was resizing the array, the first one
would iterate on a freed array, thus accessing invalid memory.

On NuttX this could lead to hardfaults in rare conditions.

Unfortunately we need to initialize the semaphore on startup, by calling
sem_init(). This adds a param_init() method called by every board/config
that uses the params (at least I think I've found all of them)
2017-02-17 11:27:08 +01:00
Lorenz Meier 82fa9a8d43 Update return type for power management call 2017-02-04 21:06:21 +01:00
Lorenz Meier 4f1842c9c4 TAP v1 config: Add support for external power management calls 2017-02-04 21:06:21 +01:00
Lorenz Meier f7fa374656 Implement default board power control to allow software switch-off 2017-02-04 21:06:21 +01:00
David Sidrane f604b71838 tap-v1 using board common mcu version api 2017-01-26 08:39:12 +01:00
David Sidrane 8972308559 tap-v1 using board common identity api 2017-01-25 07:43:11 +01:00
David Sidrane 999ecb84d0 tap-v1 use board common reset interface 2017-01-24 21:17:06 +01:00
David Sidrane 59ec0e8aef Make board_crashdump.c arch agnostic and move to common 2017-01-23 22:10:38 +01:00
José Roberto de Souza 163bcc4bbc drivers: boards: Share board_crashdump() implementation 2017-01-23 22:10:38 +01:00
David Sidrane e9ca626e19 TAP_V1 Moved magic numbers for battery V div and A per V to board_config.h 2017-01-21 11:45:36 +01:00
David Sidrane cf893b6e89 TAP_V1 removed unused GPIO defines
Removed GPIO pins defines that were never user GPIO.
  Removed the camera_trigger driver as it depends on
  GPIO that are not on the TAP V1 HW
2017-01-21 11:45:36 +01:00
Lorenz Meier 520b1dfe07 TAP: Add missing headers 2016-12-27 21:00:51 +01:00
Beat Küng c662113527 board_name.c: remove the file and HW_ARCH macro, use px4_board_name() instead
boards define BOARD_NAME, so board_name() is not necessary. HW_ARCH was
just a wrapper around board_name().

This patch simplifies to having only one common method px4_board_name().
2016-12-21 11:35:10 +01:00
David Sidrane 93996a6d6e TAP uses BOARD_HAS_SHARED_PWM_TIMERS
Fixes https://github.com/PX4/Firmware/issues/5710
2016-12-21 08:34:22 +01:00
David Sidrane 3f64bf81f3 RGB LED cleanup
Removed dead code and magic numbers
  Defined the RGB LED to support 2 timers
2016-12-21 08:34:22 +01:00
David Sidrane b7cc04e0d2 Changes to tap_v1 for upstream Nuttx and hardfault logging 2016-12-21 08:34:21 +01:00
Lorenz Meier 76082da674 Add IST8310 driver 2016-11-03 15:38:28 +01:00
Carlo Wood 90f3e3b5d3 Do not include headers inside __BEGIN_DECLS ... __END_DECLS blocks.
We don't have C++ unsafe headers (anymore).

I added a test to fix_headers.sh that checks if certain "unsafe"
headers are ONLY included inside a __BEGIN_DECLS ... __END_DECLS
(because after all, they are unsafe), as well as checking that
no other header files are included inside such a block. The rationale
of the latter is that if a file is a C header and it declares
function prototypes (otherwise it doesn't matter) and is sometimes
included outside a __BEGIN_DECLS ... __END_DECLS block (from a C++
source file) then it has to be C++ safe and doesn't ever to be
included from inside such a block; while if a file is a C++ header
then obviously it should never be included from such a block.

fix_headers.sh subsequently found several safe headers to be
included from inside such a block, and those that were (apparently
in the past) unsafe were included only sometimes inside such a
block and often outside it. I had a look at those files and saw
that at least an attempt has been made to make them C++ safe,
but especially because they already are included OFTEN outside
a __BEGIN_DECLS ... __END_DECLS (from C++ source files) the
best decision seems to treat them as safe.

This is not risky: .c files that define such functions still
generate C-linkage for their functions. If a C++ unsafe C header
is included outside a __BEGIN_DECLS ... __END_DECLS block then
the only possible result would be an undefined reference to
a function with C++-linkage that will not exist. Aka, when
something links after this commit, then the commit was correct.
I did build all targets and they all linked.
2016-10-28 11:57:08 +02:00
Julian Oes 78b0d1a01f tap: add landing gear capability
This configures the PWM output for the landing gear.
2016-10-20 23:17:05 +02:00
Julian Oes 8ff237c69f Remove size optimization for individual modules
It makes more sense to set the optimization flags on a platform basis
instead of individually for each module. This allows for different
optimization options for SITL, NuttX, Snapdragon, etc.
2016-09-30 08:11:51 +02:00
David Sidrane ac1003875a USB Fix:iForce Soft Disconnect
The STM32F404 OTG FS has an internal soft pull-up.

The HW also has one too. So we need to overcome it to force a soft disconnect.
2016-08-12 13:55:16 +02:00
David Sidrane 6f973f1d6c Better Portability with clear naming 2016-08-12 13:55:16 +02:00
David Sidrane b9d93f2cad OTG_FS_ID that is on PA10 is managed by stm32 otg fs device Driver
N.B The driver set FDMOD, Force device mode and Writing a 1 to this bit
forces the core to device mode irrespective of the OTG_FS_ID input
pin.
2016-08-12 13:55:16 +02:00
Lorenz Meier 2fad39aaae tap: Init both USB pins 2016-08-12 13:55:16 +02:00
Lorenz Meier 957b01a8eb Enable serial for RC input 2016-08-12 13:55:16 +02:00
Lorenz Meier 17561daefb TAP power: Shut down faster 2016-08-10 12:33:04 +02:00
David Sidrane c5e11cd16f TAP:Added i2c speed setting to init 2016-08-07 11:15:48 +02:00
David Sidrane e8ae0fe13c Made the MPU6000 driver a highbread using both hrt for SPI or workqueue for I2C 2016-08-07 11:15:48 +02:00
David Sidrane 5ded579bf3 TAP:More IO Init (#5096) 2016-07-19 11:58:44 -10:00
David Sidrane 33e4f38d82 Add GPS and Compass (#5066) 2016-07-14 08:26:40 -10:00
David Sidrane e2a6ae676f More complete IO init (#5065) 2016-07-14 07:32:11 -10:00
David Sidrane 5d1bd6fb2c TAP used FLASH Based parameter storage - needs timing eval 2016-07-13 20:42:05 +02:00
David Sidrane a23785842c tap-v1 Uses New PWM LED driver structure 2016-07-10 11:46:47 +02:00
David Sidrane da96144e80 Added Power button and cleanup sdio 2016-07-10 11:46:47 +02:00
Lorenz Meier 332f669d9b Add tap-v1 config 2016-07-06 13:34:35 +02:00