mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-06-09 23:36:03 +09:00
board: Add MT8183 pumpkin board support
Add the MT8183 pumpkin board support. Signed-off-by: Fabien Parent <fparent@baylibre.com>
This commit is contained in:
parent
18380437c1
commit
e96bedf146
|
@ -1013,6 +1013,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
|
||||||
mt7622-bananapi-bpi-r64.dtb \
|
mt7622-bananapi-bpi-r64.dtb \
|
||||||
mt7623n-bananapi-bpi-r2.dtb \
|
mt7623n-bananapi-bpi-r2.dtb \
|
||||||
mt7629-rfb.dtb \
|
mt7629-rfb.dtb \
|
||||||
|
mt8183-pumpkin.dtb \
|
||||||
mt8512-bm1-emmc.dtb \
|
mt8512-bm1-emmc.dtb \
|
||||||
mt8516-pumpkin.dtb \
|
mt8516-pumpkin.dtb \
|
||||||
mt8518-ap1-emmc.dtb
|
mt8518-ap1-emmc.dtb
|
||||||
|
|
99
arch/arm/dts/mt8183-pumpkin.dts
Normal file
99
arch/arm/dts/mt8183-pumpkin.dts
Normal file
|
@ -0,0 +1,99 @@
|
||||||
|
// SPDX-License-Identifier: GPL-2.0 OR MIT
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2021 BayLibre SAS.
|
||||||
|
* Author: Fabien Parent <fparent@baylibre.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <config.h>
|
||||||
|
#include "mt8183.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "MediaTek MT8183 pumpkin board";
|
||||||
|
compatible = "mediatek,mt8183-pumpkin", "mediatek,mt8183";
|
||||||
|
|
||||||
|
memory@40000000 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0 0x40000000 0 0x80000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
reserved-memory {
|
||||||
|
#address-cells = <2>;
|
||||||
|
#size-cells = <2>;
|
||||||
|
ranges;
|
||||||
|
|
||||||
|
/* 192 KiB reserved for ARM Trusted Firmware (BL31) */
|
||||||
|
bl31_secmon_reserved: secmon@54600000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0 0x54600000 0x0 0x30000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* 12 MiB reserved for OP-TEE (BL32)
|
||||||
|
* +-----------------------+ 0x43e0_0000
|
||||||
|
* | SHMEM 2MiB |
|
||||||
|
* +-----------------------+ 0x43c0_0000
|
||||||
|
* | | TA_RAM 8MiB |
|
||||||
|
* + TZDRAM +--------------+ 0x4340_0000
|
||||||
|
* | | TEE_RAM 2MiB |
|
||||||
|
* +-----------------------+ 0x4320_0000
|
||||||
|
*/
|
||||||
|
optee_reserved: optee@43200000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0 0x43200000 0 0x00c00000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = &uart0;
|
||||||
|
};
|
||||||
|
|
||||||
|
reg_1p8v: regulator-1p8v {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "fixed-1.8V";
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-always-on;
|
||||||
|
};
|
||||||
|
|
||||||
|
reg_3p3v: regulator-3p3v {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "fixed-3.3V";
|
||||||
|
regulator-min-microvolt = <3300000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-always-on;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&watchdog {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&mmc0 {
|
||||||
|
bus-width = <4>;
|
||||||
|
max-frequency = <200000000>;
|
||||||
|
cap-mmc-highspeed;
|
||||||
|
mmc-hs200-1_8v;
|
||||||
|
cap-mmc-hw-reset;
|
||||||
|
vmmc-supply = <®_3p3v>;
|
||||||
|
vqmmc-supply = <®_1p8v>;
|
||||||
|
non-removable;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ssusb {
|
||||||
|
mediatek,force-vbus;
|
||||||
|
maximum-speed = "high-speed";
|
||||||
|
dr_mode = "peripheral";
|
||||||
|
status = "okay";
|
||||||
|
};
|
|
@ -84,6 +84,7 @@ endchoice
|
||||||
source "board/mediatek/mt7622/Kconfig"
|
source "board/mediatek/mt7622/Kconfig"
|
||||||
source "board/mediatek/mt7623/Kconfig"
|
source "board/mediatek/mt7623/Kconfig"
|
||||||
source "board/mediatek/mt7629/Kconfig"
|
source "board/mediatek/mt7629/Kconfig"
|
||||||
|
source "board/mediatek/mt8183/Kconfig"
|
||||||
source "board/mediatek/mt8512/Kconfig"
|
source "board/mediatek/mt8512/Kconfig"
|
||||||
source "board/mediatek/mt8516/Kconfig"
|
source "board/mediatek/mt8516/Kconfig"
|
||||||
source "board/mediatek/mt8518/Kconfig"
|
source "board/mediatek/mt8518/Kconfig"
|
||||||
|
|
13
board/mediatek/mt8183/Kconfig
Normal file
13
board/mediatek/mt8183/Kconfig
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
if TARGET_MT8183
|
||||||
|
|
||||||
|
config SYS_BOARD
|
||||||
|
default "mt8183"
|
||||||
|
|
||||||
|
config SYS_CONFIG_NAME
|
||||||
|
default "mt8183"
|
||||||
|
|
||||||
|
config MTK_BROM_HEADER_INFO
|
||||||
|
string
|
||||||
|
default "media=emmc"
|
||||||
|
|
||||||
|
endif
|
6
board/mediatek/mt8183/MAINTAINERS
Normal file
6
board/mediatek/mt8183/MAINTAINERS
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
MT8183 Pumpkin
|
||||||
|
M: Fabien Parent <fparent@baylibre.com>
|
||||||
|
S: Maintained
|
||||||
|
F: board/mediatek/mt8183
|
||||||
|
F: include/configs/mt8183.h
|
||||||
|
F: configs/mt8183_pumpkin_defconfig
|
3
board/mediatek/mt8183/Makefile
Normal file
3
board/mediatek/mt8183/Makefile
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
|
||||||
|
obj-y += mt8183_pumpkin.o
|
28
board/mediatek/mt8183/mt8183_pumpkin.c
Normal file
28
board/mediatek/mt8183/mt8183_pumpkin.c
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
// SPDX-License-Identifier: GPL-2.0
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2020 BayLibre SAS
|
||||||
|
* Author: Fabien Parent <fparent@baylibre.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <common.h>
|
||||||
|
#include <dm.h>
|
||||||
|
#include <net.h>
|
||||||
|
|
||||||
|
int board_init(void)
|
||||||
|
{
|
||||||
|
struct udevice *dev;
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
if (CONFIG_IS_ENABLED(USB_GADGET)) {
|
||||||
|
ret = uclass_get_device(UCLASS_USB_GADGET_GENERIC, 0, &dev);
|
||||||
|
if (ret) {
|
||||||
|
pr_err("%s: Cannot find USB device\n", __func__);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (CONFIG_IS_ENABLED(USB_ETHER))
|
||||||
|
usb_ether_init();
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
81
configs/mt8183_pumpkin_defconfig
Normal file
81
configs/mt8183_pumpkin_defconfig
Normal file
|
@ -0,0 +1,81 @@
|
||||||
|
CONFIG_ARM=y
|
||||||
|
CONFIG_POSITION_INDEPENDENT=y
|
||||||
|
CONFIG_ARCH_MEDIATEK=y
|
||||||
|
CONFIG_SYS_TEXT_BASE=0x4c000000
|
||||||
|
CONFIG_SYS_MALLOC_F_LEN=0x4000
|
||||||
|
CONFIG_NR_DRAM_BANKS=1
|
||||||
|
CONFIG_ENV_SIZE=0x1000
|
||||||
|
CONFIG_ENV_OFFSET=0x0
|
||||||
|
CONFIG_DM_GPIO=y
|
||||||
|
CONFIG_TARGET_MT8183=y
|
||||||
|
CONFIG_DEBUG_UART_BASE=0x11002000
|
||||||
|
CONFIG_DEBUG_UART_CLOCK=26000000
|
||||||
|
# CONFIG_PSCI_RESET is not set
|
||||||
|
CONFIG_DEFAULT_DEVICE_TREE="mt8183-pumpkin"
|
||||||
|
CONFIG_DEBUG_UART=y
|
||||||
|
# CONFIG_ANDROID_BOOT_IMAGE is not set
|
||||||
|
CONFIG_FIT=y
|
||||||
|
# CONFIG_ARCH_FIXUP_FDT_MEMORY is not set
|
||||||
|
CONFIG_DEFAULT_FDT_FILE="mt8183-pumpkin"
|
||||||
|
# CONFIG_DISPLAY_BOARDINFO is not set
|
||||||
|
CONFIG_HUSH_PARSER=y
|
||||||
|
# CONFIG_CMD_BDI is not set
|
||||||
|
# CONFIG_CMD_CONSOLE is not set
|
||||||
|
# CONFIG_CMD_BOOTD is not set
|
||||||
|
# CONFIG_CMD_BOOTI is not set
|
||||||
|
# CONFIG_CMD_ELF is not set
|
||||||
|
# CONFIG_CMD_GO is not set
|
||||||
|
# CONFIG_CMD_IMI is not set
|
||||||
|
# CONFIG_CMD_XIMG is not set
|
||||||
|
# CONFIG_CMD_EXPORTENV is not set
|
||||||
|
# CONFIG_CMD_IMPORTENV is not set
|
||||||
|
# CONFIG_CMD_EDITENV is not set
|
||||||
|
# CONFIG_CMD_CRC32 is not set
|
||||||
|
# CONFIG_CMD_MEMORY is not set
|
||||||
|
CONFIG_CMD_CLK=y
|
||||||
|
CONFIG_CMD_GPT=y
|
||||||
|
# CONFIG_RANDOM_UUID is not set
|
||||||
|
# CONFIG_CMD_LOADB is not set
|
||||||
|
# CONFIG_CMD_LOADS is not set
|
||||||
|
CONFIG_CMD_MMC=y
|
||||||
|
CONFIG_CMD_PART=y
|
||||||
|
# CONFIG_CMD_ITEST is not set
|
||||||
|
# CONFIG_CMD_SETEXPR is not set
|
||||||
|
# CONFIG_CMD_BLOCK_CACHE is not set
|
||||||
|
CONFIG_CMD_EXT4=y
|
||||||
|
CONFIG_CMD_FS_GENERIC=y
|
||||||
|
CONFIG_ENV_IS_IN_MMC=y
|
||||||
|
CONFIG_SYS_MMC_ENV_PART=2
|
||||||
|
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||||
|
CONFIG_DEVRES=y
|
||||||
|
CONFIG_CLK=y
|
||||||
|
CONFIG_USB_FUNCTION_FASTBOOT=y
|
||||||
|
CONFIG_FASTBOOT_BUF_ADDR=0x4d000000
|
||||||
|
CONFIG_FASTBOOT_BUF_SIZE=0x8000000
|
||||||
|
CONFIG_FASTBOOT_FLASH=y
|
||||||
|
CONFIG_FASTBOOT_FLASH_MMC_DEV=0
|
||||||
|
CONFIG_FASTBOOT_MMC_BOOT1_SUPPORT=y
|
||||||
|
# CONFIG_INPUT is not set
|
||||||
|
CONFIG_DM_MMC=y
|
||||||
|
# CONFIG_MMC_QUIRKS is not set
|
||||||
|
CONFIG_MMC_MTK=y
|
||||||
|
CONFIG_DM_ETH=y
|
||||||
|
CONFIG_PHY=y
|
||||||
|
CONFIG_PHY_MTK_TPHY=y
|
||||||
|
CONFIG_BAUDRATE=921600
|
||||||
|
CONFIG_DM_SERIAL=y
|
||||||
|
CONFIG_DEBUG_UART_ANNOUNCE=y
|
||||||
|
CONFIG_MTK_SERIAL=y
|
||||||
|
CONFIG_USB=y
|
||||||
|
CONFIG_DM_USB=y
|
||||||
|
CONFIG_DM_USB_GADGET=y
|
||||||
|
CONFIG_USB_MTU3=y
|
||||||
|
CONFIG_USB_GADGET=y
|
||||||
|
CONFIG_USB_GADGET_VENDOR_NUM=0x0e8d
|
||||||
|
CONFIG_USB_GADGET_PRODUCT_NUM=0x201c
|
||||||
|
CONFIG_USB_ETHER=y
|
||||||
|
CONFIG_WDT=y
|
||||||
|
CONFIG_WDT_MTK=y
|
||||||
|
# CONFIG_REGEX is not set
|
||||||
|
CONFIG_OF_LIBFDT_OVERLAY=y
|
||||||
|
# CONFIG_EFI_LOADER is not set
|
41
include/configs/mt8183.h
Normal file
41
include/configs/mt8183.h
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||||
|
/*
|
||||||
|
* Configuration for MT8183 based boards
|
||||||
|
*
|
||||||
|
* Copyright (C) 2021 BayLibre, SAS
|
||||||
|
* Author: Fabien Parent <fparent@baylibre.com
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __MT8183_H
|
||||||
|
#define __MT8183_H
|
||||||
|
|
||||||
|
#include <linux/sizes.h>
|
||||||
|
|
||||||
|
#define CONFIG_SYS_LOAD_ADDR CONFIG_SYS_TEXT_BASE
|
||||||
|
#define CONFIG_SYS_MALLOC_LEN SZ_4M
|
||||||
|
|
||||||
|
#define CONFIG_CPU_ARMV8
|
||||||
|
#define COUNTER_FREQUENCY 13000000
|
||||||
|
|
||||||
|
#define CONFIG_SYS_NS16550_SERIAL
|
||||||
|
#define CONFIG_SYS_NS16550_REG_SIZE -4
|
||||||
|
#define CONFIG_SYS_NS16550_MEM32
|
||||||
|
#define CONFIG_SYS_NS16550_COM1 0x11005200
|
||||||
|
#define CONFIG_SYS_NS16550_CLK 26000000
|
||||||
|
|
||||||
|
#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_TEXT_BASE + SZ_2M - \
|
||||||
|
GENERATED_GBL_DATA_SIZE)
|
||||||
|
|
||||||
|
#define CONFIG_SYS_BOOTM_LEN SZ_64M
|
||||||
|
|
||||||
|
/* Environment settings */
|
||||||
|
#include <config_distro_bootcmd.h>
|
||||||
|
|
||||||
|
#define BOOT_TARGET_DEVICES(func) \
|
||||||
|
func(MMC, mmc, 0)
|
||||||
|
|
||||||
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||||
|
"scriptaddr=0x40000000\0" \
|
||||||
|
BOOTENV
|
||||||
|
|
||||||
|
#endif
|
Loading…
Reference in New Issue
Block a user