blob: 0582fa36883d2e8029995ae76f7059f6a1bc0081 [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#ifdef CONFIG_MX6Q
61#define CONFIG_CMD_SATA
62#endif
63
64/*
65 * SATA Configs
66 */
67#ifdef CONFIG_CMD_SATA
68#define CONFIG_DWC_AHSATA
69#define CONFIG_SYS_SATA_MAX_DEVICE 1
70#define CONFIG_DWC_AHSATA_PORT_ID 0
71#define CONFIG_DWC_AHSATA_BASE_ADDR SATA_ARB_BASE_ADDR
72#define CONFIG_LBA48
73#define CONFIG_LIBATA
74#endif
75
Christian Gmeiner68a36642015-01-19 17:26:48 +010076/* SPL */
77#ifdef CONFIG_SPL
78#include "imx6_spl.h"
Christian Gmeiner68a36642015-01-19 17:26:48 +010079#define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024)
80#define CONFIG_SPL_SPI_LOAD
81#endif
82
Christian Gmeiner39d09732014-10-02 13:33:46 +020083#define CONFIG_FEC_MXC
84#define CONFIG_MII
85#define IMX_FEC_BASE ENET_BASE_ADDR
86#define CONFIG_FEC_XCV_TYPE MII100
87#define CONFIG_ETHPRIME "FEC"
88#define CONFIG_FEC_MXC_PHYADDR 0x5
89#define CONFIG_PHYLIB
90#define CONFIG_PHY_SMSC
91
Christian Gmeinerfb2589b2015-02-11 15:20:25 +010092#ifndef CONFIG_SPL
Christian Gmeinerfb2589b2015-02-11 15:20:25 +010093#define CONFIG_ENV_EEPROM_IS_ON_I2C
94#define CONFIG_SYS_I2C_EEPROM_BUS 1
95#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
96#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
97#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
Christian Gmeinerfb2589b2015-02-11 15:20:25 +010098#endif
99
Christian Gmeiner39d09732014-10-02 13:33:46 +0200100#define CONFIG_PREBOOT ""
101
Christian Gmeiner39d09732014-10-02 13:33:46 +0200102/* Print Buffer Size */
103#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
Christian Gmeiner39d09732014-10-02 13:33:46 +0200104
105/* Physical Memory Map */
106#define CONFIG_NR_DRAM_BANKS 1
107#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
Christian Gmeiner39d09732014-10-02 13:33:46 +0200108
109#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
110#define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
111#define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
112
113#define CONFIG_SYS_INIT_SP_OFFSET \
114 (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
115#define CONFIG_SYS_INIT_SP_ADDR \
116 (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
117
Peter Robinson056845c2015-05-22 17:30:45 +0100118/* Environment organization */
Christian Gmeiner39d09732014-10-02 13:33:46 +0200119#define CONFIG_ENV_IS_IN_SPI_FLASH
120#define CONFIG_ENV_SIZE (64 * 1024) /* 64 kb */
121#define CONFIG_ENV_OFFSET (1024 * 1024)
122/* M25P16 has an erase size of 64 KiB */
123#define CONFIG_ENV_SECT_SIZE (64 * 1024)
124#define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS
125#define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS
126#define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE
127#define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED
128
Christian Gmeiner39d09732014-10-02 13:33:46 +0200129#define CONFIG_BOOTP_SERVERIP
130#define CONFIG_BOOTP_BOOTFILE
131
132#endif /* __CONFIG_H */