boards: qomu: use pinctrl driver

Pinmuxing was previously done in the board.c file.
Now it is done by the pinctrl driver.

Signed-off-by: Wojciech Sipak <wsipak@antmicro.com>
This commit is contained in:
Wojciech Sipak 2023-07-06 12:19:36 +02:00 committed by Carles Cufí
commit 36b5769b12
4 changed files with 33 additions and 57 deletions

View file

@ -1,4 +0,0 @@
# Copyright (c) 2022 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0
zephyr_library_sources(board.c)

View file

@ -1,28 +0,0 @@
/*
* Copyright (c) 2022 Antmicro <www.antmicro.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/init.h>
#include <soc.h>
#include "board.h"
static int qomu_board_init(void)
{
/* IO MUX setup for UART */
eos_s3_io_mux(UART_TX_PAD, UART_TX_PAD_CFG);
eos_s3_io_mux(UART_RX_PAD, UART_RX_PAD_CFG);
IO_MUX->UART_rxd_SEL = UART_RX_SEL;
/* IO MUX setup for USB */
eos_s3_io_mux(USB_PU_CTRL_PAD, USB_PAD_CFG);
eos_s3_io_mux(USB_DN_PAD, USB_PAD_CFG);
eos_s3_io_mux(USB_DP_PAD, USB_PAD_CFG);
return 0;
}
SYS_INIT(qomu_board_init, PRE_KERNEL_1, CONFIG_BOARD_INIT_PRIORITY);

View file

@ -1,25 +0,0 @@
/*
* Copyright (c) 2022 Antmicro <www.antmicro.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef __INC_BOARD_H
#define __INC_BOARD_H
#include <soc_pinmap.h>
#define USB_PU_CTRL_PAD 23
#define USB_DN_PAD 28
#define USB_DP_PAD 31
#define USB_PAD_CFG (PAD_E_4MA | PAD_P_Z | PAD_OEN_NORMAL | PAD_SMT_DISABLE \
| PAD_REN_DISABLE | PAD_SR_SLOW | PAD_CTRL_SEL_FPGA)
#define UART_TX_PAD 44
#define UART_TX_PAD_CFG UART_TXD_PAD44
#define UART_RX_PAD 45
#define UART_RX_PAD_CFG UART_RXD_PAD45
#define UART_RX_SEL UART_RXD_SEL_PAD45
#endif /* __INC_BOARD_H */

View file

@ -6,6 +6,7 @@
/dts-v1/;
#include <quicklogic/quicklogic_eos_s3.dtsi>
#include <zephyr/dt-bindings/pinctrl/quicklogic-eos-s3-pinctrl.h>
/ {
model = "QuickLogic Qomu board";
@ -56,6 +57,35 @@
};
};
&pinctrl {
uart1_rx_default: uart1_rx_default {
pinmux = <UART_RX_PAD45>;
input-enable;
};
uart1_tx_default: uart1_tx_default {
pinmux = <UART_TX_PAD44>;
output-enable;
};
usb_pu_default: usb_pu_default {
pinmux = <USB_PU_CTRL_PAD23>;
bias-high-impedance;
quicklogic,control-selection = "fabric";
output-enable;
};
usb_dn_default: usb_dn_default {
pinmux = <USB_DN_PAD28>;
bias-high-impedance;
quicklogic,control-selection = "fabric";
output-enable;
};
usb_dp_default: usb_dp_default {
pinmux = <USB_DP_PAD31>;
bias-high-impedance;
quicklogic,control-selection = "fabric";
output-enable;
};
};
&cpu0 {
clock-frequency = <61440000>;
};
@ -71,4 +101,7 @@
&uart1 {
status = "okay";
current-speed = <115200>;
pinctrl-0 = <&uart1_rx_default &uart1_tx_default
&usb_pu_default &usb_dn_default &usb_dp_default>;
pinctrl-names = "default";
};