blob: 7aeae7b1fdc411fd0b3b5a87033aee735ff3e891 [file] [log] [blame]
Christian Gmeiner39d09732014-10-02 13:33:46 +02001/*
2 * Copyright (C) 2010-2013 Freescale Semiconductor, Inc.
3 * Copyright (C) 2014 Bachmann electronic GmbH
4 *
5 * SPDX-License-Identifier: GPL-2.0+
6 */
7
8#ifndef __CONFIG_H
9#define __CONFIG_H
10
11#include "mx6_common.h"
Christian Gmeiner39d09732014-10-02 13:33:46 +020012
Christian Gmeiner39d09732014-10-02 13:33:46 +020013/* Size of malloc() pool */
14#define CONFIG_SYS_MALLOC_LEN (10 * 1024 * 1024)
15
Christian Gmeiner39d09732014-10-02 13:33:46 +020016#define CONFIG_MISC_INIT_R
Christian Gmeiner39d09732014-10-02 13:33:46 +020017
Christian Gmeiner39d09732014-10-02 13:33:46 +020018/* UART Configs */
19#define CONFIG_MXC_UART
20#define CONFIG_MXC_UART_BASE UART1_BASE
21
22/* SF Configs */
Christian Gmeiner39d09732014-10-02 13:33:46 +020023#define CONFIG_SPI
Christian Gmeiner39d09732014-10-02 13:33:46 +020024#define CONFIG_MXC_SPI
25#define CONFIG_SF_DEFAULT_BUS 2
Christian Gmeiner2e3a1f42014-10-22 11:29:51 +020026#define CONFIG_SF_DEFAULT_CS 0
Christian Gmeiner39d09732014-10-02 13:33:46 +020027#define CONFIG_SF_DEFAULT_SPEED 25000000
28#define CONFIG_SF_DEFAULT_MODE (SPI_MODE_0)
29
30/* IO expander */
31#define CONFIG_PCA953X
32#define CONFIG_SYS_I2C_PCA953X_ADDR 0x20
33#define CONFIG_SYS_I2C_PCA953X_WIDTH { {0x20, 16} }
34#define CONFIG_CMD_PCA953X
35#define CONFIG_CMD_PCA953X_INFO
36
37/* I2C Configs */
Christian Gmeiner39d09732014-10-02 13:33:46 +020038#define CONFIG_SYS_I2C
39#define CONFIG_SYS_I2C_MXC
Albert ARIBAUD \\(3ADEV\\)03544c62015-09-21 22:43:38 +020040#define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */
41#define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */
York Sunf8cb1012015-03-20 10:20:40 -070042#define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */
Christian Gmeiner39d09732014-10-02 13:33:46 +020043#define CONFIG_SYS_I2C_SPEED 100000
44
45/* OCOTP Configs */
Christian Gmeiner39d09732014-10-02 13:33:46 +020046#define CONFIG_IMX_OTP
47#define IMX_OTP_BASE OCOTP_BASE_ADDR
48#define IMX_OTP_ADDR_MAX 0x7F
49#define IMX_OTP_DATA_ERROR_VAL 0xBADABADA
50#define IMX_OTPWRITE_ENABLED
51
52/* MMC Configs */
Christian Gmeiner39d09732014-10-02 13:33:46 +020053#define CONFIG_SYS_FSL_ESDHC_ADDR 0
54#define CONFIG_SYS_FSL_USDHC_NUM 2
55
Christian Gmeiner39c7d5a2014-11-10 14:35:48 +010056/* USB Configs */
Christian Gmeiner39c7d5a2014-11-10 14:35:48 +010057#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
58#define CONFIG_USB_MAX_CONTROLLER_COUNT 2
59
Christian Gmeiner39d09732014-10-02 13:33:46 +020060/*
61 * SATA Configs
62 */
63#ifdef CONFIG_CMD_SATA
64#define CONFIG_DWC_AHSATA
65#define CONFIG_SYS_SATA_MAX_DEVICE 1
66#define CONFIG_DWC_AHSATA_PORT_ID 0
67#define CONFIG_DWC_AHSATA_BASE_ADDR SATA_ARB_BASE_ADDR
68#define CONFIG_LBA48
69#define CONFIG_LIBATA
70#endif
71
Christian Gmeiner68a36642015-01-19 17:26:48 +010072/* SPL */
73#ifdef CONFIG_SPL
74#include "imx6_spl.h"
Christian Gmeiner68a36642015-01-19 17:26:48 +010075#define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024)
76#define CONFIG_SPL_SPI_LOAD
77#endif
78
Christian Gmeiner39d09732014-10-02 13:33:46 +020079#define CONFIG_FEC_MXC
80#define CONFIG_MII
81#define IMX_FEC_BASE ENET_BASE_ADDR
82#define CONFIG_FEC_XCV_TYPE MII100
83#define CONFIG_ETHPRIME "FEC"
84#define CONFIG_FEC_MXC_PHYADDR 0x5
85#define CONFIG_PHYLIB
86#define CONFIG_PHY_SMSC
87
Christian Gmeinerfb2589b2015-02-11 15:20:25 +010088#ifndef CONFIG_SPL
Christian Gmeinerfb2589b2015-02-11 15:20:25 +010089#define CONFIG_ENV_EEPROM_IS_ON_I2C
90#define CONFIG_SYS_I2C_EEPROM_BUS 1
91#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
92#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
93#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
Christian Gmeinerfb2589b2015-02-11 15:20:25 +010094#endif
95
Christian Gmeiner39d09732014-10-02 13:33:46 +020096#define CONFIG_PREBOOT ""
97
Christian Gmeiner39d09732014-10-02 13:33:46 +020098/* Print Buffer Size */
99#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
Christian Gmeiner39d09732014-10-02 13:33:46 +0200100
101/* Physical Memory Map */
102#define CONFIG_NR_DRAM_BANKS 1
103#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
Christian Gmeiner39d09732014-10-02 13:33:46 +0200104
105#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
106#define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
107#define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
108
109#define CONFIG_SYS_INIT_SP_OFFSET \
110 (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
111#define CONFIG_SYS_INIT_SP_ADDR \
112 (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
113
Peter Robinson056845c2015-05-22 17:30:45 +0100114/* Environment organization */
Christian Gmeiner39d09732014-10-02 13:33:46 +0200115#define CONFIG_ENV_IS_IN_SPI_FLASH
116#define CONFIG_ENV_SIZE (64 * 1024) /* 64 kb */
117#define CONFIG_ENV_OFFSET (1024 * 1024)
118/* M25P16 has an erase size of 64 KiB */
119#define CONFIG_ENV_SECT_SIZE (64 * 1024)
120#define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS
121#define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS
122#define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE
123#define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED
124
Christian Gmeiner39d09732014-10-02 13:33:46 +0200125#define CONFIG_BOOTP_SERVERIP
126#define CONFIG_BOOTP_BOOTFILE
127
128#endif /* __CONFIG_H */