diff options
author | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2008-05-15 15:10:38 +0000 |
---|---|---|
committer | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2008-05-15 15:10:38 +0000 |
commit | 42bf1b9f13d9269d9a98de4bdc1a11365865ef42 (patch) | |
tree | b0ea837f63ea5ac5d6d04473f492d6329a3ee450 /c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c | |
parent | 2008-05-14 Till Straumann <strauman@slac.stanford.edu> (diff) | |
download | rtems-42bf1b9f13d9269d9a98de4bdc1a11365865ef42.tar.bz2 |
adapted gen83xx to new board
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c b/c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c index f49ae95b6b..8fddc2b680 100644 --- a/c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c +++ b/c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c @@ -21,9 +21,11 @@ #include <bsp/irq.h> #include <bsp.h> #if defined(MPC8349EAMDS) -#include <libchip/i2c-2b-eeprom.h> #include <libchip/spi-flash-m25p40.h> #endif +#if defined(HSC_CM01) +#include <libchip/spi-fram-fm25l256.h> +#endif /*=========================================================================*\ | Board-specific adaptation functions | @@ -189,7 +191,8 @@ static mpc83xx_spi_desc_t bsp_spi_bus_desc = { { /* our private fields */ reg_ptr: &mpc83xx.spi, initialized: FALSE, - irq_number: BSP_IPIC_IRQ_SPI + irq_number: BSP_IPIC_IRQ_SPI, + base_frq : 0 /* filled in during init */ } }; @@ -248,6 +251,11 @@ rtems_status_code bsp_register_spi mpc83xx.gpio[0].gpdr &= ~(0xf << (31-27)); #endif /* + * update base frequency in spi descriptor + */ + bsp_spi_bus_desc.softc.base_frq = BSP_bus_frequency; + + /* * register SPI bus */ ret_code = rtems_libi2c_register_bus("/dev/spi", @@ -256,10 +264,10 @@ rtems_status_code bsp_register_spi return -ret_code; } spi_busno = ret_code; +#if defined(MPC8349EAMDS) /* - * register M25P40 Flash, when available + * register M25P40 Flash */ -#if defined(MPC8349EAMDS) ret_code = rtems_libi2c_register_drv(RTEMS_BSP_SPI_FLASH_DEVICE_NAME, spi_flash_m25p40_rw_driver_descriptor, spi_busno,0x00); @@ -267,6 +275,17 @@ rtems_status_code bsp_register_spi return -ret_code; } #endif +#if defined(HSC_CM01) + /* + * register FM25L256 FRAM + */ + ret_code = rtems_libi2c_register_drv(RTEMS_BSP_SPI_FRAM_DEVICE_NAME, + spi_fram_fm25l256_rw_driver_descriptor, + spi_busno,0x02); + if (ret_code < 0) { + return -ret_code; + } +#endif /* * FIXME: further drivers, when available */ |