1210c8c00SHeiko Schocher /* 2210c8c00SHeiko Schocher * (C) Copyright 2008 3210c8c00SHeiko Schocher * Heiko Schocher, DENX Software Engineering, hs@denx.de. 4210c8c00SHeiko Schocher * 5210c8c00SHeiko Schocher * This program is free software; you can redistribute it and/or 6210c8c00SHeiko Schocher * modify it under the terms of the GNU General Public License as 7210c8c00SHeiko Schocher * published by the Free Software Foundation; either version 2 of 8210c8c00SHeiko Schocher * the License, or (at your option) any later version. 9210c8c00SHeiko Schocher */ 10210c8c00SHeiko Schocher 11210c8c00SHeiko Schocher #ifndef __KEYMILE_COMMON_H 12210c8c00SHeiko Schocher #define __KEYMILE_COMMON_H 13210c8c00SHeiko Schocher 14b11f53f3SHeiko Schocher #define WRG_RESET 0x80 15b11f53f3SHeiko Schocher #define H_OPORTS_14 0x40 16b11f53f3SHeiko Schocher #define WRG_LED 0x02 17b11f53f3SHeiko Schocher #define WRL_BOOT 0x01 18b11f53f3SHeiko Schocher 19b11f53f3SHeiko Schocher #define H_OPORTS_SCC4_ENA 0x10 20b11f53f3SHeiko Schocher #define H_OPORTS_SCC4_FD_ENA 0x04 21b11f53f3SHeiko Schocher #define H_OPORTS_FCC1_PW_DWN 0x01 22b11f53f3SHeiko Schocher 23b11f53f3SHeiko Schocher #define PIGGY_PRESENT 0x80 24b11f53f3SHeiko Schocher 25b11f53f3SHeiko Schocher struct km_bec_fpga { 26b11f53f3SHeiko Schocher unsigned char id; 27b11f53f3SHeiko Schocher unsigned char rev; 28b11f53f3SHeiko Schocher unsigned char oprth; 29b11f53f3SHeiko Schocher unsigned char oprtl; 30b11f53f3SHeiko Schocher unsigned char res1[3]; 31b11f53f3SHeiko Schocher unsigned char bprth; 32b11f53f3SHeiko Schocher unsigned char bprtl; 33b11f53f3SHeiko Schocher unsigned char res2[6]; 34b11f53f3SHeiko Schocher unsigned char prst; 35b11f53f3SHeiko Schocher unsigned char res3[0xfff0]; 36b11f53f3SHeiko Schocher unsigned char pgy_id; 37b11f53f3SHeiko Schocher unsigned char pgy_rev; 38b11f53f3SHeiko Schocher unsigned char pgy_outputs; 39b11f53f3SHeiko Schocher unsigned char pgy_eth; 40b11f53f3SHeiko Schocher }; 41b11f53f3SHeiko Schocher 42*0d015202SHeiko Schocher #if !defined(CONFIG_PIGGY_MAC_ADRESS_OFFSET) 43*0d015202SHeiko Schocher #define CONFIG_PIGGY_MAC_ADRESS_OFFSET 0 44*0d015202SHeiko Schocher #endif 45*0d015202SHeiko Schocher 46210c8c00SHeiko Schocher int ethernet_present(void); 47210c8c00SHeiko Schocher int ivm_read_eeprom(void); 48210c8c00SHeiko Schocher 49210c8c00SHeiko Schocher #ifdef CONFIG_KEYMILE_HDLC_ENET 50210c8c00SHeiko Schocher int keymile_hdlc_enet_initialize(bd_t *bis); 51210c8c00SHeiko Schocher #endif 52dc71b248SHeiko Schocher 53dc71b248SHeiko Schocher int fdt_set_node_and_value(void *blob, 54dc71b248SHeiko Schocher char *nodename, 55dc71b248SHeiko Schocher char *regname, 56dc71b248SHeiko Schocher void *var, 57dc71b248SHeiko Schocher int size); 58dc71b248SHeiko Schocher int fdt_get_node_and_value(void *blob, 59dc71b248SHeiko Schocher char *nodename, 60dc71b248SHeiko Schocher char *propname, 61dc71b248SHeiko Schocher void **var); 62b11f53f3SHeiko Schocher 63b11f53f3SHeiko Schocher int i2c_soft_read_pin(void); 64210c8c00SHeiko Schocher #endif /* __KEYMILE_COMMON_H */ 65