feat: add luckfox pico pro/max support

This commit is contained in:
eng33 2023-09-27 18:14:22 +08:00
parent 7e5e289d7e
commit e1dea8a98d
10 changed files with 695 additions and 13 deletions

View File

@ -38,6 +38,37 @@
int GPIO_BEGIN_PIN, GPIO_END_PIN;
int *TEST_PIN;
int PICO_MAX_GPIOS[] = {
LUCKFOX_PICO_MAX_GPIO0,
LUCKFOX_PICO_MAX_GPIO1,
LUCKFOX_PICO_MAX_GPIO2,
LUCKFOX_PICO_MAX_GPIO3,
LUCKFOX_PICO_MAX_GPIO4,
LUCKFOX_PICO_MAX_GPIO5,
LUCKFOX_PICO_MAX_GPIO6,
LUCKFOX_PICO_MAX_GPIO7,
LUCKFOX_PICO_MAX_GPIO8,
LUCKFOX_PICO_MAX_GPIO9,
LUCKFOX_PICO_MAX_GPIO10,
LUCKFOX_PICO_MAX_GPIO11,
LUCKFOX_PICO_MAX_GPIO12,
LUCKFOX_PICO_MAX_GPIO13,
LUCKFOX_PICO_MAX_GPIO14,
LUCKFOX_PICO_MAX_GPIO15,
LUCKFOX_PICO_MAX_GPIO16,
LUCKFOX_PICO_MAX_GPIO17,
LUCKFOX_PICO_MAX_GPIO18,
LUCKFOX_PICO_MAX_GPIO19,
LUCKFOX_PICO_MAX_GPIO20,
LUCKFOX_PICO_MAX_GPIO21,
LUCKFOX_PICO_MAX_GPIO22,
/*23-25*/
LUCKFOX_PICO_MAX_GPIO26,
LUCKFOX_PICO_MAX_GPIO27,
LUCKFOX_PICO_MAX_GPIO28,
};
int PICO_PLUS_GPIOS[] = {
LUCKFOX_PICO_PLUS_GPIO0,
LUCKFOX_PICO_PLUS_GPIO1,
@ -62,6 +93,7 @@ int PICO_PLUS_GPIOS[] = {
LUCKFOX_PICO_PLUS_GPIO20,
LUCKFOX_PICO_PLUS_GPIO21,
LUCKFOX_PICO_PLUS_GPIO22,
/*23-25*/
LUCKFOX_PICO_PLUS_GPIO26,
LUCKFOX_PICO_PLUS_GPIO27,
};
@ -125,12 +157,13 @@ int main(int argc, char *argv[])
printf("Please select your test borad\r\n");
printf("* 1. LUCKFOX PICO\r\n");
printf("* 2. LUCKFOX PICO PLUS\r\n");
printf("* 3. LUCKFOX PICO MAX\r\n");
printf("-----------------------------\r\n");
while (1)
{
printf("Which would you like? :");
input_char = getchar();
if (input_char >= '1' && input_char <= '2')
if (input_char >= '1' && input_char <= '3')
{
break;
}
@ -148,6 +181,12 @@ int main(int argc, char *argv[])
GPIO_END_PIN = 22;
TEST_PIN = PICO_PLUS_GPIOS;
}
else if (input_char == '3')
{
GPIO_BEGIN_PIN = 16;
GPIO_END_PIN = 22;
TEST_PIN = PICO_MAX_GPIOS;
}
else
{
exit(0);
@ -155,7 +194,7 @@ int main(int argc, char *argv[])
printf("-----------------------------\r\n");
printf("Please select your test borad\r\n");
printf("* 1. Default part(GP%d-GP%d)\r\n", GPIO_BEGIN_PIN, GPIO_END_PIN);
printf("* 2. ALL(Except GP0 GP1)\r\n");
printf("* 2. ALL(GP2-GP%d)\r\n", GPIO_END_PIN);
printf("-----------------------------\r\n");
while (1)
{

View File

@ -34,7 +34,9 @@
#include <signal.h> //signal()
#include "luckfox_pwm.h"
int PWMS[] = {0, 1, 10, 11};
int PICO_PWMS[] = {0, 1, 10, 11};
int PICO_MAX_PWMS[] = {5, 6, 10, 11};
int *TEST_PWM;
void Delay_ms(uint32_t xms)
{
@ -51,9 +53,9 @@ void Handler(int signo)
printf("\r\nHandler:exit\r\n");
for (int x = 0; x < 4; x++)
{
luckfox_pwm_set_duty(PWMS[x], 0);
luckfox_pwm_deinit(PWMS[x]);
printf("PWM%dM0 deinit\r\n", PWMS[x]);
luckfox_pwm_set_duty(TEST_PWM[x], 0);
luckfox_pwm_deinit(TEST_PWM[x]);
printf("PWM%dM0 deinit\r\n", TEST_PWM[x]);
}
exit(0);
@ -61,12 +63,43 @@ void Handler(int signo)
int main(int argc, char *argv[])
{
char input_char = '0';
signal(SIGINT, Handler);
printf("-----------------------------\r\n");
printf("----------PWM TEST----------\r\n");
printf("-----------------------------\r\n");
printf("Please select your test borad\r\n");
printf("* 1. LUCKFOX PICO & LUCKFOX PICO PLUS\r\n");
printf("* 2. LUCKFOX PICO MAX\r\n");
printf("-----------------------------\r\n");
while (1)
{
printf("Which would you like? :");
input_char = getchar();
if (input_char >= '1' && input_char <= '2')
{
break;
}
}
if (input_char == '1')
{
TEST_PWM = PICO_PWMS;
}
else if (input_char == '2')
{
TEST_PWM = PICO_MAX_PWMS;
}
else
{
exit(0);
}
for (int x = 0; x < 4; x++)
{
luckfox_pwm_init(PWMS[x], 100000, 15000 * (x + 1), PWM_POLARITY_NORMAL);
luckfox_pwm_set_enable(PWMS[x], true);
printf("PWM%dM0 period=%d duty=%d\r\n", PWMS[x], luckfox_pwm_get_period(PWMS[x]), luckfox_pwm_get_duty(PWMS[x]));
luckfox_pwm_init(TEST_PWM[x], 100000, 15000 * (x + 1), PWM_POLARITY_NORMAL);
luckfox_pwm_set_enable(TEST_PWM[x], true);
printf("PWM%dM0 period=%d duty=%d\r\n", TEST_PWM[x], luckfox_pwm_get_period(TEST_PWM[x]), luckfox_pwm_get_duty(TEST_PWM[x]));
}
while (1)
{

View File

@ -76,6 +76,46 @@
#define GPIO(bank, pin) ((((bank) * 32) + (pin)))
/**********************************************/
#define LUCKFOX_PICO_MAX_GPIO0 GPIO(GPIO1,PB2)
#define LUCKFOX_PICO_MAX_GPIO1 GPIO(GPIO1,PB3)
#define LUCKFOX_PICO_MAX_GPIO2 GPIO(GPIO1,PC7)
#define LUCKFOX_PICO_MAX_GPIO3 GPIO(GPIO1,PC6)
#define LUCKFOX_PICO_MAX_GPIO4 GPIO(GPIO1,PC5)
#define LUCKFOX_PICO_MAX_GPIO5 GPIO(GPIO1,PC4)
#define LUCKFOX_PICO_MAX_GPIO6 GPIO(GPIO1,PD2)
#define LUCKFOX_PICO_MAX_GPIO7 GPIO(GPIO1,PD3)
#define LUCKFOX_PICO_MAX_GPIO8 GPIO(GPIO2,PB1)
#define LUCKFOX_PICO_MAX_GPIO9 GPIO(GPIO1,PC0)
#define LUCKFOX_PICO_MAX_GPIO10 GPIO(GPIO1,PC1)
#define LUCKFOX_PICO_MAX_GPIO11 GPIO(GPIO1,PC2)
#define LUCKFOX_PICO_MAX_GPIO12 GPIO(GPIO1,PC3)
#define LUCKFOX_PICO_MAX_GPIO13 GPIO(GPIO2,PB0)
#define LUCKFOX_PICO_MAX_GPIO14 GPIO(GPIO1,PD0)
#define LUCKFOX_PICO_MAX_GPIO15 GPIO(GPIO1,PD1)
/**********************************************/
#define LUCKFOX_PICO_MAX_GPIO28 GPIO(GPIO2,PA7)
#define LUCKFOX_PICO_MAX_GPIO27 GPIO(GPIO4,PC1)
#define LUCKFOX_PICO_MAX_GPIO26 GPIO(GPIO4,PC0)
#define LUCKFOX_PICO_MAX_GPIO22 GPIO(GPIO2,PA6)
#define LUCKFOX_PICO_MAX_GPIO21 GPIO(GPIO2,PA3)
#define LUCKFOX_PICO_MAX_GPIO20 GPIO(GPIO2,PA2)
#define LUCKFOX_PICO_MAX_GPIO19 GPIO(GPIO2,PA1)
#define LUCKFOX_PICO_MAX_GPIO18 GPIO(GPIO2,PA0)
#define LUCKFOX_PICO_MAX_GPIO17 GPIO(GPIO2,PA5)
#define LUCKFOX_PICO_MAX_GPIO16 GPIO(GPIO2,PA4)
/**********************************************/
#define LUCKFOX_PICO_PLUS_GPIO0 GPIO(GPIO1,PB2)
#define LUCKFOX_PICO_PLUS_GPIO1 GPIO(GPIO1,PB3)

View File

@ -26,8 +26,9 @@ enable_venc_1 = 1
enable_venc_2 = 0
enable_npu = 1
npu_fps = 10
buffer_line = 1296
enable_rtsp = 1
enable_rtmp = 1
enable_rtmp = 0
rotation = 0 ; available value:0 90 180 270
[video.0]

View File

@ -27,7 +27,7 @@ enable_venc_2 = 0
enable_npu = 1
npu_fps = 10
enable_rtsp = 1
enable_rtmp = 1
enable_rtmp = 0
rotation = 0 ; available value:0 90 180 270
[video.0]

View File

@ -27,7 +27,7 @@ enable_venc_2 = 0
enable_npu = 1
npu_fps = 10
enable_rtsp = 1
enable_rtmp = 1
enable_rtmp = 0
rotation = 0 ; available value:0 90 180 270
[video.0]

View File

@ -0,0 +1,84 @@
#!/bin/bash
# Target arch
export RK_ARCH=arm
# Target CHIP
export RK_CHIP=rv1106
# Target Toolchain Cross Compile
export RK_TOOLCHAIN_CROSS=arm-rockchip830-linux-uclibcgnueabihf
# Target boot medium: emmc/spi_nor/spi_nand
export RK_BOOT_MEDIUM=spi_nand
# Uboot defconfig
export RK_UBOOT_DEFCONFIG=rv1106_defconfig
# Uboot defconfig fragment
export RK_UBOOT_DEFCONFIG_FRAGMENT=rk-sfc.config
# Kernel defconfig
export RK_KERNEL_DEFCONFIG=luckfox_rv1106_linux_defconfig
# Kernel dts
export RK_KERNEL_DTS=rv1106g-luckfox-pico-max.dts
#misc image
export RK_MISC=wipe_all-misc.img
# Config sensor IQ files
# RK_CAMERA_SENSOR_IQFILES format:
# "iqfile1 iqfile2 iqfile3 ..."
# ./build.sh media and copy <SDK root dir>/output/out/media_out/isp_iqfiles/$RK_CAMERA_SENSOR_IQFILES
export RK_CAMERA_SENSOR_IQFILES="sc4336_OT01_40IRC_F16.json sc3336_CMK-OT2119-PC1_30IRC-F16.json"
#export RK_CAMERA_SENSOR_IQFILES="sc4336_OT01_40IRC_F16.json sc3336_CMK-OT2119-PC1_30IRC-F16.json sc530ai_CMK-OT2115-PC1_30IRC-F16.json"
# Config sensor lens CAC calibrattion bin files
export RK_CAMERA_SENSOR_CAC_BIN="CAC_sc4336_OT01_40IRC_F16"
#export RK_CAMERA_SENSOR_CAC_BIN="CAC_sc4336_OT01_40IRC_F16 CAC_sc530ai_CMK-OT2115-PC1_30IRC-F16"
# Config CMA size in environment
# export RK_BOOTARGS_CMA_SIZE="24M"
export RK_BOOTARGS_CMA_SIZE="66M"
# config partition in environment
# RK_PARTITION_CMD_IN_ENV format:
# <partdef>[,<partdef>]
# <partdef> := <size>[@<offset>](part-name)
# Note:
# If the first partition offset is not 0x0, it must be added. Otherwise, it needn't adding.
export RK_PARTITION_CMD_IN_ENV="256K(env),256K@256K(idblock),512K(uboot),4M(boot),32M(rootfs),48M(oem),160M(userdata)"
#export RK_PARTITION_CMD_IN_ENV="256K(env),256K@256K(idblock),256K(uboot),8M(boot),32M(rootfs),48M(oem),32M(userdata),-(media)"
# config partition's filesystem type (squashfs is readonly)
# emmc: squashfs/ext4
# nand: squashfs/ubifs
# spi nor: squashfs/jffs2
# RK_PARTITION_FS_TYPE_CFG format:
# AAAA:/BBBB/CCCC@ext4
# AAAA ----------> partition name
# /BBBB/CCCC ----> partition mount point
# ext4 ----------> partition filesystem type
#export RK_PARTITION_FS_TYPE_CFG=rootfs@IGNORE@squashfs,oem@/oem@squashfs,userdata@/userdata@ubifs
export RK_PARTITION_FS_TYPE_CFG=rootfs@IGNORE@ubifs,oem@/oem@ubifs,userdata@/userdata@ubifs
# config filesystem compress (Just for squashfs or ubifs)
# squashfs: lz4/lzo/lzma/xz/gzip, default xz
# ubifs: lzo/zlib, default lzo
# export RK_SQUASHFS_COMP=xz
# export RK_UBIFS_COMP=lzo
# app config
# export RK_APP_TYPE=RKIPC_RV1103
export RK_APP_TYPE=RKIPC_RV1106
# build ipc web backend
# export RK_APP_IPCWEB_BACKEND=y
# enable install app to oem partition
export RK_BUILD_APP_TO_OEM_PARTITION=y
# enable rockchip test
export RK_ENABLE_ROCKCHIP_TEST=y

View File

@ -0,0 +1,278 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Copyright (c) 2022 Rockchip Electronics Co., Ltd.
*/
#include "rv1106-amp.dtsi"
/ {
chosen {
bootargs = "earlycon=uart8250,mmio32,0xff4c0000 console=ttyFIQ0 rootwait snd_soc_core.prealloc_buffer_size_kbytes=16 coherent_pool=0";
};
acodec_sound: acodec-sound {
compatible = "simple-audio-card";
simple-audio-card,name = "rv-acodec";
simple-audio-card,format = "i2s";
simple-audio-card,mclk-fs = <256>;
simple-audio-card,cpu {
sound-dai = <&i2s0_8ch>;
};
simple-audio-card,codec {
sound-dai = <&acodec>;
};
};
vcc_1v8: vcc-1v8 {
compatible = "regulator-fixed";
regulator-name = "vcc_1v8";
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
vcc_3v3: vcc-3v3 {
compatible = "regulator-fixed";
regulator-name = "vcc_3v3";
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
vdd_arm: vdd-arm {
compatible = "regulator-fixed";
regulator-name = "vdd_arm";
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <900000>;
regulator-always-on;
regulator-boot-on;
};
leds: leds {
compatible = "gpio-leds";
work_led: work{
gpios = <&gpio3 RK_PC6 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "activity";
default-state = "on";
};
};
};
&acodec {
#sound-dai-cells = <0>;
pa-ctl-gpios = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
status = "okay";
};
&cpu0 {
cpu-supply = <&vdd_arm>;
};
&csi2_dphy_hw {
status = "okay";
};
&csi2_dphy0 {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
csi_dphy_input0: endpoint@0 {
reg = <0>;
remote-endpoint = <&sc3336_out>;
data-lanes = <1 2>;
};
csi_dphy_input1: endpoint@1 {
reg = <1>;
remote-endpoint = <&sc4336_out>;
data-lanes = <1 2>;
};
csi_dphy_input2: endpoint@2 {
reg = <2>;
remote-endpoint = <&sc530ai_out>;
data-lanes = <1 2>;
};
};
port@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
csi_dphy_output: endpoint@0 {
reg = <0>;
remote-endpoint = <&mipi_csi2_input>;
};
};
};
};
&i2c4 {
status = "okay";
clock-frequency = <400000>;
pinctrl-names = "default";
pinctrl-0 = <&i2c4m2_xfer>;
sc3336: sc3336@30 {
compatible = "smartsens,sc3336";
status = "okay";
reg = <0x30>;
clocks = <&cru MCLK_REF_MIPI0>;
clock-names = "xvclk";
pwdn-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&mipi_refclk_out0>;
rockchip,camera-module-index = <0>;
rockchip,camera-module-facing = "back";
rockchip,camera-module-name = "CMK-OT2119-PC1";
rockchip,camera-module-lens-name = "30IRC-F16";
port {
sc3336_out: endpoint {
remote-endpoint = <&csi_dphy_input0>;
data-lanes = <1 2>;
};
};
};
sc4336: sc4336@30 {
compatible = "smartsens,sc4336";
status = "okay";
reg = <0x30>;
clocks = <&cru MCLK_REF_MIPI0>;
clock-names = "xvclk";
pwdn-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&mipi_refclk_out0>;
rockchip,camera-module-index = <0>;
rockchip,camera-module-facing = "back";
rockchip,camera-module-name = "OT01";
rockchip,camera-module-lens-name = "40IRC_F16";
port {
sc4336_out: endpoint {
remote-endpoint = <&csi_dphy_input1>;
data-lanes = <1 2>;
};
};
};
sc530ai: sc530ai@30 {
compatible = "smartsens,sc530ai";
status = "okay";
reg = <0x30>;
clocks = <&cru MCLK_REF_MIPI0>;
clock-names = "xvclk";
pwdn-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&mipi_refclk_out0>;
rockchip,camera-module-index = <0>;
rockchip,camera-module-facing = "back";
rockchip,camera-module-name = "CMK-OT2115-PC1";
rockchip,camera-module-lens-name = "30IRC-F16";
port {
sc530ai_out: endpoint {
remote-endpoint = <&csi_dphy_input2>;
data-lanes = <1 2>;
};
};
};
};
&i2s0_8ch {
#sound-dai-cells = <0>;
status = "okay";
};
&mipi0_csi2 {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
mipi_csi2_input: endpoint@1 {
reg = <1>;
remote-endpoint = <&csi_dphy_output>;
};
};
port@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
mipi_csi2_output: endpoint@0 {
reg = <0>;
remote-endpoint = <&cif_mipi_in>;
};
};
};
};
&rkcif {
status = "okay";
};
&rkcif_mipi_lvds {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&mipi_pins>;
port {
/* MIPI CSI-2 endpoint */
cif_mipi_in: endpoint {
remote-endpoint = <&mipi_csi2_output>;
};
};
};
&rkcif_mipi_lvds_sditf {
status = "okay";
port {
/* MIPI CSI-2 endpoint */
mipi_lvds_sditf: endpoint {
remote-endpoint = <&isp_in>;
};
};
};
&rkisp {
status = "okay";
};
&rkisp_vir0 {
status = "okay";
port@0 {
isp_in: endpoint {
remote-endpoint = <&mipi_lvds_sditf>;
};
};
};
&saradc {
status = "okay";
vref-supply = <&vcc_1v8>;
};
&tsadc {
status = "okay";
};

View File

@ -0,0 +1,207 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Copyright (c) 2022 Rockchip Electronics Co., Ltd.
*/
/dts-v1/;
#include "rv1106.dtsi"
#include "rv1106-evb.dtsi"
#include "rv1106-luckfox-pico-max-ipc.dtsi"
/ {
model = "Luckfox Pico Max";
compatible = "rockchip,rv1103g-38x38-ipc-v10", "rockchip,rv1106";
};
/**********FLASH**********/
&sfc {
status = "okay";
flash@0 {
compatible = "spi-nand";
reg = <0>;
spi-max-frequency = <75000000>;
spi-rx-bus-width = <4>;
spi-tx-bus-width = <1>;
};
};
/**********SDMMC**********/
&sdmmc {
max-frequency = <50000000>;
no-sdio;
no-mmc;
bus-width = <4>;
cap-mmc-highspeed;
cap-sd-highspeed;
disable-wp;
pinctrl-names = "default";
pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_det &sdmmc0_bus4>;
status = "okay";
};
/**********SDIO**********/
// &sdio {
// max-frequency = <50000000>;
// no-sdio;
// no-mmc;
// bus-width = <4>;
// cap-mmc-highspeed;
// cap-sd-highspeed;
// disable-wp;
// pinctrl-names = "default";
// pinctrl-0 = <&sdmmc1m0_cmd &sdmmc1m0_clk &sdmmc1m0_bus4 &clk_32k>;
// status = "okay";
// };
/**********ETH**********/
&gmac {
status = "okay";
};
/**********USB**********/
&usbdrd_dwc3 {
status = "okay";
dr_mode = "peripheral";
};
/**********I2C**********/
// &i2c1 {
// status = "okay";
// pinctrl-0 = <&i2c1m1_xfer>;
// clock-frequency = <100000>;
// };
&i2c3 {
status = "okay";
pinctrl-0 = <&i2c3m1_xfer>;
clock-frequency = <100000>;
};
// /**********SPI**********/
&spi0 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&spi0m0_pins>;
cs-gpios = <&gpio1 RK_PC0 1>;
// cs-gpios = <&gpio1 26 1>;
#address-cells = <1>;
#size-cells = <0>;
spidev@0 {
compatible = "rockchip,spidev";
spi-max-frequency = <50000000>;
reg = <0>;
};
};
/**********UART**********/
// &uart0 {
// status = "okay";
// pinctrl-names = "default";
// pinctrl-0 = <&uart0m1_xfer>;
// };
// &uart1 {
// status = "okay";
// pinctrl-names = "default";
// pinctrl-0 = <&uart1m1_xfer>;
// };
&uart3 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart3m1_xfer>;
};
&uart4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart4m1_xfer>;
};
// /**********PWM**********/
// &pwm0 {
// status = "okay";
// pinctrl-names = "active";
// pinctrl-0 = <&pwm0m0_pins>;
// // pinctrl-0 = <&pwm0m1_pins>;
// };
// &pwm1 {
// status = "okay";
// pinctrl-names = "active";
// pinctrl-0 = <&pwm1m0_pins>;
// // pinctrl-0 = <&pwm1m1_pins>;
// };
//&pwm2 {
// status = "okay";
// pinctrl-names = "active";
// pinctrl-0 = <&pwm2m2_pins>;
//};
//&pwm3 {
// status = "okay";
// pinctrl-names = "active";
// pinctrl-0 = <&pwm3m2_pins>;
//};
//&pwm4 {
// status = "okay";
// pinctrl-names = "active";
// pinctrl-0 = <&pwm4m2_pins>;
//};
&pwm5 {
status = "okay";
pinctrl-names = "active";
pinctrl-0 = <&pwm5m1_pins>;
// pinctrl-0 = <&pwm5m2_pins>;
};
&pwm6 {
status = "okay";
pinctrl-names = "active";
pinctrl-0 = <&pwm6m1_pins>;
// pinctrl-0 = <&pwm6m2_pins>;
};
//&pwm7 {
// status = "okay";
// pinctrl-names = "active";
// pinctrl-0 = <&pwm7m2_pins>;
//};
//&pwm8 {
// status = "okay";
// pinctrl-names = "active";
// // pinctrl-0 = <&pwm8m1_pins>;
// pinctrl-0 = <&pwm8m0_pins>;
//};
//&pwm9 {
// status = "okay";
// pinctrl-names = "active";
// // pinctrl-0 = <&pwm9m1_pins>;
// pinctrl-0 = <&pwm9m0_pins>;
//};
&pwm10 {
status = "okay";
pinctrl-names = "active";
pinctrl-0 = <&pwm10m1_pins>;
// pinctrl-0 = <&pwm10m2_pins>;
// pinctrl-0 = <&pwm10m0_pins>;
};
&pwm11 {
status = "okay";
pinctrl-names = "active";
pinctrl-0 = <&pwm11m1_pins>;
// pinctrl-0 = <&pwm11m2_pins>;
// pinctrl-0 = <&pwm11m0_pins>;
};
&rtc {
status = "okay";
};