[BACK]Return to pxa2x0_a4x_space.c CVS log [TXT][DIR] Up to [local] / sys / arch / arm / xscale

Annotation of sys/arch/arm/xscale/pxa2x0_a4x_space.c, Revision 1.1.1.1

1.1       nbrk        1: /*     $OpenBSD: pxa2x0_a4x_space.c,v 1.2 2005/01/02 19:52:36 drahn Exp $ */
                      2: /*     $NetBSD: pxa2x0_a4x_space.c,v 1.2 2003/07/15 00:24:54 lukem Exp $ */
                      3:
                      4: /*
                      5:  * Copyright (c) 2002  Genetec Corporation.  All rights reserved.
                      6:  * Written by Hiroyuki Bessho for Genetec Corporation.
                      7:  *
                      8:  * Redistribution and use in source and binary forms, with or without
                      9:  * modification, are permitted provided that the following conditions
                     10:  * are met:
                     11:  * 1. Redistributions of source code must retain the above copyright
                     12:  *    notice, this list of conditions and the following disclaimer.
                     13:  * 2. Redistributions in binary form must reproduce the above copyright
                     14:  *    notice, this list of conditions and the following disclaimer in the
                     15:  *    documentation and/or other materials provided with the distribution.
                     16:  * 3. All advertising materials mentioning features or use of this software
                     17:  *    must display the following acknowledgement:
                     18:  *     This product includes software developed for the NetBSD Project by
                     19:  *     Genetec Corporation.
                     20:  * 4. The name of Genetec Corporation may not be used to endorse or
                     21:  *    promote products derived from this software without specific prior
                     22:  *    written permission.
                     23:  *
                     24:  * THIS SOFTWARE IS PROVIDED BY GENETEC CORPORATION ``AS IS'' AND
                     25:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
                     26:  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
                     27:  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL GENETEC CORPORATION
                     28:  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
                     29:  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
                     30:  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
                     31:  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
                     32:  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
                     33:  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
                     34:  * POSSIBILITY OF SUCH DAMAGE.
                     35:  */
                     36:
                     37: /*
                     38:  * Bus space tag for 8/16-bit devices on 32-bit bus.
                     39:  * all registers are located at the address of multiple of 4.
                     40:  */
                     41:
                     42: #include <sys/cdefs.h>
                     43: /*
                     44: __KERNEL_RCSID(0, "$NetBSD: pxa2x0_a4x_space.c,v 1.2 2003/07/15 00:24:54 lukem Exp $");
                     45: */
                     46:
                     47: #include <sys/param.h>
                     48: #include <sys/systm.h>
                     49:
                     50: #include <uvm/uvm_extern.h>
                     51:
                     52: #include <machine/bus.h>
                     53:
                     54: /* Prototypes for all the bus_space structure functions */
                     55: bs_protos(pxa2x0);
                     56: bs_protos(a4x);
                     57: bs_protos(generic);
                     58: bs_protos(generic_armv4);
                     59: bs_protos(bs_notimpl);
                     60:
                     61: struct bus_space pxa2x0_a4x_bs_tag = {
                     62:        /* cookie */
                     63:        (void *) 0,
                     64:
                     65:        /* mapping/unmapping */
                     66:        pxa2x0_bs_map,
                     67:        pxa2x0_bs_unmap,
                     68:        pxa2x0_bs_subregion,
                     69:
                     70:        /* allocation/deallocation */
                     71:        pxa2x0_bs_alloc,        /* not implemented */
                     72:        pxa2x0_bs_free,         /* not implemented */
                     73:
                     74:        /* get kernel virtual address */
                     75:        pxa2x0_bs_vaddr,
                     76:
                     77:        /* mmap */
                     78:        bs_notimpl_bs_mmap,
                     79:
                     80:        /* barrier */
                     81:        pxa2x0_bs_barrier,
                     82:
                     83:        /* read (single) */
                     84:        a4x_bs_r_1,
                     85:        a4x_bs_r_2,
                     86:        a4x_bs_r_4,
                     87:        bs_notimpl_bs_r_8,
                     88:
                     89:        /* read multiple */
                     90:        a4x_bs_rm_1,
                     91:        a4x_bs_rm_2,
                     92:        bs_notimpl_bs_rm_4,
                     93:        bs_notimpl_bs_rm_8,
                     94:
                     95:        /* read region */
                     96:        bs_notimpl_bs_rr_1,
                     97:        bs_notimpl_bs_rr_2,
                     98:        bs_notimpl_bs_rr_4,
                     99:        bs_notimpl_bs_rr_8,
                    100:
                    101:        /* write (single) */
                    102:        a4x_bs_w_1,
                    103:        a4x_bs_w_2,
                    104:        a4x_bs_w_4,
                    105:        bs_notimpl_bs_w_8,
                    106:
                    107:        /* write multiple */
                    108:        a4x_bs_wm_1,
                    109:        a4x_bs_wm_2,
                    110:        bs_notimpl_bs_wm_4,
                    111:        bs_notimpl_bs_wm_8,
                    112:
                    113:        /* write region */
                    114:        bs_notimpl_bs_wr_1,
                    115:        bs_notimpl_bs_wr_2,
                    116:        bs_notimpl_bs_wr_4,
                    117:        bs_notimpl_bs_wr_8,
                    118:
                    119:        /* set multiple */
                    120:        bs_notimpl_bs_sm_1,
                    121:        bs_notimpl_bs_sm_2,
                    122:        bs_notimpl_bs_sm_4,
                    123:        bs_notimpl_bs_sm_8,
                    124:
                    125:        /* set region */
                    126:        bs_notimpl_bs_sr_1,
                    127:        bs_notimpl_bs_sr_2,
                    128:        bs_notimpl_bs_sr_4,
                    129:        bs_notimpl_bs_sr_8,
                    130:
                    131:        /* copy */
                    132:        bs_notimpl_bs_c_1,
                    133:        bs_notimpl_bs_c_2,
                    134:        bs_notimpl_bs_c_4,
                    135:        bs_notimpl_bs_c_8,
                    136: };
                    137:
                    138:
                    139:

CVSweb