1c2e49f70SReinhard Arlt /* 2c2e49f70SReinhard Arlt * esd vme8349 U-Boot configuration file 3c2e49f70SReinhard Arlt * Copyright (c) 2008, 2009 esd gmbh Hannover Germany 4c2e49f70SReinhard Arlt * 52ae18241SWolfgang Denk * (C) Copyright 2006-2010 6c2e49f70SReinhard Arlt * Wolfgang Denk, DENX Software Engineering, wd@denx.de. 7c2e49f70SReinhard Arlt * 8c2e49f70SReinhard Arlt * reinhard.arlt@esd-electronics.de 9c2e49f70SReinhard Arlt * Based on the MPC8349EMDS config. 10c2e49f70SReinhard Arlt * 11*1a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 12c2e49f70SReinhard Arlt */ 13c2e49f70SReinhard Arlt 14c2e49f70SReinhard Arlt /* 15c2e49f70SReinhard Arlt * vme8349 board configuration file. 16c2e49f70SReinhard Arlt */ 17c2e49f70SReinhard Arlt 18c2e49f70SReinhard Arlt #ifndef __CONFIG_H 19c2e49f70SReinhard Arlt #define __CONFIG_H 20c2e49f70SReinhard Arlt 21c2e49f70SReinhard Arlt /* 221dee9be6SReinhard Arlt * Top level Makefile configuration choices 231dee9be6SReinhard Arlt */ 242ae18241SWolfgang Denk #ifdef CONFIG_CADDY2 251dee9be6SReinhard Arlt #define VME_CADDY2 261dee9be6SReinhard Arlt #endif 271dee9be6SReinhard Arlt 281dee9be6SReinhard Arlt /* 29c2e49f70SReinhard Arlt * High Level Configuration Options 30c2e49f70SReinhard Arlt */ 31c2e49f70SReinhard Arlt #define CONFIG_E300 1 /* E300 Family */ 32c2e49f70SReinhard Arlt #define CONFIG_MPC834x 1 /* MPC834x family */ 33c2e49f70SReinhard Arlt #define CONFIG_MPC8349 1 /* MPC8349 specific */ 34c2e49f70SReinhard Arlt #define CONFIG_VME8349 1 /* ESD VME8349 board specific */ 35c2e49f70SReinhard Arlt 362ae18241SWolfgang Denk #define CONFIG_SYS_TEXT_BASE 0xFFF00000 372ae18241SWolfgang Denk 381dee9be6SReinhard Arlt #define CONFIG_MISC_INIT_R 391dee9be6SReinhard Arlt 40c2e49f70SReinhard Arlt /* Don't enable PCI2 on vme834x - it doesn't exist physically. */ 41c2e49f70SReinhard Arlt #undef CONFIG_MPC83XX_PCI2 /* support for 2nd PCI controller */ 42c2e49f70SReinhard Arlt 432ae18241SWolfgang Denk #define CONFIG_PCI_66M 442ae18241SWolfgang Denk #ifdef CONFIG_PCI_66M 45c2e49f70SReinhard Arlt #define CONFIG_83XX_CLKIN 66000000 /* in Hz */ 46c2e49f70SReinhard Arlt #else 47c2e49f70SReinhard Arlt #define CONFIG_83XX_CLKIN 33000000 /* in Hz */ 48c2e49f70SReinhard Arlt #endif 49c2e49f70SReinhard Arlt 50c2e49f70SReinhard Arlt #ifndef CONFIG_SYS_CLK_FREQ 512ae18241SWolfgang Denk #ifdef CONFIG_PCI_66M 52c2e49f70SReinhard Arlt #define CONFIG_SYS_CLK_FREQ 66000000 53c2e49f70SReinhard Arlt #define HRCWL_CSB_TO_CLKIN HRCWL_CSB_TO_CLKIN_4X1 54c2e49f70SReinhard Arlt #else 55c2e49f70SReinhard Arlt #define CONFIG_SYS_CLK_FREQ 33000000 56c2e49f70SReinhard Arlt #define HRCWL_CSB_TO_CLKIN HRCWL_CSB_TO_CLKIN_8X1 57c2e49f70SReinhard Arlt #endif 58c2e49f70SReinhard Arlt #endif 59c2e49f70SReinhard Arlt 60c2e49f70SReinhard Arlt #define CONFIG_SYS_IMMR 0xE0000000 61c2e49f70SReinhard Arlt 62c2e49f70SReinhard Arlt #undef CONFIG_SYS_DRAM_TEST /* memory test, takes time */ 63c2e49f70SReinhard Arlt #define CONFIG_SYS_MEMTEST_START 0x00000000 /* memtest region */ 64c2e49f70SReinhard Arlt #define CONFIG_SYS_MEMTEST_END 0x00100000 65c2e49f70SReinhard Arlt 66c2e49f70SReinhard Arlt /* 67c2e49f70SReinhard Arlt * DDR Setup 68c2e49f70SReinhard Arlt */ 69c2e49f70SReinhard Arlt #define CONFIG_DDR_ECC /* only for ECC DDR module */ 70c2e49f70SReinhard Arlt #define CONFIG_DDR_ECC_CMD /* use DDR ECC user commands */ 711dee9be6SReinhard Arlt #define CONFIG_SPD_EEPROM 721dee9be6SReinhard Arlt #define SPD_EEPROM_ADDRESS 0x54 731dee9be6SReinhard Arlt #define CONFIG_SYS_READ_SPD vme8349_read_spd 74c2e49f70SReinhard Arlt #define CONFIG_SYS_83XX_DDR_USES_CS0 /* esd; Fsl board uses CS2/CS3 */ 75c2e49f70SReinhard Arlt 76c2e49f70SReinhard Arlt /* 77c2e49f70SReinhard Arlt * 32-bit data path mode. 78c2e49f70SReinhard Arlt * 79c2e49f70SReinhard Arlt * Please note that using this mode for devices with the real density of 64-bit 80c2e49f70SReinhard Arlt * effectively reduces the amount of available memory due to the effect of 81c2e49f70SReinhard Arlt * wrapping around while translating address to row/columns, for example in the 82c2e49f70SReinhard Arlt * 256MB module the upper 128MB get aliased with contents of the lower 83c2e49f70SReinhard Arlt * 128MB); normally this define should be used for devices with real 32-bit 84c2e49f70SReinhard Arlt * data path. 85c2e49f70SReinhard Arlt */ 86c2e49f70SReinhard Arlt #undef CONFIG_DDR_32BIT 87c2e49f70SReinhard Arlt 88c2e49f70SReinhard Arlt #define CONFIG_SYS_DDR_BASE 0x00000000 /* DDR is sys memory*/ 89c2e49f70SReinhard Arlt #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_BASE 90c2e49f70SReinhard Arlt #define CONFIG_SYS_DDR_SDRAM_BASE CONFIG_SYS_DDR_BASE 912fef4020SJoe Hershberger #define CONFIG_SYS_DDR_SDRAM_CLK_CNTL (DDR_SDRAM_CLK_CNTL_SS_EN \ 922fef4020SJoe Hershberger | DDR_SDRAM_CLK_CNTL_CLK_ADJUST_075) 93c2e49f70SReinhard Arlt #define CONFIG_DDR_2T_TIMING 942fef4020SJoe Hershberger #define CONFIG_SYS_DDRCDR (DDRCDR_DHC_EN \ 952fef4020SJoe Hershberger | DDRCDR_ODT \ 962fef4020SJoe Hershberger | DDRCDR_Q_DRN) 972fef4020SJoe Hershberger /* 0x80080001 */ 98c2e49f70SReinhard Arlt 99c2e49f70SReinhard Arlt /* 100c2e49f70SReinhard Arlt * FLASH on the Local Bus 101c2e49f70SReinhard Arlt */ 102c2e49f70SReinhard Arlt #define CONFIG_SYS_FLASH_CFI 103c2e49f70SReinhard Arlt #define CONFIG_FLASH_CFI_DRIVER /* use the CFI driver */ 1041dee9be6SReinhard Arlt #ifdef VME_CADDY2 1051dee9be6SReinhard Arlt #define CONFIG_SYS_FLASH_BASE 0xffc00000 /* start of FLASH */ 1061dee9be6SReinhard Arlt #define CONFIG_SYS_FLASH_SIZE 4 /* flash size in MB */ 107c2e49f70SReinhard Arlt #define CONFIG_SYS_BR0_PRELIM (CONFIG_SYS_FLASH_BASE | \ 1087d6a0982SJoe Hershberger BR_PS_16 | /* 16bit */ \ 1097d6a0982SJoe Hershberger BR_MS_GPCM | /* MSEL = GPCM */ \ 110c2e49f70SReinhard Arlt BR_V) /* valid */ 111c2e49f70SReinhard Arlt 1127d6a0982SJoe Hershberger #define CONFIG_SYS_OR0_PRELIM (MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \ 1137d6a0982SJoe Hershberger | OR_GPCM_XAM \ 1147d6a0982SJoe Hershberger | OR_GPCM_CSNT \ 1157d6a0982SJoe Hershberger | OR_GPCM_ACS_DIV2 \ 1167d6a0982SJoe Hershberger | OR_GPCM_XACS \ 1177d6a0982SJoe Hershberger | OR_GPCM_SCY_15 \ 1187d6a0982SJoe Hershberger | OR_GPCM_TRLX_SET \ 1197d6a0982SJoe Hershberger | OR_GPCM_EHTR_SET \ 1207d6a0982SJoe Hershberger | OR_GPCM_EAD) 1217d6a0982SJoe Hershberger /* 0xffc06ff7 */ 122c2e49f70SReinhard Arlt #define CONFIG_SYS_LBLAWBAR0_PRELIM CONFIG_SYS_FLASH_BASE 1237d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWAR0_PRELIM (LBLAWAR_EN | LBLAWAR_4MB) 1241dee9be6SReinhard Arlt #else 1251dee9be6SReinhard Arlt #define CONFIG_SYS_FLASH_BASE 0xf8000000 /* start of FLASH */ 1261dee9be6SReinhard Arlt #define CONFIG_SYS_FLASH_SIZE 128 /* flash size in MB */ 1271dee9be6SReinhard Arlt #define CONFIG_SYS_BR0_PRELIM (CONFIG_SYS_FLASH_BASE | \ 1287d6a0982SJoe Hershberger BR_PS_16 | /* 16bit */ \ 1297d6a0982SJoe Hershberger BR_MS_GPCM | /* MSEL = GPCM */ \ 1301dee9be6SReinhard Arlt BR_V) /* valid */ 1311dee9be6SReinhard Arlt 1327d6a0982SJoe Hershberger #define CONFIG_SYS_OR0_PRELIM (MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \ 1337d6a0982SJoe Hershberger | OR_GPCM_XAM \ 1347d6a0982SJoe Hershberger | OR_GPCM_CSNT \ 1357d6a0982SJoe Hershberger | OR_GPCM_ACS_DIV2 \ 1367d6a0982SJoe Hershberger | OR_GPCM_XACS \ 1377d6a0982SJoe Hershberger | OR_GPCM_SCY_15 \ 1387d6a0982SJoe Hershberger | OR_GPCM_TRLX_SET \ 1397d6a0982SJoe Hershberger | OR_GPCM_EHTR_SET \ 1407d6a0982SJoe Hershberger | OR_GPCM_EAD) 1417d6a0982SJoe Hershberger /* 0xf8006ff7 */ 1421dee9be6SReinhard Arlt #define CONFIG_SYS_LBLAWBAR0_PRELIM CONFIG_SYS_FLASH_BASE 1437d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWAR0_PRELIM (LBLAWAR_EN | LBLAWAR_128MB) 1441dee9be6SReinhard Arlt #endif 1451dee9be6SReinhard Arlt /* #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE */ 146c2e49f70SReinhard Arlt 1477d6a0982SJoe Hershberger #define CONFIG_SYS_WINDOW1_BASE 0xf0000000 1487d6a0982SJoe Hershberger #define CONFIG_SYS_BR1_PRELIM (CONFIG_SYS_WINDOW1_BASE \ 1497d6a0982SJoe Hershberger | BR_PS_32 \ 1507d6a0982SJoe Hershberger | BR_MS_GPCM \ 1517d6a0982SJoe Hershberger | BR_V) 1527d6a0982SJoe Hershberger /* 0xF0001801 */ 1537d6a0982SJoe Hershberger #define CONFIG_SYS_OR1_PRELIM (OR_AM_256KB \ 1547d6a0982SJoe Hershberger | OR_GPCM_SETA) 1557d6a0982SJoe Hershberger /* 0xfffc0208 */ 1567d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWBAR1_PRELIM CONFIG_SYS_WINDOW1_BASE 1577d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWAR1_PRELIM (LBLAWAR_EN | LBLAWAR_256KB) 158c2e49f70SReinhard Arlt 159c2e49f70SReinhard Arlt #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 160c2e49f70SReinhard Arlt #define CONFIG_SYS_MAX_FLASH_SECT 1024 /* sectors per device*/ 161c2e49f70SReinhard Arlt 162c2e49f70SReinhard Arlt #undef CONFIG_SYS_FLASH_CHECKSUM 163c2e49f70SReinhard Arlt #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase TO (ms) */ 164c2e49f70SReinhard Arlt #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write TO (ms) */ 165c2e49f70SReinhard Arlt 16614d0a02aSWolfgang Denk #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 167c2e49f70SReinhard Arlt 168c2e49f70SReinhard Arlt #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE) 169c2e49f70SReinhard Arlt #define CONFIG_SYS_RAMBOOT 170c2e49f70SReinhard Arlt #else 171c2e49f70SReinhard Arlt #undef CONFIG_SYS_RAMBOOT 172c2e49f70SReinhard Arlt #endif 173c2e49f70SReinhard Arlt 174c2e49f70SReinhard Arlt #define CONFIG_SYS_INIT_RAM_LOCK 1 175c2e49f70SReinhard Arlt #define CONFIG_SYS_INIT_RAM_ADDR 0xF7000000 /* Initial RAM addr */ 176553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE 0x1000 /* size */ 177c2e49f70SReinhard Arlt 178553f0982SWolfgang Denk #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_SIZE - \ 17925ddd1fbSWolfgang Denk GENERATED_GBL_DATA_SIZE) 180c2e49f70SReinhard Arlt #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 181c2e49f70SReinhard Arlt 182c2e49f70SReinhard Arlt #define CONFIG_SYS_MONITOR_LEN (256 * 1024) /* Reserve 256 kB */ 183c8a90646SKim Phillips #define CONFIG_SYS_MALLOC_LEN (256 * 1024) /* Malloc size */ 184c2e49f70SReinhard Arlt 185c2e49f70SReinhard Arlt /* 186c2e49f70SReinhard Arlt * Local Bus LCRR and LBCR regs 1871dee9be6SReinhard Arlt * LCRR: no DLL bypass, Clock divider is 4 188c2e49f70SReinhard Arlt * External Local Bus rate is 189c2e49f70SReinhard Arlt * CLKIN * HRCWL_CSB_TO_CLKIN / HRCWL_LCL_BUS_TO_SCB_CLK / LCRR_CLKDIV 190c2e49f70SReinhard Arlt */ 191c7190f02SKim Phillips #define CONFIG_SYS_LCRR_CLKDIV LCRR_CLKDIV_4 192c2e49f70SReinhard Arlt #define CONFIG_SYS_LBC_LBCR 0x00000000 193c2e49f70SReinhard Arlt 194c2e49f70SReinhard Arlt #undef CONFIG_SYS_LB_SDRAM /* if board has SDRAM on local bus */ 195c2e49f70SReinhard Arlt 196c2e49f70SReinhard Arlt /* 197c2e49f70SReinhard Arlt * Serial Port 198c2e49f70SReinhard Arlt */ 199c2e49f70SReinhard Arlt #define CONFIG_CONS_INDEX 1 200c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_SERIAL 201c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_REG_SIZE 1 202c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_CLK get_bus_freq(0) 203c2e49f70SReinhard Arlt 204c2e49f70SReinhard Arlt #define CONFIG_SYS_BAUDRATE_TABLE \ 205c2e49f70SReinhard Arlt {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200} 206c2e49f70SReinhard Arlt 207c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR + 0x4500) 208c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR + 0x4600) 209c2e49f70SReinhard Arlt 210c2e49f70SReinhard Arlt #define CONFIG_CMDLINE_EDITING /* add command line history */ 211a059e90eSKim Phillips #define CONFIG_AUTO_COMPLETE /* add autocompletion support */ 212c2e49f70SReinhard Arlt 213c2e49f70SReinhard Arlt /* I2C */ 21400f792e0SHeiko Schocher #define CONFIG_SYS_I2C 21500f792e0SHeiko Schocher #define CONFIG_SYS_I2C_FSL 21600f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SPEED 400000 21700f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SLAVE 0x7F 21800f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_OFFSET 0x3000 21900f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C2_SPEED 400000 22000f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C2_SLAVE 0x7F 22100f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C2_OFFSET 0x3100 22200f792e0SHeiko Schocher #define CONFIG_SYS_I2C_NOPROBES { {0, 0x69} } 223efaf6f1bSPaul Gortmaker /* could also use CONFIG_I2C_MULTI_BUS and CONFIG_SYS_SPD_BUS_NUM... */ 224c2e49f70SReinhard Arlt 225c2e49f70SReinhard Arlt #define CONFIG_SYS_I2C_8574_ADDR2 0x20 /* I2C1, PCF8574 */ 226c2e49f70SReinhard Arlt 227c2e49f70SReinhard Arlt /* TSEC */ 228c2e49f70SReinhard Arlt #define CONFIG_SYS_TSEC1_OFFSET 0x24000 229c2e49f70SReinhard Arlt #define CONFIG_SYS_TSEC1 (CONFIG_SYS_IMMR + CONFIG_SYS_TSEC1_OFFSET) 230c2e49f70SReinhard Arlt #define CONFIG_SYS_TSEC2_OFFSET 0x25000 231c2e49f70SReinhard Arlt #define CONFIG_SYS_TSEC2 (CONFIG_SYS_IMMR + CONFIG_SYS_TSEC2_OFFSET) 232c2e49f70SReinhard Arlt 233c2e49f70SReinhard Arlt /* 234c2e49f70SReinhard Arlt * General PCI 235c2e49f70SReinhard Arlt * Addresses are mapped 1-1. 236c2e49f70SReinhard Arlt */ 237c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MEM_BASE 0x80000000 238c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MEM_PHYS CONFIG_SYS_PCI1_MEM_BASE 239c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MEM_SIZE 0x10000000 /* 256M */ 240c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MMIO_BASE 0x90000000 241c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MMIO_PHYS CONFIG_SYS_PCI1_MMIO_BASE 242c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MMIO_SIZE 0x10000000 /* 256M */ 243c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_IO_BASE 0x00000000 244c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_IO_PHYS 0xE2000000 245c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_IO_SIZE 0x00100000 /* 1M */ 246c2e49f70SReinhard Arlt 247c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MEM_BASE 0xA0000000 248c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MEM_PHYS CONFIG_SYS_PCI2_MEM_BASE 249c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MEM_SIZE 0x10000000 /* 256M */ 250c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MMIO_BASE 0xB0000000 251c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MMIO_PHYS CONFIG_SYS_PCI2_MMIO_BASE 252c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MMIO_SIZE 0x10000000 /* 256M */ 253c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_IO_BASE 0x00000000 254c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_IO_PHYS 0xE2100000 255c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_IO_SIZE 0x00100000 /* 1M */ 256c2e49f70SReinhard Arlt 257c2e49f70SReinhard Arlt #if defined(CONFIG_PCI) 258c2e49f70SReinhard Arlt 259c2e49f70SReinhard Arlt #define PCI_64BIT 260c2e49f70SReinhard Arlt #define PCI_ONE_PCI1 261c2e49f70SReinhard Arlt #if defined(PCI_64BIT) 262c2e49f70SReinhard Arlt #undef PCI_ALL_PCI1 263c2e49f70SReinhard Arlt #undef PCI_TWO_PCI1 264c2e49f70SReinhard Arlt #undef PCI_ONE_PCI1 265c2e49f70SReinhard Arlt #endif 266c2e49f70SReinhard Arlt 2671dee9be6SReinhard Arlt #ifndef VME_CADDY2 2681dee9be6SReinhard Arlt #endif 269c2e49f70SReinhard Arlt 270c2e49f70SReinhard Arlt #undef CONFIG_EEPRO100 271c2e49f70SReinhard Arlt #undef CONFIG_TULIP 272c2e49f70SReinhard Arlt 273c2e49f70SReinhard Arlt #if !defined(CONFIG_PCI_PNP) 274c2e49f70SReinhard Arlt #define PCI_ENET0_IOADDR 0xFIXME 275c2e49f70SReinhard Arlt #define PCI_ENET0_MEMADDR 0xFIXME 276c2e49f70SReinhard Arlt #define PCI_IDSEL_NUMBER 0xFIXME 277c2e49f70SReinhard Arlt #endif 278c2e49f70SReinhard Arlt 2791dee9be6SReinhard Arlt #define CONFIG_PCI_SCAN_SHOW /* show pci devices on startup */ 2801dee9be6SReinhard Arlt #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1957 /* Freescale */ 2811dee9be6SReinhard Arlt 282c2e49f70SReinhard Arlt #endif /* CONFIG_PCI */ 283c2e49f70SReinhard Arlt 284c2e49f70SReinhard Arlt /* 285c2e49f70SReinhard Arlt * TSEC configuration 286c2e49f70SReinhard Arlt */ 2871dee9be6SReinhard Arlt #ifdef VME_CADDY2 2881dee9be6SReinhard Arlt #else 289c2e49f70SReinhard Arlt #define CONFIG_TSEC_ENET /* TSEC ethernet support */ 2901dee9be6SReinhard Arlt #endif 291c2e49f70SReinhard Arlt 292c2e49f70SReinhard Arlt #if defined(CONFIG_TSEC_ENET) 293c2e49f70SReinhard Arlt 294c2e49f70SReinhard Arlt #define CONFIG_GMII /* MII PHY management */ 295c2e49f70SReinhard Arlt #define CONFIG_TSEC1 296c2e49f70SReinhard Arlt #define CONFIG_TSEC1_NAME "TSEC0" 297c2e49f70SReinhard Arlt #define CONFIG_TSEC2 298c2e49f70SReinhard Arlt #define CONFIG_TSEC2_NAME "TSEC1" 299c2e49f70SReinhard Arlt #define CONFIG_PHY_M88E1111 300c2e49f70SReinhard Arlt #define TSEC1_PHY_ADDR 0x08 301c2e49f70SReinhard Arlt #define TSEC2_PHY_ADDR 0x10 302c2e49f70SReinhard Arlt #define TSEC1_PHYIDX 0 303c2e49f70SReinhard Arlt #define TSEC2_PHYIDX 0 304c2e49f70SReinhard Arlt #define TSEC1_FLAGS TSEC_GIGABIT 305c2e49f70SReinhard Arlt #define TSEC2_FLAGS TSEC_GIGABIT 306c2e49f70SReinhard Arlt 307c2e49f70SReinhard Arlt /* Options are: TSEC[0-1] */ 308c2e49f70SReinhard Arlt #define CONFIG_ETHPRIME "TSEC0" 309c2e49f70SReinhard Arlt 310c2e49f70SReinhard Arlt #endif /* CONFIG_TSEC_ENET */ 311c2e49f70SReinhard Arlt 312c2e49f70SReinhard Arlt /* 313c2e49f70SReinhard Arlt * Environment 314c2e49f70SReinhard Arlt */ 315c2e49f70SReinhard Arlt #ifndef CONFIG_SYS_RAMBOOT 316c2e49f70SReinhard Arlt #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE + 0xc0000) 317c2e49f70SReinhard Arlt #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K(one sector) for env */ 318c2e49f70SReinhard Arlt #define CONFIG_ENV_SIZE 0x2000 319c2e49f70SReinhard Arlt 320c2e49f70SReinhard Arlt /* Address and size of Redundant Environment Sector */ 321c2e49f70SReinhard Arlt #define CONFIG_ENV_ADDR_REDUND (CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE) 322c2e49f70SReinhard Arlt #define CONFIG_ENV_SIZE_REDUND (CONFIG_ENV_SIZE) 323c2e49f70SReinhard Arlt 324c2e49f70SReinhard Arlt #else 325c2e49f70SReinhard Arlt #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - 0x1000) 326c2e49f70SReinhard Arlt #define CONFIG_ENV_SIZE 0x2000 327c2e49f70SReinhard Arlt #endif 328c2e49f70SReinhard Arlt 329c2e49f70SReinhard Arlt #define CONFIG_LOADS_ECHO /* echo on for serial download */ 330c2e49f70SReinhard Arlt #define CONFIG_SYS_LOADS_BAUD_CHANGE /* allow baudrate change */ 331c2e49f70SReinhard Arlt 332c2e49f70SReinhard Arlt /* 333c2e49f70SReinhard Arlt * BOOTP options 334c2e49f70SReinhard Arlt */ 335c2e49f70SReinhard Arlt #define CONFIG_BOOTP_BOOTFILESIZE 336c2e49f70SReinhard Arlt #define CONFIG_BOOTP_BOOTPATH 337c2e49f70SReinhard Arlt #define CONFIG_BOOTP_GATEWAY 338c2e49f70SReinhard Arlt #define CONFIG_BOOTP_HOSTNAME 339c2e49f70SReinhard Arlt 340c2e49f70SReinhard Arlt /* 341c2e49f70SReinhard Arlt * Command line configuration. 342c2e49f70SReinhard Arlt */ 343c2e49f70SReinhard Arlt #define CONFIG_SYS_RTC_BUS_NUM 0x01 344c2e49f70SReinhard Arlt #define CONFIG_SYS_I2C_RTC_ADDR 0x32 345c2e49f70SReinhard Arlt #define CONFIG_RTC_RX8025 346c2e49f70SReinhard Arlt 347c2e49f70SReinhard Arlt /* Pass Ethernet MAC to VxWorks */ 348c2e49f70SReinhard Arlt #define CONFIG_SYS_VXWORKS_MAC_PTR 0x000043f0 349c2e49f70SReinhard Arlt 350c2e49f70SReinhard Arlt #undef CONFIG_WATCHDOG /* watchdog disabled */ 351c2e49f70SReinhard Arlt 352c2e49f70SReinhard Arlt /* 353c2e49f70SReinhard Arlt * Miscellaneous configurable options 354c2e49f70SReinhard Arlt */ 355c2e49f70SReinhard Arlt #define CONFIG_SYS_LONGHELP /* undef to save memory */ 356c2e49f70SReinhard Arlt #define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */ 357c2e49f70SReinhard Arlt 358c2e49f70SReinhard Arlt /* 359c2e49f70SReinhard Arlt * For booting Linux, the board info and command line data 3609f530d59SIra W. Snyder * have to be in the first 256 MB of memory, since this is 361c2e49f70SReinhard Arlt * the maximum mapped by the Linux kernel during initialization. 362c2e49f70SReinhard Arlt */ 3639f530d59SIra W. Snyder #define CONFIG_SYS_BOOTMAPSZ (256 << 20) /* Init Memory map for Linux*/ 364c2e49f70SReinhard Arlt 365c2e49f70SReinhard Arlt #define CONFIG_SYS_RCWH_PCIHOST 0x80000000 /* PCIHOST */ 366c2e49f70SReinhard Arlt 367c2e49f70SReinhard Arlt #define CONFIG_SYS_HRCW_LOW (\ 368c2e49f70SReinhard Arlt HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ 369c2e49f70SReinhard Arlt HRCWL_DDR_TO_SCB_CLK_1X1 |\ 370c2e49f70SReinhard Arlt HRCWL_CSB_TO_CLKIN |\ 371c2e49f70SReinhard Arlt HRCWL_VCO_1X2 |\ 372c2e49f70SReinhard Arlt HRCWL_CORE_TO_CSB_2X1) 373c2e49f70SReinhard Arlt 374c2e49f70SReinhard Arlt #if defined(PCI_64BIT) 375c2e49f70SReinhard Arlt #define CONFIG_SYS_HRCW_HIGH (\ 376c2e49f70SReinhard Arlt HRCWH_PCI_HOST |\ 377c2e49f70SReinhard Arlt HRCWH_64_BIT_PCI |\ 378c2e49f70SReinhard Arlt HRCWH_PCI1_ARBITER_ENABLE |\ 379c2e49f70SReinhard Arlt HRCWH_PCI2_ARBITER_DISABLE |\ 380c2e49f70SReinhard Arlt HRCWH_CORE_ENABLE |\ 381c2e49f70SReinhard Arlt HRCWH_FROM_0X00000100 |\ 382c2e49f70SReinhard Arlt HRCWH_BOOTSEQ_DISABLE |\ 383c2e49f70SReinhard Arlt HRCWH_SW_WATCHDOG_DISABLE |\ 384c2e49f70SReinhard Arlt HRCWH_ROM_LOC_LOCAL_16BIT |\ 385c2e49f70SReinhard Arlt HRCWH_TSEC1M_IN_GMII |\ 386c2e49f70SReinhard Arlt HRCWH_TSEC2M_IN_GMII) 387c2e49f70SReinhard Arlt #else 388c2e49f70SReinhard Arlt #define CONFIG_SYS_HRCW_HIGH (\ 389c2e49f70SReinhard Arlt HRCWH_PCI_HOST |\ 390c2e49f70SReinhard Arlt HRCWH_32_BIT_PCI |\ 391c2e49f70SReinhard Arlt HRCWH_PCI1_ARBITER_ENABLE |\ 392c2e49f70SReinhard Arlt HRCWH_PCI2_ARBITER_ENABLE |\ 393c2e49f70SReinhard Arlt HRCWH_CORE_ENABLE |\ 394c2e49f70SReinhard Arlt HRCWH_FROM_0X00000100 |\ 395c2e49f70SReinhard Arlt HRCWH_BOOTSEQ_DISABLE |\ 396c2e49f70SReinhard Arlt HRCWH_SW_WATCHDOG_DISABLE |\ 397c2e49f70SReinhard Arlt HRCWH_ROM_LOC_LOCAL_16BIT |\ 398c2e49f70SReinhard Arlt HRCWH_TSEC1M_IN_GMII |\ 399c2e49f70SReinhard Arlt HRCWH_TSEC2M_IN_GMII) 400c2e49f70SReinhard Arlt #endif 401c2e49f70SReinhard Arlt 402c2e49f70SReinhard Arlt /* System IO Config */ 403c2e49f70SReinhard Arlt #define CONFIG_SYS_SICRH 0 404c2e49f70SReinhard Arlt #define CONFIG_SYS_SICRL SICRL_LDP_A 405c2e49f70SReinhard Arlt 406c2e49f70SReinhard Arlt #define CONFIG_SYS_HID0_INIT 0x000000000 4071a2e203bSKim Phillips #define CONFIG_SYS_HID0_FINAL (HID0_ENABLE_MACHINE_CHECK | \ 4081a2e203bSKim Phillips HID0_ENABLE_INSTRUCTION_CACHE) 409c2e49f70SReinhard Arlt 410c2e49f70SReinhard Arlt #define CONFIG_SYS_HID2 HID2_HBE 411c2e49f70SReinhard Arlt 412c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO1_PRELIM 413c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO1_DIR 0x00100000 414c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO1_DAT 0x00100000 415c2e49f70SReinhard Arlt 416c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO2_PRELIM 417c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO2_DIR 0x78900000 418c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO2_DAT 0x70100000 419c2e49f70SReinhard Arlt 420c2e49f70SReinhard Arlt #define CONFIG_HIGH_BATS /* High BATs supported */ 421c2e49f70SReinhard Arlt 422c2e49f70SReinhard Arlt /* DDR @ 0x00000000 */ 42372cd4087SJoe Hershberger #define CONFIG_SYS_IBAT0L (CONFIG_SYS_SDRAM_BASE | BATL_PP_RW | \ 424c2e49f70SReinhard Arlt BATL_MEMCOHERENCE) 425c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT0U (CONFIG_SYS_SDRAM_BASE | BATU_BL_256M | \ 426c2e49f70SReinhard Arlt BATU_VS | BATU_VP) 427c2e49f70SReinhard Arlt 428c2e49f70SReinhard Arlt /* PCI @ 0x80000000 */ 429c2e49f70SReinhard Arlt #ifdef CONFIG_PCI 430842033e6SGabor Juhos #define CONFIG_PCI_INDIRECT_BRIDGE 43172cd4087SJoe Hershberger #define CONFIG_SYS_IBAT1L (CONFIG_SYS_PCI1_MEM_BASE | BATL_PP_RW | \ 432c2e49f70SReinhard Arlt BATL_MEMCOHERENCE) 433c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT1U (CONFIG_SYS_PCI1_MEM_BASE | BATU_BL_256M | \ 434c2e49f70SReinhard Arlt BATU_VS | BATU_VP) 43572cd4087SJoe Hershberger #define CONFIG_SYS_IBAT2L (CONFIG_SYS_PCI1_MMIO_BASE | BATL_PP_RW | \ 436c2e49f70SReinhard Arlt BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 437c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT2U (CONFIG_SYS_PCI1_MMIO_BASE | BATU_BL_256M | \ 438c2e49f70SReinhard Arlt BATU_VS | BATU_VP) 439c2e49f70SReinhard Arlt #else 440c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT1L (0) 441c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT1U (0) 442c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT2L (0) 443c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT2U (0) 444c2e49f70SReinhard Arlt #endif 445c2e49f70SReinhard Arlt 446c2e49f70SReinhard Arlt #ifdef CONFIG_MPC83XX_PCI2 44772cd4087SJoe Hershberger #define CONFIG_SYS_IBAT3L (CONFIG_SYS_PCI2_MEM_BASE | BATL_PP_RW | \ 448c2e49f70SReinhard Arlt BATL_MEMCOHERENCE) 449c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT3U (CONFIG_SYS_PCI2_MEM_BASE | BATU_BL_256M | \ 450c2e49f70SReinhard Arlt BATU_VS | BATU_VP) 45172cd4087SJoe Hershberger #define CONFIG_SYS_IBAT4L (CONFIG_SYS_PCI2_MMIO_BASE | BATL_PP_RW | \ 452c2e49f70SReinhard Arlt BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 453c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT4U (CONFIG_SYS_PCI2_MMIO_BASE | BATU_BL_256M | \ 454c2e49f70SReinhard Arlt BATU_VS | BATU_VP) 455c2e49f70SReinhard Arlt #else 456c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT3L (0) 457c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT3U (0) 458c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT4L (0) 459c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT4U (0) 460c2e49f70SReinhard Arlt #endif 461c2e49f70SReinhard Arlt 462c2e49f70SReinhard Arlt /* IMMRBAR @ 0xE0000000, PCI IO @ 0xE2000000 */ 46372cd4087SJoe Hershberger #define CONFIG_SYS_IBAT5L (CONFIG_SYS_IMMR | BATL_PP_RW | \ 464c2e49f70SReinhard Arlt BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 465c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT5U (CONFIG_SYS_IMMR | BATU_BL_256M | \ 466c2e49f70SReinhard Arlt BATU_VS | BATU_VP) 467c2e49f70SReinhard Arlt 46872cd4087SJoe Hershberger #define CONFIG_SYS_IBAT6L (0xF0000000 | BATL_PP_RW | BATL_MEMCOHERENCE) 469c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT6U (0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP) 470c2e49f70SReinhard Arlt 471c2e49f70SReinhard Arlt #if (CONFIG_SYS_DDR_SIZE == 512) 472c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT7L (CONFIG_SYS_SDRAM_BASE+0x10000000 | \ 47372cd4087SJoe Hershberger BATL_PP_RW | BATL_MEMCOHERENCE) 474c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT7U (CONFIG_SYS_SDRAM_BASE+0x10000000 | \ 475c2e49f70SReinhard Arlt BATU_BL_256M | BATU_VS | BATU_VP) 476c2e49f70SReinhard Arlt #else 477c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT7L (0) 478c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT7U (0) 479c2e49f70SReinhard Arlt #endif 480c2e49f70SReinhard Arlt 481c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT0L CONFIG_SYS_IBAT0L 482c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT0U CONFIG_SYS_IBAT0U 483c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT1L CONFIG_SYS_IBAT1L 484c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT1U CONFIG_SYS_IBAT1U 485c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT2L CONFIG_SYS_IBAT2L 486c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT2U CONFIG_SYS_IBAT2U 487c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT3L CONFIG_SYS_IBAT3L 488c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT3U CONFIG_SYS_IBAT3U 489c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT4L CONFIG_SYS_IBAT4L 490c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT4U CONFIG_SYS_IBAT4U 491c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT5L CONFIG_SYS_IBAT5L 492c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT5U CONFIG_SYS_IBAT5U 493c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 494c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 495c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 496c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 497c2e49f70SReinhard Arlt 498c2e49f70SReinhard Arlt #if defined(CONFIG_CMD_KGDB) 499c2e49f70SReinhard Arlt #define CONFIG_KGDB_BAUDRATE 230400 /* speed of kgdb serial port */ 500c2e49f70SReinhard Arlt #endif 501c2e49f70SReinhard Arlt 502c2e49f70SReinhard Arlt /* 503c2e49f70SReinhard Arlt * Environment Configuration 504c2e49f70SReinhard Arlt */ 505c2e49f70SReinhard Arlt #define CONFIG_ENV_OVERWRITE 506c2e49f70SReinhard Arlt 507c2e49f70SReinhard Arlt #if defined(CONFIG_TSEC_ENET) 508c2e49f70SReinhard Arlt #define CONFIG_HAS_ETH0 509c2e49f70SReinhard Arlt #define CONFIG_HAS_ETH1 510c2e49f70SReinhard Arlt #endif 511c2e49f70SReinhard Arlt 512c2e49f70SReinhard Arlt #define CONFIG_HOSTNAME VME8349 5138b3637c6SJoe Hershberger #define CONFIG_ROOTPATH "/tftpboot/rootfs" 514b3f44c21SJoe Hershberger #define CONFIG_BOOTFILE "uImage" 515c2e49f70SReinhard Arlt 51679f516bcSKim Phillips #define CONFIG_LOADADDR 800000 /* def location for tftp and bootm */ 517c2e49f70SReinhard Arlt 518c2e49f70SReinhard Arlt #define CONFIG_EXTRA_ENV_SETTINGS \ 519c2e49f70SReinhard Arlt "netdev=eth0\0" \ 520c2e49f70SReinhard Arlt "hostname=vme8349\0" \ 521c2e49f70SReinhard Arlt "nfsargs=setenv bootargs root=/dev/nfs rw " \ 522c2e49f70SReinhard Arlt "nfsroot=${serverip}:${rootpath}\0" \ 523c2e49f70SReinhard Arlt "ramargs=setenv bootargs root=/dev/ram rw\0" \ 524c2e49f70SReinhard Arlt "addip=setenv bootargs ${bootargs} " \ 525c2e49f70SReinhard Arlt "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \ 526c2e49f70SReinhard Arlt ":${hostname}:${netdev}:off panic=1\0" \ 527c2e49f70SReinhard Arlt "addtty=setenv bootargs ${bootargs} console=ttyS0,${baudrate}\0"\ 528c2e49f70SReinhard Arlt "flash_nfs=run nfsargs addip addtty;" \ 529c2e49f70SReinhard Arlt "bootm ${kernel_addr}\0" \ 530c2e49f70SReinhard Arlt "flash_self=run ramargs addip addtty;" \ 531c2e49f70SReinhard Arlt "bootm ${kernel_addr} ${ramdisk_addr}\0" \ 532c2e49f70SReinhard Arlt "net_nfs=tftp 200000 ${bootfile};run nfsargs addip addtty;" \ 533c2e49f70SReinhard Arlt "bootm\0" \ 534c2e49f70SReinhard Arlt "load=tftp 100000 /tftpboot/bdi2000/vme8349.bin\0" \ 535c2e49f70SReinhard Arlt "update=protect off fff00000 fff3ffff; " \ 536c2e49f70SReinhard Arlt "era fff00000 fff3ffff; cp.b 100000 fff00000 ${filesize}\0" \ 537c2e49f70SReinhard Arlt "upd=run load update\0" \ 53879f516bcSKim Phillips "fdtaddr=780000\0" \ 539c2e49f70SReinhard Arlt "fdtfile=vme8349.dtb\0" \ 540c2e49f70SReinhard Arlt "" 541c2e49f70SReinhard Arlt 542c2e49f70SReinhard Arlt #define CONFIG_NFSBOOTCOMMAND \ 543c2e49f70SReinhard Arlt "setenv bootargs root=/dev/nfs rw " \ 544c2e49f70SReinhard Arlt "nfsroot=$serverip:$rootpath " \ 545c7357a2bSJoe Hershberger "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:" \ 546c7357a2bSJoe Hershberger "$netdev:off " \ 547c2e49f70SReinhard Arlt "console=$consoledev,$baudrate $othbootargs;" \ 548c2e49f70SReinhard Arlt "tftp $loadaddr $bootfile;" \ 549c2e49f70SReinhard Arlt "tftp $fdtaddr $fdtfile;" \ 550c2e49f70SReinhard Arlt "bootm $loadaddr - $fdtaddr" 551c2e49f70SReinhard Arlt 552c2e49f70SReinhard Arlt #define CONFIG_RAMBOOTCOMMAND \ 553c2e49f70SReinhard Arlt "setenv bootargs root=/dev/ram rw " \ 554c2e49f70SReinhard Arlt "console=$consoledev,$baudrate $othbootargs;" \ 555c2e49f70SReinhard Arlt "tftp $ramdiskaddr $ramdiskfile;" \ 556c2e49f70SReinhard Arlt "tftp $loadaddr $bootfile;" \ 557c2e49f70SReinhard Arlt "tftp $fdtaddr $fdtfile;" \ 558c2e49f70SReinhard Arlt "bootm $loadaddr $ramdiskaddr $fdtaddr" 559c2e49f70SReinhard Arlt 560c2e49f70SReinhard Arlt #define CONFIG_BOOTCOMMAND "run flash_self" 561c2e49f70SReinhard Arlt 5621dee9be6SReinhard Arlt #ifndef __ASSEMBLY__ 5631dee9be6SReinhard Arlt int vme8349_read_spd(unsigned char chip, unsigned int addr, int alen, 5641dee9be6SReinhard Arlt unsigned char *buffer, int len); 5651dee9be6SReinhard Arlt #endif 5661dee9be6SReinhard Arlt 567c2e49f70SReinhard Arlt #endif /* __CONFIG_H */ 568