1 /* 2 * (C) Copyright 2008 3 * Heiko Schocher, DENX Software Engineering, hs@denx.de. 4 * 5 * This program is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU General Public License as 7 * published by the Free Software Foundation; either version 2 of 8 * the License, or (at your option) any later version. 9 */ 10 11 #ifndef __KEYMILE_COMMON_H 12 #define __KEYMILE_COMMON_H 13 14 #define WRG_RESET 0x80 15 #define H_OPORTS_14 0x40 16 #define WRG_LED 0x02 17 #define WRL_BOOT 0x01 18 19 #define H_OPORTS_SCC4_ENA 0x10 20 #define H_OPORTS_SCC4_FD_ENA 0x04 21 #define H_OPORTS_FCC1_PW_DWN 0x01 22 23 #define PIGGY_PRESENT 0x80 24 25 struct km_bec_fpga { 26 unsigned char id; 27 unsigned char rev; 28 unsigned char oprth; 29 unsigned char oprtl; 30 unsigned char res1[3]; 31 unsigned char bprth; 32 unsigned char bprtl; 33 unsigned char res2[6]; 34 unsigned char prst; 35 unsigned char res3[0xfff0]; 36 unsigned char pgy_id; 37 unsigned char pgy_rev; 38 unsigned char pgy_outputs; 39 unsigned char pgy_eth; 40 }; 41 42 #if !defined(CONFIG_PIGGY_MAC_ADRESS_OFFSET) 43 #define CONFIG_PIGGY_MAC_ADRESS_OFFSET 0 44 #endif 45 46 int ethernet_present(void); 47 int ivm_read_eeprom(void); 48 49 #ifdef CONFIG_KEYMILE_HDLC_ENET 50 int keymile_hdlc_enet_initialize(bd_t *bis); 51 #endif 52 53 int set_km_env(void); 54 int fdt_set_node_and_value(void *blob, 55 char *nodename, 56 char *regname, 57 void *var, 58 int size); 59 int fdt_get_node_and_value(void *blob, 60 char *nodename, 61 char *propname, 62 void **var); 63 64 int i2c_soft_read_pin(void); 65 #endif /* __KEYMILE_COMMON_H */ 66