cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

cn23xx_vf_device.h (1651B)


      1/**********************************************************************
      2 * Author: Cavium, Inc.
      3 *
      4 * Contact: support@cavium.com
      5 *          Please include "LiquidIO" in the subject.
      6 *
      7 * Copyright (c) 2003-2016 Cavium, Inc.
      8 *
      9 * This file is free software; you can redistribute it and/or modify
     10 * it under the terms of the GNU General Public License, Version 2, as
     11 * published by the Free Software Foundation.
     12 *
     13 * This file is distributed in the hope that it will be useful, but
     14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
     15 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
     16 * NONINFRINGEMENT.  See the GNU General Public License for more details.
     17 ***********************************************************************/
     18/*! \file  cn23xx_device.h
     19 * \brief Host Driver: Routines that perform CN23XX specific operations.
     20 */
     21
     22#ifndef __CN23XX_VF_DEVICE_H__
     23#define __CN23XX_VF_DEVICE_H__
     24
     25#include "cn23xx_vf_regs.h"
     26
     27/* Register address and configuration for a CN23XX devices.
     28 * If device specific changes need to be made then add a struct to include
     29 * device specific fields as shown in the commented section
     30 */
     31struct octeon_cn23xx_vf {
     32	struct octeon_config *conf;
     33};
     34
     35#define BUSY_READING_REG_VF_LOOP_COUNT		10000
     36
     37#define CN23XX_MAILBOX_MSGPARAM_SIZE		6
     38
     39void cn23xx_vf_ask_pf_to_do_flr(struct octeon_device *oct);
     40
     41int cn23xx_octeon_pfvf_handshake(struct octeon_device *oct);
     42
     43int cn23xx_setup_octeon_vf_device(struct octeon_device *oct);
     44
     45u32 cn23xx_vf_get_oq_ticks(struct octeon_device *oct, u32 time_intr_in_us);
     46
     47void cn23xx_dump_vf_initialized_regs(struct octeon_device *oct);
     48#endif