Browse Source
Add support for basic peripherals. Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>pull/84458/merge
21 changed files with 546 additions and 1 deletions
@ -0,0 +1,17 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2023 TOKITA Hiroshi <tokita.hiroshi@fujitsu.com> |
||||||
|
* |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
&pinctrl { |
||||||
|
spi1_default: spi1_default { |
||||||
|
group1 { |
||||||
|
/* MOSI MISO RSPCK SSL */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_SPI, 1, 9)>, |
||||||
|
<RA_PSEL(RA_PSEL_SPI, 1, 10)>, |
||||||
|
<RA_PSEL(RA_PSEL_SPI, 1, 11)>, |
||||||
|
<RA_PSEL(RA_PSEL_SPI, 1, 12)>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
@ -0,0 +1,26 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2024 TOKITA Hiroshi <tokita.hiroshi@fujitsu.com> |
||||||
|
* |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
&pinctrl { |
||||||
|
iic0_default: iic0_default { |
||||||
|
group1 { |
||||||
|
/* SCL0 SDA0 */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_I2C, 4, 0)>, |
||||||
|
<RA_PSEL(RA_PSEL_I2C, 4, 1)>; |
||||||
|
drive-strength = "medium"; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
spi0_default: spi0_default { |
||||||
|
group1 { |
||||||
|
/* MOSI MISO RSPCK SSL */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_SPI, 4, 11)>, |
||||||
|
<RA_PSEL(RA_PSEL_SPI, 4, 10)>, |
||||||
|
<RA_PSEL(RA_PSEL_SPI, 1, 2)>, |
||||||
|
<RA_PSEL(RA_PSEL_SPI, 1, 3)>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
@ -0,0 +1,36 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2025 TOKITA Hiroshi |
||||||
|
* |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
#include <zephyr/dt-bindings/pwm/pwm.h> |
||||||
|
#include <zephyr/dt-bindings/pwm/ra_pwm.h> |
||||||
|
|
||||||
|
/ { |
||||||
|
leds { |
||||||
|
status = "disabled"; |
||||||
|
}; |
||||||
|
|
||||||
|
pwm_leds { |
||||||
|
status = "okay"; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pinctrl { |
||||||
|
pwm3_default: pwm3_default { |
||||||
|
group1 { |
||||||
|
/* GTIOC3A */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 11)>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pwm3 { |
||||||
|
pinctrl-0 = <&pwm3_default>; |
||||||
|
pinctrl-names = "default"; |
||||||
|
interrupts = <30 1>, <31 1>; |
||||||
|
interrupt-names = "gtioca", "overflow"; |
||||||
|
status = "okay"; |
||||||
|
divider = <RA_PWM_SOURCE_DIV_1024>; |
||||||
|
}; |
@ -0,0 +1,36 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2025 TOKITA Hiroshi |
||||||
|
* |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
#include <zephyr/dt-bindings/pwm/pwm.h> |
||||||
|
#include <zephyr/dt-bindings/pwm/ra_pwm.h> |
||||||
|
|
||||||
|
/ { |
||||||
|
leds { |
||||||
|
status = "disabled"; |
||||||
|
}; |
||||||
|
|
||||||
|
pwm_leds { |
||||||
|
status = "okay"; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pinctrl { |
||||||
|
pwm2_default: pwm2_default { |
||||||
|
group1 { |
||||||
|
/* GTIOC2B */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 2)>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pwm2 { |
||||||
|
pinctrl-0 = <&pwm2_default>; |
||||||
|
pinctrl-names = "default"; |
||||||
|
interrupts = <30 1>, <31 1>; |
||||||
|
interrupt-names = "gtioca", "overflow"; |
||||||
|
status = "okay"; |
||||||
|
divider = <RA_PWM_SOURCE_DIV_1024>; |
||||||
|
}; |
@ -0,0 +1,36 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2025 TOKITA Hiroshi |
||||||
|
* |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
#include <zephyr/dt-bindings/pwm/pwm.h> |
||||||
|
#include <zephyr/dt-bindings/pwm/ra_pwm.h> |
||||||
|
|
||||||
|
/ { |
||||||
|
leds { |
||||||
|
status = "disabled"; |
||||||
|
}; |
||||||
|
|
||||||
|
pwm_leds { |
||||||
|
status = "okay"; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pinctrl { |
||||||
|
pwm3_default: pwm3_default { |
||||||
|
group1 { |
||||||
|
/* GTIOC3A */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 11)>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pwm3 { |
||||||
|
pinctrl-0 = <&pwm3_default>; |
||||||
|
pinctrl-names = "default"; |
||||||
|
interrupts = <30 1>, <31 1>; |
||||||
|
interrupt-names = "gtioca", "overflow"; |
||||||
|
status = "okay"; |
||||||
|
divider = <RA_PWM_SOURCE_DIV_1024>; |
||||||
|
}; |
@ -0,0 +1,36 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2025 TOKITA Hiroshi |
||||||
|
* |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
#include <zephyr/dt-bindings/pwm/pwm.h> |
||||||
|
#include <zephyr/dt-bindings/pwm/ra_pwm.h> |
||||||
|
|
||||||
|
/ { |
||||||
|
leds { |
||||||
|
status = "disabled"; |
||||||
|
}; |
||||||
|
|
||||||
|
pwm_leds { |
||||||
|
status = "okay"; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pinctrl { |
||||||
|
pwm2_default: pwm2_default { |
||||||
|
group1 { |
||||||
|
/* GTIOC2B */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 2)>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pwm2 { |
||||||
|
pinctrl-0 = <&pwm2_default>; |
||||||
|
pinctrl-names = "default"; |
||||||
|
interrupts = <30 1>, <31 1>; |
||||||
|
interrupt-names = "gtioca", "overflow"; |
||||||
|
status = "okay"; |
||||||
|
divider = <RA_PWM_SOURCE_DIV_1024>; |
||||||
|
}; |
@ -0,0 +1,53 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2025 TOKITA Hiroshi |
||||||
|
* |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
/ { |
||||||
|
zephyr,user { |
||||||
|
io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 9>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&adc0 { |
||||||
|
status = "okay"; |
||||||
|
#address-cells = <1>; |
||||||
|
#size-cells = <0>; |
||||||
|
|
||||||
|
channel@0 { |
||||||
|
reg = <0>; |
||||||
|
zephyr,gain = "ADC_GAIN_1"; |
||||||
|
zephyr,reference = "ADC_REF_VDD_1"; |
||||||
|
zephyr,resolution = <12>; |
||||||
|
zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>; |
||||||
|
zephyr,vref-mv = <5000>; |
||||||
|
}; |
||||||
|
|
||||||
|
channel@1 { |
||||||
|
reg = <1>; |
||||||
|
zephyr,gain = "ADC_GAIN_1"; |
||||||
|
zephyr,reference = "ADC_REF_VDD_1"; |
||||||
|
zephyr,resolution = <12>; |
||||||
|
zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>; |
||||||
|
zephyr,vref-mv = <5000>; |
||||||
|
}; |
||||||
|
|
||||||
|
channel@2 { |
||||||
|
reg = <2>; |
||||||
|
zephyr,gain = "ADC_GAIN_1"; |
||||||
|
zephyr,reference = "ADC_REF_VDD_1"; |
||||||
|
zephyr,resolution = <12>; |
||||||
|
zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>; |
||||||
|
zephyr,vref-mv = <5000>; |
||||||
|
}; |
||||||
|
|
||||||
|
channel@9 { |
||||||
|
reg = <9>; |
||||||
|
zephyr,gain = "ADC_GAIN_1"; |
||||||
|
zephyr,reference = "ADC_REF_VDD_1"; |
||||||
|
zephyr,resolution = <12>; |
||||||
|
zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>; |
||||||
|
zephyr,vref-mv = <5000>; |
||||||
|
}; |
||||||
|
}; |
@ -0,0 +1,3 @@ |
|||||||
|
CONFIG_BLINK_DELAY_SHORT=20 |
||||||
|
CONFIG_BLINK_DELAY_LONG=65 |
||||||
|
CONFIG_FADE_DELAY=15 |
@ -0,0 +1,30 @@ |
|||||||
|
#include <zephyr/dt-bindings/pwm/pwm.h> |
||||||
|
#include <zephyr/dt-bindings/pwm/ra_pwm.h> |
||||||
|
|
||||||
|
/ { |
||||||
|
leds { |
||||||
|
status = "disabled"; |
||||||
|
}; |
||||||
|
|
||||||
|
pwm_leds { |
||||||
|
status = "okay"; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pinctrl { |
||||||
|
pwm3_default: pwm3_default { |
||||||
|
group1 { |
||||||
|
/* GTIOC3A */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 11)>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pwm3 { |
||||||
|
pinctrl-0 = <&pwm3_default>; |
||||||
|
pinctrl-names = "default"; |
||||||
|
interrupts = <30 1>, <31 1>; |
||||||
|
interrupt-names = "gtioca", "overflow"; |
||||||
|
status = "okay"; |
||||||
|
divider = <RA_PWM_SOURCE_DIV_1024>; |
||||||
|
}; |
@ -0,0 +1,3 @@ |
|||||||
|
CONFIG_BLINK_DELAY_SHORT=20 |
||||||
|
CONFIG_BLINK_DELAY_LONG=65 |
||||||
|
CONFIG_FADE_DELAY=15 |
@ -0,0 +1,30 @@ |
|||||||
|
#include <zephyr/dt-bindings/pwm/pwm.h> |
||||||
|
#include <zephyr/dt-bindings/pwm/ra_pwm.h> |
||||||
|
|
||||||
|
/ { |
||||||
|
leds { |
||||||
|
status = "disabled"; |
||||||
|
}; |
||||||
|
|
||||||
|
pwm_leds { |
||||||
|
status = "okay"; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pinctrl { |
||||||
|
pwm2_default: pwm2_default { |
||||||
|
group1 { |
||||||
|
/* GTIOC2B */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 2)>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pwm2 { |
||||||
|
pinctrl-0 = <&pwm2_default>; |
||||||
|
pinctrl-names = "default"; |
||||||
|
interrupts = <30 1>, <31 1>; |
||||||
|
interrupt-names = "gtioca", "overflow"; |
||||||
|
status = "okay"; |
||||||
|
divider = <RA_PWM_SOURCE_DIV_1024>; |
||||||
|
}; |
@ -0,0 +1,35 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2025 TOKITA Hiroshi |
||||||
|
* |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
/ { |
||||||
|
zephyr,user { |
||||||
|
io-channels = <&adc0 0>, <&adc0 1>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&adc0 { |
||||||
|
status = "okay"; |
||||||
|
#address-cells = <1>; |
||||||
|
#size-cells = <0>; |
||||||
|
|
||||||
|
channel@0 { |
||||||
|
reg = <0>; |
||||||
|
zephyr,gain = "ADC_GAIN_1"; |
||||||
|
zephyr,reference = "ADC_REF_INTERNAL"; |
||||||
|
zephyr,resolution = <12>; |
||||||
|
zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>; |
||||||
|
zephyr,vref-mv = <5000>; |
||||||
|
}; |
||||||
|
|
||||||
|
channel@1 { |
||||||
|
reg = <1>; |
||||||
|
zephyr,gain = "ADC_GAIN_1"; |
||||||
|
zephyr,reference = "ADC_REF_INTERNAL"; |
||||||
|
zephyr,resolution = <12>; |
||||||
|
zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>; |
||||||
|
zephyr,vref-mv = <5000>; |
||||||
|
}; |
||||||
|
}; |
@ -0,0 +1,34 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2025 TOKITA Hiroshi |
||||||
|
* |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
#include <zephyr/dt-bindings/pwm/pwm.h> |
||||||
|
#include <zephyr/dt-bindings/pwm/ra_pwm.h> |
||||||
|
|
||||||
|
/ { |
||||||
|
pwm_loopback_0 { |
||||||
|
compatible = "test-pwm-loopback"; |
||||||
|
/* first index must be a 32-Bit timer */ |
||||||
|
pwms = <&pwm0 0 0 PWM_POLARITY_NORMAL>, |
||||||
|
<&pwm7 0 0 PWM_POLARITY_NORMAL>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pinctrl { |
||||||
|
pwm0_default: pwm0_default { |
||||||
|
group1 { |
||||||
|
/* GTIOC0A */ |
||||||
|
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 7)>; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
&pwm0 { |
||||||
|
pinctrl-0 = <&pwm0_default>; |
||||||
|
pinctrl-names = "default"; |
||||||
|
interrupts = <30 1>, <31 1>; |
||||||
|
interrupt-names = "gtioca", "overflow"; |
||||||
|
status = "okay"; |
||||||
|
}; |
@ -0,0 +1,21 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2025 TOKITA Hiroshi |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
&spi1 { |
||||||
|
rx-dtc; |
||||||
|
tx-dtc; |
||||||
|
|
||||||
|
slow@0 { |
||||||
|
compatible = "test-spi-loopback-slow"; |
||||||
|
reg = <0>; |
||||||
|
spi-max-frequency = <2000000>; |
||||||
|
}; |
||||||
|
|
||||||
|
fast@0 { |
||||||
|
compatible = "test-spi-loopback-fast"; |
||||||
|
reg = <0>; |
||||||
|
spi-max-frequency = <3000000>; |
||||||
|
}; |
||||||
|
}; |
@ -0,0 +1,21 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2025 TOKITA Hiroshi |
||||||
|
* SPDX-License-Identifier: Apache-2.0 |
||||||
|
*/ |
||||||
|
|
||||||
|
&spi0 { |
||||||
|
rx-dtc; |
||||||
|
tx-dtc; |
||||||
|
|
||||||
|
slow@0 { |
||||||
|
compatible = "test-spi-loopback-slow"; |
||||||
|
reg = <0>; |
||||||
|
spi-max-frequency = <2000000>; |
||||||
|
}; |
||||||
|
|
||||||
|
fast@0 { |
||||||
|
compatible = "test-spi-loopback-fast"; |
||||||
|
reg = <0>; |
||||||
|
spi-max-frequency = <3000000>; |
||||||
|
}; |
||||||
|
}; |
Loading…
Reference in new issue