1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * siemens pxm2
4  * (C) Copyright 2013 Siemens Schweiz AG
5  * (C) Heiko Schocher, DENX Software Engineering, hs@denx.de.
6  *
7  * Based on:
8  * U-Boot file:/include/configs/am335x_evm.h
9  *
10  * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
11  */
12 
13 #ifndef __CONFIG_PXM2_H
14 #define __CONFIG_PXM2_H
15 
16 #define CONFIG_SIEMENS_MACH_TYPE	MACH_TYPE_PXM2
17 
18 #include "siemens-am33x-common.h"
19 
20 #define DDR_IOCTRL_VAL		0x18b
21 #define DDR_PLL_FREQ		266
22 
23 #define BOARD_DFU_BUTTON_GPIO	59
24 #define BOARD_LCD_POWER		111
25 #define BOARD_BACK_LIGHT	112
26 #define BOARD_TOUCH_POWER	57
27 
28 #define CONFIG_ENV_SETTINGS_BUTTONS_AND_LEDS \
29 	"button_dfu0=59\0" \
30 	"led0=117,0,1\0" \
31 
32  /* Physical Memory Map */
33 #define CONFIG_MAX_RAM_BANK_SIZE	(512 << 20)	/* 1GB */
34 
35 /* I2C Configuration */
36 #define CONFIG_SYS_I2C_SPEED		400000
37 #define CONFIG_SYS_I2C_EEPROM_ADDR	0x50
38 
39 #define CONFIG_FACTORYSET
40 
41 #ifndef CONFIG_SPL_BUILD
42 
43 /* Use common default */
44 
45 /* Default env settings */
46 #define CONFIG_EXTRA_ENV_SETTINGS \
47 	"hostname=pxm2\0" \
48 	"ubi_off=2048\0"\
49 	"nand_img_size=0x500000\0" \
50 	"optargs=\0" \
51 	"preboot=draco_led 0\0" \
52 	CONFIG_ENV_SETTINGS_BUTTONS_AND_LEDS \
53 	"splashpos=m,m\0"	\
54 	CONFIG_ENV_SETTINGS_V1 \
55 	CONFIG_ENV_SETTINGS_NAND_V1 \
56 	"mmc_dev=0\0" \
57 	"mmc_root=/dev/mmcblk0p2 rw\0" \
58 	"mmc_root_fs_type=ext4 rootwait\0" \
59 	"mmc_load_uimage=" \
60 		"mmc rescan; " \
61 		"setenv bootfile uImage;" \
62 		"fatload mmc ${mmc_dev} ${kloadaddr} ${bootfile}\0" \
63 	"loadbootenv=fatload mmc ${mmc_dev} ${loadaddr} ${bootenv}\0" \
64 	"importbootenv=echo Importing environment from mmc ...; " \
65 		"env import -t $loadaddr $filesize\0" \
66 	"mmc_args=run bootargs_defaults;" \
67 		"mtdparts default;" \
68 		"setenv bootargs ${bootargs} " \
69 		"root=${mmc_root} ${mtdparts}" \
70 		"rootfstype=${mmc_root_fs_type} ip=${ip_method} " \
71 		"eth=${ethaddr} " \
72 		"\0" \
73 	"mmc_boot=run mmc_args; " \
74 		"run mmc_load_uimage; " \
75 		"bootm ${kloadaddr}\0" \
76 	""
77 
78 #ifndef CONFIG_RESTORE_FLASH
79 /* set to negative value for no autoboot */
80 
81 #define CONFIG_BOOTCOMMAND \
82 	"if dfubutton; then " \
83 		"run dfu_start; " \
84 		"reset; " \
85 	"fi; " \
86 	"if mmc rescan; then " \
87 		"echo SD/MMC found on device ${mmc_dev};" \
88 		"if run loadbootenv; then " \
89 			"echo Loaded environment from ${bootenv};" \
90 			"run importbootenv;" \
91 		"fi;" \
92 		"if test -n $uenvcmd; then " \
93 			"echo Running uenvcmd ...;" \
94 			"run uenvcmd;" \
95 		"fi;" \
96 		"if run mmc_load_uimage; then " \
97 			"run mmc_args;" \
98 			"bootm ${kloadaddr};" \
99 		"fi;" \
100 	"fi;" \
101 	"run nand_boot;" \
102 	"reset;"
103 
104 #else
105 
106 #define CONFIG_BOOTCOMMAND			\
107 	"setenv autoload no; "			\
108 	"dhcp; "				\
109 	"if tftp 80000000 debrick.scr; then "	\
110 		"source 80000000; "		\
111 	"fi"
112 #endif
113 #endif	/* CONFIG_SPL_BUILD */
114 
115 #if defined(CONFIG_VIDEO)
116 #define CONFIG_VIDEO_DA8XX
117 #define CONFIG_VIDEO_LOGO
118 #define CONFIG_VIDEO_BMP_LOGO
119 #define DA8XX_LCD_CNTL_BASE	LCD_CNTL_BASE
120 #define PWM_TICKS	0x1388
121 #define PWM_DUTY	0x200
122 #endif
123 
124 #endif	/* ! __CONFIG_PXM2_H */
125