Merge branch 'next' of git://git.denx.de/u-boot-nios

This commit is contained in:
Wolfgang Denk 2011-02-09 20:54:53 +01:00
commit 65b57ebb30
5 changed files with 30 additions and 1 deletions

View File

@ -26,6 +26,11 @@ static inline int gpio_request(unsigned gpio, const char *label)
return 0;
}
static inline int gpio_free(unsigned gpio)
{
return 0;
}
static inline int gpio_direction_input(unsigned gpio)
{
writel(1, CONFIG_SYS_GPIO_BASE + (gpio << 2));
@ -47,12 +52,19 @@ static inline void gpio_set_value(unsigned gpio, int value)
{
writel(value ? 3 : 2, CONFIG_SYS_GPIO_BASE + (gpio << 2));
}
static inline int gpio_is_valid(int number)
{
return ((unsigned)number) < CONFIG_SYS_GPIO_WIDTH;
}
#else
extern int gpio_request(unsigned gpio, const char *label);
extern int gpio_free(unsigned gpio);
extern int gpio_direction_input(unsigned gpio);
extern int gpio_direction_output(unsigned gpio, int value);
extern int gpio_get_value(unsigned gpio);
extern void gpio_set_value(unsigned gpio, int value);
extern int gpio_is_valid(int number);
#endif /* CONFIG_SYS_GPIO_BASE */
#endif /* _ASM_NIOS2_GPIO_H_ */

View File

@ -17,7 +17,7 @@ typedef unsigned short __kernel_ipc_pid_t;
typedef unsigned short __kernel_uid_t;
typedef unsigned short __kernel_gid_t;
typedef unsigned long __kernel_size_t;
typedef int __kernel_ssize_t;
typedef long __kernel_ssize_t;
typedef int __kernel_ptrdiff_t;
typedef long __kernel_time_t;
typedef long __kernel_suseconds_t;

View File

@ -50,6 +50,7 @@
/* led_pio.s1 is a altera_avalon_pio */
#define LED_PIO_BASE 0x82120870
#define LED_PIO_WIDTH 8
/* high_res_timer.s1 is a altera_avalon_timer */
#define CONFIG_SYS_TIMER_BASE 0x82120820

View File

@ -10,6 +10,7 @@
#ifndef CONFIG_SYS_GPIO_BASE
#define ALTERA_PIO_BASE LED_PIO_BASE
#define ALTERA_PIO_WIDTH LED_PIO_WIDTH
#define ALTERA_PIO_DATA (ALTERA_PIO_BASE + 0)
#define ALTERA_PIO_DIR (ALTERA_PIO_BASE + 4)
static u32 pio_data_reg;
@ -20,6 +21,11 @@ int gpio_request(unsigned gpio, const char *label)
return 0;
}
int gpio_free(unsigned gpio)
{
return 0;
}
int gpio_direction_input(unsigned gpio)
{
u32 mask = 1 << gpio;
@ -57,4 +63,9 @@ void gpio_set_value(unsigned gpio, int value)
pio_data_reg &= ~mask;
writel(pio_data_reg, ALTERA_PIO_DATA);
}
int gpio_is_valid(int number)
{
return ((unsigned)number) < ALTERA_PIO_WIDTH;
}
#endif

View File

@ -70,6 +70,11 @@ void spi_init(void)
{
}
void spi_set_speed(struct spi_slave *slave, uint hz)
{
/* altera spi core does not support programmable speed */
}
struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs,
unsigned int max_hz, unsigned int mode)
{