Commit Graph

244 Commits

Author SHA1 Message Date
Ouss4
2d13ea7477 drivers/: Check return from nxsem_wait_uninterruptible. 2020-03-30 14:40:01 -06:00
Gregory Nutt
0558aa0a78 "Uninterruptible" semaphore waits must return when canceled.
nxsem_timedwait_uninterruptible() must return -ECANCELED if the thread is canceled:

        include/nuttx/semaphore.h:  Return if nxsem_wait() returns ECANCELED meaning that the thread waiting for the semaphore has been canceled.
        sched/semaphore/sem_timedwait.c:  Same change (the inline version is in semaphore.h, the non-inlined version is in sem_tickwait.c).
        drivers/sensors/lps25h.c and drivers/wireless/bluetooth/bt_uart_bcm4343x.c:  Make sure that the caller deals correctly with the -ECANCELED return value.

    Refer to issue 619.
2020-03-29 11:58:28 -03:00
Gregory Nutt
5c0e8e88b1 Revert "Makefile: move INCDIROPT to common place (#625)"
This reverts commit b9ace36fcc.

This change was added by PR 625 but has a serious logic flaw.  It removes all occurrences of INCDIROPT and replaces it with a definition in tools/Config.mk:

    else ifeq ($(WINTOOL),y)
      DEFINE = "$(TOPDIR)/tools/define.sh"
      INCDIR = "$(TOPDIR)/tools/incdir.sh" -w

This logic flaw is the Config.mk is included in all Make.defs files BEFORE WINTOOL is defined.  As a result, the definition is wrong in many places when building under Cygwin with a Windows native toolchain.
2020-03-26 08:50:29 -07:00
Xiang Xiao
b9ace36fcc
Makefile: move INCDIROPT to common place (#625) 2020-03-26 08:09:59 -06:00
Nathan Hartman
a5e643b0cd Fix typos in comments and documentation. 2020-03-16 20:01:11 -06:00
Juha Niskanen
83b6953624 drivers/sensors/sgp30.c: Reset I2C in case init msg takes too long
We have experimentally found out that this change helps with somewhat quirky CO2/VOC-sensor.
2020-03-05 08:01:43 -06:00
macman88
922e67c7cc MCP9844 shutdown mode support (#403)
* Added shutdown support to the MCP9844 sensor driver.
* Clean up debug messages
* Clean up comments and formatting
2020-02-28 16:21:56 -06:00
Xiang Xiao
cde88cabcc Run codespell -w with the latest dictonary again
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-02-23 22:27:46 +01:00
Xiang Xiao
bd4e8e19d3 Run codespell -w against all files
and fix the wrong correction
2020-02-22 14:45:07 -06:00
Gregory Nutt
21aef0dd68 drivers/*/Kconfig: Consolidate driver Kconfig Files.
This commit does two things:

1. First, it reorganizes the driver Kconfig files so that each is self contained.  Before, a part of the driver configuration was in drivers/Kconfig and the rest was in in drivers/xyz/Konfig.  Now, all of the driver configuration is consolitated in the latter.

2. Second, this commit correct numerous serious errors introduced in a previous reorganization of the driver Kconfig files.  This was first noted by Nicholas Chin in PR270 for the case of the drivers/i2c/Kconfig but some examination indicates that the error was introduced into several other Kconfig files as well.

The nature of the introduced error was basically this:

- Nothing must intervene between the menuconfig selection and the following conditional configuration otpions.
- A previous PR erroneously introduced unconditional options between the menuconfig and the following confditional logic, thus corrupting the driver menus.

This error was easy to make because the driver Kconfig files were not well modularized.  Making them fully self-contained should eliminate this kind of error in the future.
2020-02-15 15:19:11 +01:00
Xiang Xiao
3cb259daa6 drivers/Kconfig: Move if/endif to subfolder Kconfig
Move if/endif to subfolder Kconfig and make ARCH_HAVE_XXX option always selectable by moving out of if/endif
2020-02-08 08:04:05 -06:00
Xiang Xiao
5c80b94820 Replace #include <semaphore.h> to #include <nuttx/semaphore.h>
Since the kernel side should call nxsem_xxx instead and remove the unused inclusion
2020-02-01 08:27:30 -06:00
Xiang Xiao
80277d1630
Refine the preprocessor conditional guard style (#190) 2020-01-31 19:07:39 +01:00
Xiang Xiao
68951e8d72 Remove exra whitespace from files (#189)
* Remove multiple newlines at the end of files
* Remove the whitespace from the end of lines
2020-01-31 09:24:49 -06:00
raiden00pl
e23d58e86d drivers/sensors/lsm303agr: fix compilation warnings and run through nxstyle; drivers/sensors/lsm6dsl: run through nxstyle 2020-01-16 12:27:18 -03:00
Xiang Xiao
fbad85000f Fix the incorrect return value handling in bt_hcicore.c/hc_sr04.c introduced by 6a3c2ade
Report by juniskane

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-01-09 15:30:01 -03:00
raiden00pl
9b2fa8152c drivers/sensors/lsm6dsl.c: fix various compiler warnings 2020-01-03 08:09:26 -06:00
Xiang Xiao
6a3c2aded6 Fix wait loop and void cast (#24)
* Simplify EINTR/ECANCEL error handling

1. Add semaphore uninterruptible wait function
2 .Replace semaphore wait loop with a single uninterruptible wait
3. Replace all sem_xxx to nxsem_xxx

* Unify the void cast usage

1. Remove void cast for function because many place ignore the returned value witout cast
2. Replace void cast for variable with UNUSED macro
2020-01-02 10:54:43 -06:00
Gregory Nutt
d1584d60a2 drivers/sensors: Run all sensor drivers through tools/nxstyle, correcting as many complaints as possible. 2019-12-06 19:07:34 -06:00
Gregory Nutt
4e2b2e8ce7 Coding standard corrections in last PR. 2019-12-02 08:42:50 -06:00
kyChu
db49e62118 Merged in kyChuGit/nuttx/aht10_sensor (pull request #1084)
add new driver support for the ASAIR AHT10 temperature and humidity sensor

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-12-02 14:36:09 +00:00
Gregory Nutt
108ffe7044 Within the OS, nxisg_sleep() should be used instead of sleep(). sleep() is a cancellation point and sets the errno value. Neither of which should be done inside the OS. 2019-11-29 19:03:24 -06:00
Gregory Nutt
244437257b drivers/: Within the OS, nxisg_usleep() should be used instead of usleep(). usleep() is a cancellation point and sets the errno value. Neither of which should be done inside the OS. 2019-11-29 17:37:39 -06:00
Xiang Xiao
3bc62f1ccc Change space to tab and help to ---help--- in Kconfig files. 2019-10-05 21:39:12 -06:00
Matous Pokorny
925d16b7b8 drivers/sensors/isl29023.c: Add basic driver of ISL29023 ambient light sensor. The basic driver can set operational mode, range, and resolution. It can also read lux value in continuous mode. Interrupt and the alarm is not implemented. 2019-09-04 11:26:26 -06:00
Augusto Fraga Giachero
d6ad7ebd47 drivers/sensors/adt7320.c: Add support for the ADT7320 temperature sensor. 2019-08-28 15:35:43 -06:00
Alin Jerpelea
a91d86523c Merged in alinjerpelea/nuttx (pull request #1018)
boards: cxd56xx: add SCU sensors

* drivers: platform: add Avago APDS9930 Proximity and Ambient light Sensor

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: spresense: add Rohm BH1721FVC Ambient Light Sensor

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: spresense: add Rohm BH1745NUC Color Sensor

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: spresense: add Rohm BM1383GLV/BM1383AGLV Pressure Sensor

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: spresense: add Rohm BM1422GMV/BM1422AGMV Magnetic Sensor

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: spresense: add Bosch BMI160 Sensor support

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: spresense: add Bosch BMP280 Barometic Pressure Sensor

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: spresense: add Kionix KX022/KX122 Acceleration Sensor

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: spresense: add Murata LT1PA01 Proximity and Ambient light Sensor

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: spresense: add Rohm RPR0521RS Proximity and Ambient light Sensor

    This sensor is connected to the SCU on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: sensors: bmi160: add optional I2C address

    Add a menu option for the case when the SDO pin is pulled to VDDIO

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-22 12:49:05 +00:00
Nathan Hartman
60f777b8f4 Fix various typos in documentation and comments. 2019-08-09 14:35:07 -06:00
Markus Bernet
1e0987a729 drivers/sensors/sht3x.c: Add Sensirion SHT3x driver. 2019-08-08 07:34:15 -06:00
Juan Flores
d2e884f43c drivers/sensors/vl53l1x.c: Added support for VL53L1X TOF sensor. 2019-07-10 07:58:20 -06:00
Alin Jerpelea
ffb4f00da9 Merged in alinjerpelea/nuttx (pull request #944)
drivers: sensors: add I2C Bosch BMP280 and I2C Asahi AK09911/AK09912 Compass Sensor

* drivers: sensors: add Bosch BMP280 Barometic Pressure Sensor

    add driver for the Bosch BMP280 barometic pressure sensor
    This sensor is connected over I2C bus

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: sensors: add Asahi AK09911/AK09912 Compass Sensor

    add driver for AK09911/AK09912 Compass sensor over I2C bus

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-07-10 11:31:36 +00:00
Gregory Nutt
c2a383ef6d drivers/sensors/vl53l1x.c: Remove the VL53L1x driver. It does not compile. 2019-06-29 06:26:49 -06:00
Gregory Nutt
4083d89244 configs/olimex-stm32-e407: Add VL53L1 support. drivers/sensors/vl53l1x.c: A few compiler errors fixed, possibly incorrectly. DRIVER DOES NOT COMPILE. Marked EXPERIMENTAL in the Kconfig file. 2019-06-28 15:45:00 -06:00
Gregory Nutt
4f9623a520 drivers/sensors/vl53l1x.c: Fix other cosmetic coding standard issues. 2019-06-28 09:15:29 -06:00
Gregory Nutt
696197c67f drivers/sensors/vl53l1x.c: Fix more upper-/lower-case problems. 2019-06-28 08:39:21 -06:00
Gregory Nutt
6a75c811f8 Fix some lower vs upper case problems in last commit. 2019-06-28 08:20:31 -06:00
Juan Flores
f466d054a1 drivers/sensors/vl53l1x.c: Add support for VL53L1X TOF sensor. 2019-06-28 08:17:35 -06:00
Alin Jerpelea
977893d5a7 Merged in alinjerpelea/nuttx (pull request #912)
configs: spresense: enable BMI160_I2C sensor

* drivers: sensors: add BMI160 driver

    Enable driver support for the Bosch BMI160 Inertial
    Measurement sensor

    This driver can be used with the BMI160 sensor connected over
    SPI or I2C bus

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* configs: spresense: enable BMI160_I2C sensor

    Enable BMI160 sensor connected over I2C on spresense board

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-06-20 13:32:36 +00:00
Fabian Justi
beaa54cc4c Merged in Justifa/nuttx (pull request #885)
drivers/sensors/as726x.c Fix little change from tools/indent.sh

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-06-06 13:36:58 +00:00
Gregory Nutt
900c32c021 Substantial changes to last PR which was not close to the coding standard. Files ran through tools/indent.sh. 2019-06-05 07:21:55 -06:00
Fabian Justi
ff5f1945ec Merged in Justifa/nuttx (pull request #883)
Add support for AS726X spectral sensor

* configs/nucleo-l476rg/src/stm32_appinit.c Add I2C tool to board init

* configs/nucleo-l476rg/src/stm32_bmp180.c Fix comment

* configs/stm32f103-minimum/src/stm32_veml6070.c Fix name in error message

* drivers/sensor, include/nuttx/sensors and configs/nucleo-l476rg: Add support for AS726X spectral sensor

    Implement driver for AS726X spectral

    read as726x V,B,G,Y,O,R channel

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-06-05 12:50:03 +00:00
Juha Niskanen
c77e016ee8 arch/arm/src/stm32l4, drivers/sensors/t67xx.c: Fix trivial build failures caused by recent commits 2019-05-31 07:22:02 -06:00
Gregory Nutt
b49be4bb20 Squashed commit of the following:
arch/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    sched/ audio/ crypto/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    Documentation/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    fs/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    graphics/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    net/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    drivers/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    include/, syscall/, wireless/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    configs/:  Remove all references to CONFIG_DISABLE_POLL.  Standard POSIX poll can no longer be disabled.
2019-05-21 18:57:54 -06:00
Gregory Nutt
49b2b74105 drivers/sensors/apds9960.c: Initial state of allocated structure was not being set. Noted by Leif Jacob. 2019-05-06 09:10:25 -06:00
Gregory Nutt
abf6965c24 Squashed commit of the following:
libs/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    syscall/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    wireless/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    Documentation/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    include/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    drivers/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    sched/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    configs:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/xtensa:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/z80:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/x86:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/renesas and arch/risc-v:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/or1k:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/misoc:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/mips:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/avr:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/arm:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
2019-04-29 14:52:05 -06:00
Matous Pokorny
1e54a14c9f Fix some typos in comments. 2019-04-15 07:56:53 -06:00
Matous Pokorny
245bf33eb3 configs/nucleo-l476rg/src/stm32_gpio.c, configs/stm32f103-minimum/src/stm32_gpio.c, and drivers/sensors/zerocross.c: Fix some errors when debug assertions are enabled. 2019-03-29 09:11:08 -06:00
Gregory Nutt
47b6f7876e Remove spaces from Kconfig 2019-03-25 11:16:21 -06:00
Gregory Nutt
e159cc673c drivers/sensors/mpu60x0.c: Additional, cosmetic review changes. 2019-03-07 17:10:13 -06:00
Bill Gatliff
a8744defe2 drivers/sensors/mpu60x0.c: Initial support for TDK InvenSense MPU6000 and MPU6050 6-axis gyroscope and accelerometers. This commit supports SPI media only. 2019-03-07 16:50:37 -06:00