Commit graph

30 commits

Author SHA1 Message Date
Anas Nashif c3827ec48e boards: add vendor to board yaml
This is coming from devicetree and corrosponds to what we have in the
dts/bindings/vendor-prefixes.txt file.

This will allow for static filtering, especially with twister, i.e. no
need to build anything to know the vendor of a board

All of the vendor data was extracted automatically from the devicetree,
so some platforms might not have the right vendor or no vendor at all
right now, we need to fix some of the DTS information or do this
manually to get this 100% correct. But we are close.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-09-22 09:29:36 +02:00
Guillaume Gautier eaabe204d7 boards: arm: add adc clock properties for all stm32 boards
Add ADC clock source and prescaler properties to all STM32 boards.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2023-08-29 11:27:07 +01:00
Fabio Baltieri 57e0da4d80 boards: add zephyr,code properties to the various gpio-keys nodes
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>
2023-08-07 11:26:26 +02:00
Kenneth J. Miller f55ffb5f7b boards: arm: Add vbat node and alias for STM32 SoCs
Add enabled vbat node for all boards of supported STM32 SoC series which
have the required adc node enabled.

Add volt-sensor alias pointing to said vref node.

Signed-off-by: Kenneth J. Miller <ken@miller.ec>
2023-05-23 08:54:20 +02:00
Alexander Mihajlovic dfaa1d5682 boards: stm32h735g_disco: Add pmod connector
Add pmod connector dts description.

Signed-off-by: Alexander Mihajlovic <alexander@eub.se>
2023-03-27 09:51:08 +02:00
Ben Marsh 20dce8c6a8 boards: arm: stm32h735g_disco: Add counter support
Add counter to the supported features of the stm32h735g_disco board

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2023-03-20 09:53:59 +01:00
Ben Marsh adc59be23f boards: arm: stm32h735g_disco: Enable DT mac node
This board's documentation states the current configuration supports
Ethernet. However, the mac node was not enabled in devicetree.

This commit enables the mac node in devicetree.

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2023-03-02 09:03:23 +01:00
Ben Marsh 30e0fa82f8 boards: arm: stm32h735g_disco: Enable ADC support
Enable ADC support for the stm32h735g_disco board in devicetree

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2023-02-28 10:26:26 +01:00
Ben Marsh 545d450bd4 boards: arm: stm32h735g_disco: fix support for RNG
This board's documentation states the current configuration supports RNG
However, the RNG peripheral, and the HSI48 clock that the RNG depends
on, were not enabled

This commit enables the RNG and the HSI48 clock.

Verified with entropy test.

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2023-02-22 08:51:10 +01:00
Patryk Duda 82d26da680 boards: arm: Enable RTC backup RAM on some boards
This patch enables STM32 RTC BBRAM in DTS on some STM32 boards for
testing purposes.

Signed-off-by: Patryk Duda <pdk@semihalf.com>
2022-12-08 16:47:09 +09:00
Francois Ramu b61934231b boards: arm: stm32 disco kit with octoflash description
No sfdp-table property given by the DTS but received from
the octoflash Node rely on the issued by the read sfdp command.
Note that the size of the mx25lm51245 flash controller
is expressed in bits (ie 512Mbits or 64 Mbytes).

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2022-11-22 14:26:57 +00:00
Erwan Gouriou dcf4201d35 boards: stm32h735g_disco: Provide a working openocd configuration
Openocd configuration for this board was broken. Fix it.
Tested on both SDK 0.15.0 and SDK 0.15.1-RC1.
Debug is also functional

Fixes #50306

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2022-09-30 10:36:11 -05:00
Erwan Gouriou f7871c4974 boards: stm32h7: Remove lptim related configuration
No power.c implementation is provided for stm32h7 soc series.
Since there is no code provided to handle entry and exit of stop states or
PM use case globally, there is no reason to provide a configuration of
LPTIM which only current use is to be used as PM ticker.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2022-09-02 10:41:59 +00: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
Erwan Gouriou a35279488a boards: stm32: Remove lptim node when not used in tree
These boards enable lptim node, but don't propose 'power-states'
description, making it useless and not testable regarding configuration
of existing, in tree, PM tests.

Clean up this definition.

They will be put back along with 'power-states', when possible to test.


Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2022-08-12 08:50:29 +01:00
Kumar Gala 4764a32d44 boards: arm: stm32: Remove label property from devicetree
The label property isn't needed in devicetree so remove it.

Signed-off-by: Kumar Gala <galak@kernel.org>
2022-08-04 13:46:24 +02:00
Francois Ramu 2f0338ca42 boards: arm: stm32h735g disco target board has octo SPI instance
This commit enables the octo SPI peripheral to the flash-nor
on the target board stm32h735g_disco from STMicroelectronics.
The octospi1 is connected to the NOR- octo-flash through
the OSPI IO Manager.
Note that JESD16 requires 9 dwords for the sdfp table.
The NOR octoflash is MX25LM51245 or compatible.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2022-07-27 18:46:25 +02:00
Erwan Gouriou be217004a1 boards: stm32h7: Update openocd runner to specify target handle
Openocd scripts for STM32H7 SoCs use _CHIPNAME.cpu{0|1} as
target handle.
Specify this thanks to new openocd runner option '-target-handle'.

This is required to allow thread awareness debugging on these targets.

Fixes #45778

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2022-05-24 08:52:16 -07:00
Benedikt Schmidt f6a55994bd boards: arm: stm32: use LSE as source for LPTIM
Automatically select LSE as source for LPTIM
on the stm32h735g_disco board.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2022-01-19 14:15:29 -05:00
Benedikt Schmidt 03297084e5 soc: arm: stm32: activate LPTIM based upon PM
Activate LPTIM by default if PM is selected.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2022-01-19 14:15:29 -05:00
Benedikt Schmidt 7d90035282 boards: arm: stm32: fix user led configuration
User LEDs are active low.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2022-01-12 10:26:46 -06:00
Alexandre Bourdiol 607a40e728 boards: arm: stm32h7: select direct SMPS for both disco boards
Direct SMPS is the default configuration out of the box of:
* stm32h474i_disco
* stm32h735g_disco

Fixes #34732

Signed-off-by: Alexandre Bourdiol <alexandre.bourdiol@st.com>
2021-12-24 20:53:05 -05:00
Erwan Gouriou 955ef39623 boards: stm32: Remove use of CONFIG_PINMUX
Now that all drivers and all boards have been converted to the
use of PINCTRL, remove usage of PINMUX.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-11-26 11:36:42 +01:00
Erwan Gouriou dfbaa4149d boards: arm: stm32: add pinctrl state name for I2C peripheral
Add the pinctrl state name (default) for the I2C peripherals.
Changes performed based on the script proposed in
"boards: arm: stm32: add pinctrl state name for UART peripheral"

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-11-26 11:36:42 +01:00
Erwan Gouriou ed5ea6022a boards: arm: stm32: add pinctrl state name for ethernet peripheral
Add the pinctrl state name (default) for the ethernet peripherals.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-11-26 11:36:42 +01:00
Erwan Gouriou 3dde131cb8 boards: arm: stm32: add pinctrl state name for SDMMC peripheral
Add the pinctrl state name (default) for the SDMMC peripherals.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-11-26 11:36:42 +01:00
Gerard Marull-Paretas 4b9c3d7134 boards: arm: stm32: add pinctrl state name for UART peripheral
Add the pinctrl state name (default) for the UART/USART/LPUART
peripherals. Changes performed using the following Python script run
from the repository root:

```
from pathlib import Path
import re

for fpath in Path(".").glob("boards/arm/**/*.dts"):
    lines = open(fpath).readlines()

    is_stm32 = False
    for line in lines:
        if "stm32" in line:
            is_stm32 = True
            break

    if not is_stm32:
        continue

    with open(fpath, "w") as f:
        for line in lines:
            f.write(line)

            m = re.match(r"(\s+)pinctrl-0.*us?art.*", line)
            if m:
                f.write(m.group(1) + "pinctrl-names = \"default\";\n")
```

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-26 11:36:42 +01:00
Gerard Marull-Paretas 070e2f0782 boards: arm: stm32: enable pinctrl driver
Enable the pin control driver on all STM32 based boards. The following
script has been used to do this task:

```
from pathlib import Path
import re

for fpath in Path(".").glob("boards/arm/**/*_defconfig"):
    lines = open(fpath).readlines()

    is_stm32 = False
    for line in lines:
        if "CONFIG_SOC_SERIES_STM32" in line:
            is_stm32 = True
            break

    if not is_stm32:
        continue

    lines += ["\n", "# enable pin controller\n", "CONFIG_PINCTRL=y\n"]

    with open(fpath, "w") as f:
        f.writelines(lines)
```

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-26 11:36:42 +01:00
Benedikt Schmidt 7df3dae39d boards: arm: fix build of civetweb example for STM32H735G discovery kit
Activate optimizations for stm32h735g_disco which in the end
optimize the calls to ferror and fileno away.
Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2021-07-09 07:45:07 -04:00
Benedikt Schmidt 08a39c37dd boards: arm: add STM32H735G discovery kit
Add the STM32H735G discovery kit to the available boards.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2021-07-01 08:49:26 -05:00