12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- /**********************************************************************
- * Author: Cavium, Inc.
- *
- * Contact: support@cavium.com
- * Please include "LiquidIO" in the subject.
- *
- * Copyright (c) 2003-2016 Cavium, Inc.
- *
- * This file is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License, Version 2, as
- * published by the Free Software Foundation.
- *
- * This file is distributed in the hope that it will be useful, but
- * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
- * NONINFRINGEMENT. See the GNU General Public License for more
- * details.
- **********************************************************************/
- /*! \file octeon_mem_ops.h
- * \brief Host Driver: Routines used to read/write Octeon memory.
- */
- #ifndef __OCTEON_MEM_OPS_H__
- #define __OCTEON_MEM_OPS_H__
- /** Read a 64-bit value from a BAR1 mapped core memory address.
- * @param oct - pointer to the octeon device.
- * @param core_addr - the address to read from.
- *
- * The range_idx gives the BAR1 index register for the range of address
- * in which core_addr is mapped.
- *
- * @return 64-bit value read from Core memory
- */
- u64 octeon_read_device_mem64(struct octeon_device *oct, u64 core_addr);
- /** Read a 32-bit value from a BAR1 mapped core memory address.
- * @param oct - pointer to the octeon device.
- * @param core_addr - the address to read from.
- *
- * @return 32-bit value read from Core memory
- */
- u32 octeon_read_device_mem32(struct octeon_device *oct, u64 core_addr);
- /** Write a 32-bit value to a BAR1 mapped core memory address.
- * @param oct - pointer to the octeon device.
- * @param core_addr - the address to write to.
- * @param val - 32-bit value to write.
- */
- void
- octeon_write_device_mem32(struct octeon_device *oct,
- u64 core_addr,
- u32 val);
- /** Read multiple bytes from Octeon memory.
- */
- void
- octeon_pci_read_core_mem(struct octeon_device *oct,
- u64 coreaddr,
- u8 *buf,
- u32 len);
- /** Write multiple bytes into Octeon memory.
- */
- void
- octeon_pci_write_core_mem(struct octeon_device *oct,
- u64 coreaddr,
- const u8 *buf,
- u32 len);
- #endif
|