Added config and patches for T113-miniEVM.
continuous-integration/drone/push Build was killed Details

Signed-off-by: Yilin Sun <imi415@imi.moe>
This commit is contained in:
Yilin Sun 2024-04-16 13:36:18 +08:00
parent 48c9ae4442
commit b8005a7276
4 changed files with 429 additions and 0 deletions

View File

@ -0,0 +1,14 @@
CONFIG_LEDS_TRIGGER_MTD=y
CONFIG_MTD=y
CONFIG_MTD_UBI=y
CONFIG_MTD_SPI_NAND=y
CONFIG_UBIFS_FS=y
CONFIG_MOTORCOMM_PHY=y
CONFIG_TYPEC=y
CONFIG_TYPEC_WUSB3801=y
CONFIG_DRM_LONTIUM_LT8912B=y
CONFIG_USB_ACM=y
CONFIG_USB_SERIAL=y
CONFIG_USB_SERIAL_FTDI_SIO=y
CONFIG_USB_SERIAL_CP210X=y
CONFIG_SYSVIPC=y

View File

@ -0,0 +1,322 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
// Copyright (C) 2022 Arm Ltd.
/*
* Common peripherals and configurations for MangoPi MQ-R boards.
*/
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/leds/common.h>
/dts-v1/;
#include <arm/allwinner/sun8i-t113s.dtsi>
/ {
model = "Tronlong TLT113-MiniEVM";
compatible = "tronlong,tlt113-minievm", "allwinner,sun8i-t113i";
aliases {
serial2 = &uart2;
};
chosen {
stdout-path = "serial2:115200n8";
};
leds {
compatible = "gpio-leds";
led-0 {
color = <LED_COLOR_ID_GREEN>;
function = LED_FUNCTION_STATUS;
gpios = <&pio 2 0 GPIO_ACTIVE_HIGH>; /* PC0 */
linux,default-trigger = "heartbeat";
};
led-1 {
color = <LED_COLOR_ID_GREEN>;
function = LED_FUNCTION_DISK;
gpios = <&pio 2 1 GPIO_ACTIVE_HIGH>; /* PC1 */
linux,default-trigger = "mtd";
};
led-2 {
color = <LED_COLOR_ID_GREEN>;
function = LED_FUNCTION_HEARTBEAT;
gpios = <&pio 6 11 GPIO_ACTIVE_HIGH>; /* PG11 */
linux,default-trigger = "default-on";
};
};
hdmi-connector {
compatible = "hdmi-connector";
ddc-i2c-bus = <&i2c0>;
label = "hdmi";
type = "a";
port {
hdmi_connector_in: endpoint {
remote-endpoint = <&bridge_hdmi_out>;
};
};
};
/* EC2232E DC/DC regulator on SoM */
reg_vcc5v: regulator-5v {
compatible = "regulator-fixed";
regulator-name = "vcc-5v";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
};
/* EC2232E DC/DC regulator on SoM */
reg_3v3: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "vcc-3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&reg_vcc5v>;
};
/* EC2232E DC/DC regulator on SoM, also supplying VDD-SYS */
reg_vcc_core: regulator-core {
compatible = "regulator-fixed";
regulator-name = "vcc-core";
regulator-min-microvolt = <880000>;
regulator-max-microvolt = <880000>;
vin-supply = <&reg_vcc5v>;
};
reg_vbus_supply: regulator-vbus-otg {
compatible = "regulator-fixed";
regulator-name = "vbus-otg";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&pio 1 12 GPIO_ACTIVE_HIGH>;
vin-supply = <&reg_vcc5v>;
};
};
&cpu0 {
cpu-supply = <&reg_vcc_core>;
};
&cpu1 {
cpu-supply = <&reg_vcc_core>;
};
&wdt {
status = "okay";
};
&dcxo {
clock-frequency = <24000000>;
};
&ehci1 {
status = "okay";
};
&ohci1 {
status = "okay";
};
&pio {
vcc-pb-supply = <&reg_3v3>;
vcc-pd-supply = <&reg_3v3>;
vcc-pe-supply = <&reg_3v3>;
vcc-pf-supply = <&reg_3v3>;
vcc-pg-supply = <&reg_3v3>;
uart2_pg_pins: uart2-pg-pins {
pins = "PG17", "PG18";
function = "uart2";
};
rgmii_pg_pins: rgmii-pg-pins {
pins = "PG0", "PG1", "PG2", "PG3", "PG4",
"PG5", "PG6", "PG7", "PG8", "PG9",
"PG10", "PG12", "PG14", "PG15";
function = "emac";
};
i2c0_pins: i2c0-pins {
pins = "PB10", "PB11";
function = "i2c0";
};
i2c2_pins: i2c2-pins {
pins = "PE12", "PE13";
function = "i2c2";
};
spi0_misc_pins: spi0-misc-pins {
pins = "PC6", "PC7";
function = "spi0";
};
};
&uart2 {
pinctrl-names = "default";
pinctrl-0 = <&uart2_pg_pins>;
status = "okay";
};
&mmc0 {
pinctrl-0 = <&mmc0_pins>;
pinctrl-names = "default";
vmmc-supply = <&reg_3v3>;
cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
disable-wp;
bus-width = <4>;
status = "okay";
};
&emac {
pinctrl-0 = <&rgmii_pg_pins>;
pinctrl-names = "default";
status = "okay";
phy-handle = <&ephy>;
phy-mode = "rgmii-id";
allwinner,tx-delay-ps = <200>;
allwinner,rx-delay-ps = <0>;
phy-supply = <&reg_3v3>;
};
&mdio {
ephy: ethernet-phy@0 {
reg = <0>;
reset-gpios = <&pio 6 13 GPIO_ACTIVE_LOW>; /* PG13 */
rx-internal-delay-ps = <600>;
tx-internal-delay-ps = <450>;
reset-assert-us = <10000>;
reset-deassert-us = <1000000>;
};
};
&i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins>;
status = "okay";
};
&i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins>;
status = "okay";
hdmi_lontium_lt8912: hdmi@48 {
compatible = "lontium,lt8912b";
reg = <0x48>;
reset-gpios = <&pio 4 11 GPIO_ACTIVE_LOW>; /* PE11 */
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
bridge_dsi_in: endpoint {
data-lanes = <0 1 2 3>;
remote-endpoint = <&host_dsi_out>;
};
};
port@1 {
reg = <1>;
bridge_hdmi_out: endpoint {
remote-endpoint = <&hdmi_connector_in>;
};
};
};
};
tcpc@60 {
compatible = "willsemi,wusb3801";
reg = <0x60>;
interrupt-parent = <&pio>;
interrupts = <4 3 IRQ_TYPE_LEVEL_LOW>; /* PE3 */
connector {
compatible = "usb-c-connector";
label = "USB-C";
vbus-supply = <&reg_vbus_supply>;
power-role = "source";
data-role = "dual";
typec-power-opmode = "default";
pd-disable;
};
};
};
&spi0 {
pinctrl-names = "default";
pinctrl-0 = <&spi0_pins &spi0_misc_pins>;
status = "okay";
spi_nand@0 {
compatible = "spi-nand";
reg = <0>;
spi-max-frequency = <80000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
partitions {
#address-cells = <1>;
#size-cells = <1>;
compatible = "fixed-partitions";
partition@0 {
label = "u-boot";
reg = <0x0 0x100000>; /* 1MB */
};
partition@100000 {
label = "env";
reg = <0x100000 0x400000>; /* 4MB */
};
partition@500000 {
label = "rootfs";
reg = <0x500000 0xfb00000>; /* 251MB */
};
};
};
};
&dsi {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port {
host_dsi_out: endpoint {
remote-endpoint = <&bridge_dsi_in>;
};
};
};
};
&dphy {
status = "okay";
};
&tcon_top {
status = "okay";
};
&tcon_lcd0 {
status = "okay";
};
&usb_otg {
dr_mode = "peripheral";
status = "okay";
};
&usbphy {
usb1_vbus-supply = <&reg_vcc5v>;
status = "okay";
};

View File

@ -0,0 +1,78 @@
BR2_arm=y
BR2_cortex_a7=y
BR2_BINUTILS_VERSION_2_41_X=y
BR2_GCC_VERSION_13_X=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_PACKAGE_HOST_GDB=y
BR2_PACKAGE_HOST_GDB_TUI=y
BR2_TARGET_GENERIC_HOSTNAME="pudding-lwgw-t113i"
BR2_TARGET_GENERIC_ISSUE="What GW?"
BR2_INIT_SYSTEMD=y
# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
BR2_SYSTEM_BIN_SH_BASH=y
BR2_SYSTEM_DHCP="eth0"
BR2_GENERATE_LOCALE="en_US.UTF-8"
BR2_TARGET_LOCALTIME="Asia/Shanghai"
BR2_ROOTFS_USERS_TABLES="$(BR2_EXTERNAL_lwgw_PATH)/customizations/users.table"
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_lwgw_PATH)/customizations/overlay"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/torvalds/linux.git"
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="de927f6c0b07d9e698416c5b287c521b07694cac"
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_lwgw_PATH)/patches/kernel"
BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_lwgw_PATH)/board/t113i-minievm/linux.fragment"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="$(BR2_EXTERNAL_lwgw_PATH)/board/t113i-minievm/sun8i-t113i-tronlong-tlt113-minievm.dts"
BR2_LINUX_KERNEL_DTB_OVERLAY_SUPPORT=y
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_PACKAGE_MTD=y
BR2_PACKAGE_GPSD=y
BR2_PACKAGE_GPSD_USER=y
BR2_PACKAGE_GPSD_USER_VALUE="gpsd"
BR2_PACKAGE_GPSD_GROUP=y
BR2_PACKAGE_GPSD_GROUP_VALUE="gpsd"
BR2_PACKAGE_GPSD_ASHTECH=y
BR2_PACKAGE_GPSD_EARTHMATE=y
BR2_PACKAGE_GPSD_EVERMORE=y
BR2_PACKAGE_GPSD_FURY=y
BR2_PACKAGE_GPSD_FV18=y
BR2_PACKAGE_GPSD_GARMIN=y
BR2_PACKAGE_GPSD_GARMIN_SIMPLE_TXT=y
BR2_PACKAGE_GPSD_GEOSTAR=y
BR2_PACKAGE_GPSD_GPSCLOCK=y
BR2_PACKAGE_GPSD_GREIS=y
BR2_PACKAGE_GPSD_ISYNC=y
BR2_PACKAGE_GPSD_ITRAX=y
BR2_PACKAGE_GPSD_NMEA2000=y
BR2_PACKAGE_GPSD_OCEANSERVER=y
BR2_PACKAGE_GPSD_ONCORE=y
BR2_PACKAGE_GPSD_RTCM104V2=y
BR2_PACKAGE_GPSD_RTCM104V3=y
BR2_PACKAGE_GPSD_SIRF=y
BR2_PACKAGE_GPSD_SKYTRAQ=y
BR2_PACKAGE_GPSD_SUPERSTAR2=y
BR2_PACKAGE_GPSD_TRIMBLE_TSIP=y
BR2_PACKAGE_GPSD_TRIPMATE=y
BR2_PACKAGE_GPSD_TRUE_NORTH=y
BR2_PACKAGE_GPSD_UBX=y
BR2_PACKAGE_I2C_TOOLS=y
BR2_PACKAGE_MDIO_TOOLS=y
BR2_PACKAGE_PPS_TOOLS=y
BR2_PACKAGE_SYSSTAT=y
BR2_PACKAGE_LIBCONFIG=y
BR2_PACKAGE_CHRONY=y
BR2_PACKAGE_IPERF3=y
BR2_PACKAGE_MOSQUITTO=y
BR2_PACKAGE_OPENSSH=y
BR2_PACKAGE_SUDO=y
BR2_PACKAGE_HTOP=y
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_ROOTFS_EXT2_SIZE="128M"
BR2_TARGET_ROOTFS_UBI=y
BR2_TARGET_ROOTFS_UBI_SUBSIZE=0
BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1F000
BR2_TARGET_ROOTFS_UBIFS_OPTS="-F"
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_KMOD_XZ=y

View File

@ -0,0 +1,15 @@
diff --git a/drivers/mtd/nand/spi/foresee.c b/drivers/mtd/nand/spi/foresee.c
index e0d2d9257045..05b27341b9bd 100644
--- a/drivers/mtd/nand/spi/foresee.c
+++ b/drivers/mtd/nand/spi/foresee.c
@@ -22,8 +22,8 @@ static SPINAND_OP_VARIANTS(write_cache_variants,
SPINAND_PROG_LOAD(true, 0, NULL, 0));
static SPINAND_OP_VARIANTS(update_cache_variants,
- SPINAND_PROG_LOAD_X4(false, 0, NULL, 0),
- SPINAND_PROG_LOAD(false, 0, NULL, 0));
+ SPINAND_PROG_LOAD_X4(true, 0, NULL, 0),
+ SPINAND_PROG_LOAD(true, 0, NULL, 0));
static int f35sqa002g_ooblayout_ecc(struct mtd_info *mtd, int section,
struct mtd_oob_region *region)