Add "RaspberryPi Pico to UNO FlexyPin Adapter".
It is a converter-PCB to Arduino UNO form-factor
from Raspberry Pi Pico that is released in Open Source Hardware.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Was getting the error "parse error: expected number or parenthesized
expression" when trying to compile with the
-DSHIELD=seeed_xiao_expansion_board flag. It looks like INPUT_KEY_0
was missing the necessary include file so I added it in.
Signed-off-by: Graham Harrison <graham.harrison@axcendcorp.com>
Add support for the RD RW612 BGA board for the adafruit_2_8_tft_touch_v2
shield. This board uses a custom LCDIC MIPI DBI controller, which
requires a specific board overlay to enable the shield.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Add support for the A09 version of MB1166 which
have a NT35510 panel controller instead of an
OTM8009a as in prior versions
Fixes#60888
Signed-off-by: Erik Andersson <erian747@gmail.com>
On the RT1170-EVKB, the framebuffer displays incorrectly
(shifted by about 1/4 of the screen width). This is because
pixelclk-active was set to 1 (which corresponds to
kELCDIF_DriveDataOnRisingClkEdge).
According to the RM68200 datasheet, the DSI transfert begins at
the uprising pixel clock and stop at the falling pixel clock. So,
pixelclk-active needs to be set to 0 (which corresponds to
kELCDIF_DriveDataOnFallingClkEdge).
Signed-off-by: Trung Hieu Le <trunghieu.le@nxp.com>
On the RT1170-EVKB, the framebuffer displays incorrectly
(shifted by about 1/4 of the screen width). This is because
pixelclk-active was set to 1 (which corresponds to
kELCDIF_DriveDataOnRisingClkEdge).
According to the HX8394 datasheet, the DSI transfert begins at
the uprising pixel clock and stop at the falling pixel clock. So,
pixelclk-active needs to be set to 0 (which corresponds to
kELCDIF_DriveDataOnFallingClkEdge).
Signed-off-by: Trung Hieu Le <trunghieu.le@nxp.com>
Removing `choice WS2812_STRIP_DRIVER` to enable the use of multiple
types of WS2812 drivers.
Also, `menuconfig WS2812_STRIP` will be deleted as it does not
correspond to the appropriate settings.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Remove all optional, initial CAN sample point properties and rely on the
CAN timing calculations to automatically pick the preferred sample point
location based on the initial bitrate.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Update lpcxpresso55s69_cpu0 (and ns target) names in build commands in
the board documentation. Also, correct the documentation for dual core
images on this part, as it was out of date.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Fix board identifier in overlays for the lpcxpresso55s69_cpu0 target.
Board identifiers were renamed with the following command:
for file in $(find . -name "lpcxpresso55s69_cpu0.*"); do;
mv $file ${file/_cpu0/_lpc55s69_cpu0};
done
Additionally, remove lpcxpresso55s69_ns overlay targets where they are
no longer needed (or rename them where they are)
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Change reset pin polarity for MIPI DBI SPI controller, so that the board
devicetree is responsible for setting the GPIO to active low, and the
driver always sets the pin to a logic 1 to reset the display.
Fixes#68562
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Convert ili9xxx display drivers to use MIPI DBI API. Due to the fact
this change requires a new devicetree structure for the display driver
to build, required devicetree changes are also included in this commit
for all boards and shields defining an instance of an ili9xxx display.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Provide three basic examples to test the x-nucleo-iks4a1 shield:
- Test shield in standard mode
Acquire sensor data from shield with all MEMS sensors connected
to micro-controller
- Test shield in HUB1 mode
Acquire sensor data from shield with lis2mdl and lps22df
connected to LSM6DSV16X sensor hub
- Test shield in HUB2 mode
Acquire sensor data from shield with lis2mdl and lps22df
connected to LSm6DSO16IS sensor hub
Signed-off-by: Armando Visconti <armando.visconti@st.com>
x-nucleo-iks4a1 shield is an arduino compatible companion board
which can be used on top of Nucleo standard boards for industrial
applications. Following MEMS sensor are currently supported:
- LSM6DSO16IS: MEMS 3D accelerometer + 3D gyroscope
- LSM6DSV16X: MEMS 3D accelerometer + 3D gyroscope
- LIS2MDL: MEMS 3D magnetometer
- LPS22DF: Low-power and high-precision MEMS pressure sensor
(https://www.st.com/resource/en/data_brief/x-nucleo-iks4a1.pdf)
The board exports three overlays:
1. x_nucleo_iks4a1.overlay (standard mode)
All MEMS sensors are connected to micro-controller.
2. x_nucleo_iks4a1_shub1.overlay (HUB1 mode)
LSM6DSV16X IMU sensor act as a sensor_hub with LIS2MDL and
LPS22DF connected to it.
3. x_nucleo_iks4a1_shub2.overlay (HUB2 mode)
LSM6DSO16IS IMU sensor act as a sensor_hub with LIS2MDL and
LPS22DF connected to it.
Signed-off-by: Armando Visconti <armando.visconti@st.com>
This update stm32h747i_disco board display config to use ltdc frame
buffer config feature.
For lvgl, by default ltdc frame buffer number set to 0.
Signed-off-by: HaiLong Yang <hailong.yang@brainco.cn>
Use a board with a mikroBUS as example in the shield documentation and
update the example application since the board_shell sample was removed in
commit 7c85f4b2f5.
Fixes: #67134
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Include zephyr/dt-bindings/adc/adc.h in the shield DTS overlays to simplify
using this shield in application overlays.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Update dts files to use ST vendor specific HCI SPI Bluetooth driver.
Remove unnecessary GPIO bias for output pins.
Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
This adds a hint that for stm32h747i_disco just some display shields are
supported.
Signed-off-by: Maximilian Huber <gh@maxhbr.de>
Co-authored-by: Benjamin Cabé <kartben@gmail.com>
Include zephyr/dt-bindings/adc/adc.h and zephyr/dt-bindings/gpio/gpio.h in
the shield DTS overlays to simplify using this shield in application
overlays.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Use the common io-channel-cells name "input" instead of "positive" and
"negative" to make this binding work with the various ADC DT macros.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Remove BT_SPI_BLUENRG Kconfig parameter as it is redundant according to
the new changes introduced by ST SPI protocol V1 and V2.
Remove "config BT_SPI_BLUENRG" from the boards that were using it.
Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
The existing npm1300_ek shield overlay has several example
voltage and gpio settings. For many use cases these are
invalid and need to be overridden, or removed with
delete-property.
These example configurations have been moved to a board
specific overlay.
Signed-off-by: Andy Sinclair <andy.sinclair@nordicsemi.no>
Add support for low power mode on the G1120B0MIPI using the RT595. This
configuration is tested via a testcase in samples/drivers/display, which
should validate that the display can be driven by the RT595 when
CONFIG_PM and CONFIG_PM_DEVICE are set.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
This chip uses an active low reset, so the correct behavior here is to
define the pin as ACTIVE_LOW, using GPIO_OUTPUT_ACTIVE to assert the
reset and set to 0 to deassert.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This chip uses an active low reset, so the correct behavior here is to
define the pin as ACTIVE_LOW, using GPIO_OUTPUT_ACTIVE to assert the
reset and set to 0 to deassert.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Modify SPI configuration to match the features introduced in PR #63437.
Set the property "controller-data-delay-us" to zero for boards
which are using BlueNRG-MS.
Fix Chip Select configuration for stm32l562e_dk board.
Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
Unify spelling of CAN Flexible Data-rate abbreviation to "CAN FD" instead
of "CAN-FD". The former aligns with the CAN in Automation (CiA)
recommendation.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
M5Stack-Core2 comes with a base shield that is connected to the M5Stack
extention connector. It features a MPU6886 6-axis motion tracker
and a SPM1423 microphone.
Signed-off-by: Martin Kiepfer <m.kiepfer@teleschirm.org>
Add shield definition for the MikroElektronika ACCEL 13 Click.
The ACCEL 13 Click carries a IIS2DLPC ultra-low power triaxial
accelerometer sensor in a mikroBUS form factor.
Signed-off-by: Mark Olsson <mark@markolsson.se>
Make sure devicetree, kconfig, etc. code snippets all have proper
pygments language set.
Note: only existing code-block:: directives have been updated. Another
pass should be made to address implicit code-blocks (`::`)
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Update the descriptions for the various CAN devicetree timing properties
specified in Time Quanta (TQ) to make it clear that these, if present, are
only used for the initial timing parameters.
Deprecate the (Re-)Synchronization Jump Width (SJW) devicetree properties
for both arbitration and data phase timing as these are now only used in
combination with the other TQ-based CAN timing properties, which are all
deprecated.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
While recent browsers seem to transparently try to use https for
http://www.st.com/... URLs, they are effectively not working anymore, so use
https://www.st.com/... URLs instead.
curl http://www.st.com/en/evaluation-tools/nucleo-g070rb.html -m 5 -v
* Trying 104.89.117.48:80...
* Connected to www.st.com (104.89.117.48) port 80 (#0)
> GET /en/evaluation-tools/nucleo-g070rb.html HTTP/1.1
> Host: www.st.com
> User-Agent: curl/8.1.2
> Accept: */*
>
* Operation timed out after 5002 milliseconds with 0 bytes received
* Closing connection 0
curl: (28) Operation timed out after 5002 milliseconds with 0 bytes
received
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Update all Nucleo shield samples and references to them so that they
use the new zephyr:code-sample extension.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Add support for using SMARTDMA when using RM67162 display shield with
Zephyr, so that the DMA engine can be leveraged for improved performance
when using the MIPI DSI in command mode.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Use the new code-sample directive and roles to document the networking
samples so that they show up as "Related samples" when browsing the
various relevant networking APIs.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Determine sh1106 from the `compatibility` value instead of
the SSD1306_CONTROLLER_TYPE setting.
Change the settings in `boards/shields/ssd1306/sh1106_128x64.overlay`
to follow this change.
Remove the SSD1306_CONTROLLER_TYPE from its Kconfig.defconfig,
and set the `compatibility` to `sinowealth,sh1106`.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Add shield definition for the TI TCAN4550EVM, an evaluation module for the
TI TCAN4x5x CAN controller series.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Change boards and shields and remove kscan nodes in favor of the
"zephyr,lvgl-pointer-input" compatible.
Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
Change boards and shields which enable the LV_Z_POINTER_KSCAN symbol to use
the new "zephyr,lvgl-pointer-input" compatible instead.
Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
Enable LZ_Z_FLUSH_THREAD for display shields and boards that are known
to benefit from this optimization.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Add probe address setting to RT595-EVK, to work around board issue with
routing of INT GPIO that prevents GPIO from being set to output mode.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Add gpio-keys codes for all boards. These are mostly INPUT_KEY_0 and so
on but I've used some more specific ones where it was obvious that
there's something else on the boards.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Add rk055hdmipi4ma0 shield, which uses an HX8394 TFT LCD controller and
GT911 touch IC. This shield is enabled on the RT595 and RT1170 EVK,
which have 40 pin FFC interfaces capable of connecting to the display.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Add g1120b0mipi watch display to shields. This shield is currently
supported with the RT595 and RT1170 EVK. The shield contains a 400x392
circular OLED watch display, with an integrated RM67162 display controller
Note that the touchscreen IC can be driven by the FT5336 driver, with the
following changes:
- the FT3267 reports touch data as inverted from the FT5336, so
LVGL must be made aware of this via CONFIG_LV_Z_POINTER_KSCAN_INVERT_Y
- the FT3267 reports the X and Y coordinates as swapped from the FT5336.
To resolve this, the RM67162 driver reports the display as rotated by
90 degrees.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Only set LV_Z_VDB_CUSTOM_SECTION for the RK055HDMIPI4M shield, as it
is only required when using displays that require a large framebuffer.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
GT911 IC uses the INT pin to select the correct I2C address during
reset. However, some boards may not route this pin (or may only support
receiving inputs on it). This results in the I2C address selected by the
GT911 IC being arbitrary based on the state of the (floating) INT pin.
To resolve this, introduce an `alt-addr` property for this device. When
set, the INT pin will not be pulled low. Instead, the I2C address will be
probed at runtime, starting with the devicetree address and falling back to
`alt-addr`.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
During testing I've found one bad path and looked if
there is more.
I've used this oneliner to find more:
```
rg :zephyr-app: | awk '{ print $3 }' | while read dir
do
test -d $dir || echo $dir
done | grep '^samples' | grep -v '<' | sort | uniq
```
Signed-off-by: Nerijus Bendžiūnas <nerijus.bendziunas@gmail.com>
Convert the GT911 driver to the input subsystem, fix the existing boards
to work in the default config.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Add Arduino compatible LoRaWAN shield based on SX1276 tranceiver from
Semtech. Provide minimal documentation on how to use it.
Tested with `nucleo_l073rz` platform.
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
Add rk055hdmipi4m shield definition. This shield contains a 1080x720
display driven by an RM68200 IC, with a GT911 touch controller. The
display is supported by a 40 pin FFC connector present on NXP's RT1170
and RT595 EVKs.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Drop the GPIO and EEPROM priority override. The current settings have
been introduced as part of a major priority refactoring but I don't
think they are needed anymore, and they currently result in this error:
ERROR: /soc/spi@4002d000 POST_KERNEL 70 <
/soc/gpio@400ff100 POST_KERNEL 99
found with:
west build -p -b frdm_k64f samples/shields/lmp90100_evb/rtd \
-DCONFIG_CHECK_INIT_PRIORITIES=y
Dropping the two overrides should work fine, leaving the ADC override as
that seems like is still needed.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
MIPI-DSI initialization priority got delayed in fed377f622, but now
that's at the same priority as the OTM8009A for this board
configuration, and OTM8009A needs MIPI-DSI to be initialized. Being at
the same priority means that it may or may not work depending on the
linking order, this is exposed with:
$ west build -p -b stm32h747i_disco_m7 samples/subsys/display/lvgl \
-DSHIELD=st_b_lcd40_dsi1_mb1166 \
-DCONFIG_CHECK_INIT_PRIORITIES=y
...
WARNING: /soc/dsihost@50000000/otm8009a@0 POST_KERNEL 86 ==
/soc/dsihost@50000000 POST_KERNEL 86
Bumping the display priority up to make sure it still works.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Adding support for the adafruit can picowbell shield for the
raspberry pi picoi. Also added nodelable for spi0 called 'pico_spi'
as well as an GPIO nexus node 'pico_header'
Signed-off-by: Joseph Yates <joeyatessecond@gmail.com>
The shield converts Arduino UNO R3 headers to two mikroBUS
sockets.
Two mickoBUS sockets are exposed via the overlay labelled
mikrobus_header_1 and mikrobus_header_2. mikrobus_header_1
is used as the default and assigned the node label mikrobus_header.
Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
The npm1300_ek overlay has been updated to explictly specify
the initialisation modes for the dual purpose LDO / LDSW outputs.
Signed-off-by: Andy Sinclair <andy.sinclair@nordicsemi.no>
It looks like LV_Z_DPI is not used anywhere and only lived in the
context of an incorrect board symbol definition so far (moved to
Kconfig.lvgl in the previous patch).
This was probably meant to be LV_DPI_DEF (which actually exists in the
LVGL module) and was renamed incorrectly, fix it by renaming it
everywhere.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Some boards override default for few LVGL LV_Z_* symbols. This causes
the build to fail if the module is not present in the system, and has
been worked around on one board by repeating the types in the board
Kconfig file.
Fix this properly by defining the known type for all symbols used in
boards in modules/Kconfig.lvgl.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Increase the default CAN controller driver initialization priority from
KERNEL_INIT_PRIORITY_DEVICE (50) to 80 to allow CAN controllers on SPI
busses have their bus initialized prior to initializing the CAN controller
driver.
The only in-bound dependency on CAN controller drivers - apart from
application level code - is the drivers/net/canbus.c driver, which already
defaults to an initialization level of 81.
Fixes: #55745
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Added the new amg88xx sensor shield with designation
amg88xx_grid_eye_eval_shield and updated the overlay, Kconfig and
documentation files accordingly.
The platforms that are compatible with new shield changed, so
sensor sample yaml file was extended for both available shields.
Signed-off-by: Steffen Jahnke <steffen.jahnke@eu.panasonic.com>
Shield's Kconfig.defconfig files should only be used to configure
components options, or drivers specific (eg init priority, ..), depending
on driver activation which remains application responsibility.
High level components (such as DISPLAY) should not be enabled by default on
boards activation (which is similar to policy used for boards).
Additionally, clean up busses activation (SPI, I2C), which is not required
as bus activation is already done automatically on bus devices activation.
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
New silicon revision supports reading of GPIO inputs.
Button added to shield overlay to support new functionality.
Signed-off-by: Andy Sinclair <andy.sinclair@nordicsemi.no>
Add support for partial refresh profiles. This makes it possible to
use partial refresh on generation 2 devices which are able to store
partial refresh LUTs in OTP.
Partial refresh is only enabled if a partial profile has been
provided. The display will use the full refresh profile if in this
case.
Devices that need custom LUTs and voltages can specify them separately
for the full and partial profiles. The controller will be reset when
changing profiles which means that profiles always override the
default reset values. This means that it is, for example, possible to
use default values and LUTs from OTP for a full refresh and a custom
profile for partial refreshes.
For example, to use a GoodDisplay GDEY027T91 with partial refresh
simply use the following device tree fragment:
display: ssd1680@0 {
compatible = "solomon,ssd1680";
spi-max-frequency = <4000000>;
duplex = <SPI_HALF_DUPLEX>;
reg = <0>;
dc-gpios = <&arduino_header 15 GPIO_ACTIVE_LOW>;
reset-gpios = <&arduino_header 14 GPIO_ACTIVE_LOW>;
busy-gpios = <&arduino_header 13 GPIO_ACTIVE_HIGH>;
/* Enable the built-in temperature sensor */
tssv = <0x80>;
width = <264>;
height = <176>;
/* Enable partial refresh using built-in LUT */
partial {
};
};
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
Update the device tree bindings for the SSD16xx driver to make it
possible to specify multiple refresh profiles.
The only profile currently supported is the 'full' profile.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
The SSD16xx driver currently provides basic support for most chips in
the Solomon Systech SSD16xx range of e-paper drivers. We currently use
the SSD1608, SSD1673, SSD1675A, and SSD1681 in various boards
supported by Zephyr.
The main user-facing difference between the various SSD16xx chips is
the resolution they support (sources & gates), but there are other
differences as well. For example:
* 8 or 16 bits used to represent x coordinates
* 8 or 16 bits used to represent y coordinates
* Differences in refresh configuration (SSD16XX_CMD_UPDATE_CTRL2)
* Differences in LUT sizes
The driver currently assumes that the user specifies the number of
bits used to describe coordinates. However, as we add support for more
chips, more of the differences will become apparent and need
workaround.
Comparing data sheets from different chips in the SSD16xx range
suggests that there are (at least) two different generations
present. These differ in the size of the LUTs they expect and the way
they handle partial refresh. This impacts register layout where
SSD16XX_CMD_UPDATE_CTRL2 uses bit 3 selects "mode 2" whereas older
devices uses this for a mode referred to as "initial".
In order to add support for partial refresh in newer devices, we need
to be able to distinguish between the different generations of the
chip. It might be possible to add a DT property to indicate the
revision, but that seems like a bit of an anti-pattern and it would be
hard for users to specify the correct chip generation.
This change introduces chip-specific compatible strings instead of the
generic SSD16xx. There is unfortunately clear pattern that can be used
to distinguish different generations, so the full chip name must be
specified. A benefit of this is that we don't need to specify the
width of the fields describing coordinates in device trees.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
Update LTDC driver to use LCDIF bindings, to simplify bindings
between LCD interface controller IP blocks.
Boards supporting the LTDC are also updated to use the properties as
declared by the new lcd controller binding
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Following the change that replaces ETH_ENC28J60_0_FULL_DUPLEX
by devicetree property.
Enable `full-duplex` explicitly in overlay files.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
Add definition for the Adafruit Data Logger Shield. This shield is
equipped with a PCF8523 RTC, an SD card slot, a couple of user LEDs
and a prototyping area.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
Initial board configuration for NPM1300_EK.
Includes configuration for regulators and GPIO only.
Signed-off-by: Andy Sinclair <andy.sinclair@nordicsemi.no>
Convert the ft5336 to the input subsystem, fix all the config in the
repository and add the Kscan compatibility driver to the current dts
driver instances.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
The building sensor shield has several useful sensors including a 6 axis
inertial sensor, 3 axis magnetometer, optical light sensor, temperature and
humidity sensor, and connectors for offboard temperature sensors.
Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
Add plli2s node to dts/overlay file for boards that already use I2S.
Remove old I2S Kconfig not used anymore
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
Add initial support for the nPM1100 EK. The EK is expected to be
connected to Arduino header pins (D2/3/4/5).
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Add entries for the BUCK0/1/2/3 and LDO0/1 regulators. Note that voltage
min/max limits have been set to the hardware limits. They can be
adjusted using overlays in applications, depending on the consumer
circuit constraints.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Add a sample that demonstrates usage of the nPM6001 PMIC (all of its
functionalities).
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
When moving nodelabels to <device_name>_<shields_name>, '-' included
in <device_name> was then introduced in the device nodelabel.
But '-' isn't an allowed nodelabel character, hence this is breaking
compilation with those shields.
Convert '-' to '_'.
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Shield's nodelabels should now be in the form <device>_<shield_name>.
Besides changing the nodes nodelabels, their usages should be fixed.
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
When adding nodelabels to shields devices, it should be taken car not to
use forbidden characters.
Fix existing occurrence.
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
This nodelabel was changed while converting all shields to new nodelabel
scheme.
On this particular nodelabel, there was no change to be done, as it doesn't
refer to a node defined in the shield.
Revert this chagne.
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
This commit updates the outdated link for the "DFRobot CAN BUS Shield
V2.0 schematic."
The repository containing this file has been renamed to
"DFRobot/DFRobot_MCP2515".
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
This commit updates the outdated link for "link board ETH Website" with
that of the "reel board," which contains the information on the "link
board ETH."
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
Use shield-specific sdhc devicetree nodelabels in order not to clash with
sdhc nodelabels from the board devicetree.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Add GoodDisplay GDEW042T2 with fast partial refresh. Based on
configuration from GoodDisplay's Arduino example.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
Introduce the concept of refresh profiles which are specified as a
child node in the device tree. This makes it possible to use different
overrides for different types of refreshes (full/partial).
The only profile that is currently supported is the "full" profile.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
We're now taking the kscan device from the zephyr,keyboard-scan node. Add
it to the overlay.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@huawei.com>
Now that Wifi drivers are enabled based on devicetree
we need to remove any cases of them getting enabled by
Kconfig.defconfig* files as this can lead to errors.
Signed-off-by: Kumar Gala <galak@kernel.org>
The boards folder uses ~142.8 MB, being the largest in the repository.
This is due mostly to board images, which are in most cases not
optimized for web content. This patch tries to address this problem by
converting all pictures to JPEG (quality 75) and by adjusting its size
up to 750 px (the width of the documentation content). Images that
specified a fixed width in rst files are converted down to that value
instead.
With this patch, folder goes down to ~53.5 MB from 142.8 MB (-~63%).
Note that this patch introduces a new set of binary files to git
history, though (bad).
The process has been automated using this quickly crafted Python script:
```python
from pathlib import Path
import re
import subprocess
def process(doc, image, image_jpeg, size):
subprocess.run(
(
f"convert {image}"
"-background white -alpha remove -alpha off -quality 75"
f"-resize {size}\> {image_jpeg}"
),
shell=True,
check=True,
cwd=doc.parent,
)
if image != image_jpeg:
(doc.parent / image).unlink()
for doc in Path(".").glob("boards/**/*.rst"):
with open(doc) as f:
content = ""
image = None
for line in f:
m = re.match(r"^(\s*)\.\. (image|figure):: (.*)$", line)
if m:
if image:
process(doc, image, image_jpeg, size)
image = Path(m.group(3))
if image.suffix not in (".jpg", ".jpeg", ".png"):
content += line
image = None
continue
image_jpeg = image.parent / (image.stem + ".jpg")
size = 750
content += (
f"{m.group(1)}.. {m.group(2)}:: {image_jpeg}\n"
)
elif image:
m = re.match(r"\s*:height:\s*[0-9]+.*$", line)
if m:
continue
m = re.match(r"\s*:width:\s*([0-9]+).*$", line)
if m:
size = min(int(m.group(1)), size)
continue
content += line
if line == "\n":
process(doc, image, image_jpeg, size)
image = None
else:
content += line
with open(doc, "w") as f:
f.write(content)
```
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
The SSD16xx driver currently hard-codes a couple of register overrides
that aren't relevant or even correct for many devices. Make them
optional device tree properties instead.
Note that this changes the behavior for panels that expect
SSD16XX_CMD_DUMMY_LINE and SSD16XX_CMD_GATE_LINE_WIDTH to be set by
the driver. This fixes a bug where the incorrect value
was written to all SSD16xx panels except for GDEH0213B1 and GDEH029A1.
The overlay files for devices that need dummy line and gate line width
to be specified have been updated as a part of this commit.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
Now that ethernet drivers are enabled based on devicetree
we need to remove any cases of them getting enabled by
Kconfig.defconfig* files as this can lead to errors.
Signed-off-by: Kumar Gala <galak@kernel.org>
Update lvgl for devicetree updates to use zephyr,keyboard-scan.
Remove Kconfig symbol (LV_Z_POINTER_KSCAN_DEV_NAME) that don't exist
anymore since these values are coming from devicetree.
Signed-off-by: Kumar Gala <galak@kernel.org>
Now that ft8xx drivers are enabled based on devicetree
we need to remove any cases of them getting enabled by
Kconfig.defconfig* files as this can lead to errors.
Signed-off-by: Kumar Gala <galak@kernel.org>
Now that eeprom drivers are enabled based on devicetree
we need to remove any cases of them getting enabled by
Kconfig.defconfig* files as this can lead to errors.
Signed-off-by: Kumar Gala <galak@kernel.org>
Devicetree aliases, accel0 and magn0, were recently introduced to enable
sensor sample applications to support multiple sensor drivers of the
same type and thereby reduce the number of driver-specific sensor sample
applications.
This was implemented by adding devicetree nodelabels to accelerometer
and magnetometer sensor nodes, which unfortunately can suffer from
naming conflicts when using shield boards. Fix the problem by appending
the I2C bus address or SPI chip select to the devicetree nodelabel for
sensor nodes on shield boards only. Base boards are left alone to keep
their nodelabels as short as possible.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Remove NET_CONFIG_IEEE802154_DEV_NAME in favor of DT based choice using
zephyr,ieee802154.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Enable the IEEE 802.15.4 radio node on all boards that listed
'ieee802154' in the supported field.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Have the kscan device enabled in devicetree will now get the driver
enabled by default when CONFIG_KSCAN=y is set. So we can remove
driver enabling Kconfig values in various Kconfig.defconfig files.
Signed-off-by: Kumar Gala <galak@kernel.org>
We now 'select I2C' and/or SPI bus in Kconfig in the sensor driver
Kconfig's so there is no need to have boards do the following:
config I2C
default y if SENSOR
config SPI
default y if SENSOR
Signed-off-by: Kumar Gala <galak@kernel.org>
Have the display enabled in devicetree will now get the driver
enabled by default when CONFIG_DISPLAY=y is set. So we can remove
setting driver enabling Kconfig values in various .conf and
defconfig files.
Signed-off-by: Kumar Gala <galak@kernel.org>
All IEEE 802.15.4 drivers are now automatically enabled if they are
'okay' in DT and all of its dependencies are 'y', including
CONFIG_IEEE802154. This means individual driver enablement is not
necessary anymore in Kconfig.defconfig files or samples/tests. Boards
need to still make sure any dependencies are enabled, e.g. SPI bus in
some cases.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Set accel0 alias for all boards with the LSM6DSO accelerometer
to use by the accel_polling sample.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
Set accel0 alias for all boards with the LSM6DSL accelerometer
to use by the accel_polling sample.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
Set accel0 alias for all boards with the ISM330DHCX accelerometer
to use by the accel_polling sample.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
Set accel0 alias for all boards with the LIS2DH and compatible
accelerometer to use by the accel_polling sample.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
Set accel0 alias for all boards with the LIS2DW12 accelerometer
to use by the accel_polling sample.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
Set accel0 alias for all boards with the FXOS8700 and compatible
accelerometer to use by the accel_polling sample.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
Set accel0 alias for all boards with the ADXL362 accelerometer
to use by the accel_polling sample.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
Set accel0 alias for all boards with the IIS2DLPC accelerometer
to use by the accel_polling sample.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
For boards with an accelerometer, configure the appropriate bus
(I2C or SPI) default to be enabled if the sensor driver class was enabled.
This change makes no need to add a bunch of board-specific configuration
overlays to the application.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
Now that CAN drivers are enabled based on devicetree
we need to remove any cases of them getting enabled by
Kconfig.defconfig* files as this can lead to errors.
Typically the Kconfig.defconfig* will blindly enable a
sensor and not respect the devicetree state of the CAN.
Additionally we can get problems with prj.conf/defconfig
getting incorrectly overridden.
Signed-off-by: Kumar Gala <galak@kernel.org>
Now that DAC drivers are enabled based on devicetree
we need to remove any cases of them getting enabled by
Kconfig.defconfig* files as this can lead to errors.
Typically the Kconfig.defconfig* will blindly enable a
sensor and not respect the devicetree state of the DAC.
Additionally we can get problems with prj.conf/defconfig
getting incorrectly overridden.
Signed-off-by: Kumar Gala <galak@kernel.org>
The specific drivers for DAC_MCP4725 and DAC_DACX0508 have their
own driver specific Kconfig symbol for the INIT_PRIORITY. So
remove setting the generic one as it doesnt make sense to set it
and the default value matches what the board specific values for
INIT_PRIORITY are set to.
Signed-off-by: Kumar Gala <galak@kernel.org>
Now that ADC drivers are enabled based on devicetree
we need to remove any cases of them getting enabled by
Kconfig.defconfig* files as this can lead to errors.
Typically the Kconfig.defconfig* will blindly enable a
sensor and not respect the devicetree state of the ADC.
Additionally we can get problems with prj.conf/defconfig
getting incorrectly overridden.
Signed-off-by: Kumar Gala <galak@kernel.org>
The UC8176 and UC8179 chips that exist in tree have subtly different
register layouts. Use separate compatible strings for these chips and
a quirks structure that describe device-specific behavior.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
The GD7965 driver is really just a vendor name for the UltraChip
UC8179. Rename the driver to UC81xx since there are other chips in the
family (e.g., the UC8176) with an almost identical register interface.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
Now that gpio drivers are enabled based on devicetree
we need to remove any cases of them getting enabled by
Kconfig.defconfig* files as this can lead to errors.
Typically the Kconfig.defconfig* will blindly enable a
sensor and not respect the devicetree state of the GPIO.
Additionally we can get problems with prj.conf/defconfig
getting incorrectly overridden.
Signed-off-by: Kumar Gala <galak@kernel.org>
EPD displays currently have two compatible strings, their specific
model number and the generic driver name. This isn't ideal since we
will need to match on the driver chip model number to work around
subtle chip differences in some cases. Add the specific chip model to
the list of compatibles.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
GoodDisplay used to hide the real vendor of the driver chip in some of
their old data sheets. This is no longer the case and the actual chip
version can be found on their official site. Update the documentation
to show which chip is actually used.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
Now that sensor drivers are enabled based on devicetree
we need to remove any cases of them getting enabled by
Kconfig.defconfig* files as this can lead to errors.
Typically the Kconfig.defconfig* will blindly enable a
sensor and not respect the devicetree state of the sensor.
Additionally we can get problems with prj.conf/defconfig
as well getting incorrectly overridden.
Fixes#48198
Signed-off-by: Kumar Gala <galak@kernel.org>