mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-12 14:47:22 +03:00
Compare commits
50 Commits
v2019.01-r
...
v2019.01
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d3689267f9 | ||
|
|
29c2edb42b | ||
|
|
789ee25de6 | ||
|
|
cdee91a044 | ||
|
|
c9e257a911 | ||
|
|
7f9418688d | ||
|
|
d3035b8560 | ||
|
|
b6a6238f04 | ||
|
|
70cae47014 | ||
|
|
b3c518a882 | ||
|
|
db17a92d28 | ||
|
|
f811e9763f | ||
|
|
b975a52e02 | ||
|
|
801f1fa442 | ||
|
|
64abfc9b6b | ||
|
|
e5aa3f4d97 | ||
|
|
e8f37f4203 | ||
|
|
43a6a1ec90 | ||
|
|
d4a0c09892 | ||
|
|
f7e475db40 | ||
|
|
da72574b21 | ||
|
|
026381fc5a | ||
|
|
ecab65e4cd | ||
|
|
224f745247 | ||
|
|
d17b0bedbf | ||
|
|
72bc93e1ef | ||
|
|
b82c7c32ef | ||
|
|
e3bc7c668f | ||
|
|
bf413781cf | ||
|
|
81653478eb | ||
|
|
52c2c97e7c | ||
|
|
b77e368fa2 | ||
|
|
fb41ce0db0 | ||
|
|
a95d444055 | ||
|
|
a1f2779f51 | ||
|
|
8c6cc71b40 | ||
|
|
4fb224638d | ||
|
|
39a8f0be2d | ||
|
|
17be909a1b | ||
|
|
35e3d2e8a3 | ||
|
|
9a6a311d2b | ||
|
|
9d47d1316d | ||
|
|
f3ccba3e4e | ||
|
|
3e87ffcffb | ||
|
|
1ce689d950 | ||
|
|
358fd21fe7 | ||
|
|
d66ff4ba00 | ||
|
|
eef05fd3ba | ||
|
|
3b6989b526 | ||
|
|
ddfe346f4c |
3
.github/pull_request_template.md
vendored
Normal file
3
.github/pull_request_template.md
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
Please do not submit a Pull Request via github. Our project makes use of
|
||||
mailing lists for patch submission and review. For more details please
|
||||
see https://www.denx.de/wiki/U-Boot/Patches
|
||||
@@ -123,7 +123,7 @@ F: drivers/spi/bcmstb_spi.c
|
||||
ARM FREESCALE IMX
|
||||
M: Stefano Babic <sbabic@denx.de>
|
||||
M: Fabio Estevam <fabio.estevam@nxp.com>
|
||||
R: NXP Linux Team <linux-imx@nxp.com>
|
||||
R: NXP i.MX U-Boot Team <uboot-imx@nxp.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-imx.git
|
||||
F: arch/arm/cpu/arm1136/mx*/
|
||||
|
||||
33
Makefile
33
Makefile
@@ -3,7 +3,7 @@
|
||||
VERSION = 2019
|
||||
PATCHLEVEL = 01
|
||||
SUBLEVEL =
|
||||
EXTRAVERSION = -rc3
|
||||
EXTRAVERSION =
|
||||
NAME =
|
||||
|
||||
# *DOCUMENTATION*
|
||||
@@ -712,8 +712,8 @@ libs-y += drivers/usb/dwc3/
|
||||
libs-y += drivers/usb/common/
|
||||
libs-y += drivers/usb/emul/
|
||||
libs-y += drivers/usb/eth/
|
||||
libs-y += drivers/usb/gadget/
|
||||
libs-y += drivers/usb/gadget/udc/
|
||||
libs-$(CONFIG_USB_GADGET) += drivers/usb/gadget/
|
||||
libs-$(CONFIG_USB_GADGET) += drivers/usb/gadget/udc/
|
||||
libs-y += drivers/usb/host/
|
||||
libs-y += drivers/usb/musb/
|
||||
libs-y += drivers/usb/musb-new/
|
||||
@@ -938,7 +938,8 @@ ifneq ($(CONFIG_DM_USB)$(CONFIG_OF_CONTROL)$(CONFIG_BLK),yyy)
|
||||
@echo >&2 "===================================================="
|
||||
endif
|
||||
endif
|
||||
ifeq ($(CONFIG_LIBATA)$(CONFIG_DM_SCSI)$(CONFIG_MVSATA_IDE),y)
|
||||
ifeq ($(CONFIG_LIBATA)$(CONFIG_MVSATA_IDE),y)
|
||||
ifneq ($(CONFIG_DM_SCSI),y)
|
||||
@echo >&2 "===================== WARNING ======================"
|
||||
@echo >&2 "This board does not use CONFIG_DM_SCSI. Please update"
|
||||
@echo >&2 "the storage controller to use CONFIG_DM_SCSI before the v2019.07 release."
|
||||
@@ -946,6 +947,27 @@ ifeq ($(CONFIG_LIBATA)$(CONFIG_DM_SCSI)$(CONFIG_MVSATA_IDE),y)
|
||||
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info."
|
||||
@echo >&2 "===================================================="
|
||||
endif
|
||||
endif
|
||||
ifeq ($(CONFIG_PCI),y)
|
||||
ifneq ($(CONFIG_DM_PCI),y)
|
||||
@echo >&2 "===================== WARNING ======================"
|
||||
@echo >&2 "This board does not use CONFIG_DM_PCI Please update"
|
||||
@echo >&2 "the board to use CONFIG_DM_PCI before the v2019.07 release."
|
||||
@echo >&2 "Failure to update by the deadline may result in board removal."
|
||||
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info."
|
||||
@echo >&2 "===================================================="
|
||||
endif
|
||||
endif
|
||||
ifneq ($(CONFIG_LCD)$(CONFIG_VIDEO),)
|
||||
ifneq ($(CONFIG_DM_VIDEO),y)
|
||||
@echo >&2 "===================== WARNING ======================"
|
||||
@echo >&2 "This board does not use CONFIG_DM_VIDEO Please update"
|
||||
@echo >&2 "the board to use CONFIG_DM_VIDEO before the v2019.07 release."
|
||||
@echo >&2 "Failure to update by the deadline may result in board removal."
|
||||
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info."
|
||||
@echo >&2 "===================================================="
|
||||
endif
|
||||
endif
|
||||
ifeq ($(CONFIG_OF_EMBED),y)
|
||||
@echo >&2 "===================== WARNING ======================"
|
||||
@echo >&2 "CONFIG_OF_EMBED is enabled. This option should only"
|
||||
@@ -1133,6 +1155,9 @@ U_BOOT_ITS = $(subst ",,$(CONFIG_SPL_FIT_SOURCE))
|
||||
else
|
||||
ifneq ($(CONFIG_SPL_FIT_GENERATOR),"")
|
||||
U_BOOT_ITS := u-boot.its
|
||||
ifeq ($(CONFIG_SPL_FIT_GENERATOR),"arch/arm/mach-imx/mkimage_fit_atf.sh")
|
||||
U_BOOT_ITS_DEPS += u-boot-nodtb.bin
|
||||
endif
|
||||
ifeq ($(CONFIG_SPL_FIT_GENERATOR),"arch/arm/mach-rockchip/make_fit_atf.py")
|
||||
U_BOOT_ITS_DEPS += u-boot
|
||||
endif
|
||||
|
||||
@@ -875,7 +875,6 @@ config ARCH_SUNXI
|
||||
imply PRE_CONSOLE_BUFFER
|
||||
imply SPL_GPIO_SUPPORT
|
||||
imply SPL_LIBCOMMON_SUPPORT
|
||||
imply SPL_LIBDISK_SUPPORT
|
||||
imply SPL_LIBGENERIC_SUPPORT
|
||||
imply SPL_MMC_SUPPORT if MMC
|
||||
imply SPL_POWER_SUPPORT
|
||||
|
||||
@@ -12,6 +12,11 @@
|
||||
tick-timer = &timer2;
|
||||
};
|
||||
|
||||
aliases {
|
||||
usb0 = &usb1;
|
||||
usb1 = &usb2;
|
||||
};
|
||||
|
||||
ocp {
|
||||
u-boot,dm-spl;
|
||||
|
||||
|
||||
@@ -660,6 +660,7 @@
|
||||
fifo-depth = <0x400>;
|
||||
clocks = <&l4_mp_clk>, <&sdmmc_clk>;
|
||||
clock-names = "biu", "ciu";
|
||||
resets = <&rst SDMMC_RESET>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
||||
@@ -200,7 +200,8 @@
|
||||
#define DDRMC_CR78_Q_FULLNESS(v) (((v) & 0x7) << 24)
|
||||
#define DDRMC_CR78_BUR_ON_FLY_BIT(v) ((v) & 0xf)
|
||||
#define DDRMC_CR79_CTLUPD_AREF(v) (((v) & 0x1) << 24)
|
||||
#define DDRMC_CR82_INT_MASK 0x10000000
|
||||
#define DDRMC_CR80_MC_INIT_COMPLETE (1 << 8)
|
||||
#define DDRMC_CR82_INT_MASK (1 << 28)
|
||||
#define DDRMC_CR87_ODT_WR_MAPCS0(v) ((v) << 24)
|
||||
#define DDRMC_CR87_ODT_RD_MAPCS0(v) ((v) << 16)
|
||||
#define DDRMC_CR88_TODTL_CMD(v) (((v) & 0x1f) << 16)
|
||||
@@ -239,7 +240,7 @@
|
||||
#define DDRMC_CR132_RDLAT_ADJ(v) ((v) & 0x3f)
|
||||
#define DDRMC_CR137_PHYCTL_DL(v) (((v) & 0xf) << 16)
|
||||
#define DDRMC_CR138_PHY_WRLV_MXDL(v) (((v) & 0xffff) << 16)
|
||||
#define DDRMC_CR138_PHYDRAM_CK_EN(v) (((v) & 0x8) << 8)
|
||||
#define DDRMC_CR138_PHYDRAM_CK_EN(v) (((v) & 0x7) << 8)
|
||||
#define DDRMC_CR139_PHY_WRLV_RESPLAT(v) (((v) & 0xff) << 24)
|
||||
#define DDRMC_CR139_PHY_WRLV_LOAD(v) (((v) & 0xff) << 16)
|
||||
#define DDRMC_CR139_PHY_WRLV_DLL(v) (((v) & 0xff) << 8)
|
||||
|
||||
@@ -244,6 +244,8 @@ enum {
|
||||
VF610_PAD_DDR_WE__DDR_WE_B = IOMUX_PAD(0x02d0, 0x02d0, 0, __NA_, 0, VF610_DDR_PAD_CTRL),
|
||||
VF610_PAD_DDR_ODT1__DDR_ODT_0 = IOMUX_PAD(0x02d4, 0x02d4, 0, __NA_, 0, VF610_DDR_PAD_CTRL),
|
||||
VF610_PAD_DDR_ODT0__DDR_ODT_1 = IOMUX_PAD(0x02d8, 0x02d8, 0, __NA_, 0, VF610_DDR_PAD_CTRL),
|
||||
VF610_PAD_DDR_DDRBYTE1__DDR_DDRBYTE1 = IOMUX_PAD(0x02dc, 0x02dc, 0, __NA_, 0, VF610_DDR_PAD_CTRL),
|
||||
VF610_PAD_DDR_DDRBYTE2__DDR_DDRBYTE2 = IOMUX_PAD(0x02e0, 0x02e0, 0, __NA_, 0, VF610_DDR_PAD_CTRL),
|
||||
};
|
||||
|
||||
#endif /* __IOMUX_VF610_H__ */
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
static inline void *dma_alloc_coherent(size_t len, unsigned long *handle)
|
||||
{
|
||||
*handle = (unsigned long)memalign(ARCH_DMA_MINALIGN, len);
|
||||
*handle = (unsigned long)memalign(ARCH_DMA_MINALIGN, ROUND(len, ARCH_DMA_MINALIGN));
|
||||
return (void *)*handle;
|
||||
}
|
||||
|
||||
|
||||
@@ -61,6 +61,8 @@ void ddrmc_setup_iomux(const iomux_v3_cfg_t *pads, int pads_count)
|
||||
VF610_PAD_DDR_WE__DDR_WE_B,
|
||||
VF610_PAD_DDR_ODT1__DDR_ODT_0,
|
||||
VF610_PAD_DDR_ODT0__DDR_ODT_1,
|
||||
VF610_PAD_DDR_DDRBYTE1__DDR_DDRBYTE1,
|
||||
VF610_PAD_DDR_DDRBYTE2__DDR_DDRBYTE2,
|
||||
VF610_PAD_DDR_RESETB,
|
||||
};
|
||||
|
||||
@@ -188,7 +190,6 @@ void ddrmc_ctrl_init_ddr3(struct ddr3_jedec_timings const *timings,
|
||||
DDRMC_CR77_SWAP_EN, &ddrmr->cr[77]);
|
||||
writel(DDRMC_CR78_Q_FULLNESS(timings->q_fullness) |
|
||||
DDRMC_CR78_BUR_ON_FLY_BIT(12), &ddrmr->cr[78]);
|
||||
writel(DDRMC_CR79_CTLUPD_AREF(0), &ddrmr->cr[79]);
|
||||
|
||||
writel(DDRMC_CR82_INT_MASK, &ddrmr->cr[82]);
|
||||
|
||||
@@ -231,6 +232,7 @@ void ddrmc_ctrl_init_ddr3(struct ddr3_jedec_timings const *timings,
|
||||
/* all inits done, start the DDR controller */
|
||||
writel(DDRMC_CR00_DRAM_CLASS_DDR3 | DDRMC_CR00_START, &ddrmr->cr[0]);
|
||||
|
||||
while (!(readl(&ddrmr->cr[80]) && 0x100))
|
||||
while (!(readl(&ddrmr->cr[80]) & DDRMC_CR80_MC_INIT_COMPLETE))
|
||||
udelay(10);
|
||||
writel(DDRMC_CR80_MC_INIT_COMPLETE, &ddrmr->cr[81]);
|
||||
}
|
||||
|
||||
@@ -573,7 +573,7 @@ int cpu_imx_get_desc(struct udevice *dev, char *buf, int size)
|
||||
if (size < 100)
|
||||
return -ENOSPC;
|
||||
|
||||
snprintf(buf, size, "CPU: Freescale i.MX8%s Rev%s %s at %u MHz\n",
|
||||
snprintf(buf, size, "NXP i.MX8%s Rev%s %s at %u MHz\n",
|
||||
plat->type, plat->rev, plat->name, plat->freq_mhz);
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -250,9 +250,9 @@ static u32 get_root_src_clk(enum clk_root_src root_src)
|
||||
case OSC_25M_CLK:
|
||||
return 25000000;
|
||||
case OSC_27M_CLK:
|
||||
return 25000000;
|
||||
return 27000000;
|
||||
case OSC_32K_CLK:
|
||||
return 32000;
|
||||
return 32768;
|
||||
case ARM_PLL_CLK:
|
||||
return decode_frac_pll(root_src);
|
||||
case SYSTEM_PLL1_800M_CLK:
|
||||
|
||||
@@ -263,7 +263,7 @@ config TARGET_MX6DL_MAMOJ
|
||||
select SPL_PINCTRL if SPL
|
||||
select SPL_SEPARATE_BSS if SPL
|
||||
select SPL_SERIAL_SUPPORT if SPL
|
||||
select SPL_USB_GADGET_SUPPORT if SPL
|
||||
select SPL_USB_GADGET if SPL
|
||||
select SPL_USB_HOST_SUPPORT if SPL
|
||||
select SPL_USB_SDP_SUPPORT if SPL
|
||||
select SPL_WATCHDOG_SUPPORT if SPL
|
||||
|
||||
@@ -154,7 +154,7 @@ u32 spl_boot_device(void)
|
||||
}
|
||||
#endif /* CONFIG_MX7 || CONFIG_IMX8M */
|
||||
|
||||
#ifdef CONFIG_SPL_USB_GADGET_SUPPORT
|
||||
#ifdef CONFIG_SPL_USB_GADGET
|
||||
int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
|
||||
{
|
||||
put_unaligned(CONFIG_USB_GADGET_PRODUCT_NUM + 0xfff, &dev->idProduct);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
IGEP003X BOARD
|
||||
M: Enric Balletbo i Serra <eballetbo@gmail.com>
|
||||
M: Javier Martínez Canillas <javier@dowhile0.org>
|
||||
S: Maintained
|
||||
F: board/isee/igep003x/
|
||||
F: include/configs/am335x_igep003x.h
|
||||
|
||||
@@ -42,14 +42,6 @@ DECLARE_GLOBAL_DATA_PTR;
|
||||
#define USB_CDET_GPIO 102
|
||||
|
||||
static struct ddrmc_cr_setting colibri_vf_cr_settings[] = {
|
||||
/* levelling */
|
||||
{ DDRMC_CR97_WRLVL_EN, 97 },
|
||||
{ DDRMC_CR98_WRLVL_DL_0(0), 98 },
|
||||
{ DDRMC_CR99_WRLVL_DL_1(0), 99 },
|
||||
{ DDRMC_CR102_RDLVL_REG_EN | DDRMC_CR102_RDLVL_GT_REGEN, 102 },
|
||||
{ DDRMC_CR105_RDLVL_DL_0(0), 105 },
|
||||
{ DDRMC_CR106_RDLVL_GTDL_0(4), 106 },
|
||||
{ DDRMC_CR110_RDLVL_DL_1(0) | DDRMC_CR110_RDLVL_GTDL_1(4), 110 },
|
||||
/* AXI */
|
||||
{ DDRMC_CR117_AXI0_W_PRI(0) | DDRMC_CR117_AXI0_R_PRI(0), 117 },
|
||||
{ DDRMC_CR118_AXI1_W_PRI(1) | DDRMC_CR118_AXI1_R_PRI(1), 118 },
|
||||
@@ -88,7 +80,7 @@ static struct ddrmc_cr_setting colibri_vf_cr_settings[] = {
|
||||
DDRMC_CR154_PAD_ZQ_MODE(1) |
|
||||
DDRMC_CR154_DDR_SEL_PAD_CONTR(3) |
|
||||
DDRMC_CR154_PAD_ZQ_HW_FOR(1), 154 },
|
||||
{ DDRMC_CR155_PAD_ODT_BYTE1(1) | DDRMC_CR155_PAD_ODT_BYTE0(1), 155 },
|
||||
{ DDRMC_CR155_PAD_ODT_BYTE1(2) | DDRMC_CR155_PAD_ODT_BYTE0(2), 155 },
|
||||
{ DDRMC_CR158_TWR(6), 158 },
|
||||
{ DDRMC_CR161_ODT_EN(1) | DDRMC_CR161_TODTH_RD(2) |
|
||||
DDRMC_CR161_TODTH_WR(2), 161 },
|
||||
|
||||
@@ -776,13 +776,13 @@ config SPL_USB_SUPPORT
|
||||
config options. This enables loading from USB using a configured
|
||||
device.
|
||||
|
||||
config SPL_USB_GADGET_SUPPORT
|
||||
config SPL_USB_GADGET
|
||||
bool "Suppport USB Gadget drivers"
|
||||
help
|
||||
Enable USB Gadget API which allows to enable USB device functions
|
||||
in SPL.
|
||||
|
||||
if SPL_USB_GADGET_SUPPORT
|
||||
if SPL_USB_GADGET
|
||||
|
||||
config SPL_USB_ETHER
|
||||
bool "Support USB Ethernet drivers"
|
||||
|
||||
@@ -16,7 +16,7 @@ CONFIG_SPL_MUSB_NEW_SUPPORT=y
|
||||
CONFIG_SPL_NET_SUPPORT=y
|
||||
CONFIG_SPL_NET_VCI_STRING="AM33xx U-Boot SPL"
|
||||
CONFIG_SPL_OS_BOOT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_ETHER=y
|
||||
CONFIG_AUTOBOOT_KEYED=y
|
||||
CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
|
||||
|
||||
@@ -16,7 +16,7 @@ CONFIG_SPL_MUSB_NEW_SUPPORT=y
|
||||
CONFIG_SPL_NET_SUPPORT=y
|
||||
CONFIG_SPL_NET_VCI_STRING="AM335x U-Boot SPL"
|
||||
CONFIG_SPL_OS_BOOT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_ETHER=y
|
||||
# CONFIG_SPL_YMODEM_SUPPORT is not set
|
||||
CONFIG_CMD_SPL=y
|
||||
|
||||
@@ -16,7 +16,7 @@ CONFIG_SPL_MTD_SUPPORT=y
|
||||
CONFIG_SPL_NET_SUPPORT=y
|
||||
CONFIG_SPL_NET_VCI_STRING="AM43xx U-Boot SPL"
|
||||
CONFIG_SPL_OS_BOOT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_ETHER=y
|
||||
CONFIG_CMD_SPL=y
|
||||
CONFIG_CMD_SPL_NAND_OFS=0x00100000
|
||||
|
||||
@@ -25,7 +25,7 @@ CONFIG_SPL_NET_SUPPORT=y
|
||||
CONFIG_SPL_NET_VCI_STRING="AM43xx U-Boot SPL"
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_ETHER=y
|
||||
# CONFIG_CMD_FLASH is not set
|
||||
CONFIG_CMD_NAND=y
|
||||
|
||||
@@ -23,7 +23,7 @@ CONFIG_BOARD_EARLY_INIT_F=y
|
||||
CONFIG_SPL_DMA_SUPPORT=y
|
||||
CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
CONFIG_HUSH_PARSER=y
|
||||
CONFIG_SYS_PROMPT="Apalis iMX6 # "
|
||||
|
||||
@@ -54,6 +54,7 @@ CONFIG_USB=y
|
||||
CONFIG_USB_MUSB_HOST=y
|
||||
CONFIG_USB_MUSB_AM35X=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_VIDEO_OMAP3=y
|
||||
CONFIG_LCD=y
|
||||
CONFIG_OF_LIBFDT=y
|
||||
|
||||
@@ -56,6 +56,7 @@ CONFIG_USB_MUSB_UDC=y
|
||||
CONFIG_USB_OMAP3=y
|
||||
CONFIG_TWL4030_USB=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_VIDEO_OMAP3=y
|
||||
CONFIG_LCD=y
|
||||
CONFIG_OF_LIBFDT=y
|
||||
|
||||
@@ -23,7 +23,7 @@ CONFIG_BOARD_EARLY_INIT_F=y
|
||||
CONFIG_SPL_DMA_SUPPORT=y
|
||||
CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
CONFIG_HUSH_PARSER=y
|
||||
CONFIG_SYS_PROMPT="Colibri iMX6 # "
|
||||
|
||||
@@ -23,11 +23,14 @@ CONFIG_CMD_MEMTEST=y
|
||||
CONFIG_CMD_DFU=y
|
||||
CONFIG_CMD_FUSE=y
|
||||
CONFIG_CMD_GPIO=y
|
||||
# CONFIG_CMD_LOADB is not set
|
||||
# CONFIG_CMD_LOADS is not set
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_USB=y
|
||||
CONFIG_CMD_USB_MASS_STORAGE=y
|
||||
# CONFIG_CMD_SETEXPR is not set
|
||||
CONFIG_CMD_DHCP=y
|
||||
# CONFIG_CMD_NFS is not set
|
||||
CONFIG_CMD_MII=y
|
||||
CONFIG_CMD_PING=y
|
||||
CONFIG_CMD_BMP=y
|
||||
|
||||
@@ -25,7 +25,7 @@ CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_OS_BOOT=y
|
||||
CONFIG_SPL_SPI_LOAD=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
CONFIG_SPL_WATCHDOG_SUPPORT=y
|
||||
CONFIG_HUSH_PARSER=y
|
||||
|
||||
@@ -36,5 +36,6 @@ CONFIG_USB=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_MUSB_UDC=y
|
||||
CONFIG_USB_OMAP3=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_FAT_WRITE=y
|
||||
CONFIG_OF_LIBFDT=y
|
||||
|
||||
@@ -45,6 +45,7 @@ CONFIG_USB=y
|
||||
CONFIG_USB_MUSB_UDC=y
|
||||
CONFIG_USB_OMAP3=y
|
||||
CONFIG_TWL4030_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_FAT_WRITE=y
|
||||
CONFIG_UBIFS_SILENCE_MSG=y
|
||||
CONFIG_BCH=y
|
||||
|
||||
@@ -46,6 +46,7 @@ CONFIG_USB=y
|
||||
CONFIG_USB_MUSB_UDC=y
|
||||
CONFIG_USB_OMAP3=y
|
||||
CONFIG_TWL4030_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_FAT_WRITE=y
|
||||
CONFIG_UBIFS_SILENCE_MSG=y
|
||||
CONFIG_BCH=y
|
||||
|
||||
@@ -24,7 +24,7 @@ CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_NAND_SUPPORT=y
|
||||
CONFIG_SPL_OS_BOOT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
CONFIG_SPL_WATCHDOG_SUPPORT=y
|
||||
CONFIG_SYS_PROMPT="i.MX6 Logic # "
|
||||
|
||||
@@ -12,6 +12,11 @@ CONFIG_SPL_FIT_GENERATOR="arch/arm/mach-imx/mkimage_fit_atf.sh"
|
||||
CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/imx8m/imximage.cfg"
|
||||
CONFIG_SPL_BOARD_INIT=y
|
||||
CONFIG_HUSH_PARSER=y
|
||||
CONFIG_DOS_PARTITION=y
|
||||
CONFIG_CMD_EXT2=y
|
||||
CONFIG_CMD_EXT4=y
|
||||
CONFIG_CMD_EXT4_WRITE=y
|
||||
CONFIG_CMD_FAT=y
|
||||
CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_I2C=y
|
||||
CONFIG_CMD_CACHE=y
|
||||
|
||||
@@ -20,6 +20,7 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_SPL_BOARD_INIT=y
|
||||
CONFIG_SPL_NAND_SUPPORT=y
|
||||
CONFIG_SPL_WATCHDOG_SUPPORT=y
|
||||
CONFIG_HUSH_PARSER=y
|
||||
CONFIG_CMD_ASKENV=y
|
||||
CONFIG_CMD_GREPENV=y
|
||||
@@ -33,6 +34,7 @@ CONFIG_CMD_DHCP=y
|
||||
CONFIG_CMD_MII=y
|
||||
CONFIG_CMD_PING=y
|
||||
CONFIG_CMD_BMP=y
|
||||
CONFIG_CMD_BOOTCOUNT=y
|
||||
CONFIG_CMD_DATE=y
|
||||
CONFIG_CMD_BTRFS=y
|
||||
CONFIG_CMD_EXT4=y
|
||||
@@ -44,6 +46,11 @@ CONFIG_MTDIDS_DEFAULT="nand0=mxc_nand"
|
||||
CONFIG_MTDPARTS_DEFAULT="mtdparts=mxc_nand:1m(u-boot),512k(env1),512k(env2),-(ubi)"
|
||||
CONFIG_CMD_UBI=y
|
||||
CONFIG_ENV_IS_IN_NAND=y
|
||||
CONFIG_BOOTCOUNT_LIMIT=y
|
||||
CONFIG_BOOTCOUNT_BOOTLIMIT=3
|
||||
CONFIG_SYS_BOOTCOUNT_SINGLEWORD=y
|
||||
CONFIG_SYS_BOOTCOUNT_ADDR=0x53FA401C
|
||||
CONFIG_SYS_BOOTCOUNT_MAGIC=0x0B01C041
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_NAND=y
|
||||
CONFIG_NAND_MXC=y
|
||||
@@ -58,5 +65,6 @@ CONFIG_USB_ETHER_MCS7830=y
|
||||
CONFIG_USB_ETHER_SMSC95XX=y
|
||||
CONFIG_VIDEO=y
|
||||
# CONFIG_VIDEO_SW_CURSOR is not set
|
||||
CONFIG_IMX_WATCHDOG=y
|
||||
CONFIG_FAT_WRITE=y
|
||||
CONFIG_OF_LIBFDT=y
|
||||
|
||||
@@ -11,7 +11,7 @@ CONFIG_NR_DRAM_BANKS=1
|
||||
CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg,SPL,MX6QDL"
|
||||
CONFIG_SUPPORT_RAW_INITRD=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_ETHER=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
CONFIG_SPL_WATCHDOG_SUPPORT=y
|
||||
|
||||
@@ -19,7 +19,7 @@ CONFIG_SPL_EXT_SUPPORT=y
|
||||
CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_OS_BOOT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
CONFIG_SPL_WATCHDOG_SUPPORT=y
|
||||
CONFIG_HUSH_PARSER=y
|
||||
|
||||
@@ -35,5 +35,6 @@ CONFIG_USB=y
|
||||
CONFIG_USB_MUSB_UDC=y
|
||||
CONFIG_USB_OMAP3=y
|
||||
CONFIG_TWL4030_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_FAT_WRITE=y
|
||||
CONFIG_OF_LIBFDT=y
|
||||
|
||||
@@ -36,6 +36,7 @@ CONFIG_USB=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_MUSB_UDC=y
|
||||
CONFIG_USB_OMAP3=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_HOST_ETHER=y
|
||||
CONFIG_USB_ETHER_SMSC95XX=y
|
||||
CONFIG_OF_LIBFDT=y
|
||||
|
||||
@@ -33,6 +33,7 @@ CONFIG_OMAP3_SPI=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_MUSB_UDC=y
|
||||
CONFIG_USB_OMAP3=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_FAT_WRITE=y
|
||||
# CONFIG_REGEX is not set
|
||||
CONFIG_OF_LIBFDT=y
|
||||
|
||||
@@ -18,7 +18,7 @@ CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-hobbit.dtb"
|
||||
CONFIG_BOARD_EARLY_INIT_F=y
|
||||
CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
CONFIG_CMD_BOOTMENU=y
|
||||
CONFIG_CMD_MEMTEST=y
|
||||
|
||||
@@ -18,7 +18,7 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
|
||||
CONFIG_DEFAULT_FDT_FILE="imx7d-pico-hobbit.dtb"
|
||||
CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
# CONFIG_CMD_BOOTD is not set
|
||||
CONFIG_CMD_BOOTMENU=y
|
||||
|
||||
@@ -18,7 +18,7 @@ CONFIG_DEFAULT_FDT_FILE="ask"
|
||||
CONFIG_BOARD_EARLY_INIT_F=y
|
||||
CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
CONFIG_CMD_BOOTMENU=y
|
||||
CONFIG_CMD_SPL=y
|
||||
|
||||
@@ -18,7 +18,7 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
|
||||
CONFIG_DEFAULT_FDT_FILE="ask"
|
||||
CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
# CONFIG_CMD_BOOTD is not set
|
||||
CONFIG_CMD_BOOTMENU=y
|
||||
|
||||
@@ -18,7 +18,7 @@ CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-pi.dtb"
|
||||
CONFIG_BOARD_EARLY_INIT_F=y
|
||||
CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
CONFIG_CMD_BOOTMENU=y
|
||||
CONFIG_CMD_MEMTEST=y
|
||||
|
||||
@@ -18,7 +18,7 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
|
||||
CONFIG_DEFAULT_FDT_FILE="imx7d-pico-pi.dtb"
|
||||
CONFIG_SPL_I2C_SUPPORT=y
|
||||
CONFIG_SPL_USB_HOST_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET_SUPPORT=y
|
||||
CONFIG_SPL_USB_GADGET=y
|
||||
CONFIG_SPL_USB_SDP_SUPPORT=y
|
||||
# CONFIG_CMD_BOOTD is not set
|
||||
CONFIG_CMD_BOOTMENU=y
|
||||
|
||||
@@ -27,3 +27,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -28,3 +28,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -27,3 +27,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -28,3 +28,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -30,3 +30,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -27,3 +27,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -28,3 +28,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -30,3 +30,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -27,3 +27,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -28,3 +28,5 @@ CONFIG_PHY_GIGE=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CONS_INDEX=0
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_GADGET=y
|
||||
|
||||
@@ -5,7 +5,6 @@ CONFIG_SYS_TEXT_BASE=0x17800000
|
||||
CONFIG_TARGET_TBS2910=y
|
||||
CONFIG_CMD_HDMIDETECT=y
|
||||
CONFIG_NR_DRAM_BANKS=1
|
||||
CONFIG_FIT=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
CONFIG_PRE_CONSOLE_BUFFER=y
|
||||
CONFIG_PRE_CON_BUF_ADDR=0x7c000000
|
||||
|
||||
@@ -67,7 +67,7 @@ This table has to be evaluated in the command function of the main command, e.g.
|
||||
Command function
|
||||
----------------
|
||||
|
||||
The commmand function pointer has to be of type
|
||||
The command function pointer has to be of type
|
||||
int (*cmd)(struct cmd_tbl_s *cmdtp, int flag, int argc, const char *argv[]);
|
||||
|
||||
cmdtp: Table entry describing the command (see above).
|
||||
|
||||
@@ -86,3 +86,21 @@ Partially converted:
|
||||
Jagan Teki <jagan@openedev.com>
|
||||
12/24/2018
|
||||
03/14/2018
|
||||
|
||||
|
||||
CONFIG_DM_PCI
|
||||
-------------
|
||||
Deadline: 2019.07
|
||||
|
||||
The PCI subsystem has supported driver model since mid 2015. Maintainers should
|
||||
submit patches switching over to using CONFIG_DM_PCI and other base driver
|
||||
model options in time for inclusion in the 2019.07 release.
|
||||
|
||||
|
||||
CONFIG_DM_VIDEO
|
||||
---------------
|
||||
Deadline: 2019.07
|
||||
|
||||
The video subsystem has supported driver model since early 2016. Maintainers
|
||||
should submit patches switching over to using CONFIG_DM_VIDEO and other base
|
||||
driver model options in time for inclusion in the 2019.07 release.
|
||||
|
||||
@@ -47,9 +47,9 @@ obj-$(CONFIG_SPL_ETH_SUPPORT) += net/
|
||||
obj-$(CONFIG_SPL_ETH_SUPPORT) += net/phy/
|
||||
obj-$(CONFIG_SPL_USB_ETHER) += net/phy/
|
||||
obj-$(CONFIG_SPL_MUSB_NEW_SUPPORT) += usb/musb-new/
|
||||
obj-$(CONFIG_SPL_USB_GADGET_SUPPORT) += usb/gadget/
|
||||
obj-$(CONFIG_SPL_USB_GADGET_SUPPORT) += usb/common/
|
||||
obj-$(CONFIG_SPL_USB_GADGET_SUPPORT) += usb/gadget/udc/
|
||||
obj-$(CONFIG_SPL_USB_GADGET) += usb/gadget/
|
||||
obj-$(CONFIG_SPL_USB_GADGET) += usb/common/
|
||||
obj-$(CONFIG_SPL_USB_GADGET) += usb/gadget/udc/
|
||||
obj-$(CONFIG_SPL_DFU_SUPPORT) += dfu/
|
||||
obj-$(CONFIG_SPL_WATCHDOG_SUPPORT) += watchdog/
|
||||
obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += usb/host/
|
||||
|
||||
@@ -18,6 +18,7 @@ struct imx8_clks {
|
||||
const char *name;
|
||||
};
|
||||
|
||||
#if CONFIG_IS_ENABLED(CMD_CLK)
|
||||
static struct imx8_clks imx8_clk_names[] = {
|
||||
{ IMX8QXP_A35_DIV, "A35_DIV" },
|
||||
{ IMX8QXP_I2C0_CLK, "I2C0" },
|
||||
@@ -39,6 +40,7 @@ static struct imx8_clks imx8_clk_names[] = {
|
||||
{ IMX8QXP_ENET1_REF_DIV, "ENET1_REF" },
|
||||
{ IMX8QXP_ENET1_PTP_CLK, "ENET1_PTP" },
|
||||
};
|
||||
#endif
|
||||
|
||||
static ulong imx8_clk_get_rate(struct clk *clk)
|
||||
{
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#define MODE_BITS_MASK 3
|
||||
#define BSRR_BIT(gpio_pin, value) BIT(gpio_pin + (value ? 0 : 16))
|
||||
|
||||
#ifndef CONFIG_SPL_BUILD
|
||||
/*
|
||||
* convert gpio offset to gpio index taking into account gpio holes
|
||||
* into gpio bank
|
||||
@@ -145,23 +146,27 @@ static const struct dm_gpio_ops gpio_stm32_ops = {
|
||||
.set_value = stm32_gpio_set_value,
|
||||
.get_function = stm32_gpio_get_function,
|
||||
};
|
||||
#endif
|
||||
|
||||
static int gpio_stm32_probe(struct udevice *dev)
|
||||
{
|
||||
struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev);
|
||||
struct stm32_gpio_priv *priv = dev_get_priv(dev);
|
||||
struct ofnode_phandle_args args;
|
||||
struct clk clk;
|
||||
fdt_addr_t addr;
|
||||
const char *name;
|
||||
int ret;
|
||||
int i;
|
||||
|
||||
addr = dev_read_addr(dev);
|
||||
if (addr == FDT_ADDR_T_NONE)
|
||||
return -EINVAL;
|
||||
|
||||
priv->regs = (struct stm32_gpio_regs *)addr;
|
||||
|
||||
#ifndef CONFIG_SPL_BUILD
|
||||
struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev);
|
||||
struct ofnode_phandle_args args;
|
||||
const char *name;
|
||||
int i;
|
||||
|
||||
name = dev_read_string(dev, "st,bank-name");
|
||||
if (!name)
|
||||
return -EINVAL;
|
||||
@@ -171,6 +176,11 @@ static int gpio_stm32_probe(struct udevice *dev)
|
||||
ret = dev_read_phandle_with_args(dev, "gpio-ranges",
|
||||
NULL, 3, i, &args);
|
||||
|
||||
if (ret == -ENOENT) {
|
||||
uc_priv->gpio_count = STM32_GPIOS_PER_BANK;
|
||||
priv->gpio_range = GENMASK(STM32_GPIOS_PER_BANK - 1, 0);
|
||||
}
|
||||
|
||||
while (ret != -ENOENT) {
|
||||
priv->gpio_range |= GENMASK(args.args[2] + args.args[0] - 1,
|
||||
args.args[0]);
|
||||
@@ -184,7 +194,7 @@ static int gpio_stm32_probe(struct udevice *dev)
|
||||
dev_dbg(dev, "addr = 0x%p bank_name = %s gpio_count = %d gpio_range = 0x%x\n",
|
||||
(u32 *)priv->regs, uc_priv->bank_name, uc_priv->gpio_count,
|
||||
priv->gpio_range);
|
||||
|
||||
#endif
|
||||
ret = clk_get_by_index(dev, 0, &clk);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
@@ -210,7 +220,9 @@ U_BOOT_DRIVER(gpio_stm32) = {
|
||||
.id = UCLASS_GPIO,
|
||||
.of_match = stm32_gpio_ids,
|
||||
.probe = gpio_stm32_probe,
|
||||
#ifndef CONFIG_SPL_BUILD
|
||||
.ops = &gpio_stm32_ops,
|
||||
#endif
|
||||
.flags = DM_UC_FLAG_SEQ_ALIAS,
|
||||
.priv_auto_alloc_size = sizeof(struct stm32_gpio_priv),
|
||||
};
|
||||
|
||||
@@ -158,7 +158,7 @@ static int sc_ipc_write(struct mu_type *base, void *data)
|
||||
static int imx8_scu_call(struct udevice *dev, int no_resp, void *tx_msg,
|
||||
int tx_size, void *rx_msg, int rx_size)
|
||||
{
|
||||
struct imx8_scu *priv = dev_get_priv(dev);
|
||||
struct imx8_scu *plat = dev_get_platdata(dev);
|
||||
sc_err_t result;
|
||||
int ret;
|
||||
|
||||
@@ -166,11 +166,11 @@ static int imx8_scu_call(struct udevice *dev, int no_resp, void *tx_msg,
|
||||
if (rx_msg && tx_msg != rx_msg)
|
||||
printf("tx_msg %p, rx_msg %p\n", tx_msg, rx_msg);
|
||||
|
||||
ret = sc_ipc_write(priv->base, tx_msg);
|
||||
ret = sc_ipc_write(plat->base, tx_msg);
|
||||
if (ret)
|
||||
return ret;
|
||||
if (!no_resp) {
|
||||
ret = sc_ipc_read(priv->base, rx_msg);
|
||||
ret = sc_ipc_read(plat->base, rx_msg);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
@@ -182,24 +182,24 @@ static int imx8_scu_call(struct udevice *dev, int no_resp, void *tx_msg,
|
||||
|
||||
static int imx8_scu_probe(struct udevice *dev)
|
||||
{
|
||||
struct imx8_scu *priv = dev_get_priv(dev);
|
||||
struct imx8_scu *plat = dev_get_platdata(dev);
|
||||
fdt_addr_t addr;
|
||||
|
||||
debug("%s(dev=%p) (priv=%p)\n", __func__, dev, priv);
|
||||
debug("%s(dev=%p) (plat=%p)\n", __func__, dev, plat);
|
||||
|
||||
addr = devfdt_get_addr(dev);
|
||||
if (addr == FDT_ADDR_T_NONE)
|
||||
return -EINVAL;
|
||||
|
||||
priv->base = (struct mu_type *)addr;
|
||||
plat->base = (struct mu_type *)addr;
|
||||
|
||||
/* U-Boot not enable interrupts, so need to enable RX interrupts */
|
||||
mu_hal_init(priv->base);
|
||||
mu_hal_init(plat->base);
|
||||
|
||||
gd->arch.scu_dev = dev;
|
||||
|
||||
device_probe(priv->clk);
|
||||
device_probe(priv->pinclk);
|
||||
device_probe(plat->clk);
|
||||
device_probe(plat->pinclk);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -211,7 +211,7 @@ static int imx8_scu_remove(struct udevice *dev)
|
||||
|
||||
static int imx8_scu_bind(struct udevice *dev)
|
||||
{
|
||||
struct imx8_scu *priv = dev_get_priv(dev);
|
||||
struct imx8_scu *plat = dev_get_platdata(dev);
|
||||
int ret;
|
||||
struct udevice *child;
|
||||
int node;
|
||||
@@ -227,7 +227,7 @@ static int imx8_scu_bind(struct udevice *dev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
priv->clk = child;
|
||||
plat->clk = child;
|
||||
|
||||
node = fdt_node_offset_by_compatible(gd->fdt_blob, -1,
|
||||
"fsl,imx8qxp-iomuxc");
|
||||
@@ -238,7 +238,7 @@ static int imx8_scu_bind(struct udevice *dev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
priv->pinclk = child;
|
||||
plat->pinclk = child;
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -261,6 +261,6 @@ U_BOOT_DRIVER(imx8_scu) = {
|
||||
.bind = imx8_scu_bind,
|
||||
.remove = imx8_scu_remove,
|
||||
.ops = &imx8_scu_ops,
|
||||
.priv_auto_alloc_size = sizeof(struct imx8_scu),
|
||||
.platdata_auto_alloc_size = sizeof(struct imx8_scu),
|
||||
.flags = DM_FLAG_PRE_RELOC,
|
||||
};
|
||||
|
||||
@@ -169,7 +169,7 @@ int sc_misc_get_control(sc_ipc_t ipc, sc_rsrc_t resource, sc_ctrl_t ctrl,
|
||||
printf("%s: ctrl:%d resource:%d: res:%d\n",
|
||||
__func__, ctrl, resource, RPC_R8(&msg));
|
||||
|
||||
if (!val)
|
||||
if (val)
|
||||
*val = RPC_U32(&msg, 0U);
|
||||
|
||||
return ret;
|
||||
@@ -194,7 +194,7 @@ void sc_misc_get_boot_dev(sc_ipc_t ipc, sc_rsrc_t *boot_dev)
|
||||
if (ret)
|
||||
printf("%s: res:%d\n", __func__, RPC_R8(&msg));
|
||||
|
||||
if (!boot_dev)
|
||||
if (boot_dev)
|
||||
*boot_dev = RPC_U16(&msg, 0U);
|
||||
}
|
||||
|
||||
|
||||
@@ -396,6 +396,7 @@ static int esdhc_send_cmd_common(struct fsl_esdhc_priv *priv, struct mmc *mmc,
|
||||
uint irqstat;
|
||||
u32 flags = IRQSTAT_CC | IRQSTAT_CTOE;
|
||||
struct fsl_esdhc *regs = priv->esdhc_regs;
|
||||
unsigned long start;
|
||||
|
||||
#ifdef CONFIG_SYS_FSL_ERRATUM_ESDHC111
|
||||
if (cmd->cmdidx == MMC_CMD_STOP_TRANSMISSION)
|
||||
@@ -453,8 +454,13 @@ static int esdhc_send_cmd_common(struct fsl_esdhc_priv *priv, struct mmc *mmc,
|
||||
flags = IRQSTAT_BRR;
|
||||
|
||||
/* Wait for the command to complete */
|
||||
while (!(esdhc_read32(®s->irqstat) & flags))
|
||||
;
|
||||
start = get_timer(0);
|
||||
while (!(esdhc_read32(®s->irqstat) & flags)) {
|
||||
if (get_timer(start) > 1000) {
|
||||
err = -ETIMEDOUT;
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
|
||||
irqstat = esdhc_read32(®s->irqstat);
|
||||
|
||||
|
||||
@@ -2449,6 +2449,10 @@ static int mmc_startup(struct mmc *mmc)
|
||||
bdesc->revision[0] = 0;
|
||||
#endif
|
||||
|
||||
#if !defined(CONFIG_DM_MMC) && (!defined(CONFIG_SPL_BUILD) || defined(CONFIG_SPL_LIBDISK_SUPPORT))
|
||||
part_init(bdesc);
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -19,6 +19,13 @@
|
||||
#include <asm/arch/mmc.h>
|
||||
#include <asm-generic/gpio.h>
|
||||
|
||||
#ifdef CONFIG_DM_MMC
|
||||
struct sunxi_mmc_variant {
|
||||
u16 gate_offset;
|
||||
u16 mclk_offset;
|
||||
};
|
||||
#endif
|
||||
|
||||
struct sunxi_mmc_plat {
|
||||
struct mmc_config cfg;
|
||||
struct mmc mmc;
|
||||
@@ -32,6 +39,9 @@ struct sunxi_mmc_priv {
|
||||
int cd_inverted; /* Inverted Card Detect */
|
||||
struct sunxi_mmc *reg;
|
||||
struct mmc_config cfg;
|
||||
#ifdef CONFIG_DM_MMC
|
||||
const struct sunxi_mmc_variant *variant;
|
||||
#endif
|
||||
};
|
||||
|
||||
#if !CONFIG_IS_ENABLED(DM_MMC)
|
||||
@@ -599,7 +609,7 @@ static int sunxi_mmc_probe(struct udevice *dev)
|
||||
struct sunxi_mmc_priv *priv = dev_get_priv(dev);
|
||||
struct mmc_config *cfg = &plat->cfg;
|
||||
struct ofnode_phandle_args args;
|
||||
u32 *gate_reg;
|
||||
u32 *gate_reg, *ccu_reg;
|
||||
int bus_width, ret;
|
||||
|
||||
cfg->name = dev->name;
|
||||
@@ -618,21 +628,21 @@ static int sunxi_mmc_probe(struct udevice *dev)
|
||||
cfg->f_max = 52000000;
|
||||
|
||||
priv->reg = (void *)dev_read_addr(dev);
|
||||
priv->variant =
|
||||
(const struct sunxi_mmc_variant *)dev_get_driver_data(dev);
|
||||
|
||||
/* We don't have a sunxi clock driver so find the clock address here */
|
||||
ret = dev_read_phandle_with_args(dev, "clocks", "#clock-cells", 0,
|
||||
1, &args);
|
||||
if (ret)
|
||||
return ret;
|
||||
priv->mclkreg = (u32 *)ofnode_get_addr(args.node);
|
||||
ccu_reg = (u32 *)ofnode_get_addr(args.node);
|
||||
|
||||
ret = dev_read_phandle_with_args(dev, "clocks", "#clock-cells", 0,
|
||||
0, &args);
|
||||
if (ret)
|
||||
return ret;
|
||||
gate_reg = (u32 *)ofnode_get_addr(args.node);
|
||||
setbits_le32(gate_reg, 1 << args.args[0]);
|
||||
priv->mmc_no = args.args[0] - 8;
|
||||
priv->mmc_no = ((uintptr_t)priv->reg - SUNXI_MMC0_BASE) / 0x1000;
|
||||
priv->mclkreg = (void *)ccu_reg +
|
||||
(priv->variant->mclk_offset + (priv->mmc_no * 4));
|
||||
gate_reg = (void *)ccu_reg + priv->variant->gate_offset;
|
||||
setbits_le32(gate_reg, BIT(AHB_GATE_OFFSET_MMC(priv->mmc_no)));
|
||||
|
||||
ret = mmc_set_mod_clk(priv, 24000000);
|
||||
if (ret)
|
||||
@@ -665,11 +675,25 @@ static int sunxi_mmc_bind(struct udevice *dev)
|
||||
return mmc_bind(dev, &plat->mmc, &plat->cfg);
|
||||
}
|
||||
|
||||
static const struct sunxi_mmc_variant sun4i_a10_variant = {
|
||||
.gate_offset = 0x60,
|
||||
.mclk_offset = 0x88,
|
||||
};
|
||||
|
||||
static const struct udevice_id sunxi_mmc_ids[] = {
|
||||
{ .compatible = "allwinner,sun4i-a10-mmc" },
|
||||
{ .compatible = "allwinner,sun5i-a13-mmc" },
|
||||
{ .compatible = "allwinner,sun7i-a20-mmc" },
|
||||
{ }
|
||||
{
|
||||
.compatible = "allwinner,sun4i-a10-mmc",
|
||||
.data = (ulong)&sun4i_a10_variant,
|
||||
},
|
||||
{
|
||||
.compatible = "allwinner,sun5i-a13-mmc",
|
||||
.data = (ulong)&sun4i_a10_variant,
|
||||
},
|
||||
{
|
||||
.compatible = "allwinner,sun7i-a20-mmc",
|
||||
.data = (ulong)&sun4i_a10_variant,
|
||||
},
|
||||
{ /* sentinel */ }
|
||||
};
|
||||
|
||||
U_BOOT_DRIVER(sunxi_mmc_drv) = {
|
||||
|
||||
@@ -139,9 +139,9 @@ static int pinconfig_post_bind(struct udevice *dev)
|
||||
int ret;
|
||||
|
||||
dev_for_each_subnode(node, dev) {
|
||||
if (pre_reloc_only ^ ofnode_pre_reloc(node))
|
||||
if (pre_reloc_only &&
|
||||
!ofnode_pre_reloc(node))
|
||||
continue;
|
||||
|
||||
/*
|
||||
* If this node has "compatible" property, this is not
|
||||
* a pin configuration node, but a normal device. skip.
|
||||
|
||||
@@ -7,7 +7,7 @@ obj-$(CONFIG_USB_GADGET) += epautoconf.o config.o usbstring.o
|
||||
obj-$(CONFIG_USB_ETHER) += epautoconf.o config.o usbstring.o
|
||||
|
||||
ifdef CONFIG_SPL_BUILD
|
||||
obj-$(CONFIG_SPL_USB_GADGET_SUPPORT) += g_dnl.o
|
||||
obj-$(CONFIG_SPL_USB_GADGET) += g_dnl.o
|
||||
obj-$(CONFIG_SPL_DFU_SUPPORT) += f_dfu.o
|
||||
obj-$(CONFIG_SPL_USB_SDP_SUPPORT) += f_sdp.o
|
||||
endif
|
||||
|
||||
@@ -6,4 +6,5 @@ ifndef CONFIG_$(SPL_)DM_USB_GADGET
|
||||
obj-$(CONFIG_USB_DWC3_GADGET) += udc-core.o
|
||||
endif
|
||||
|
||||
obj-$(CONFIG_$(SPL_)DM_USB_GADGET) += udc-uclass.o udc-core.o
|
||||
obj-$(CONFIG_$(SPL_)DM_USB_GADGET) += udc-core.o
|
||||
obj-$(CONFIG_$(SPL_)DM) += udc-uclass.o
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
#include <dm/device-internal.h>
|
||||
#include <linux/usb/gadget.h>
|
||||
|
||||
#if CONFIG_IS_ENABLED(DM_USB_GADGET)
|
||||
#define MAX_UDC_DEVICES 4
|
||||
static struct udevice *dev_array[MAX_UDC_DEVICES];
|
||||
int usb_gadget_initialize(int index)
|
||||
@@ -20,7 +21,7 @@ int usb_gadget_initialize(int index)
|
||||
return -EINVAL;
|
||||
if (dev_array[index])
|
||||
return 0;
|
||||
ret = uclass_get_device(UCLASS_USB_GADGET_GENERIC, index, &dev);
|
||||
ret = uclass_get_device_by_seq(UCLASS_USB_GADGET_GENERIC, index, &dev);
|
||||
if (!dev || ret) {
|
||||
pr_err("No USB device found\n");
|
||||
return -ENODEV;
|
||||
@@ -51,8 +52,10 @@ int usb_gadget_handle_interrupts(int index)
|
||||
return -EINVAL;
|
||||
return dm_usb_gadget_handle_interrupts(dev_array[index]);
|
||||
}
|
||||
#endif
|
||||
|
||||
UCLASS_DRIVER(usb_gadget_generic) = {
|
||||
.id = UCLASS_USB_GADGET_GENERIC,
|
||||
.name = "usb_gadget_generic",
|
||||
.name = "usb",
|
||||
.flags = DM_UC_FLAG_SEQ_ALIAS,
|
||||
};
|
||||
|
||||
@@ -369,6 +369,9 @@ static int xhci_scratchpad_alloc(struct xhci_ctrl *ctrl)
|
||||
ctrl->dcbaa->dev_context_ptrs[0] =
|
||||
cpu_to_le64((uintptr_t)scratchpad->sp_array);
|
||||
|
||||
xhci_flush_cache((uintptr_t)&ctrl->dcbaa->dev_context_ptrs[0],
|
||||
sizeof(ctrl->dcbaa->dev_context_ptrs[0]));
|
||||
|
||||
page_size = xhci_readl(&hcor->or_pagesize) & 0xffff;
|
||||
for (i = 0; i < 16; i++) {
|
||||
if ((0x1 & page_size) != 0)
|
||||
|
||||
3
env/env.c
vendored
3
env/env.c
vendored
@@ -71,6 +71,9 @@ static enum env_location env_locations[] = {
|
||||
#ifdef CONFIG_ENV_IS_IN_REMOTE
|
||||
ENVL_REMOTE,
|
||||
#endif
|
||||
#ifdef CONFIG_ENV_IS_IN_SATA
|
||||
ENVL_ESATA,
|
||||
#endif
|
||||
#ifdef CONFIG_ENV_IS_IN_SPI_FLASH
|
||||
ENVL_SPI_FLASH,
|
||||
#endif
|
||||
|
||||
2
env/sata.c
vendored
2
env/sata.c
vendored
@@ -65,7 +65,7 @@ static int env_sata_save(void)
|
||||
return 1;
|
||||
|
||||
printf("Writing to SATA(%d)...", env_sata);
|
||||
if (write_env(sata, CONFIG_ENV_SIZE, CONFIG_ENV_OFFSET, &env_new)) {
|
||||
if (write_env(sata, CONFIG_ENV_SIZE, CONFIG_ENV_OFFSET, (u_char *)env_new)) {
|
||||
puts("failed\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -736,10 +736,7 @@ static void *next_cluster(fat_itr *itr)
|
||||
if (itr->last_cluster)
|
||||
return NULL;
|
||||
|
||||
if (itr->fsdata->fatsize != 32 && itr->is_root)
|
||||
sect = mydata->rootdir_sect;
|
||||
else
|
||||
sect = clust_to_sect(itr->fsdata, itr->next_clust);
|
||||
sect = clust_to_sect(itr->fsdata, itr->next_clust);
|
||||
|
||||
debug("FAT read(sect=%d), clust_size=%d, DIRENTSPERBLOCK=%zd\n",
|
||||
sect, itr->fsdata->clust_size, DIRENTSPERBLOCK);
|
||||
|
||||
@@ -226,12 +226,6 @@
|
||||
#define CONFIG_SYS_FSL_USDHC_NUM 2
|
||||
#define CONFIG_SYS_FSL_ESDHC_ADDR 0
|
||||
|
||||
#define CONFIG_DOS_PARTITION
|
||||
#define CONFIG_CMD_EXT2
|
||||
#define CONFIG_CMD_EXT4
|
||||
#define CONFIG_CMD_EXT4_WRITE
|
||||
#define CONFIG_CMD_FAT
|
||||
|
||||
#define CONFIG_SUPPORT_EMMC_BOOT /* eMMC specific */
|
||||
#define CONFIG_SYS_MMC_IMG_LOAD_PART 1
|
||||
|
||||
|
||||
@@ -157,6 +157,9 @@
|
||||
/* IIM Fuses */
|
||||
#define CONFIG_FSL_IIM
|
||||
|
||||
/* Watchdog */
|
||||
#define CONFIG_WATCHDOG_TIMEOUT_MSECS 8000
|
||||
|
||||
/*
|
||||
* Boot Linux
|
||||
*/
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"loader_mmc_blknum=0x0\0" \
|
||||
"loader_mmc_nblks=0x780\0" \
|
||||
"env_mmc_blknum=0x780\0" \
|
||||
"env_mmc_blknum=0xf80\0" \
|
||||
"env_mmc_nblks=0x80\0" \
|
||||
"kernel_addr_r=0x30000000\0" \
|
||||
"pxefile_addr_r=0x32000000\0" \
|
||||
@@ -57,8 +57,8 @@
|
||||
|
||||
/* Command line configuration */
|
||||
#define CONFIG_SYS_MMC_ENV_DEV 0
|
||||
#define CONFIG_ENV_OFFSET (0x780 * 512) /* env_mmc_blknum */
|
||||
#define CONFIG_ENV_SIZE 0x10000 /* env_mmc_nblks bytes */
|
||||
#define CONFIG_ENV_OFFSET (0xf80 * 512) /* env_mmc_blknum bytes */
|
||||
#define CONFIG_ENV_SIZE (0x80 * 512) /* env_mmc_nblks bytes */
|
||||
|
||||
/* Monitor Command Prompt */
|
||||
#define CONFIG_SYS_CBSIZE 512
|
||||
|
||||
@@ -122,6 +122,8 @@
|
||||
#define CONFIG_ENV_OFFSET (384 * 1024)
|
||||
#define CONFIG_ENV_OVERWRITE
|
||||
|
||||
#define CONFIG_BOARD_SIZE_LIMIT 392192 /* (CONFIG_ENV_OFFSET - 1024) */
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"bootargs_mmc1=console=ttymxc0,115200 di0_primary console=tty1\0" \
|
||||
"bootargs_mmc2=video=mxcfb0:dev=hdmi,1920x1080M@60 " \
|
||||
|
||||
@@ -35,17 +35,12 @@
|
||||
"uuid_disk=${uuid_gpt_disk};" \
|
||||
"name=xloader,start=128K,size=256K,uuid=${uuid_gpt_xloader};" \
|
||||
"name=bootloader,size=2048K,uuid=${uuid_gpt_bootloader};" \
|
||||
"name=reserved,start=2432K,size=256K,uuid=${uuid_gpt_reserved};" \
|
||||
"name=uboot-env,start=2432K,size=256K,uuid=${uuid_gpt_reserved};" \
|
||||
"name=misc,size=128K,uuid=${uuid_gpt_misc};" \
|
||||
"name=efs,size=16M,uuid=${uuid_gpt_efs};" \
|
||||
"name=crypto,size=16K,uuid=${uuid_gpt_crypto};" \
|
||||
"name=recovery,size=40M,uuid=${uuid_gpt_recovery};" \
|
||||
"name=boot,size=10M,uuid=${uuid_gpt_boot};" \
|
||||
"name=system,size=1024M,uuid=${uuid_gpt_system};" \
|
||||
"name=vendor,size=256M,uuid=${uuid_gpt_vendor};" \
|
||||
"name=cache,size=256M,uuid=${uuid_gpt_cache};" \
|
||||
"name=ipu1,size=1M,uuid=${uuid_gpt_ipu1};" \
|
||||
"name=ipu2,size=1M,uuid=${uuid_gpt_ipu2};" \
|
||||
VBMETA_PART \
|
||||
"name=userdata,size=-,uuid=${uuid_gpt_userdata}"
|
||||
#endif /* PARTS_DEFAULT */
|
||||
|
||||
@@ -87,7 +87,7 @@ endif
|
||||
endif
|
||||
|
||||
libs-y += drivers/
|
||||
libs-$(CONFIG_SPL_USB_GADGET_SUPPORT) += drivers/usb/dwc3/
|
||||
libs-$(CONFIG_SPL_USB_GADGET) += drivers/usb/dwc3/
|
||||
libs-y += dts/
|
||||
libs-y += fs/
|
||||
libs-$(CONFIG_SPL_POST_MEM_SUPPORT) += post/drivers/
|
||||
|
||||
@@ -968,7 +968,7 @@ int imx8image_copy_image(int outfd, struct image_tool_params *mparams)
|
||||
fprintf(stdout, "CONTAINER SW VERSION:\t0x%04x\n", sw_version);
|
||||
|
||||
build_container(soc, sector_size, emmc_fastboot,
|
||||
img_sp, false, fuse_version, sw_version, outfd);
|
||||
img_sp, true, fuse_version, sw_version, outfd);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user