1*eef4f27bSRobert Mustacchi /* 2*eef4f27bSRobert Mustacchi * Copyright 2014-2017 Cavium, Inc. 3*eef4f27bSRobert Mustacchi * The contents of this file are subject to the terms of the Common Development 4*eef4f27bSRobert Mustacchi * and Distribution License, v.1, (the "License"). 5*eef4f27bSRobert Mustacchi * 6*eef4f27bSRobert Mustacchi * You may not use this file except in compliance with the License. 7*eef4f27bSRobert Mustacchi * 8*eef4f27bSRobert Mustacchi * You can obtain a copy of the License at available 9*eef4f27bSRobert Mustacchi * at http://opensource.org/licenses/CDDL-1.0 10*eef4f27bSRobert Mustacchi * 11*eef4f27bSRobert Mustacchi * See the License for the specific language governing permissions and 12*eef4f27bSRobert Mustacchi * limitations under the License. 13*eef4f27bSRobert Mustacchi */ 14*eef4f27bSRobert Mustacchi 15*eef4f27bSRobert Mustacchi /* 16*eef4f27bSRobert Mustacchi * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. 17*eef4f27bSRobert Mustacchi */ 18*eef4f27bSRobert Mustacchi 19*eef4f27bSRobert Mustacchi #ifndef _BNX_MM_H 20*eef4f27bSRobert Mustacchi #define _BNX_MM_H 21*eef4f27bSRobert Mustacchi 22*eef4f27bSRobert Mustacchi #ifdef __cplusplus 23*eef4f27bSRobert Mustacchi extern "C" { 24*eef4f27bSRobert Mustacchi #endif 25*eef4f27bSRobert Mustacchi 26*eef4f27bSRobert Mustacchi #include <sys/atomic.h> 27*eef4f27bSRobert Mustacchi 28*eef4f27bSRobert Mustacchi #define mm_read_barrier() membar_consumer() 29*eef4f27bSRobert Mustacchi #define mm_write_barrier() membar_producer() 30*eef4f27bSRobert Mustacchi 31*eef4f27bSRobert Mustacchi #include "lm.h" 32*eef4f27bSRobert Mustacchi #include "lm5706.h" 33*eef4f27bSRobert Mustacchi 34*eef4f27bSRobert Mustacchi #define FLUSHPOSTEDWRITES(_lmdevice) \ 35*eef4f27bSRobert Mustacchi { \ 36*eef4f27bSRobert Mustacchi volatile uint32_t dummy; \ 37*eef4f27bSRobert Mustacchi REG_RD((_lmdevice), pci_config.pcicfg_int_ack_cmd, &dummy); \ 38*eef4f27bSRobert Mustacchi } 39*eef4f27bSRobert Mustacchi 40*eef4f27bSRobert Mustacchi #ifdef __cplusplus 41*eef4f27bSRobert Mustacchi } 42*eef4f27bSRobert Mustacchi #endif 43*eef4f27bSRobert Mustacchi 44*eef4f27bSRobert Mustacchi #endif /* _BNX_MM_H */ 45