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

bpmp-private.h (1206B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2/*
      3 * Copyright (c) 2018, NVIDIA CORPORATION.
      4 */
      5
      6#ifndef __FIRMWARE_TEGRA_BPMP_PRIVATE_H
      7#define __FIRMWARE_TEGRA_BPMP_PRIVATE_H
      8
      9#include <soc/tegra/bpmp.h>
     10
     11struct tegra_bpmp_ops {
     12	int (*init)(struct tegra_bpmp *bpmp);
     13	void (*deinit)(struct tegra_bpmp *bpmp);
     14	bool (*is_response_ready)(struct tegra_bpmp_channel *channel);
     15	bool (*is_request_ready)(struct tegra_bpmp_channel *channel);
     16	int (*ack_response)(struct tegra_bpmp_channel *channel);
     17	int (*ack_request)(struct tegra_bpmp_channel *channel);
     18	bool (*is_response_channel_free)(struct tegra_bpmp_channel *channel);
     19	bool (*is_request_channel_free)(struct tegra_bpmp_channel *channel);
     20	int (*post_response)(struct tegra_bpmp_channel *channel);
     21	int (*post_request)(struct tegra_bpmp_channel *channel);
     22	int (*ring_doorbell)(struct tegra_bpmp *bpmp);
     23	int (*resume)(struct tegra_bpmp *bpmp);
     24};
     25
     26#if IS_ENABLED(CONFIG_ARCH_TEGRA_186_SOC) || \
     27    IS_ENABLED(CONFIG_ARCH_TEGRA_194_SOC) || \
     28    IS_ENABLED(CONFIG_ARCH_TEGRA_234_SOC)
     29extern const struct tegra_bpmp_ops tegra186_bpmp_ops;
     30#endif
     31#if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC)
     32extern const struct tegra_bpmp_ops tegra210_bpmp_ops;
     33#endif
     34
     35#endif