Commit graph

355 commits

Author SHA1 Message Date
Lucas Tamborrino e919123fd6 tests: dma: add esp32c3
Add esp32c3 support to DMA tests

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-01-12 19:09:01 +01:00
TOKITA Hiroshi 666386f642 boards: gd32: add spi as supported feature
Add `spi` as supported feature to yaml configuration.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2023-01-11 08:50:56 -08:00
Filip Kokosinski 4858f8d667 boards: make names in platform YAML files unique
This commit makes names in the platform YAML files unique.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2023-01-10 09:59:25 +01:00
Tim Lin 31791f87e4 ITE: dts: it8xxx2: Separate device nodes from it8xxx2.dtsi
The GCR, PINCTRL, I2C and WUC registers of the it82xx2 will be remapped,
so these device nodes will not be in the it8xxx2.dtsi, these should be
separated to create a it81xx2.dtsi.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2023-01-09 10:14:21 +01:00
Sylvio Alves cff71c8d2b driver: systimer: increase esp32c3 tick resolution
hal_espressif systimer HAL calls are based on 1MHz reference.
This changes systimer driver to allow max clocking reference of 16MHz
and increases soc tick resolution by reducing min delay interval.

This also sets all ESP32-C3 socs to 16MHz hardware cycles reference.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2023-01-04 14:24:25 +01:00
Fabio Baltieri 3e7e44b70d yamllint: indentation: fix files in boards/
Fix the YAML files indentation for files in boards/.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2023-01-04 14:23:53 +01:00
TOKITA Hiroshi 346836b24b boards: riscv: add M5Stack STAMP-C3
Add M5Stack STAMP-C3 an ESP32-C3 based board.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
2023-01-04 10:35:06 +01:00
Marek Matej 937ea00e7a drivers: adc: esp32: Add support for single-shot conversion
Allow single-shot adc conversion on all supported targets.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2022-12-23 23:45:05 +00:00
TOKITA Hiroshi 20d2dff140 boards: gd32: add dma as supported feature
Add `dma` as supported feature to yaml configuration.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2022-12-22 13:43:49 +01:00
TOKITA Hiroshi 7317490703 boards: riscv: Add support for SparkFun RED-V Things Plus
Add support for SparkFun RED-V Things Plus board that is
a development board with a SiFive FE310-G002 RISC-V SoC.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
2022-12-21 16:27:55 +01:00
TOKITA Hiroshi 3273bea0a5 boards: riscv: hifive1: add openocd configuration
Add configurations flashing and debugging for openocd.
The change makes `west debug` and `west flash` use the setting defaultly.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
2022-12-21 16:21:44 +01:00
TOKITA Hiroshi b3af9bdb39 boards: riscv: hifive1: add arduino_header configuration
Add arduino_header and arduino_i2c configuration.
Also add pinctrl definitions.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
2022-12-19 16:44:20 +01:00
Fabio Baltieri d75607f234 boards: riscv: add Seeed Studio xiao_esp32c3
Add Seeed Studio xiao_esp32c3, an ESP32-C3 based board using the XIAO
form factor.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-12-12 14:55:59 +01:00
TOKITA Hiroshi a0535439b4 boards: riscv: longan_nano: add configuration for LCD
Add configuration for built-in display.
LCD has a Sitronix ST7735S controller that is connected to the SPI bus.
Using it with the ST7735R driver.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2022-12-07 14:25:55 +00:00
Glauber Maroto Ferreira 9336a267f1 boards: riscv: esp32c3_devkitm: dts: add power states
Add power states to ESP32-C3 Devkit-M board dts.

Signed-off-by: Glauber Maroto Ferreira <glauber.ferreira@espressif.com>
2022-12-05 15:09:53 +01:00
Anas Nashif 3e870495f2 boards: add simulation executable for 3rd party sims
Provide the information as part of the board yaml file, this way we will
know what binary to check for.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-11-25 06:09:02 -05:00
Kumar Gala 81d904554a boards: Change defconfigs to use CONFIG_MP_MAX_NUM_CPUS
Move to using CONFIG_MP_MAX_NUM_CPUS in defconfig as we phase
out CONFIG_MP_NUM_CPUS.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-19 16:01:20 +02:00
Martin Jäger cfc31830b3 boards: riscv: esp32c3_devkitm: enable TWAI peripheral
The board does not have a CAN transceiver on board, but the driver
can be tested in loopback mode with the CAN RX and TX pins shorted.

Signed-off-by: Martin Jäger <martin@libre.solar>
2022-10-14 09:55:09 +02:00
TOKITA Hiroshi 6bf4fb39ad boards: Enable watchdog node for boards that implements GD32 SoCs
Enable watchdog in each GD32 implemented board.
Add the watchdog function as a supported function in each yaml files.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2022-10-03 18:07:16 +02:00
Hu Zhenyu 1a6098f5db doc: Modify the it8xxx2_evb overview document
1. Remove the obsoleted board
2. Add HW rework of the new it8xxx2_evb
3. Add Wiring of the new it8xxx2_evb
4. Update the Ubuntu flash guide

Signed-off-by: Hu Zhenyu <zhenyu.hu@intel.com>
2022-09-29 14:37:55 +00:00
Stephanos Ioannidis 43635f7b62 boards: beaglev_starlight_jh7100: Update outdated links
This commit updates the outdated BeagleV-related links. These pages
seem to be no longer available on the Seeed wiki.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Stephanos Ioannidis ce004aa5ff boards: gd32: Update outdated links
This commit updates the outdated links for the GD32 boards.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Nicolas Pitre 9ac6779b2d riscv: smp: update the qemu_riscv32/64 configs
No usermode nor stackguard CI tests are performed if CONFIG_RISCV_PMP
is not set.

In turn, this requires a larger privileged stack on RV64 just like
the non SMP case.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2022-09-28 07:53:56 +00:00
Martí Bolívar d23b3e81c2 boards: it8xxx2_evb: fix invalid DTS
The duplicated aliases node in this board's DTS file is an error when
compiling it with dtc. Zephyr's dtlib doesn't report the error yet,
but it will soon, so rearrange the alias definitions under a single
node. No functional changes expected.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-09-21 07:55:40 -07:00
Martí Bolívar 4d9fdc46a7 boards: hifive1: fix PWM pinctrl
A likely copy/paste error is making the pwm2_1_default pinmux setting
override the value for pwm1_1_default. Fix it.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-09-21 07:55:40 -07:00
Fabio Baltieri 7f41f795ac board: icev_wireless: enable i2c
Enable the i2c0 node so that the corresponding driver gets compiled.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-09-19 16:35:51 +00:00
Fabio Baltieri 2db0bd73e8 board: esp32c3: drop sda-gpios and scl-gpios i2c properties
Drop scl and sda gpio properties from two esp32c3 boards. According to
the dts description these are not required, and the corresponding driver
has an explicit check to fail the build if these are defined when the
platform has SOC_I2C_SUPPORT_HW_CLR_BUS defined.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-09-19 16:35:51 +00:00
Sylvio Alves 9105f1ef61 docs: esp32: update openocd section
This PR removes information regarding previous
west extension related to OpenOCD download.
This extension is no longer available and manual download
is required until upstream OpenOCD receives
all xtensa and riscv patches.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2022-09-16 09:02:41 +01:00
BJ Chen 20b788172d boards: riscv: ite: enable the CONFIG_OUTPUT_PRINT_MEMORY_USAGE
Removed the CONFIG_OUTPUT_PRINT_MEMORY_USAGE in it8xxx2_evb_defconfig

fixes #50165

Signed-off-by: BJ Chen <bj.chen@ite.com.tw>
2022-09-14 08:31:21 -05:00
Sylvio Alves 383cefd4a4 docs: esp32c3: add west blobs reference
As part of #49682, this updates esp32c3
documentation to add proper west blobs command.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2022-09-09 16:34:03 -04:00
Kumar Gala 390464ce3b timers: remove defconfig setting of timer drivers
Now that timer drivers are enabled based on devicetree we can
remove any cases of them getting enabled by *_defconfig files.

Signed-off-by: Kumar Gala <galak@kernel.org>
2022-09-09 09:58:48 +00:00
Wei-Tai Lee 4d74651c18 boards: riscv: adp_xc7k_ae350: update dts for atmel eeprom driver
Update dts for usage of atmel eeprom driver.

Signed-off-by: Wei-Tai Lee <wtlee@andestech.com>
2022-09-09 10:09:46 +02:00
HaiLong Yang 80faf95928 boards: gd32 board add zephyr,flash-controller property
This add zephyr,flash-controller property for supported boards.

Signed-off-by: HaiLong Yang <hailong.yang@brainco.cn>
2022-09-08 10:13:05 +02:00
Kevin Wang a268dbced8 boards: riscv: adp_xc7k_ae350 support SPI driver
Enable spi node in dts
Disable flash node due to haven't implemented yet.
Add spi to the supporting device list in board yaml.

Signed-off-by: Kevin Wang <yunkai@andestech.com>
2022-09-07 15:34:47 +02:00
Mateusz Sierszulski dd5a19bc6d Revert "boards: tlsr9518adk80d: Disable testing due to invalid linker script"
This reverts commit abd41f4a7a.

Signed-off-by: Mateusz Sierszulski <msierszulski@antmicro.com>
2022-09-02 14:19:53 +02:00
Wei-Tai Lee 674e2a5775 boards: riscv: adp_xc7k_ae350: support I2C driver
Support I2C driver on Andes adp_xc7k_ae350.

Signed-off-by: Wei-Tai Lee <wtlee@andestech.com>
2022-09-01 10:29:12 +02:00
Kumar Gala 1a75e77b6b intc: remove defconfig setting of interrupt controller drivers
Now that interrupt controller drivers are enabled based on devicetree
we can remove any cases of them getting enabled by *.conf files.

Signed-off-by: Kumar Gala <galak@kernel.org>
2022-09-01 10:25:36 +02:00
Stephanos Ioannidis abd41f4a7a boards: tlsr9518adk80d: Disable testing due to invalid linker script
This commit disables testing for the `tlsr9518adk80d` platform because
it contains an invalid linker script (overlapping memory region) and
cannot be compiled using the current version of the Zephyr SDK (0.15.0
at the time of making this change).

Revert this commit to re-enable testing for this platform once the
GitHub issue #49036 is fixed.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-08-29 16:57:18 +02:00
Carlo Caione 5fece03d7d riscv: Introduce Zicsr and Zifencei extensions
And enable the new extensions on all the SoCs.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2022-08-29 16:57:18 +02:00
Gerard Marull-Paretas b1c970e331 boards: delete unused images
Delete images not referenced in any .rst file.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-08-29 10:18:18 +02:00
Gerard Marull-Paretas e81e92dbb9 boards: convert images to JPEG and reduce image size
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>
2022-08-29 10:18:18 +02:00
Gerard Marull-Paretas 3f60ed03d1 boards: neorv32: remove doc logo
Logos do not add much value in board documentation and increase
repository size, so delete it.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-08-29 10:18:18 +02:00
Gerard Marull-Paretas 1416c8ce12 boards: qemu: delete all QEMU logos
We had a bunch of QEMU logos embedded in all QEMU boards. Logos do not
add much value to the documentation, so just delete them.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-08-29 10:18:18 +02:00
Wei-Tai Lee 2ac6eafe66 boards: riscv: adp_xc7k_ae350: add Kconfig options for hwinfo driver
Add Kconfig options to support hwinfo driver on adp_xc7k_ae350.

Signed-off-by: Wei-Tai Lee <wtlee@andestech.com>
2022-08-26 11:55:55 +02:00
Jimmy Zheng 86b04c8a33 boards: riscv: adp_xc7k_ae350: support Andes atcpit100 counter driver
Support counter driver on Andes adp_xc7k_ae350.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2022-08-26 11:55:36 +02:00
Haruki Obuchi 653eb93593 doc: Fix interface quantity
Since the interface quantity in the document of ESP32 C3
is different from the datasheet,
the quantity was corrected based on the datasheet.

Signed-off-by: Haruki Obuchi <dev@mail.nyarn.wtf>
2022-08-25 21:06:45 +00:00
Tim Lin cb041d062f ITE: drivers/i2c: Add I2C FIFO mode
Adding I2C FIFO mode can reduce the time between each byte to
improve the I2C bus clock stretching during I2C transaction.
The I2C master supports two 32-bytes FIFOs, channel A and C
are supported now.

I2C FIFO mode of it8xxx2 can support I2C APIs including:
i2c_write(), i2c_read(), i2c_burst_read.

Test:
1. tests\drivers\i2c\i2c_api --> pass
2. Reading 16 bytes of data through i2c_burst_read() can reduce
   0.52ms(2.4ms->1.88ms) compared to the original pio mode when the
   frequency is 100KHz.
3. It is normal to read sensor data through I2C on Nereid's platform.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2022-08-23 10:16:36 +02:00
Wei-Tai Lee 09e5742d73 boards: riscv: adp_xc7k_ae350: support syscon driver for adp_xc7k_ae350
Change syscon node status for and enable syscon Kconfig options
for adp_xc7k_ae350.

Signed-off-by: Wei-Tai Lee <wtlee@andestech.com>
2022-08-23 10:15:50 +02:00
Gerard Marull-Paretas cd739a9757 doc: fix incorrect usage of envvar role
:envvar: is currently used to tag environment variables, however,
:envvar: role expects a matching .. envvar:: directive where the
environment variable is defined. This patch fixes some cases by adding
envvar directives and by converting certain cases to literals (it
doesn't make sense to document all env vars in a list, as some are
self-documented by contextual information).

Ref. https://www.sphinx-doc.org/en/master/usage/restructuredtext/
roles.html#role-envvar

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-08-23 10:15:34 +02:00
Gerard Marull-Paretas a202341958 devices: constify device pointers initialized at compile time
Many device pointers are initialized at compile and never changed. This
means that the device pointer can be constified (immutable).

Automated using:

```
perl -i -pe 's/const struct device \*(?!const)(.*)= DEVICE/const struct
device *const $1= DEVICE/g' **/*.c
```

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-08-22 17:08:26 +02:00