1ab81e23cSAlexander Lobakin /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
2663eacd8SAlexander Lobakin /* Copyright (c) 2019-2020 Marvell International Ltd. */
3ab81e23cSAlexander Lobakin 
403dc76caSSudarsana Reddy Kalluru #ifndef _QED_SELFTEST_API_H
503dc76caSSudarsana Reddy Kalluru #define _QED_SELFTEST_API_H
603dc76caSSudarsana Reddy Kalluru #include <linux/types.h>
703dc76caSSudarsana Reddy Kalluru 
803dc76caSSudarsana Reddy Kalluru /**
9*19198e4eSPrabhakar Kushwaha  * qed_selftest_memory(): Perform memory test.
1003dc76caSSudarsana Reddy Kalluru  *
11*19198e4eSPrabhakar Kushwaha  * @cdev: Qed dev pointer.
1203dc76caSSudarsana Reddy Kalluru  *
13*19198e4eSPrabhakar Kushwaha  * Return: Int.
1403dc76caSSudarsana Reddy Kalluru  */
1503dc76caSSudarsana Reddy Kalluru int qed_selftest_memory(struct qed_dev *cdev);
1603dc76caSSudarsana Reddy Kalluru 
1703dc76caSSudarsana Reddy Kalluru /**
18*19198e4eSPrabhakar Kushwaha  * qed_selftest_interrupt(): Perform interrupt test.
1903dc76caSSudarsana Reddy Kalluru  *
20*19198e4eSPrabhakar Kushwaha  * @cdev: Qed dev pointer.
2103dc76caSSudarsana Reddy Kalluru  *
22*19198e4eSPrabhakar Kushwaha  * Return: Int.
2303dc76caSSudarsana Reddy Kalluru  */
2403dc76caSSudarsana Reddy Kalluru int qed_selftest_interrupt(struct qed_dev *cdev);
2503dc76caSSudarsana Reddy Kalluru 
2603dc76caSSudarsana Reddy Kalluru /**
27*19198e4eSPrabhakar Kushwaha  * qed_selftest_register(): Perform register test.
2803dc76caSSudarsana Reddy Kalluru  *
29*19198e4eSPrabhakar Kushwaha  * @cdev: Qed dev pointer.
3003dc76caSSudarsana Reddy Kalluru  *
31*19198e4eSPrabhakar Kushwaha  * Return: Int.
3203dc76caSSudarsana Reddy Kalluru  */
3303dc76caSSudarsana Reddy Kalluru int qed_selftest_register(struct qed_dev *cdev);
3403dc76caSSudarsana Reddy Kalluru 
3503dc76caSSudarsana Reddy Kalluru /**
36*19198e4eSPrabhakar Kushwaha  * qed_selftest_clock(): Perform clock test.
3703dc76caSSudarsana Reddy Kalluru  *
38*19198e4eSPrabhakar Kushwaha  * @cdev: Qed dev pointer.
3903dc76caSSudarsana Reddy Kalluru  *
40*19198e4eSPrabhakar Kushwaha  * Return: Int.
4103dc76caSSudarsana Reddy Kalluru  */
4203dc76caSSudarsana Reddy Kalluru int qed_selftest_clock(struct qed_dev *cdev);
437a4b21b7SMintz, Yuval 
447a4b21b7SMintz, Yuval /**
45*19198e4eSPrabhakar Kushwaha  * qed_selftest_nvram(): Perform nvram test.
467a4b21b7SMintz, Yuval  *
47*19198e4eSPrabhakar Kushwaha  * @cdev: Qed dev pointer.
487a4b21b7SMintz, Yuval  *
49*19198e4eSPrabhakar Kushwaha  * Return: Int.
507a4b21b7SMintz, Yuval  */
517a4b21b7SMintz, Yuval int qed_selftest_nvram(struct qed_dev *cdev);
527a4b21b7SMintz, Yuval 
5303dc76caSSudarsana Reddy Kalluru #endif
54