linux/drivers/target/sbp/sbp_target.h

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _SBP_BASE_H
#define _SBP_BASE_H

#include <linux/firewire.h>
#include <linux/spinlock.h>
#include <linux/types.h>
#include <linux/workqueue.h>
#include <target/target_core_base.h>

#define SBP_VERSION
#define SBP_NAMELEN

#define SBP_ORB_FETCH_SIZE

#define MANAGEMENT_AGENT_STATE_IDLE
#define MANAGEMENT_AGENT_STATE_BUSY

#define ORB_NOTIFY(v)
#define ORB_REQUEST_FORMAT(v)

#define MANAGEMENT_ORB_FUNCTION(v)

#define MANAGEMENT_ORB_FUNCTION_LOGIN
#define MANAGEMENT_ORB_FUNCTION_QUERY_LOGINS
#define MANAGEMENT_ORB_FUNCTION_RECONNECT
#define MANAGEMENT_ORB_FUNCTION_SET_PASSWORD
#define MANAGEMENT_ORB_FUNCTION_LOGOUT
#define MANAGEMENT_ORB_FUNCTION_ABORT_TASK
#define MANAGEMENT_ORB_FUNCTION_ABORT_TASK_SET
#define MANAGEMENT_ORB_FUNCTION_LOGICAL_UNIT_RESET
#define MANAGEMENT_ORB_FUNCTION_TARGET_RESET

#define LOGIN_ORB_EXCLUSIVE(v)
#define LOGIN_ORB_RESERVED(v)
#define LOGIN_ORB_RECONNECT(v)
#define LOGIN_ORB_LUN(v)
#define LOGIN_ORB_PASSWORD_LENGTH(v)
#define LOGIN_ORB_RESPONSE_LENGTH(v)

#define RECONNECT_ORB_LOGIN_ID(v)
#define LOGOUT_ORB_LOGIN_ID(v)

#define CMDBLK_ORB_DIRECTION(v)
#define CMDBLK_ORB_SPEED(v)
#define CMDBLK_ORB_MAX_PAYLOAD(v)
#define CMDBLK_ORB_PG_TBL_PRESENT(v)
#define CMDBLK_ORB_PG_SIZE(v)
#define CMDBLK_ORB_DATA_SIZE(v)

#define STATUS_BLOCK_SRC(v)
#define STATUS_BLOCK_RESP(v)
#define STATUS_BLOCK_DEAD(v)
#define STATUS_BLOCK_LEN(v)
#define STATUS_BLOCK_SBP_STATUS(v)
#define STATUS_BLOCK_ORB_OFFSET_HIGH(v)

#define STATUS_SRC_ORB_CONTINUING
#define STATUS_SRC_ORB_FINISHED
#define STATUS_SRC_UNSOLICITED

#define STATUS_RESP_REQUEST_COMPLETE
#define STATUS_RESP_TRANSPORT_FAILURE
#define STATUS_RESP_ILLEGAL_REQUEST
#define STATUS_RESP_VENDOR_DEPENDENT

#define SBP_STATUS_OK
#define SBP_STATUS_REQ_TYPE_NOTSUPP
#define SBP_STATUS_SPEED_NOTSUPP
#define SBP_STATUS_PAGE_SIZE_NOTSUPP
#define SBP_STATUS_ACCESS_DENIED
#define SBP_STATUS_LUN_NOTSUPP
#define SBP_STATUS_PAYLOAD_TOO_SMALL
/* 7 is reserved */
#define SBP_STATUS_RESOURCES_UNAVAIL
#define SBP_STATUS_FUNCTION_REJECTED
#define SBP_STATUS_LOGIN_ID_UNKNOWN
#define SBP_STATUS_DUMMY_ORB_COMPLETE
#define SBP_STATUS_REQUEST_ABORTED
#define SBP_STATUS_UNSPECIFIED_ERROR

#define AGENT_STATE_RESET
#define AGENT_STATE_ACTIVE
#define AGENT_STATE_SUSPENDED
#define AGENT_STATE_DEAD

struct sbp2_pointer {};

struct sbp_command_block_orb {};

struct sbp_page_table_entry {};

struct sbp_management_orb {};

struct sbp_status_block {};

struct sbp_login_response_block {};

struct sbp_login_descriptor {};

struct sbp_session {};

struct sbp_tpg {};

struct sbp_tport {};

static inline u64 sbp2_pointer_to_addr(const struct sbp2_pointer *ptr)
{}

static inline void addr_to_sbp2_pointer(u64 addr, struct sbp2_pointer *ptr)
{}

struct sbp_target_agent {};

struct sbp_target_request {};

struct sbp_management_agent {};

struct sbp_management_request {};

#endif