18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
28c2ecf20Sopenharmony_ci/* Copyright (c) 2019-2020 Marvell International Ltd. */
38c2ecf20Sopenharmony_ci
48c2ecf20Sopenharmony_ci#ifndef _QED_SELFTEST_API_H
58c2ecf20Sopenharmony_ci#define _QED_SELFTEST_API_H
68c2ecf20Sopenharmony_ci#include <linux/types.h>
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci/**
98c2ecf20Sopenharmony_ci * @brief qed_selftest_memory - Perform memory test
108c2ecf20Sopenharmony_ci *
118c2ecf20Sopenharmony_ci * @param cdev
128c2ecf20Sopenharmony_ci *
138c2ecf20Sopenharmony_ci * @return int
148c2ecf20Sopenharmony_ci */
158c2ecf20Sopenharmony_ciint qed_selftest_memory(struct qed_dev *cdev);
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci/**
188c2ecf20Sopenharmony_ci * @brief qed_selftest_interrupt - Perform interrupt test
198c2ecf20Sopenharmony_ci *
208c2ecf20Sopenharmony_ci * @param cdev
218c2ecf20Sopenharmony_ci *
228c2ecf20Sopenharmony_ci * @return int
238c2ecf20Sopenharmony_ci */
248c2ecf20Sopenharmony_ciint qed_selftest_interrupt(struct qed_dev *cdev);
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ci/**
278c2ecf20Sopenharmony_ci * @brief qed_selftest_register - Perform register test
288c2ecf20Sopenharmony_ci *
298c2ecf20Sopenharmony_ci * @param cdev
308c2ecf20Sopenharmony_ci *
318c2ecf20Sopenharmony_ci * @return int
328c2ecf20Sopenharmony_ci */
338c2ecf20Sopenharmony_ciint qed_selftest_register(struct qed_dev *cdev);
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ci/**
368c2ecf20Sopenharmony_ci * @brief qed_selftest_clock - Perform clock test
378c2ecf20Sopenharmony_ci *
388c2ecf20Sopenharmony_ci * @param cdev
398c2ecf20Sopenharmony_ci *
408c2ecf20Sopenharmony_ci * @return int
418c2ecf20Sopenharmony_ci */
428c2ecf20Sopenharmony_ciint qed_selftest_clock(struct qed_dev *cdev);
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_ci/**
458c2ecf20Sopenharmony_ci * @brief qed_selftest_nvram - Perform nvram test
468c2ecf20Sopenharmony_ci *
478c2ecf20Sopenharmony_ci * @param cdev
488c2ecf20Sopenharmony_ci *
498c2ecf20Sopenharmony_ci * @return int
508c2ecf20Sopenharmony_ci */
518c2ecf20Sopenharmony_ciint qed_selftest_nvram(struct qed_dev *cdev);
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci#endif
54