Merge branch 'master' of git://git.denx.de/u-boot-coldfire

- stmark2 / mcf5441x updates
This commit is contained in:
Tom Rini
2026-05-04 14:41:59 -06:00
10 changed files with 75 additions and 11 deletions

View File

@@ -62,6 +62,7 @@ config MCF5441x
select DM
select DM_SERIAL
select ARCH_COLDFIRE
select CREATE_ARCH_SYMLINK
bool
config M680x0

View File

@@ -114,7 +114,7 @@ vector192_255:
/* Image header: chksum 4 bytes, len 4 bytes, img dest 4 bytes */
asm_sbf_img_hdr:
.long 0x00000000 /* checksum, not yet implemented */
.long 0x00040000 /* image length */
.long CONFIG_SYS_MONITOR_LEN /* image length */
.long CONFIG_TEXT_BASE /* image to be relocated at */
asm_dram_init:
@@ -292,7 +292,6 @@ asm_dspi_rd_status:
move.b (%a3), %d1
rts
#endif /* CONFIG_CF_SBF */
#ifdef CONFIG_SYS_NAND_BOOT
/* copy 4 boot pages to dram as soon as possible */
/* each page is 996 bytes (1056 total with 60 ECC bytes */

View File

@@ -163,5 +163,13 @@
clock-frequency = <100000>;
status = "disabled";
};
esdhc: mmc@0xfc0cc000 {
compatible = "fsl,esdhc";
reg = <0xfc0cc000 0x8000>;
non-removable;
bus-width = <4>;
status = "disabled";
};
};
};

View File

@@ -45,3 +45,7 @@
&i2c0 {
status = "okay";
};
&esdhc {
status = "okay";
};

View File

@@ -0,0 +1,19 @@
/* SPDX-License-Identifier: GPL-2.0+ */
/*
* ColdFire clock support
*
* Copyright 2026 Kernelspace.
* Angelo Dureghello <angelo@kernel-space.org>
*/
#ifndef __CLOCK_H
#define __CLOCK_H
/* Stub to use fsl/nxp drivers. */
enum mxc_clock {
MXC_ESDHC_CLK,
};
int mxc_get_clock(enum mxc_clock clk);
#endif /* __CLOCK_H */

View File

@@ -9,3 +9,4 @@ lib-$(CONFIG_USE_PRIVATE_LIBGCC) += lshrdi3.o muldi3.o ashldi3.o ashrdi3.o
obj-$(CONFIG_CMD_BOOTM) += bootm.o
obj-$(CONFIG_ARCH_COLDFIRE) += cache.o interrupts.o time.o traps.o bdinfo.o fec.o
obj-$(CONFIG_MCF5441x) += clock.o

23
arch/m68k/lib/clock.c Normal file
View File

@@ -0,0 +1,23 @@
// SPDX-License-Identifier: GPL-2.0+
/*
* (C) Copyright 2026 Kernelspace
* Angelo Dureghello <angelo@kernel-space.org>
*/
#include <config.h>
#include <asm/arch/clock.h>
#include <asm/global_data.h>
DECLARE_GLOBAL_DATA_PTR;
/*
* Stub to use existing nxp/fsl drivers.
*/
int mxc_get_clock(enum mxc_clock clk)
{
if (clk == MXC_ESDHC_CLK)
return gd->arch.sdhc_clk;
printf("Unsupported MXC CLK: %d\n", clk);
return 0;
}

View File

@@ -3,34 +3,38 @@ CONFIG_TEXT_BASE=0x47E00000
CONFIG_SYS_MALLOC_LEN=0x40000
CONFIG_SF_DEFAULT_SPEED=50000000
CONFIG_ENV_SIZE=0x2000
CONFIG_ENV_OFFSET=0x40000
CONFIG_ENV_OFFSET=0x80000
CONFIG_ENV_SECT_SIZE=0x10000
CONFIG_DEFAULT_DEVICE_TREE="stmark2"
CONFIG_SYS_MONITOR_LEN=262144
CONFIG_SYS_LOAD_ADDR=0x40010000
CONFIG_SYS_MONITOR_LEN=327680
CONFIG_SYS_LOAD_ADDR=0x42000000
CONFIG_TARGET_STMARK2=y
CONFIG_SYS_BARGSIZE=256
CONFIG_SYS_MONITOR_BASE=0x47E00400
CONFIG_TIMESTAMP=y
CONFIG_USE_BOOTARGS=y
CONFIG_BOOTARGS="console=ttyS0,115200 root=/dev/ram0 rw rootfstype=ramfs rdinit=/bin/init devtmpfs.mount=1"
CONFIG_BOOTARGS="console=ttyS0,115200 root=/dev/ram0 rw rootfstype=ramfs rdinit=/sbin/init devtmpfs.mount=1"
CONFIG_USE_BOOTCOMMAND=y
CONFIG_BOOTCOMMAND="sf probe 0:1 50000000; sf read ${loadaddr} 0x100000 ${kern_size}; bootm ${loadaddr}"
CONFIG_BOOTCOMMAND="run boot_sd; bootm ${loadaddr} ${loadaddr_ramfs}"
CONFIG_SYS_PBSIZE=283
# CONFIG_DISPLAY_BOARDINFO is not set
CONFIG_SYS_MALLOC_BOOTPARAMS=y
CONFIG_HUSH_PARSER=y
# CONFIG_CMDLINE_EDITING is not set
CONFIG_SYS_PROMPT="stmark2 $ "
# CONFIG_CMD_BDI is not set
# CONFIG_CMD_CONSOLE is not set
# CONFIG_CMD_EXPORTENV is not set
# CONFIG_CMD_IMPORTENV is not set
CONFIG_CMD_I2C=y
# CONFIG_CMD_LOADS is not set
CONFIG_CMD_MMC=y
CONFIG_CMD_SPI=y
# CONFIG_CMD_SETEXPR is not set
CONFIG_CMD_CACHE=y
CONFIG_CMD_EXT2=y
CONFIG_CMD_EXT4=y
CONFIG_CMD_FAT=y
CONFIG_CMD_FS_GENERIC=y
CONFIG_CMD_MTDPARTS=y
CONFIG_MTDIDS_DEFAULT="nor0=spi-flash.0"
CONFIG_MTDPARTS_DEFAULT="mtdparts=spi-flash.0:1m(u-boot),7m(kernel),-(rootfs)"
@@ -42,6 +46,9 @@ CONFIG_HOSTNAME="stmark2"
CONFIG_NO_NET=y
CONFIG_DM_I2C=y
CONFIG_SYS_I2C_FSL=y
CONFIG_MMC=y
CONFIG_FSL_ESDHC_IMX=y
CONFIG_SYS_FSL_ESDHC_HAS_DDR_MODE=y
CONFIG_MTD=y
CONFIG_DM_SPI_FLASH=y
CONFIG_SPI_FLASH_ISSI=y

View File

@@ -924,7 +924,7 @@ config ESDHCI_QUIRK_BROKEN_TIMEOUT_VALUE
config FSL_ESDHC_IMX
bool "Freescale/NXP i.MX eSDHC controller support"
depends on MACH_IMX
depends on MACH_IMX || M68K
help
This selects support for the i.MX eSDHC (Enhanced Secure Digital Host
Controller) found on numerous Freescale/NXP SoCs.

View File

@@ -14,9 +14,11 @@
board/sysam/stmark2/sbf_dram_init.o (.text*)
#define CFG_EXTRA_ENV_SETTINGS \
"boot_sd=load mmc 0:1 ${loadaddr} uImage; " \
"load mmc 0:1 ${loadaddr_ramfs} uRamfs\0" \
"kern_size=0x700000\0" \
"loadaddr=0x40001000\0" \
"-(rootfs)\0" \
"loadaddr=0x42000000\0" \
"loadaddr_ramfs=0x43000000\0" \
"update_uboot=loady ${loadaddr}; " \
"sf probe 0:1 50000000; " \
"sf erase 0 0x80000; " \