]>
Commit | Line | Data |
---|---|---|
aaf224ab WD |
1 | /* |
2 | * (C) Copyright 2004, Li-Pro.Net <www.li-pro.net> | |
3 | * Stephan Linz <linz@li-pro.net> | |
4 | * | |
5 | * See file CREDITS for list of people who contributed to this | |
6 | * project. | |
7 | * | |
8 | * This program is free software; you can redistribute it and/or | |
9 | * modify it under the terms of the GNU General Public License as | |
10 | * published by the Free Software Foundation; either version 2 of | |
11 | * the License, or (at your option) any later version. | |
12 | * | |
13 | * This program is distributed in the hope that it will be useful, | |
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | * GNU General Public License for more details. | |
17 | * | |
18 | * You should have received a copy of the GNU General Public License | |
19 | * along with this program; if not, write to the Free Software | |
20 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, | |
21 | * MA 02111-1307 USA | |
22 | */ | |
23 | ||
24 | #include <common.h> | |
b1c0eaac | 25 | #include <netdev.h> |
aaf224ab WD |
26 | #include <nios-io.h> |
27 | #include <spi.h> | |
28 | ||
29 | #if defined(CONFIG_HW_WATCHDOG) | |
30 | extern void ssv_wd_pio_init(void); /* comes from ../common/wd_pio.c | |
31 | included by ./misc.c */ | |
32 | #endif | |
33 | ||
34 | void _default_hdlr (void) | |
35 | { | |
36 | printf ("default_hdlr\n"); | |
37 | } | |
38 | ||
39 | int board_early_init_f (void) | |
40 | { | |
41 | #if defined(CONFIG_HW_WATCHDOG) | |
42 | ssv_wd_pio_init(); | |
43 | #endif | |
44 | return 0; | |
45 | } | |
46 | ||
47 | int checkboard (void) | |
48 | { | |
49 | puts ( "Board: SSV DilNetPC ADNP/ESC1" | |
50 | #if defined(CONFIG_DNPEVA2) | |
51 | " on DNP/EVA2" | |
52 | #endif | |
53 | "\n"); | |
54 | #if defined(CONFIG_NIOS_BASE_32) | |
55 | puts ("Conf.: SSV Base 32 (nios_32)\n"); | |
56 | #endif | |
57 | ||
58 | return 0; | |
59 | } | |
60 | ||
9973e3c6 | 61 | phys_size_t initdram (int board_type) |
aaf224ab WD |
62 | { |
63 | return (0); | |
64 | } | |
65 | ||
66 | /* | |
67 | * The following are used to control the SPI chip selects for the SPI command. | |
68 | */ | |
ab3abcba | 69 | #if defined(CONFIG_CMD_SPI) && CONFIG_NIOS_SPI |
aaf224ab WD |
70 | |
71 | #define SPI_RTC_CS_MASK 0x00000001 | |
72 | ||
d255bb0e HS |
73 | int spi_cs_is_valid(unsigned int bus, unsigned int cs) |
74 | { | |
75 | return bus == 0 && cs == 0; | |
76 | } | |
77 | ||
78 | void spi_cs_activate(struct spi_slave *slave) | |
aaf224ab | 79 | { |
6d0f6bcf | 80 | nios_spi_t *spi = (nios_spi_t *)CONFIG_SYS_NIOS_SPIBASE; |
aaf224ab | 81 | |
d255bb0e | 82 | spi->slaveselect = SPI_RTC_CS_MASK; /* activate (1) */ |
aaf224ab WD |
83 | } |
84 | ||
d255bb0e HS |
85 | void spi_cs_deactivate(struct spi_slave *slave) |
86 | { | |
6d0f6bcf | 87 | nios_spi_t *spi = (nios_spi_t *)CONFIG_SYS_NIOS_SPIBASE; |
d255bb0e HS |
88 | |
89 | spi->slaveselect = 0; /* deactivate (0) */ | |
90 | } | |
aaf224ab | 91 | |
d39b5741 | 92 | #endif |
aaf224ab | 93 | |
b1c0eaac BW |
94 | #ifdef CONFIG_CMD_NET |
95 | int board_eth_init(bd_t *bis) | |
96 | { | |
97 | int rc = 0; | |
98 | #ifdef CONFIG_CS8900 | |
99 | rc = cs8900_initialize(0, CONFIG_CS8900_BASE); | |
100 | #endif | |
101 | return rc; | |
102 | } | |
103 | #endif |