summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc/shared/drvmgr/ambapp_bus_grlib.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/sparc/shared/drvmgr/ambapp_bus_grlib.c')
-rw-r--r--c/src/lib/libbsp/sparc/shared/drvmgr/ambapp_bus_grlib.c250
1 files changed, 0 insertions, 250 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/drvmgr/ambapp_bus_grlib.c b/c/src/lib/libbsp/sparc/shared/drvmgr/ambapp_bus_grlib.c
deleted file mode 100644
index 73fd465aec..0000000000
--- a/c/src/lib/libbsp/sparc/shared/drvmgr/ambapp_bus_grlib.c
+++ /dev/null
@@ -1,250 +0,0 @@
-/* LEON3 GRLIB AMBA Plug & Play bus driver.
- *
- * COPYRIGHT (c) 2008.
- * Cobham Gaisler AB.
- *
- * This is driver is a wrapper for the general AMBA Plug & Play bus
- * driver. This is the root bus driver for GRLIB systems.
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.org/license/LICENSE.
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <stdint.h>
-#include <libcpu/access.h>
-
-#include <drvmgr/ambapp_bus.h>
-#include <drvmgr/ambapp_bus_grlib.h>
-#include <bsp/genirq.h>
-
-#include <bsp.h>
-#include <bsp/irq.h>
-
-#define DBG(args...)
-/*#define DBG(args...) printk(args)*/
-
-static int ambapp_grlib_int_register(
- struct drvmgr_dev *dev,
- int irq,
- const char *info,
- drvmgr_isr isr,
- void *arg);
-static int ambapp_grlib_int_unregister(
- struct drvmgr_dev *dev,
- int irq,
- drvmgr_isr isr,
- void *arg);
-static int ambapp_grlib_int_clear(
- struct drvmgr_dev *dev,
- int irq);
-static int ambapp_grlib_int_mask(
- struct drvmgr_dev *dev,
- int irq);
-static int ambapp_grlib_int_unmask(
- struct drvmgr_dev *dev,
- int irq);
-#ifdef RTEMS_SMP
-static int ambapp_grlib_int_set_affinity(
- struct drvmgr_dev *dev,
- int irq,
- const Processor_mask *cpus);
-#endif
-static int ambapp_grlib_get_params(
- struct drvmgr_dev *dev,
- struct drvmgr_bus_params *params);
-
-static int ambapp_grlib_init1(struct drvmgr_dev *dev);
-static int ambapp_grlib_init2(struct drvmgr_dev *dev);
-static int ambapp_grlib_remove(struct drvmgr_dev *dev);
-
-/* READ/WRITE access to SpaceWire target over RMAP */
-static void *ambapp_grlib_rw_arg(struct drvmgr_dev *dev);
-
-static struct ambapp_ops ambapp_grlib_ops = {
- .int_register = ambapp_grlib_int_register,
- .int_unregister = ambapp_grlib_int_unregister,
- .int_clear = ambapp_grlib_int_clear,
- .int_mask = ambapp_grlib_int_mask,
- .int_unmask = ambapp_grlib_int_unmask,
-#ifdef RTEMS_SMP
- .int_set_affinity = ambapp_grlib_int_set_affinity,
-#endif
- .get_params = ambapp_grlib_get_params
-};
-
-static void *ambapp_grlib_rw_arg(struct drvmgr_dev *dev)
-{
- return dev; /* No argument really needed, but for debug? */
-}
-
-static struct drvmgr_func ambapp_grlib_funcs[] =
-{
- DRVMGR_FUNC(AMBAPP_RW_ARG, ambapp_grlib_rw_arg),
-
- DRVMGR_FUNC(AMBAPP_R8, _ld8),
- DRVMGR_FUNC(AMBAPP_R16, _ld16),
- DRVMGR_FUNC(AMBAPP_R32, _ld32),
- DRVMGR_FUNC(AMBAPP_R64, _ld64),
-
- DRVMGR_FUNC(AMBAPP_W8, _st8),
- DRVMGR_FUNC(AMBAPP_W16, _st16),
- DRVMGR_FUNC(AMBAPP_W32, _st32),
- DRVMGR_FUNC(AMBAPP_W64, _st64),
-
- DRVMGR_FUNC(AMBAPP_RMEM, memcpy),
- DRVMGR_FUNC(AMBAPP_WMEM, memcpy),
-
- DRVMGR_FUNC_END,
-};
-
-static struct drvmgr_drv_ops ambapp_grlib_drv_ops =
-{
- .init = {ambapp_grlib_init1, ambapp_grlib_init2, NULL, NULL},
- .remove = ambapp_grlib_remove,
- .info = NULL,
-};
-
-static struct drvmgr_drv ambapp_bus_drv_grlib =
-{
- DRVMGR_OBJ_DRV, /* Driver */
- NULL, /* Next driver */
- NULL, /* Device list */
- DRIVER_GRLIB_AMBAPP_ID, /* Driver ID */
- "AMBAPP_GRLIB_DRV", /* Driver Name */
- DRVMGR_BUS_TYPE_ROOT, /* Bus Type */
- &ambapp_grlib_drv_ops,
- NULL, /* Funcs */
- 0,
- 0,
-};
-
-static struct grlib_config *drv_mgr_grlib_config = NULL;
-
-void ambapp_grlib_register(void)
-{
- drvmgr_drv_register(&ambapp_bus_drv_grlib);
-}
-
-int ambapp_grlib_root_register(struct grlib_config *config)
-{
-
- /* Save the configuration for later */
- drv_mgr_grlib_config = config;
-
- /* Register root device driver */
- drvmgr_root_drv_register(&ambapp_bus_drv_grlib);
-
- return 0;
-}
-
-/* Function called from Driver Manager Initialization Stage 1 */
-static int ambapp_grlib_init1(struct drvmgr_dev *dev)
-{
- struct ambapp_config *config;
-
- dev->priv = NULL;
- dev->name = "GRLIB AMBA PnP";
-
- DBG("AMBAPP GRLIB: intializing\n");
-
- config = malloc(sizeof(struct ambapp_config));
- if ( !config )
- return RTEMS_NO_MEMORY;
-
- config->ops = &ambapp_grlib_ops;
- config->maps_up = DRVMGR_TRANSLATE_ONE2ONE;
- config->maps_down = DRVMGR_TRANSLATE_ONE2ONE;
- config->abus = drv_mgr_grlib_config->abus;
- config->resources = drv_mgr_grlib_config->resources;
- config->funcs = ambapp_grlib_funcs;
- config->bus_type = DRVMGR_BUS_TYPE_AMBAPP;
-
- /* Initialize the generic part of the AMBA Bus */
- return ambapp_bus_register(dev, config);
-}
-
-static int ambapp_grlib_init2(struct drvmgr_dev *dev)
-{
- return 0;
-}
-
-static int ambapp_grlib_remove(struct drvmgr_dev *dev)
-{
- return 0;
-}
-
-static int ambapp_grlib_int_register
- (
- struct drvmgr_dev *dev,
- int irq,
- const char *info,
- drvmgr_isr isr,
- void *arg
- )
-{
- return BSP_shared_interrupt_register(irq, info, isr, arg);
-}
-
-static int ambapp_grlib_int_unregister
- (
- struct drvmgr_dev *dev,
- int irq,
- drvmgr_isr isr,
- void *arg
- )
-{
- return BSP_shared_interrupt_unregister(irq, isr, arg);
-}
-
-static int ambapp_grlib_int_clear
- (
- struct drvmgr_dev *dev,
- int irq)
-{
- BSP_shared_interrupt_clear(irq);
- return DRVMGR_OK;
-}
-
-static int ambapp_grlib_int_mask
- (
- struct drvmgr_dev *dev,
- int irq
- )
-{
- BSP_shared_interrupt_mask(irq);
- return DRVMGR_OK;
-}
-
-static int ambapp_grlib_int_unmask
- (
- struct drvmgr_dev *dev,
- int irq
- )
-{
- BSP_shared_interrupt_unmask(irq);
- return DRVMGR_OK;
-}
-
-#ifdef RTEMS_SMP
-static int ambapp_grlib_int_set_affinity
- (
- struct drvmgr_dev *dev,
- int irq,
- const Processor_mask *cpus
- )
-{
- bsp_interrupt_set_affinity(irq, cpus);
- return DRVMGR_OK;
-}
-#endif
-
-static int ambapp_grlib_get_params(struct drvmgr_dev *dev, struct drvmgr_bus_params *params)
-{
- /* Leave params->freq_hz untouched for default */
- params->dev_prefix = "";
- return 0;
-}