Hi all,
I am using a imx6dual processor for our customized board, in that we are using SPI 4 for nor flash, for that i have changed the spi form 0 to 4 in the files mx6q_sabrelite_android.h and mx6q_sabrelite.c , but when i tried to load the u-boot.bin from mfg tool, it stops after the jumping to os and stays in loading u-boot, screen
Note:
Plz check is this configuration is correct and plz tell me if i missed any thing and is it possible to flash u-boot in emmc for a dual processor?
CHANGES I HAVE DONE IN THE FILES
All the mux configuration are correct i have check with our schematic
mx6q_sabrelite.c
s32 spi_get_cfg(struct imx_spi_dev_t *dev) //OVIYA ADDED
{
switch (dev->slave.cs) {
case 0:
/* PMIC
dev->base = ECSPI1_BASE_ADDR;
dev->freq = 25000000;
dev->ss_pol = IMX_SPI_ACTIVE_HIGH;
dev->ss = 0;
dev->fifo_sz = 64 * 4;
dev->us_delay = 0;
break; */
/* SPI-NOR */
dev->base = ECSPI4_BASE_ADDR;
dev->freq = 25000000;
dev->ss_pol = IMX_SPI_ACTIVE_LOW;
dev->ss = 0;
dev->fifo_sz = 64 * 4;
dev->us_delay = 0;
break;
default:
printf("Invalid Bus ID!\n");
}
return 0;
}
void spi_io_init(struct imx_spi_dev_t *dev) //OVIYA ADDED
{
switch (dev->base) {
case ECSPI4_BASE_ADDR:
/* SCLK */
mxc_iomux_v3_setup_pad(MX6Q_PAD_EIM_D21__ECSPI4_SCLK);
/* MISO */
mxc_iomux_v3_setup_pad(MX6Q_PAD_EIM_D22__ECSPI4_MISO);
/* MOSI */
mxc_iomux_v3_setup_pad(MX6Q_PAD_EIM_D28__ECSPI4_MOSI);
if (dev->ss == 0)
mxc_iomux_v3_setup_pad(MX6Q_PAD_EIM_D20__ECSPI4_SS0);
break;
case ECSPI2_BASE_ADDR:
case ECSPI3_BASE_ADDR:
/* ecspi2-3 fall through */
break;
default:
break;
}
}
mx6q_sabrelite_android.h
#ifdef CONFIG_CMD_SF
#define CONFIG_FSL_SF 4
#define CONFIG_SPI_FLASH_IMX_SST 1
#define CONFIG_SPI_FLASH_CS 0
#define CONFIG_IMX_ECSPI
#define IMX_CSPI_VER_2_3 1
#define MAX_SPI_BYTES (64 * 4)
#endif
#elif defined(CONFIG_FSL_ENV_IN_SF)
#define CONFIG_ENV_IS_IN_SPI_FLASH 4
#define CONFIG_ENV_SPI_CS 0
#define CONFIG_ENV_OFFSET (768 * 1024)