1e999111aSAlan Cox /*- 2*4d846d26SWarner Losh * SPDX-License-Identifier: BSD-2-Clause 3c49761ddSPedro F. Giffuni * 4179fa75eSJohn Baldwin * Copyright (c) 2009 Hudson River Trading LLC 5e999111aSAlan Cox * Written by: John H. Baldwin <jhb@FreeBSD.org> 6e999111aSAlan Cox * All rights reserved. 7e999111aSAlan Cox * 8e999111aSAlan Cox * Redistribution and use in source and binary forms, with or without 9e999111aSAlan Cox * modification, are permitted provided that the following conditions 10e999111aSAlan Cox * are met: 11e999111aSAlan Cox * 1. Redistributions of source code must retain the above copyright 12e999111aSAlan Cox * notice, this list of conditions and the following disclaimer. 13e999111aSAlan Cox * 2. Redistributions in binary form must reproduce the above copyright 14e999111aSAlan Cox * notice, this list of conditions and the following disclaimer in the 15e999111aSAlan Cox * documentation and/or other materials provided with the distribution. 16e999111aSAlan Cox * 17e999111aSAlan Cox * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 18e999111aSAlan Cox * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19e999111aSAlan Cox * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20e999111aSAlan Cox * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 21e999111aSAlan Cox * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22e999111aSAlan Cox * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23e999111aSAlan Cox * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24e999111aSAlan Cox * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25e999111aSAlan Cox * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26e999111aSAlan Cox * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27e999111aSAlan Cox * SUCH DAMAGE. 28e999111aSAlan Cox */ 29e999111aSAlan Cox 30e999111aSAlan Cox #ifndef _MACHINE_VM_H_ 31e999111aSAlan Cox #define _MACHINE_VM_H_ 32e999111aSAlan Cox 33e999111aSAlan Cox #include <machine/specialreg.h> 34e999111aSAlan Cox 353153e878SAlan Cox /* Memory attributes. */ 363153e878SAlan Cox #define VM_MEMATTR_UNCACHEABLE ((vm_memattr_t)PAT_UNCACHEABLE) 373153e878SAlan Cox #define VM_MEMATTR_WRITE_COMBINING ((vm_memattr_t)PAT_WRITE_COMBINING) 383153e878SAlan Cox #define VM_MEMATTR_WRITE_THROUGH ((vm_memattr_t)PAT_WRITE_THROUGH) 393153e878SAlan Cox #define VM_MEMATTR_WRITE_PROTECTED ((vm_memattr_t)PAT_WRITE_PROTECTED) 403153e878SAlan Cox #define VM_MEMATTR_WRITE_BACK ((vm_memattr_t)PAT_WRITE_BACK) 411f22be45SJohn Baldwin #define VM_MEMATTR_WEAK_UNCACHEABLE ((vm_memattr_t)PAT_UNCACHED) 42e999111aSAlan Cox 433153e878SAlan Cox #define VM_MEMATTR_DEFAULT VM_MEMATTR_WRITE_BACK 445d2d599dSAndrew Turner #define VM_MEMATTR_DEVICE VM_MEMATTR_UNCACHEABLE 45e999111aSAlan Cox 465797795fSAlan Cox #endif /* !_MACHINE_VM_H_ */ 47