![]() |
|
|||
0001 /* 0002 * arch/um/include/mem_user.h 0003 * 0004 * BRIEF MODULE DESCRIPTION 0005 * user side memory interface for support IO memory inside user mode linux 0006 * 0007 * Copyright (C) 2001 RidgeRun, Inc. 0008 * Author: RidgeRun, Inc. 0009 * Greg Lonnon glonnon@ridgerun.com or info@ridgerun.com 0010 * 0011 * This program is free software; you can redistribute it and/or modify it 0012 * under the terms of the GNU General Public License as published by the 0013 * Free Software Foundation; either version 2 of the License, or (at your 0014 * option) any later version. 0015 * 0016 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED 0017 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 0018 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN 0019 * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 0020 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 0021 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 0022 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 0023 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 0024 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 0025 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 0026 * 0027 * You should have received a copy of the GNU General Public License along 0028 * with this program; if not, write to the Free Software Foundation, Inc., 0029 * 675 Mass Ave, Cambridge, MA 02139, USA. 0030 */ 0031 0032 #ifndef _MEM_USER_H 0033 #define _MEM_USER_H 0034 0035 struct iomem_region { 0036 struct iomem_region *next; 0037 char *driver; 0038 int fd; 0039 int size; 0040 unsigned long phys; 0041 unsigned long virt; 0042 }; 0043 0044 extern struct iomem_region *iomem_regions; 0045 extern int iomem_size; 0046 0047 #define ROUND_4M(n) ((((unsigned long) (n)) + (1 << 22)) & ~((1 << 22) - 1)) 0048 0049 extern unsigned long find_iomem(char *driver, unsigned long *len_out); 0050 extern void mem_total_pages(unsigned long physmem, unsigned long iomem, 0051 unsigned long highmem); 0052 extern void setup_physmem(unsigned long start, unsigned long usable, 0053 unsigned long len, unsigned long long highmem); 0054 extern void map_memory(unsigned long virt, unsigned long phys, 0055 unsigned long len, int r, int w, int x); 0056 0057 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.1.0 LXR engine. The LXR team |
![]() ![]() |