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>
Remove 'label' property from SDHC nodes. We can use variants of
DEVICE_DT_GET to get access to a device pointer for use in an
application.
Signed-off-by: Kumar Gala <galak@kernel.org>
Add shield support for Panasonic AMG88xx sensor and
remove app.overlay from amg88xx sample.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Simplify the implementation by using gpio_dt_spec.
As part of this use logical values of 0/1 for gpio_pin_set_dt
and handle any inversions as GPIO flags that might be required
at a board level (in dts config).
Signed-off-by: Kumar Gala <galak@kernel.org>
For all boards that have a magnetometer devicetree alias, configure the
appropriate bus (I2C or SPI) default to be enabled when the sensor
driver class is enabled. This will simplify enabling the magn_polling
sample application for these boards (and using the magnetometer in
general) because it will eliminate the need to add a bunch of
board-specific configuration overlays to the application.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Sets a magnetometer devicetree alias for all boards that contain the
LSM303AGR sensor to enable the magn_polling sample application.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Sets a magnetometer devicetree alias for all boards that contain the
LIS2MDL sensor to enable the magn_polling sample application.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Sets a magnetometer devicetree alias for all boards that contain the
FXOS8700 sensor to enable the magn_polling sample application.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Add `status = "okay";` in `arduino_spi` to make sure the node is
enabled (it may not be by default in certain board definitions).
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
We should avoid use of the label property in devicetrees. The
'zephyr,sdmmc-disk' compatible node has a 'label' property set
but there isn't any code utilizing this so removing the property
from any devicetrees that have it set (as well as example in docs).
Signed-off-by: Kumar Gala <galak@kernel.org>
Adds few missing zephyr/ prefixes to leftover #include statements that
either got added recently or were using double quote format.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
In order to bring consistency in-tree, migrate all boards code to the
new prefix <zephyr/...>. Note that the conversion has been scripted,
refer to zephyrproject-rtos#45388 for more details.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
switch all in tree usage of zephyr,mmc-spi-slot to zephyr,sdhc-spi-slot.
This will change all boards to use the new SD subsystem instead of the
SDMMC SPI driver
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Fix spelling errors in assorted .rst files. The errors were found
using a tool called 'codespell'.
Signed-off-by: Aleksandar Markovic <aleksandar.markovic.sa@gmail.com>
Allow shield to be used with any board that has an
arduino nano connector.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@huawei.com>
This maps the Arduino Rev3 header's pins expected by the shield overlay
to the real Arduino Nano header pins of the Arduino Nano 33 BLE board and
aliases the I2C and SPI interfaces accordingly.
Fixes: #43927
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@huawei.com>
This update Atmel sam serial drivers to use pinctrl driver and API. It
updates all boards with new pinctrl groups format.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
The driver is already enabled when turning CONFIG_DISPLAY on and
enabling the display node in Devicetree.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
This adds an overlay defining a dummy arduino_header with three pins
required by the adafruit 2.8 TFT display to work on arduino_nano_33_ble.
While the nano form factor doesn't really have a proper Rev3 header, this
allows to connect the display to the nano pins and make the display work.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@huawei.com>
The Keyestudio CAN-BUS Shield (KS0411) is equipped with a Microchip
MCP2551 CAN transceiver with a maximum bitrate of 1Mbit/s.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
The DFRobot CAN BUS Shield V2.0 is equipped with a NXP TJA1050 CAN
transceiver with a maximum bitrate of 1Mbit/s.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
In upstream the LV_COLOR_DEPTH_BITS option is called LV_COLOR_DEPTH, this
needs changing if we want to support v8.2.0.
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
We're now using the Kconfig copied from the upstream lvgl repository. It
uses the LV_ prefix for all options while we're using LVGL_ for
Zephyr-specific ones. Make the latter consistent with upstream but also
make sure they're distinct from lvgl's by using LV_Z_ as the prefix.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@huawei.com>
Start using the upstream Kconfig from LVGL and move the glue code out
of the zephyr tree and put it under lvgl/zephyr/ in modules.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@huawei.com>
Add support for the Keyestudio CAN-BUS shield (KS0411). This shield is
very similar to the DFRobot CAN-BUS shield v2.0.
Rename the MCP2515 devicetree nodes in order not to conflict with
on-chip CAN controllers and switch to specifying the sample point
instead of time quantas.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Kconfig entries used for changing an option default value should not
re-define the option prompt. We should probably introduce a check for
that (any option has a single prompt and help).
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Remove the requirement for specifying #address-cells and #size-cells
properties for CAN controller devicetree nodes.
CAN controllers do not have a common concept of devicetree child nodes
and thus have no need for these properties. This is in line with
upstream Linux kernel devicetree bindings.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Remove options LVGL_HOR_RES_MAX and LVGL_VER_RES_MAX.
Keep the options for mimxrt10xx_evk boards as they
cannot yet be obtained there from devicetree.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Remove Kconfig option LVGL_DISPLAY_DEV_NAME.
Also remove it from mimxrt10xx_evk boards to have consistent
configuration, even if they do not benefit from it that much.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Include common display controller bindings.
Add required height and width properties to "ilitek,ili9340"
and "ilitek,ili9488" users.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Refactors all of the on-chip GPIO drivers to use a shared driver class
initialization priority configuration, CONFIG_GPIO_INIT_PRIORITY, to
allow configuring GPIO drivers separately from other devices. This is
similar to other driver classes like I2C and SPI.
Most drivers previously used CONFIG_KERNEL_INIT_PRIORITY_DEFAULT or
CONFIG_KERNEL_INIT_PRIORITY_DEVICE, therefore the default for this new
option is the lower of the two, which means earlier initialization.
Driver-specific options for off-chip I2C- or SPI-based GPIO drivers are
left intact because they often need to be initialized at a different
priority than on-chip GPIO drivers.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Rename the Zephyr chosen property for specifying the default CAN bus
controller from "zephyr,can-primary" to "zephyr,canbus".
The "zephyr,can-primary" property name was selected in antipation of
adding support for redundant CAN networks, which we have yet to
add. Meanwhile, the "primary" term causes confusion for non-redundant
CAN bus configurations (and the "can" term doesn't match the name of the
Zephyr CAN bus subsystem).
The CAN in Automation (CiA) 302-6, which deals with CANopen network
redundancy, uses the terms "default interface" and "redundant
interface". If/when we add support for redundant CAN networks, the
"zephyr,canbus" chosen property can be supplemented with a
"zephyr,canbus-redundant" chosen property.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Refactors all of the EEPROM drivers to use a shared driver class
initialization priority configuration, CONFIG_EEPROM_INIT_PRIORITY, to
allow configuring EEPROM drivers separately from other devices. This is
similar to other driver classes like I2C and SPI.
The default is set to CONFIG_KERNEL_INIT_PRIORITY_DEVICE to preserve the
existing default initialization priority for most drivers. The
exceptions are at2x and emul drivers which have dependencies on SPI,
I2C, or flash drivers and must therefore initialize later than the
default device priority.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Refactors all of the DAC drivers to use a shared driver class
initialization priority configuration, CONFIG_DAC_INIT_PRIORITY, to
allow configuring DAC drivers separately from other devices. This is
similar to other driver classes like I2C and SPI.
The default is set to CONFIG_KERNEL_INIT_PRIORITY_DEVICE to preserve the
existing default initialization priority for most drivers. The
exceptions are dacx0508, dacx3608, and mcp4725 drivers which have
dependencies on SPI or I2C drivers and must therefore initialize later
than the default device priority.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>