[PATCH 33.4 5/5] LEON: updated drivers to use new AMBAPP Layer
Daniel Hellstrom
daniel at gaisler.com
Tue Apr 10 11:33:29 UTC 2012
The drivers are updated to use the new AMBA layer, however the
backwards-compatibility interface (ambapp_old) is used.
Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>
---
c/src/lib/libbsp/sparc/leon2/cchip/cchip.c | 37 +++++++++-----------
c/src/lib/libbsp/sparc/leon2/rasta/rasta.c | 24 ++++++------
c/src/lib/libbsp/sparc/shared/1553/b1553brm.c | 14 ++++----
c/src/lib/libbsp/sparc/shared/1553/b1553brm_pci.c | 2 +-
.../lib/libbsp/sparc/shared/1553/b1553brm_rasta.c | 2 +-
c/src/lib/libbsp/sparc/shared/amba/ambapp_old.c | 14 +++++++
c/src/lib/libbsp/sparc/shared/can/grcan.c | 16 ++++----
c/src/lib/libbsp/sparc/shared/can/grcan_rasta.c | 2 +-
c/src/lib/libbsp/sparc/shared/can/occan.c | 16 ++++----
c/src/lib/libbsp/sparc/shared/can/occan_pci.c | 2 +-
c/src/lib/libbsp/sparc/shared/i2c/i2cmst.c | 14 ++++----
c/src/lib/libbsp/sparc/shared/include/ambapp.h | 9 +++++
c/src/lib/libbsp/sparc/shared/include/apbuart.h | 4 +-
.../lib/libbsp/sparc/shared/include/apbuart_pci.h | 2 +-
.../libbsp/sparc/shared/include/apbuart_rasta.h | 2 +-
c/src/lib/libbsp/sparc/shared/include/b1553brm.h | 4 +-
.../lib/libbsp/sparc/shared/include/b1553brm_pci.h | 4 +-
.../libbsp/sparc/shared/include/b1553brm_rasta.h | 4 +-
c/src/lib/libbsp/sparc/shared/include/grcan.h | 2 +-
.../lib/libbsp/sparc/shared/include/grcan_rasta.h | 2 +-
c/src/lib/libbsp/sparc/shared/include/grspw.h | 2 +-
c/src/lib/libbsp/sparc/shared/include/grspw_pci.h | 4 +-
.../lib/libbsp/sparc/shared/include/grspw_rasta.h | 4 +-
c/src/lib/libbsp/sparc/shared/include/i2cmst.h | 2 +-
c/src/lib/libbsp/sparc/shared/include/occan.h | 2 +-
c/src/lib/libbsp/sparc/shared/include/occan_pci.h | 2 +-
c/src/lib/libbsp/sparc/shared/spw/grspw.c | 29 +++++-----------
c/src/lib/libbsp/sparc/shared/spw/grspw_pci.c | 2 +-
c/src/lib/libbsp/sparc/shared/spw/grspw_rasta.c | 2 +-
c/src/lib/libbsp/sparc/shared/uart/apbuart.c | 14 ++++----
c/src/lib/libbsp/sparc/shared/uart/apbuart_pci.c | 2 +-
c/src/lib/libbsp/sparc/shared/uart/apbuart_rasta.c | 2 +-
32 files changed, 126 insertions(+), 117 deletions(-)
diff --git a/c/src/lib/libbsp/sparc/leon2/cchip/cchip.c b/c/src/lib/libbsp/sparc/leon2/cchip/cchip.c
index 59c17dd..7924fe8 100644
--- a/c/src/lib/libbsp/sparc/leon2/cchip/cchip.c
+++ b/c/src/lib/libbsp/sparc/leon2/cchip/cchip.c
@@ -83,8 +83,8 @@ typedef struct {
int bus, dev, fun;
/* AMBA bus */
- amba_confarea_type amba_bus;
- struct amba_mmap amba_maps[2];
+ struct ambapp_bus amba_bus;
+ struct ambapp_mmap amba_maps[2];
/* FT AHB SRAM */
int ftsram_size; /* kb */
@@ -100,8 +100,7 @@ int init_pcif(void){
int i,bus,dev,fun;
pci_bridge_regs *pcib;
amba_bridge_regs *ambab;
- int amba_master_cnt;
- amba_confarea_type *abus;
+ struct ambapp_bus *abus;
if ( BSP_pciFindDevice(0x1AC8, 0x0701, 0, &bus, &dev, &fun) == 0 ) {
;
@@ -136,13 +135,13 @@ int init_pcif(void){
/* AMBA MAP cc1.bars[1] (in CPU) ==> 0xf0000000(remote amba address) */
cc1.amba_maps[0].size = 0x04000000;
- cc1.amba_maps[0].cpu_adr = cc1.bars[1];
- cc1.amba_maps[0].remote_amba_adr = 0xfc000000;
+ cc1.amba_maps[0].local_adr = cc1.bars[1];
+ cc1.amba_maps[0].remote_adr = 0xfc000000;
/* Mark end of table */
cc1.amba_maps[1].size=0;
- cc1.amba_maps[1].cpu_adr = 0;
- cc1.amba_maps[1].remote_amba_adr = 0;
+ cc1.amba_maps[1].local_adr = 0;
+ cc1.amba_maps[1].remote_adr = 0;
/* Enable I/O and Mem accesses */
pci_read_config_dword(bus, dev, fun, 0x4, &com1);
@@ -161,16 +160,14 @@ int init_pcif(void){
/* Scan bus for AMBA devices */
abus = &cc1.amba_bus;
- memset(abus,0,sizeof(amba_confarea_type));
- amba_scan(abus,cc1.bars[1]+0x3f00000,&cc1.amba_maps[0]);
+ memset(abus,0,sizeof(*abus));
+ ambapp_scan(abus,cc1.bars[1]+0x3f00000,NULL,&cc1.amba_maps[0]);
- /* Get number of amba masters */
- amba_master_cnt = abus->ahbmst.devnr;
-#ifdef BOARD_INFO
- printk("Found %d AMBA masters\n\r",amba_master_cnt);
-#endif
- for(i=1; i<amba_master_cnt; i++){
+ /* Init all msters, max 16 */
+ for(i=1; i<16; i++) {
ambab->ambabars[i] = 0x40000000;
+ if (READ_REG(&ambab->ambabars[i]) != 0x40000000)
+ break;
}
/* Enable PCI Master */
@@ -192,20 +189,20 @@ int init_pcif(void){
#define GAISLER_FTAHBRAM 0x50
#endif
int init_onboard_sram(void){
- amba_ahb_device ahb;
- amba_apb_device apb;
+ struct ambapp_ahb_info ahb;
+ struct ambapp_apb_info apb;
unsigned int conf, size;
/* Find SRAM controller
* 1. AHB slave interface
* 2. APB slave interface
*/
- if ( amba_find_apbslv(&cc1.amba_bus,VENDOR_GAISLER,GAISLER_FTAHBRAM,&apb) != 1 ){
+ if ( ambapp_find_apbslv(&cc1.amba_bus,VENDOR_GAISLER,GAISLER_FTAHBRAM,&apb) != 1 ){
printk("On Board FT SRAM not found (APB)\n");
return -1;
}
- if ( amba_find_ahbslv(&cc1.amba_bus,VENDOR_GAISLER,GAISLER_FTAHBRAM,&ahb) != 1 ){
+ if ( ambapp_find_ahbslv(&cc1.amba_bus,VENDOR_GAISLER,GAISLER_FTAHBRAM,&ahb) != 1 ){
printk("On Board FT SRAM not found (AHB)\n");
return -1;
}
diff --git a/c/src/lib/libbsp/sparc/leon2/rasta/rasta.c b/c/src/lib/libbsp/sparc/leon2/rasta/rasta.c
index 7b66b07..c6dc93d 100644
--- a/c/src/lib/libbsp/sparc/leon2/rasta/rasta.c
+++ b/c/src/lib/libbsp/sparc/leon2/rasta/rasta.c
@@ -209,16 +209,16 @@ void rasta_interrrupt_register(void *handler, int irqno, void *arg)
}
-int rasta_get_gpio(amba_confarea_type *abus, int index, struct gpio_reg **regs, int *irq)
+int rasta_get_gpio(struct ambapp_bus *abus, int index, struct gpio_reg **regs, int *irq)
{
- amba_apb_device dev;
+ struct ambapp_apb_info dev;
int cores;
if ( !abus )
return -1;
/* Scan PnP info for GPIO port number 'index' */
- cores = amba_find_next_apbslv(abus,VENDOR_GAISLER,GAISLER_PIOPORT,&dev,index);
+ cores = ambapp_find_apbslv_next(abus,VENDOR_GAISLER,GAISLER_GPIO,&dev,index);
if ( cores < 1 )
return -1;
@@ -232,8 +232,8 @@ int rasta_get_gpio(amba_confarea_type *abus, int index, struct gpio_reg **regs,
}
/* AMBA Plug&Play information */
-static amba_confarea_type abus;
-static struct amba_mmap amba_maps[3];
+static struct ambapp_bus abus;
+static struct ambapp_mmap amba_maps[3];
int rasta_register(void)
{
@@ -316,23 +316,23 @@ int rasta_register(void)
/* AMBA MAP bar0 (in CPU) ==> 0x80000000(remote amba address) */
amba_maps[0].size = 0x10000000;
- amba_maps[0].cpu_adr = bar0;
- amba_maps[0].remote_amba_adr = 0x80000000;
+ amba_maps[0].local_adr = bar0;
+ amba_maps[0].remote_adr = 0x80000000;
/* AMBA MAP bar1 (in CPU) ==> 0x40000000(remote amba address) */
amba_maps[1].size = 0x10000000;
- amba_maps[1].cpu_adr = bar1;
- amba_maps[1].remote_amba_adr = 0x40000000;
+ amba_maps[1].local_adr = bar1;
+ amba_maps[1].remote_adr = 0x40000000;
/* Mark end of table */
amba_maps[2].size=0;
- amba_maps[2].cpu_adr = 0;
- amba_maps[2].remote_amba_adr = 0;
+ amba_maps[2].local_adr = 0;
+ amba_maps[2].remote_adr = 0;
memset(&abus,0,sizeof(abus));
/* Start AMBA PnP scan at first AHB bus */
- amba_scan(&abus,bar0+(AHB1_IOAREA_BASE_ADDR&~0xf0000000),&amba_maps[0]);
+ ambapp_scan(&abus,bar0+(AHB1_IOAREA_BASE_ADDR&~0xf0000000),NULL,&amba_maps[0]);
printk("Registering RASTA GRCAN driver\n\r");
diff --git a/c/src/lib/libbsp/sparc/shared/1553/b1553brm.c b/c/src/lib/libbsp/sparc/shared/1553/b1553brm.c
index e447df2..7d5bfcd 100644
--- a/c/src/lib/libbsp/sparc/shared/1553/b1553brm.c
+++ b/c/src/lib/libbsp/sparc/shared/1553/b1553brm.c
@@ -279,7 +279,7 @@ typedef struct {
static int brm_cores;
static unsigned int allbrm_memarea;
static brm_priv *brms;
-static amba_confarea_type *amba_bus;
+static struct ambapp_bus *amba_bus;
static unsigned int allbrm_cfg_clksel;
static unsigned int allbrm_cfg_clkdiv;
static unsigned int allbrm_cfg_freq;
@@ -325,7 +325,7 @@ int brm_register_leon3_ramon_fpga(void){
* The BRM is always clocked with 24MHz.
* 3 in BRM enhanced register will select 24MHz
*/
- return b1553brm_register(&amba_conf,0,0,3);
+ return b1553brm_register(&ambapp_plb,0,0,3);
}
int brm_register_leon3_ramon_asic(void){
@@ -335,12 +335,12 @@ int brm_register_leon3_ramon_asic(void){
*
* 3 in BRM enhanced register will select 24MHz
*/
- return b1553brm_register(&amba_conf,2,0,3);
+ return b1553brm_register(&ambapp_plb,2,0,3);
}
#endif
#endif
-int B1553BRM_PREFIX(_register)(amba_confarea_type *bus, unsigned int clksel, unsigned int clkdiv, unsigned int brm_freq)
+int B1553BRM_PREFIX(_register)(struct ambapp_bus *bus, unsigned int clksel, unsigned int clkdiv, unsigned int brm_freq)
{
rtems_status_code r;
rtems_device_major_number m;
@@ -568,7 +568,7 @@ static rtems_device_driver brm_initialize(rtems_device_major_number major, rtems
int dev_cnt;
char fs_name[20];
brm_priv *brm;
- amba_ahb_device ambadev;
+ struct ambapp_ahb_info ambadev;
char *mem;
FUNCDBG("brm_initialize\n");
@@ -577,7 +577,7 @@ static rtems_device_driver brm_initialize(rtems_device_major_number major, rtems
strcpy(fs_name,B1553BRM_DEVNAME);
/* Find all BRM devices */
- dev_cnt = amba_get_number_ahbslv_devices(amba_bus,VENDOR_GAISLER,GAISLER_BRM);
+ dev_cnt = ambapp_get_number_ahbslv_devices(amba_bus, VENDOR_GAISLER, GAISLER_B1553BRM);
if ( dev_cnt < 1 ){
/* Failed to find any CAN cores! */
printk("BRM: Failed to find any BRM cores\n\r");
@@ -619,7 +619,7 @@ static rtems_device_driver brm_initialize(rtems_device_major_number major, rtems
brm = &brms[minor];
/* Get AMBA AHB device info from Plug&Play */
- amba_find_next_ahbslv(amba_bus,VENDOR_GAISLER,GAISLER_BRM,&ambadev,minor);
+ ambapp_find_ahbslv_next(amba_bus,VENDOR_GAISLER,GAISLER_B1553BRM,&ambadev,minor);
/* Copy Basic HW info */
brm->regs = (void *)ambadev.start[0];
diff --git a/c/src/lib/libbsp/sparc/shared/1553/b1553brm_pci.c b/c/src/lib/libbsp/sparc/shared/1553/b1553brm_pci.c
index 76c9f2e..3be26b1 100644
--- a/c/src/lib/libbsp/sparc/shared/1553/b1553brm_pci.c
+++ b/c/src/lib/libbsp/sparc/shared/1553/b1553brm_pci.c
@@ -82,7 +82,7 @@ static void b1553brmpci_interrupt_handler(int irq, void *arg);
*/
int b1553brm_pci_register(
- amba_confarea_type *bus,
+ struct ambapp_bus *bus,
unsigned int clksel,
unsigned int clkdiv,
unsigned int brm_freq,
diff --git a/c/src/lib/libbsp/sparc/shared/1553/b1553brm_rasta.c b/c/src/lib/libbsp/sparc/shared/1553/b1553brm_rasta.c
index 10adb0a..d1fa4d6 100644
--- a/c/src/lib/libbsp/sparc/shared/1553/b1553brm_rasta.c
+++ b/c/src/lib/libbsp/sparc/shared/1553/b1553brm_rasta.c
@@ -82,7 +82,7 @@ static void b1553brmrasta_interrupt_handler(int irq, void *arg);
*/
int b1553brm_rasta_register(
- amba_confarea_type *bus,
+ struct ambapp_bus *bus,
unsigned int clksel,
unsigned int clkdiv,
unsigned int brm_freq,
diff --git a/c/src/lib/libbsp/sparc/shared/amba/ambapp_old.c b/c/src/lib/libbsp/sparc/shared/amba/ambapp_old.c
index c730173..1b543ab 100644
--- a/c/src/lib/libbsp/sparc/shared/amba/ambapp_old.c
+++ b/c/src/lib/libbsp/sparc/shared/amba/ambapp_old.c
@@ -61,6 +61,13 @@ int ambapp_find_apbslvs(struct ambapp_bus *abus, int vendor, int device, struct
return ambapp_find_apbslvs_next(abus, vendor, device, dev, 0, maxno);
}
+int ambapp_get_number_apbslv_devices(struct ambapp_bus *abus, int vendor, int device)
+{
+ return ambapp_dev_count(abus,
+ (OPTIONS_ALL|OPTIONS_APB_SLVS),
+ vendor, device);
+}
+
int ambapp_find_ahbslvs_next(struct ambapp_bus *abus, int vendor, int device, struct ambapp_ahb_info *dev, int index, int maxno)
{
struct ambapp_dev_find_match_arg arg;
@@ -90,3 +97,10 @@ int ambapp_find_ahbslvs(struct ambapp_bus *abus, int vendor, int device, struct
{
return ambapp_find_ahbslvs_next(abus, vendor, device, dev, 0, maxno);
}
+
+int ambapp_get_number_ahbslv_devices(struct ambapp_bus *abus, int vendor, int device)
+{
+ return ambapp_dev_count(abus,
+ (OPTIONS_ALL|OPTIONS_AHB_SLVS),
+ vendor, device);
+}
diff --git a/c/src/lib/libbsp/sparc/shared/can/grcan.c b/c/src/lib/libbsp/sparc/shared/can/grcan.c
index fb48550..434348b 100644
--- a/c/src/lib/libbsp/sparc/shared/can/grcan.c
+++ b/c/src/lib/libbsp/sparc/shared/can/grcan.c
@@ -212,7 +212,7 @@ struct grcan_priv {
static int grcan_core_cnt;
struct grcan_priv *grcans;
-static amba_confarea_type *amba_bus;
+static struct ambapp_bus *amba_bus;
struct grcan_device_info *grcan_cores;
static int grcan_core_cnt;
@@ -1050,7 +1050,7 @@ static rtems_device_driver grcan_initialize(
{
int minor;
struct grcan_priv *pDev;
- amba_apb_device dev;
+ struct ambapp_apb_info dev;
rtems_status_code status;
char fs_name[20];
unsigned int sys_freq_hz;
@@ -1062,10 +1062,10 @@ static rtems_device_driver grcan_initialize(
/* find GRCAN cores */
if ( !grcan_cores ) {
- grcan_core_cnt = amba_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,deviceid);
+ grcan_core_cnt = ambapp_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,deviceid);
if ( grcan_core_cnt < 1 ){
deviceid = GAISLER_GRCAN;
- grcan_core_cnt = amba_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,deviceid);
+ grcan_core_cnt = ambapp_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,deviceid);
if ( grcan_core_cnt < 1 ) {
DBG("GRCAN: Using AMBA Plug&Play, found %d cores\n",grcan_core_cnt);
return RTEMS_UNSATISFIED;
@@ -1094,10 +1094,10 @@ static rtems_device_driver grcan_initialize(
#if defined(LEON3)
/* LEON3: find timer address via AMBA Plug&Play info */
{
- amba_apb_device gptimer;
+ struct ambapp_apb_info gptimer;
LEON3_Timer_Regs_Map *tregs;
- if (amba_find_apbslv (&amba_conf, VENDOR_GAISLER, GAISLER_GPTIMER, &gptimer)
+ if (ambapp_find_apbslv (&ambapp_plb, VENDOR_GAISLER, GAISLER_GPTIMER, &gptimer)
== 1) {
tregs = (LEON3_Timer_Regs_Map *) gptimer.start;
sys_freq_hz = (tregs->scaler_reload + 1) * 1000 * 1000;
@@ -1132,7 +1132,7 @@ static rtems_device_driver grcan_initialize(
/* Find core address & IRQ */
if ( !grcan_cores ) {
- amba_find_next_apbslv(amba_bus,VENDOR_GAISLER,deviceid,&dev,minor);
+ ambapp_find_apbslv_next(amba_bus,VENDOR_GAISLER,deviceid,&dev,minor);
pDev->irq = dev.irq;
pDev->regs = (struct grcan_regs *)dev.start;
}else{
@@ -1799,7 +1799,7 @@ int GRCAN_PREFIX(_register_abs)(struct grcan_device_info *devices, int dev_cnt)
}
/* Use prescanned AMBA Plug&Play information to find all GRCAN cores */
-int GRCAN_PREFIX(_register)(amba_confarea_type *abus)
+int GRCAN_PREFIX(_register)(struct ambapp_bus *abus)
{
FUNCDBG();
diff --git a/c/src/lib/libbsp/sparc/shared/can/grcan_rasta.c b/c/src/lib/libbsp/sparc/shared/can/grcan_rasta.c
index f9b126f..7fad48e 100644
--- a/c/src/lib/libbsp/sparc/shared/can/grcan_rasta.c
+++ b/c/src/lib/libbsp/sparc/shared/can/grcan_rasta.c
@@ -77,7 +77,7 @@ unsigned int grcan_rasta_rambase;
#include "grcan.c"
-int grcan_rasta_ram_register(amba_confarea_type *abus, int rambase)
+int grcan_rasta_ram_register(struct ambapp_bus *abus, int rambase)
{
grcan_rasta_rambase = rambase;
diff --git a/c/src/lib/libbsp/sparc/shared/can/occan.c b/c/src/lib/libbsp/sparc/shared/can/occan.c
index 78c901a..6c06b3d 100644
--- a/c/src/lib/libbsp/sparc/shared/can/occan.c
+++ b/c/src/lib/libbsp/sparc/shared/can/occan.c
@@ -282,7 +282,7 @@ static void occan_interrupt_handler(rtems_vector_number v);
#endif
static int can_cores;
static occan_priv *cans;
-static amba_confarea_type *amba_bus;
+static struct ambapp_bus *amba_bus;
static unsigned int sys_freq_hz;
@@ -914,7 +914,7 @@ static int pelican_speed_auto(occan_priv *priv){
static rtems_device_driver occan_initialize(rtems_device_major_number major, rtems_device_minor_number unused, void *arg){
int dev_cnt,minor,subcore_cnt,devi,subi,subcores;
- amba_ahb_device ambadev;
+ struct ambapp_ahb_info ambadev;
occan_priv *can;
char fs_name[20];
rtems_status_code status;
@@ -922,7 +922,7 @@ static rtems_device_driver occan_initialize(rtems_device_major_number major, rte
strcpy(fs_name,OCCAN_DEVNAME);
/* find device on amba bus */
- dev_cnt = amba_get_number_ahbslv_devices(amba_bus,VENDOR_GAISLER,GAISLER_OCCAN);
+ dev_cnt = ambapp_get_number_ahbslv_devices(amba_bus,VENDOR_GAISLER,GAISLER_CANAHB);
if ( dev_cnt < 1 ){
/* Failed to find any CAN cores! */
printk("OCCAN: Failed to find any CAN cores\n\r");
@@ -934,10 +934,10 @@ static rtems_device_driver occan_initialize(rtems_device_major_number major, rte
#if defined(LEON3)
/* LEON3: find timer address via AMBA Plug&Play info */
{
- amba_apb_device gptimer;
+ struct ambapp_apb_info gptimer;
LEON3_Timer_Regs_Map *tregs;
- if ( amba_find_apbslv(&amba_conf,VENDOR_GAISLER,GAISLER_GPTIMER,&gptimer) == 1 ){
+ if ( ambapp_find_apbslv(&ambapp_plb,VENDOR_GAISLER,GAISLER_GPTIMER,&gptimer) == 1 ){
tregs = (LEON3_Timer_Regs_Map *)gptimer.start;
sys_freq_hz = (tregs->scaler_reload+1)*1000*1000;
DBG("OCCAN: detected %dHZ system frequency\n\r",sys_freq_hz);
@@ -973,7 +973,7 @@ static rtems_device_driver occan_initialize(rtems_device_major_number major, rte
*/
for(subcore_cnt=devi=0; devi<dev_cnt; devi++){
- amba_find_next_ahbslv(amba_bus,VENDOR_GAISLER,GAISLER_OCCAN,&ambadev,devi);
+ ambapp_find_ahbslv_next(amba_bus,VENDOR_GAISLER,GAISLER_CANAHB,&ambadev,devi);
subcore_cnt += (ambadev.ver & 0x7)+1;
}
@@ -987,7 +987,7 @@ static rtems_device_driver occan_initialize(rtems_device_major_number major, rte
for(devi=0; devi<dev_cnt; devi++){
/* Get AHB device info */
- amba_find_next_ahbslv(amba_bus,VENDOR_GAISLER,GAISLER_OCCAN,&ambadev,devi);
+ ambapp_find_ahbslv_next(amba_bus,VENDOR_GAISLER,GAISLER_CANAHB,&ambadev,devi);
subcores = (ambadev.ver & 0x7)+1;
DBG("OCCAN: on dev %d found %d sub cores\n\r",devi,subcores);
@@ -1802,7 +1802,7 @@ static void occan_interrupt_handler(rtems_vector_number v){
static rtems_driver_address_table occan_driver = OCCAN_DRIVER_TABLE_ENTRY;
-int OCCAN_PREFIX(_register)(amba_confarea_type *bus){
+int OCCAN_PREFIX(_register)(struct ambapp_bus *bus){
rtems_status_code r;
rtems_device_major_number m;
diff --git a/c/src/lib/libbsp/sparc/shared/can/occan_pci.c b/c/src/lib/libbsp/sparc/shared/can/occan_pci.c
index 2dd2e5b..b27beb1 100644
--- a/c/src/lib/libbsp/sparc/shared/can/occan_pci.c
+++ b/c/src/lib/libbsp/sparc/shared/can/occan_pci.c
@@ -46,7 +46,7 @@ static void inline occanpci_set_channel(occan_priv *priv, int channel){
*chan_sel = 0xffffffff;
}
-int occan_pci_register(amba_confarea_type *bus)
+int occan_pci_register(struct ambapp_bus *bus)
{
/* Setup configuration */
diff --git a/c/src/lib/libbsp/sparc/shared/i2c/i2cmst.c b/c/src/lib/libbsp/sparc/shared/i2c/i2cmst.c
index fb6a573..bf321dc 100644
--- a/c/src/lib/libbsp/sparc/shared/i2c/i2cmst.c
+++ b/c/src/lib/libbsp/sparc/shared/i2c/i2cmst.c
@@ -285,7 +285,7 @@ static gr_i2cmst_desc_t gr_i2cmst_desc = {
};
/* Scans for I2CMST core and initalizes i2c library */
-rtems_status_code leon_register_i2c(amba_confarea_type *abus)
+rtems_status_code leon_register_i2c(struct ambapp_bus *abus)
{
#if defined(DEBUG)
printk("leon_register_i2c called...");
@@ -293,11 +293,11 @@ rtems_status_code leon_register_i2c(amba_confarea_type *abus)
int rc;
int device_found = 0;
- amba_apb_device apbi2cmst;
+ struct ambapp_apb_info apbi2cmst;
/* Scan AMBA bus for I2CMST core */
- device_found = amba_find_apbslv(abus, VENDOR_GAISLER, GAISLER_I2CMST,
- &apbi2cmst);
+ device_found = ambapp_find_apbslv(abus, VENDOR_GAISLER, GAISLER_I2CMST,
+ &apbi2cmst);
if (device_found == 1) {
@@ -317,11 +317,11 @@ rtems_status_code leon_register_i2c(amba_confarea_type *abus)
#if defined(LEON3)
/* LEON3: find timer address via AMBA Plug&Play info */
{
- amba_apb_device gptimer;
+ struct ambapp_apb_info gptimer;
LEON3_Timer_Regs_Map *tregs;
- if (amba_find_apbslv(abus,VENDOR_GAISLER,
- GAISLER_GPTIMER,&gptimer) == 1 ) {
+ if (ambapp_find_apbslv(abus,VENDOR_GAISLER,
+ GAISLER_GPTIMER,&gptimer) == 1 ) {
tregs = (LEON3_Timer_Regs_Map *)gptimer.start;
gr_i2cmst_desc.prv.sysfreq = (tregs->scaler_reload+1)*1000;
} else {
diff --git a/c/src/lib/libbsp/sparc/shared/include/ambapp.h b/c/src/lib/libbsp/sparc/shared/include/ambapp.h
index 5eb3f2a..8c86157 100644
--- a/c/src/lib/libbsp/sparc/shared/include/ambapp.h
+++ b/c/src/lib/libbsp/sparc/shared/include/ambapp.h
@@ -326,6 +326,11 @@ extern int ambapp_find_apbslvs(
struct ambapp_apb_info *dev,
int maxno);
+extern int ambapp_get_number_apbslv_devices(
+ struct ambapp_bus *abus,
+ int vendor,
+ int device);
+
extern int ambapp_find_ahbslv(
struct ambapp_bus *abus,
int vendor,
@@ -354,6 +359,10 @@ extern int ambapp_find_ahbslvs(
struct ambapp_ahb_info *dev,
int maxno);
+extern int ambapp_get_number_ahbslv_devices(
+ struct ambapp_bus *abus,
+ int vendor,
+ int device);
/******** AMBA DEVICES *******/
diff --git a/c/src/lib/libbsp/sparc/shared/include/apbuart.h b/c/src/lib/libbsp/sparc/shared/include/apbuart.h
index c8a6e35..c948b24 100644
--- a/c/src/lib/libbsp/sparc/shared/include/apbuart.h
+++ b/c/src/lib/libbsp/sparc/shared/include/apbuart.h
@@ -72,9 +72,9 @@ typedef struct {
/* Register APBUART driver
* bus = pointer to AMBA bus description used to search for APBUART(s).
- * (&amba_conf for LEON3), (LEON2: see amba_scan)
+ * (&ambapp_plb for LEON3), (LEON2: see amba_scan)
*/
-int apbuart_register (amba_confarea_type * bus);
+int apbuart_register (struct ambapp_bus *bus);
#ifdef __cplusplus
}
diff --git a/c/src/lib/libbsp/sparc/shared/include/apbuart_pci.h b/c/src/lib/libbsp/sparc/shared/include/apbuart_pci.h
index e806429..11ac33e 100644
--- a/c/src/lib/libbsp/sparc/shared/include/apbuart_pci.h
+++ b/c/src/lib/libbsp/sparc/shared/include/apbuart_pci.h
@@ -24,7 +24,7 @@ extern "C" {
*
*/
-int apbuart_pci_register (amba_confarea_type * bus);
+int apbuart_pci_register (struct ambapp_bus * bus);
/* This function must be called on APBUART interrupt. Called from the
* PCI interrupt handler.
diff --git a/c/src/lib/libbsp/sparc/shared/include/apbuart_rasta.h b/c/src/lib/libbsp/sparc/shared/include/apbuart_rasta.h
index 1edf6f9..61c6144 100644
--- a/c/src/lib/libbsp/sparc/shared/include/apbuart_rasta.h
+++ b/c/src/lib/libbsp/sparc/shared/include/apbuart_rasta.h
@@ -24,7 +24,7 @@ extern "C" {
*
*/
-int apbuart_rasta_register(amba_confarea_type *bus);
+int apbuart_rasta_register(struct ambapp_bus *bus);
/* This function must be called on APBUART interrupt. Called from the
* RASTA interrupt handler.
diff --git a/c/src/lib/libbsp/sparc/shared/include/b1553brm.h b/c/src/lib/libbsp/sparc/shared/include/b1553brm.h
index f5fd343..f0f09c5 100644
--- a/c/src/lib/libbsp/sparc/shared/include/b1553brm.h
+++ b/c/src/lib/libbsp/sparc/shared/include/b1553brm.h
@@ -158,9 +158,9 @@ int brm_register_leon3_ramon_asic(void);
/* Register BRM driver
* See (struct brm_reg).w_ctrl for clksel and clkdiv.
* See Enhanced register (the least signinficant 2 bits) in BRM Core for brm_freq
- * bus = &amba_conf for LEON3. (LEON2 not yet supported for this driver)
+ * bus = &ambapp_plb for LEON3. (LEON2 not yet supported for this driver)
*/
-int b1553brm_register(amba_confarea_type *bus, unsigned int clksel, unsigned int clkdiv, unsigned int brm_freq);
+int b1553brm_register(struct ambapp_bus *bus, unsigned int clksel, unsigned int clkdiv, unsigned int brm_freq);
#ifdef __cplusplus
}
diff --git a/c/src/lib/libbsp/sparc/shared/include/b1553brm_pci.h b/c/src/lib/libbsp/sparc/shared/include/b1553brm_pci.h
index 74f9d32..9861dc3 100644
--- a/c/src/lib/libbsp/sparc/shared/include/b1553brm_pci.h
+++ b/c/src/lib/libbsp/sparc/shared/include/b1553brm_pci.h
@@ -22,7 +22,7 @@ extern "C" {
/* Register BRM driver
* See (struct brm_reg).w_ctrl for clksel and clkdiv.
* See Enhanced register (the least signinficant 2 bits) in BRM Core for brm_freq
- * bus = &amba_conf for LEON3. (LEON2 not yet supported for this driver)
+ * bus = &ambapp_plb for LEON3. (LEON2 not yet supported for this driver)
*
* Memory setup:
* memarea = 128k aligned pointer to memory (if zero malloc will be used) (as the CPU sees it)
@@ -30,7 +30,7 @@ extern "C" {
*/
int b1553brm_pci_register(
- amba_confarea_type *bus,
+ struct ambapp_bus *bus,
unsigned int clksel,
unsigned int clkdiv,
unsigned int brm_freq,
diff --git a/c/src/lib/libbsp/sparc/shared/include/b1553brm_rasta.h b/c/src/lib/libbsp/sparc/shared/include/b1553brm_rasta.h
index cd51658..360b72f 100644
--- a/c/src/lib/libbsp/sparc/shared/include/b1553brm_rasta.h
+++ b/c/src/lib/libbsp/sparc/shared/include/b1553brm_rasta.h
@@ -22,7 +22,7 @@ extern "C" {
/* Register BRM driver
* See (struct brm_reg).w_ctrl for clksel and clkdiv.
* See Enhanced register (the least signinficant 2 bits) in BRM Core for brm_freq
- * bus = &amba_conf for LEON3. (LEON2 not yet supported for this driver)
+ * bus = &ambapp_plb for LEON3. (LEON2 not yet supported for this driver)
*
* Memory setup:
* memarea = 128k aligned pointer to memory (if zero malloc will be used) (as the CPU sees it)
@@ -30,7 +30,7 @@ extern "C" {
*/
int b1553brm_rasta_register(
- amba_confarea_type *bus,
+ struct ambapp_bus *bus,
unsigned int clksel,
unsigned int clkdiv,
unsigned int brm_freq,
diff --git a/c/src/lib/libbsp/sparc/shared/include/grcan.h b/c/src/lib/libbsp/sparc/shared/include/grcan.h
index 8b3ed15..f8f577d 100644
--- a/c/src/lib/libbsp/sparc/shared/include/grcan.h
+++ b/c/src/lib/libbsp/sparc/shared/include/grcan.h
@@ -190,7 +190,7 @@ struct grcan_device_info {
int grcan_register_abs(struct grcan_device_info *devices, int dev_cnt);
/* Use prescanned AMBA Plug&Play information to find all GRFIFO cores */
-int grcan_register(amba_confarea_type *abus);
+int grcan_register(struct ambapp_bus *abus);
#if 0
void grcan_register(unsigned int baseaddr, unsigned int ram_base);
void grcan_interrupt_handler(rtems_vector_number v);
diff --git a/c/src/lib/libbsp/sparc/shared/include/grcan_rasta.h b/c/src/lib/libbsp/sparc/shared/include/grcan_rasta.h
index 1f96da6..20a2fac 100644
--- a/c/src/lib/libbsp/sparc/shared/include/grcan_rasta.h
+++ b/c/src/lib/libbsp/sparc/shared/include/grcan_rasta.h
@@ -13,7 +13,7 @@ extern "C" {
* rambase is address of the first GRCAN core has it's TX buffer, followed by
* it's RX buffer
*/
-int grcan_rasta_ram_register(amba_confarea_type *abus, int rambase);
+int grcan_rasta_ram_register(struct ambapp_bus *abus, int rambase);
extern void (*grcan_rasta_int_reg)(void *handler, int irq, void *arg);
diff --git a/c/src/lib/libbsp/sparc/shared/include/grspw.h b/c/src/lib/libbsp/sparc/shared/include/grspw.h
index 4c6c869..e60aa87 100644
--- a/c/src/lib/libbsp/sparc/shared/include/grspw.h
+++ b/c/src/lib/libbsp/sparc/shared/include/grspw.h
@@ -111,7 +111,7 @@ typedef struct {
#define SPACEWIRE_IOCTRL_START 64
#define SPACEWIRE_IOCTRL_STOP 65
-int grspw_register(amba_confarea_type *bus);
+int grspw_register(struct ambapp_bus *bus);
#if 0
diff --git a/c/src/lib/libbsp/sparc/shared/include/grspw_pci.h b/c/src/lib/libbsp/sparc/shared/include/grspw_pci.h
index aea50f3..9e2cd60 100644
--- a/c/src/lib/libbsp/sparc/shared/include/grspw_pci.h
+++ b/c/src/lib/libbsp/sparc/shared/include/grspw_pci.h
@@ -20,14 +20,14 @@ extern "C" {
#endif
/* Register GRSPW Driver
- * bus = &amba_conf for LEON3
+ * bus = &ambapp_plb for LEON3
*
* Memory setup:
* memarea = 128k aligned pointer to memory (if zero malloc will be used) (as the CPU sees it)
* hw_address = address that HW must use to access memarea. (used in the translation process)
*/
-int grspw_pci_register (amba_confarea_type * bus,
+int grspw_pci_register (struct ambapp_bus *bus,
unsigned int memarea, unsigned int hw_address);
diff --git a/c/src/lib/libbsp/sparc/shared/include/grspw_rasta.h b/c/src/lib/libbsp/sparc/shared/include/grspw_rasta.h
index 0e4e5be..c4c0cd0 100644
--- a/c/src/lib/libbsp/sparc/shared/include/grspw_rasta.h
+++ b/c/src/lib/libbsp/sparc/shared/include/grspw_rasta.h
@@ -20,14 +20,14 @@ extern "C" {
#endif
/* Register GRSPW Driver
- * bus = &amba_conf for LEON3
+ * bus = &ambapp_plb for LEON3
*
* Memory setup:
* ram_base = 128k aligned pointer to memory (as the CPU sees it)
*/
int grspw_rasta_register(
- amba_confarea_type *bus,
+ struct ambapp_bus *bus,
unsigned int ram_base
);
diff --git a/c/src/lib/libbsp/sparc/shared/include/i2cmst.h b/c/src/lib/libbsp/sparc/shared/include/i2cmst.h
index 21780ee..9f612fa 100644
--- a/c/src/lib/libbsp/sparc/shared/include/i2cmst.h
+++ b/c/src/lib/libbsp/sparc/shared/include/i2cmst.h
@@ -68,7 +68,7 @@ typedef struct gr_i2cmst_desc {
} gr_i2cmst_desc_t;
/* Scans for I2CMST core and initalizes i2c library */
-rtems_status_code leon_register_i2c(amba_confarea_type *abus);
+rtems_status_code leon_register_i2c(struct ambapp_bus *abus);
#ifdef __cplusplus
}
diff --git a/c/src/lib/libbsp/sparc/shared/include/occan.h b/c/src/lib/libbsp/sparc/shared/include/occan.h
index 12ec42a..5c875b3 100644
--- a/c/src/lib/libbsp/sparc/shared/include/occan.h
+++ b/c/src/lib/libbsp/sparc/shared/include/occan.h
@@ -147,7 +147,7 @@ struct occan_afilter {
#define OCCAN_BLK_MODE_RX 0x1
#define OCCAN_BLK_MODE_TX 0x2
-int occan_register(amba_confarea_type *bus);
+int occan_register(struct ambapp_bus *bus);
#define OCCAN_SPEED_500K 500000
diff --git a/c/src/lib/libbsp/sparc/shared/include/occan_pci.h b/c/src/lib/libbsp/sparc/shared/include/occan_pci.h
index 2f46293..d351f85 100644
--- a/c/src/lib/libbsp/sparc/shared/include/occan_pci.h
+++ b/c/src/lib/libbsp/sparc/shared/include/occan_pci.h
@@ -23,7 +23,7 @@ extern "C" {
* bus = pointer to AMBA bus description used to search for OC_CAN contrller(s).
*/
-int occan_pci_register(amba_confarea_type *bus);
+int occan_pci_register(struct ambapp_bus *bus);
/* This function must be called on OC_CAN interrupt. Called from the
* PCI interrupt handler. irq = AMBA IRQ assigned to the OC_CAN device,
diff --git a/c/src/lib/libbsp/sparc/shared/spw/grspw.c b/c/src/lib/libbsp/sparc/shared/spw/grspw.c
index 6a9da79..513a53a 100644
--- a/c/src/lib/libbsp/sparc/shared/spw/grspw.c
+++ b/c/src/lib/libbsp/sparc/shared/spw/grspw.c
@@ -370,9 +370,9 @@ static rtems_device_driver grspw_control(
grspw_control }
static rtems_driver_address_table grspw_driver = GRSPW_DRIVER_TABLE_ENTRY;
-static amba_confarea_type *amba_bus;
+static struct ambapp_bus *amba_bus;
-int GRSPW_PREFIX(_register)(amba_confarea_type *bus)
+int GRSPW_PREFIX(_register)(struct ambapp_bus *bus)
{
rtems_status_code r;
rtems_device_major_number m;
@@ -389,10 +389,10 @@ int GRSPW_PREFIX(_register)(amba_confarea_type *bus)
#ifdef LEON3
/* LEON3: find timer address via AMBA Plug&Play info */
{
- amba_apb_device gptimer;
+ struct ambapp_apb_info gptimer;
LEON3_Timer_Regs_Map *tregs;
- if ( amba_find_apbslv(&amba_conf,VENDOR_GAISLER,GAISLER_GPTIMER,&gptimer) == 1 ){
+ if ( ambapp_find_apbslv(&ambapp_plb,VENDOR_GAISLER,GAISLER_GPTIMER,&gptimer) == 1 ){
tregs = (LEON3_Timer_Regs_Map *)gptimer.start;
sys_freq_khz = (tregs->scaler_reload+1)*1000;
SPACEWIRE_DBG("GRSPW: detected %dkHZ system frequency\n\r",sys_freq_khz);
@@ -609,7 +609,7 @@ static rtems_device_driver grspw_initialize(
char c;
GRSPW_DEV *pDev;
char console_name[20];
- amba_apb_device dev;
+ struct ambapp_apb_info dev;
SPACEWIRE_DBG2("spacewire driver initialization\n");
@@ -620,19 +620,8 @@ static rtems_device_driver grspw_initialize(
i=0; spw_cores = 0; spw_cores2 = 0;
/* get number of GRSPW cores */
- spw_cores = amba_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,GAISLER_SPACEWIRE);
- spw_cores2 = amba_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,GAISLER_GRSPW2);
-#if 0
- if ( spw_cores > SPACEWIRE_MAX_CORENR )
- spw_cores = SPACEWIRE_MAX_CORENR;
-
- while (i < amba_conf.apbslv.devnr) {
- conf = amba_get_confword(amba_conf.apbslv, i, 0);
- if ((amba_vendor(conf) == VENDOR_GAISLER) && (amba_device(conf) == GAISLER_SPACEWIRE))
- spw_cores++;
- i++;
- }
-#endif
+ spw_cores = ambapp_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,GAISLER_SPW);
+ spw_cores2 = ambapp_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,GAISLER_SPW2);
if ( (spw_cores+spw_cores2) < 1 ){
/* No GRSPW cores around... */
@@ -653,10 +642,10 @@ static rtems_device_driver grspw_initialize(
/* Get device */
if ( spw_cores > minor ) {
- amba_find_next_apbslv(amba_bus,VENDOR_GAISLER,GAISLER_SPACEWIRE,&dev,minor);
+ ambapp_find_apbslv_next(amba_bus,VENDOR_GAISLER,GAISLER_SPW,&dev,minor);
pDev->core_ver = 1;
} else {
- amba_find_next_apbslv(amba_bus,VENDOR_GAISLER,GAISLER_GRSPW2,&dev,minor-spw_cores);
+ ambapp_find_apbslv_next(amba_bus,VENDOR_GAISLER,GAISLER_SPW2,&dev,minor-spw_cores);
pDev->core_ver = 2;
}
diff --git a/c/src/lib/libbsp/sparc/shared/spw/grspw_pci.c b/c/src/lib/libbsp/sparc/shared/spw/grspw_pci.c
index a8003be..2a9a8d6 100644
--- a/c/src/lib/libbsp/sparc/shared/spw/grspw_pci.c
+++ b/c/src/lib/libbsp/sparc/shared/spw/grspw_pci.c
@@ -79,7 +79,7 @@ int grspwpci_interrupt_handler(int irq, void *arg);
*/
int grspw_pci_register(
- amba_confarea_type *bus,
+ struct ambapp_bus *bus,
unsigned int memarea,
unsigned int hw_address
)
diff --git a/c/src/lib/libbsp/sparc/shared/spw/grspw_rasta.c b/c/src/lib/libbsp/sparc/shared/spw/grspw_rasta.c
index 6cd5698..9bf9437 100644
--- a/c/src/lib/libbsp/sparc/shared/spw/grspw_rasta.c
+++ b/c/src/lib/libbsp/sparc/shared/spw/grspw_rasta.c
@@ -88,7 +88,7 @@ unsigned int grspw_rasta_memarea_address;
*/
int grspw_rasta_register(
- amba_confarea_type *bus,
+ struct ambapp_bus *bus,
unsigned int ram_base
)
{
diff --git a/c/src/lib/libbsp/sparc/shared/uart/apbuart.c b/c/src/lib/libbsp/sparc/shared/uart/apbuart.c
index b3f4bbd..800d352 100644
--- a/c/src/lib/libbsp/sparc/shared/uart/apbuart.c
+++ b/c/src/lib/libbsp/sparc/shared/uart/apbuart.c
@@ -116,7 +116,7 @@ static unsigned int sys_freq_hz;
#define APBUART_DRIVER_TABLE_ENTRY { apbuart_initialize, apbuart_open, apbuart_close, apbuart_read, apbuart_write, apbuart_control }
static rtems_driver_address_table apbuart_driver = APBUART_DRIVER_TABLE_ENTRY;
-static amba_confarea_type *amba_bus;
+static struct ambapp_bus *amba_bus;
static void apbuart_interrupt(apbuart_priv *uart);
#ifdef APBUART_DEFINE_INTHANDLER
@@ -322,7 +322,7 @@ static void apbuart_interrupt(apbuart_priv *uart){
}
}
-int APBUART_PREFIX(_register)(amba_confarea_type *bus) {
+int APBUART_PREFIX(_register)(struct ambapp_bus *bus) {
rtems_status_code r;
rtems_device_major_number m;
@@ -353,13 +353,13 @@ static rtems_device_driver apbuart_initialize(rtems_device_major_number major,
rtems_status_code status;
int i;
- amba_apb_device dev;
+ struct ambapp_apb_info dev;
char fs_name[20];
FUNCDBG("apbuart_initialize\n");
/* Find all APB UART devices */
- dev_cnt = amba_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,GAISLER_APBUART);
+ dev_cnt = ambapp_get_number_apbslv_devices(amba_bus,VENDOR_GAISLER,GAISLER_APBUART);
if ( dev_cnt < 1 ){
/* Failed to find any CAN cores! */
printk("APBUART: Failed to find any APBUART cores\n\r");
@@ -384,10 +384,10 @@ static rtems_device_driver apbuart_initialize(rtems_device_major_number major,
#if defined(LEON3)
/* LEON3: find timer address via AMBA Plug&Play info */
{
- amba_apb_device gptimer;
+ struct ambapp_apb_info gptimer;
LEON3_Timer_Regs_Map *tregs;
- if ( amba_find_apbslv(&amba_conf,VENDOR_GAISLER,GAISLER_GPTIMER,&gptimer) == 1 ){
+ if ( ambapp_find_apbslv(&ambapp_plb,VENDOR_GAISLER,GAISLER_GPTIMER,&gptimer) == 1 ){
tregs = (LEON3_Timer_Regs_Map *)gptimer.start;
sys_freq_hz = (tregs->scaler_reload+1)*1000*1000;
DBG("APBUART: detected %dHZ system frequency\n\r",sys_freq_hz);
@@ -413,7 +413,7 @@ static rtems_device_driver apbuart_initialize(rtems_device_major_number major,
for(i=0; i<dev_cnt; i++){
/* Get AMBA AHB device info from Plug&Play */
- amba_find_next_apbslv(amba_bus,VENDOR_GAISLER,GAISLER_APBUART,&dev,i);
+ ambapp_find_apbslv_next(amba_bus,VENDOR_GAISLER,GAISLER_APBUART,&dev,i);
printk("APBUART[%d]: at 0x%x irq %d (0x%x)\n\r",i,dev.start,dev.irq,(unsigned int)&apbuarts[i]);
diff --git a/c/src/lib/libbsp/sparc/shared/uart/apbuart_pci.c b/c/src/lib/libbsp/sparc/shared/uart/apbuart_pci.c
index 54d14ce..fce1197 100644
--- a/c/src/lib/libbsp/sparc/shared/uart/apbuart_pci.c
+++ b/c/src/lib/libbsp/sparc/shared/uart/apbuart_pci.c
@@ -24,7 +24,7 @@ void apbuartpci_interrupt_handler(int irq, void *arg);
#include "apbuart.c"
-int apbuart_pci_register(amba_confarea_type *bus)
+int apbuart_pci_register(struct ambapp_bus *bus)
{
/* Setup configuration */
diff --git a/c/src/lib/libbsp/sparc/shared/uart/apbuart_rasta.c b/c/src/lib/libbsp/sparc/shared/uart/apbuart_rasta.c
index 4b8734f..3196bbb 100644
--- a/c/src/lib/libbsp/sparc/shared/uart/apbuart_rasta.c
+++ b/c/src/lib/libbsp/sparc/shared/uart/apbuart_rasta.c
@@ -24,7 +24,7 @@ void apbuartrasta_interrupt_handler(int irq, void *arg);
#include "apbuart.c"
-int apbuart_rasta_register(amba_confarea_type *bus)
+int apbuart_rasta_register(struct ambapp_bus *bus)
{
/* Setup configuration */
--
1.7.0.4
More information about the devel
mailing list