blob: 34da90f20b6a85ae45100ced9fdc39c3d9cea8db [file] [log] [blame]
Christian Gmeiner5ad7c162014-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 Gmeiner5ad7c162014-10-02 13:33:46 +020012
Christian Gmeiner5ad7c162014-10-02 13:33:46 +020013/* Size of malloc() pool */
14#define CONFIG_SYS_MALLOC_LEN (10 * 1024 * 1024)
15
Christian Gmeiner5ad7c162014-10-02 13:33:46 +020016#define CONFIG_MISC_INIT_R
Christian Gmeiner5ad7c162014-10-02 13:33:46 +020017
Christian Gmeiner5ad7c162014-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 Gmeiner5ad7c162014-10-02 13:33:46 +020023#define CONFIG_SPI
Christian Gmeiner5ad7c162014-10-02 13:33:46 +020024#define CONFIG_MXC_SPI
25#define CONFIG_SF_DEFAULT_BUS 2
Christian Gmeiner477b5322014-10-22 11:29:51 +020026#define CONFIG_SF_DEFAULT_CS 0
Christian Gmeiner5ad7c162014-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 Gmeiner5ad7c162014-10-02 13:33:46 +020038#define CONFIG_SYS_I2C
39#define CONFIG_SYS_I2C_MXC
Albert ARIBAUD \\(3ADEV\\)eb943872015-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 Sunf1a52162015-03-20 10:20:40 -070042#define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */
Christian Gmeiner5ad7c162014-10-02 13:33:46 +020043#define CONFIG_SYS_I2C_SPEED 100000
44
45/* OCOTP Configs */
46#define CONFIG_CMD_IMXOTP
47#define CONFIG_IMX_OTP
48#define IMX_OTP_BASE OCOTP_BASE_ADDR
49#define IMX_OTP_ADDR_MAX 0x7F
50#define IMX_OTP_DATA_ERROR_VAL 0xBADABADA
51#define IMX_OTPWRITE_ENABLED
52
53/* MMC Configs */
Christian Gmeiner5ad7c162014-10-02 13:33:46 +020054#define CONFIG_SYS_FSL_ESDHC_ADDR 0
55#define CONFIG_SYS_FSL_USDHC_NUM 2
56
Christian Gmeinerb2a03fd2014-11-10 14:35:48 +010057/* USB Configs */
Christian Gmeinerb2a03fd2014-11-10 14:35:48 +010058#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
59#define CONFIG_USB_MAX_CONTROLLER_COUNT 2
60
Christian Gmeiner5ad7c162014-10-02 13:33:46 +020061#ifdef CONFIG_MX6Q
62#define CONFIG_CMD_SATA
63#endif
64
65/*
66 * SATA Configs
67 */
68#ifdef CONFIG_CMD_SATA
69#define CONFIG_DWC_AHSATA
70#define CONFIG_SYS_SATA_MAX_DEVICE 1
71#define CONFIG_DWC_AHSATA_PORT_ID 0
72#define CONFIG_DWC_AHSATA_BASE_ADDR SATA_ARB_BASE_ADDR
73#define CONFIG_LBA48
74#define CONFIG_LIBATA
75#endif
76
Christian Gmeinerd8e33c42015-01-19 17:26:48 +010077/* SPL */
78#ifdef CONFIG_SPL
79#include "imx6_spl.h"
Christian Gmeinerd8e33c42015-01-19 17:26:48 +010080#define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024)
81#define CONFIG_SPL_SPI_LOAD
82#endif
83
Christian Gmeiner5ad7c162014-10-02 13:33:46 +020084#define CONFIG_FEC_MXC
85#define CONFIG_MII
86#define IMX_FEC_BASE ENET_BASE_ADDR
87#define CONFIG_FEC_XCV_TYPE MII100
88#define CONFIG_ETHPRIME "FEC"
89#define CONFIG_FEC_MXC_PHYADDR 0x5
90#define CONFIG_PHYLIB
91#define CONFIG_PHY_SMSC
92
Christian Gmeinerf2a73992015-02-11 15:20:25 +010093#ifndef CONFIG_SPL
94#define CONFIG_CMD_EEPROM
95#define CONFIG_ENV_EEPROM_IS_ON_I2C
96#define CONFIG_SYS_I2C_EEPROM_BUS 1
97#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
98#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
99#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
Christian Gmeinerf2a73992015-02-11 15:20:25 +0100100#endif
101
Christian Gmeiner5ad7c162014-10-02 13:33:46 +0200102#define CONFIG_PREBOOT ""
103
Christian Gmeiner5ad7c162014-10-02 13:33:46 +0200104/* Print Buffer Size */
105#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
Christian Gmeiner5ad7c162014-10-02 13:33:46 +0200106
107/* Physical Memory Map */
108#define CONFIG_NR_DRAM_BANKS 1
109#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
Christian Gmeiner5ad7c162014-10-02 13:33:46 +0200110
111#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
112#define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
113#define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
114
115#define CONFIG_SYS_INIT_SP_OFFSET \
116 (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
117#define CONFIG_SYS_INIT_SP_ADDR \
118 (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
119
Peter Robinson4b671502015-05-22 17:30:45 +0100120/* Environment organization */
Christian Gmeiner5ad7c162014-10-02 13:33:46 +0200121#define CONFIG_ENV_IS_IN_SPI_FLASH
122#define CONFIG_ENV_SIZE (64 * 1024) /* 64 kb */
123#define CONFIG_ENV_OFFSET (1024 * 1024)
124/* M25P16 has an erase size of 64 KiB */
125#define CONFIG_ENV_SECT_SIZE (64 * 1024)
126#define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS
127#define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS
128#define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE
129#define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED
130
Christian Gmeiner5ad7c162014-10-02 13:33:46 +0200131#define CONFIG_BOOTP_SERVERIP
132#define CONFIG_BOOTP_BOOTFILE
133
134#endif /* __CONFIG_H */