1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * (C) Copyright 2013 Keymile AG 3*4882a593Smuzhiyun * Valentin Longchamp <valentin.longchamp@keymile.com> 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+ 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun #ifndef __CONFIG_H 9*4882a593Smuzhiyun #define __CONFIG_H 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun /* KMLION1 */ 12*4882a593Smuzhiyun #if defined(CONFIG_KMLION1) 13*4882a593Smuzhiyun #define CONFIG_HOSTNAME kmlion1 14*4882a593Smuzhiyun #define CONFIG_KM_BOARD_NAME "kmlion1" 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun /* KMCOGE4 */ 17*4882a593Smuzhiyun #elif defined(CONFIG_KMCOGE4) 18*4882a593Smuzhiyun #define CONFIG_HOSTNAME kmcoge4 19*4882a593Smuzhiyun #define CONFIG_KM_BOARD_NAME "kmcoge4" 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #else 22*4882a593Smuzhiyun #error ("Board not supported") 23*4882a593Smuzhiyun #endif 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun #define CONFIG_KMP204X 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun #include "km/kmp204x-common.h" 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun #if defined(CONFIG_KMLION1) 30*4882a593Smuzhiyun /* App1 Local bus */ 31*4882a593Smuzhiyun #define CONFIG_SYS_LBAPP1_BASE 0xD0000000 32*4882a593Smuzhiyun #define CONFIG_SYS_LBAPP1_BASE_PHYS 0xFD0000000ull 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun #define CONFIG_SYS_LBAPP1_BR_PRELIM (BR_PHYS_ADDR(CONFIG_SYS_LBAPP1_BASE_PHYS) \ 35*4882a593Smuzhiyun | BR_PS_8 /* Port Size 8 bits */ \ 36*4882a593Smuzhiyun | BR_DECC_OFF /* no error corr */ \ 37*4882a593Smuzhiyun | BR_MS_GPCM /* MSEL = GPCM */ \ 38*4882a593Smuzhiyun | BR_V) /* valid */ 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun #define CONFIG_SYS_LBAPP1_OR_PRELIM (OR_AM_256MB /* length 256MB */ \ 41*4882a593Smuzhiyun | OR_GPCM_ACS_DIV2 /* LCS 1/2 clk after */ \ 42*4882a593Smuzhiyun | OR_GPCM_CSNT /* LCS 1/4 clk before */ \ 43*4882a593Smuzhiyun | OR_GPCM_SCY_2 /* 2 clk wait cycles */ \ 44*4882a593Smuzhiyun | OR_GPCM_TRLX /* relaxed tmgs */ \ 45*4882a593Smuzhiyun | OR_GPCM_EAD) /* extra bus clk cycles */ 46*4882a593Smuzhiyun /* Local bus app1 Base Address */ 47*4882a593Smuzhiyun #define CONFIG_SYS_BR2_PRELIM CONFIG_SYS_LBAPP1_BR_PRELIM 48*4882a593Smuzhiyun /* Local bus app1 Options */ 49*4882a593Smuzhiyun #define CONFIG_SYS_OR2_PRELIM CONFIG_SYS_LBAPP1_OR_PRELIM 50*4882a593Smuzhiyun #endif 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun /* App2 Local bus */ 53*4882a593Smuzhiyun #define CONFIG_SYS_LBAPP2_BASE 0xE0000000 54*4882a593Smuzhiyun #define CONFIG_SYS_LBAPP2_BASE_PHYS 0xFE0000000ull 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun #define CONFIG_SYS_LBAPP2_BR_PRELIM (BR_PHYS_ADDR(CONFIG_SYS_LBAPP2_BASE_PHYS) \ 57*4882a593Smuzhiyun | BR_PS_8 /* Port Size 8 bits */ \ 58*4882a593Smuzhiyun | BR_DECC_OFF /* no error corr */ \ 59*4882a593Smuzhiyun | BR_MS_GPCM /* MSEL = GPCM */ \ 60*4882a593Smuzhiyun | BR_V) /* valid */ 61*4882a593Smuzhiyun 62*4882a593Smuzhiyun #define CONFIG_SYS_LBAPP2_OR_PRELIM (OR_AM_256MB /* length 256MB */ \ 63*4882a593Smuzhiyun | OR_GPCM_ACS_DIV2 /* LCS 1/2 clk after */ \ 64*4882a593Smuzhiyun | OR_GPCM_CSNT /* LCS 1/4 clk before */ \ 65*4882a593Smuzhiyun | OR_GPCM_SCY_2 /* 2 clk wait cycles */ \ 66*4882a593Smuzhiyun | OR_GPCM_TRLX /* relaxed tmgs */ \ 67*4882a593Smuzhiyun | OR_GPCM_EAD) /* extra bus clk cycles */ 68*4882a593Smuzhiyun /* Local bus app2 Base Address */ 69*4882a593Smuzhiyun #define CONFIG_SYS_BR3_PRELIM CONFIG_SYS_LBAPP2_BR_PRELIM 70*4882a593Smuzhiyun /* Local bus app2 Options */ 71*4882a593Smuzhiyun #define CONFIG_SYS_OR3_PRELIM CONFIG_SYS_LBAPP2_OR_PRELIM 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun #endif /* __CONFIG_H */ 74