#include <target/target_core_base.h> #define XCOPY_HDR_LEN 16 #define XCOPY_TARGET_DESC_LEN 32 #define XCOPY_SEGMENT_DESC_LEN 28 #define XCOPY_NAA_IEEE_REGEX_LEN 16 #define XCOPY_MAX_SECTORS 1024 /* * SPC4r37 6.4.6.1 * Table 150 — CSCD descriptor ID values */ #define XCOPY_CSCD_DESC_ID_LIST_OFF_MAX 0x07FF enum xcopy_origin_list { XCOL_SOURCE_RECV_OP = 0x01, XCOL_DEST_RECV_OP = 0x02, }; struct xcopy_pt_cmd; struct xcopy_op { int op_origin; struct se_cmd *xop_se_cmd; struct se_device *src_dev; unsigned char src_tid_wwn[XCOPY_NAA_IEEE_REGEX_LEN]; struct se_device *dst_dev; unsigned char dst_tid_wwn[XCOPY_NAA_IEEE_REGEX_LEN]; unsigned char local_dev_wwn[XCOPY_NAA_IEEE_REGEX_LEN]; sector_t src_lba; sector_t dst_lba; unsigned short stdi; unsigned short dtdi; unsigned short nolb; unsigned int dbl; struct xcopy_pt_cmd *src_pt_cmd; struct xcopy_pt_cmd *dst_pt_cmd; u32 xop_data_nents; struct scatterlist *xop_data_sg; struct work_struct xop_work; }; /* * Receive Copy Results Sevice Actions */ #define RCR_SA_COPY_STATUS 0x00 #define RCR_SA_RECEIVE_DATA 0x01 #define RCR_SA_OPERATING_PARAMETERS 0x03 #define RCR_SA_FAILED_SEGMENT_DETAILS 0x04 /* * Receive Copy Results defs for Operating Parameters */ #define RCR_OP_MAX_TARGET_DESC_COUNT 0x2 #define RCR_OP_MAX_SG_DESC_COUNT 0x1 #define RCR_OP_MAX_DESC_LIST_LEN 1024 #define RCR_OP_MAX_SEGMENT_LEN 268435456 /* 256 MB */ #define RCR_OP_TOTAL_CONCURR_COPIES 0x1 /* Must be <= 16384 */ #define RCR_OP_MAX_CONCURR_COPIES 0x1 /* Must be <= 255 */ #define RCR_OP_DATA_SEG_GRAN_LOG2 9 /* 512 bytes in log 2 */ #define RCR_OP_INLINE_DATA_GRAN_LOG2 9 /* 512 bytes in log 2 */ #define RCR_OP_HELD_DATA_GRAN_LOG2 9 /* 512 bytes in log 2 */ extern int target_xcopy_setup_pt(void); extern void target_xcopy_release_pt(void); extern sense_reason_t target_do_xcopy(struct se_cmd *); extern sense_reason_t target_do_receive_copy_results(struct se_cmd *); ec'>commit</a><a class='active' href='/cgit.cgi/linux/net-next.git/diff/sound/core/seq/seq_memory.h?id=81917bad86a66f2bdcb12b4c10ab1bf333ed25ec'>diff</a></td><td class='form'><form class='right' method='get' action='/cgit.cgi/linux/net-next.git/log/sound/core/seq/seq_memory.h'> <input type='hidden' name='id' value='81917bad86a66f2bdcb12b4c10ab1bf333ed25ec'/><select name='qt'> <option value='grep'>log msg</option> <option value='author'>author</option> <option value='committer'>committer</option> <option value='range'>range</option> </select> <input class='txt' type='search' size='10' name='q' value=''/> <input type='submit' value='search'/> </form> </td></tr></table> <div class='path'>path: <a href='/cgit.cgi/linux/net-next.git/diff/?id=81917bad86a66f2bdcb12b4c10ab1bf333ed25ec'>root</a>/<a href='/cgit.cgi/linux/net-next.git/diff/sound?id=81917bad86a66f2bdcb12b4c10ab1bf333ed25ec'>sound</a>/<a href='/cgit.cgi/linux/net-next.git/diff/sound/core?id=81917bad86a66f2bdcb12b4c10ab1bf333ed25ec'>core</a>/<a href='/cgit.cgi/linux/net-next.git/diff/sound/core/seq?id=81917bad86a66f2bdcb12b4c10ab1bf333ed25ec'>seq</a>/<a href='/cgit.cgi/linux/net-next.git/diff/sound/core/seq/seq_memory.h?id=81917bad86a66f2bdcb12b4c10ab1bf333ed25ec'>seq_memory.h</a></div><div class='content'><div class='cgit-panel'><b>diff options</b><form method='get'><input type='hidden' name='id' value='81917bad86a66f2bdcb12b4c10ab1bf333ed25ec'/><table><tr><td colspan='2'/></tr><tr><td class='label'>context:</td><td class='ctrl'><select name='context' onchange='this.form.submit();'><option value='1'>1</option><option value='2'>2</option><option value='3' selected='selected'>3</option><option value='4'>4</option><option value='5'>5</option><option value='6'>6</option><option value='7'>7</option><option value='8'>8</option><option value='9'>9</option><option value='10'>10</option><option value='15'>15</option><option value='20'>20</option><option value='25'>25</option><option value='30'>30</option><option value='35'>35</option><option value='40'>40</option></select></td></tr><tr><td class='label'>space:</td><td class='ctrl'><select name='ignorews' onchange='this.form.submit();'><option value='0' selected='selected'>include</option><option value='1'>ignore</option></select></td></tr><tr><td class='label'>mode:</td><td class='ctrl'><select name='dt' onchange='this.form.submit();'><option value='0' selected='selected'>unified</option><option value='1'>ssdiff</option><option value='2'>stat only</option></select></td></tr><tr><td/><td class='ctrl'><noscript><input type='submit' value='reload'/></noscript></td></tr></table></form></div><div class='diffstat-header'><a href='/cgit.cgi/linux/net-next.git/diff/?id=81917bad86a66f2bdcb12b4c10ab1bf333ed25ec'>Diffstat</a> (limited to 'sound/core/seq/seq_memory.h')</div><table summary='diffstat' class='diffstat'>