···11-/*22- * This file is provided under a dual BSD/GPLv2 license. When using or33- * redistributing this file, you may do so under either license.44- *55- * GPL LICENSE SUMMARY66- *77- * Copyright(c) 2008 - 2011 Intel Corporation. All rights reserved.88- *99- * This program is free software; you can redistribute it and/or modify1010- * it under the terms of version 2 of the GNU General Public License as1111- * published by the Free Software Foundation.1212- *1313- * This program is distributed in the hope that it will be useful, but1414- * WITHOUT ANY WARRANTY; without even the implied warranty of1515- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU1616- * General Public License for more details.1717- *1818- * You should have received a copy of the GNU General Public License1919- * along with this program; if not, write to the Free Software2020- * Foundation, Inc., 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.2121- * The full GNU General Public License is included in this distribution2222- * in the file called LICENSE.GPL.2323- *2424- * BSD LICENSE2525- *2626- * Copyright(c) 2008 - 2011 Intel Corporation. All rights reserved.2727- * All rights reserved.2828- *2929- * Redistribution and use in source and binary forms, with or without3030- * modification, are permitted provided that the following conditions3131- * are met:3232- *3333- * * Redistributions of source code must retain the above copyright3434- * notice, this list of conditions and the following disclaimer.3535- * * Redistributions in binary form must reproduce the above copyright3636- * notice, this list of conditions and the following disclaimer in3737- * the documentation and/or other materials provided with the3838- * distribution.3939- * * Neither the name of Intel Corporation nor the names of its4040- * contributors may be used to endorse or promote products derived4141- * from this software without specific prior written permission.4242- *4343- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS4444- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT4545- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR4646- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT4747- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,4848- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT4949- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,5050- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY5151- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT5252- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE5353- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.5454- */5555-5656-/**5757- * This field defines the SCU format of an unsolicited frame (UF). A UF is a5858- * frame received by the SCU for which there is no known corresponding task5959- * context (TC).6060- *6161- *6262- */6363-6464-#ifndef _SCU_UNSOLICITED_FRAME_H_6565-#define _SCU_UNSOLICITED_FRAME_H_6666-6767-#include <linux/string.h>6868-6969-/**7070- *7171- *7272- * This constant defines the number of DWORDS found the unsolicited frame7373- * header data member.7474- */7575-#define SCU_UNSOLICITED_FRAME_HEADER_DATA_DWORDS 157676-7777-/**7878- * struct scu_unsolicited_frame_header -7979- *8080- * This structure delineates the format of an unsolicited frame header. The8181- * first DWORD are UF attributes defined by the silicon architecture. The data8282- * depicts actual header information received on the link.8383- */8484-struct scu_unsolicited_frame_header {8585- /**8686- * This field indicates if there is an Initiator Index Table entry with8787- * which this header is associated.8888- */8989- u32 iit_exists:1;9090-9191- /**9292- * This field simply indicates the protocol type (i.e. SSP, STP, SMP).9393- */9494- u32 protocol_type:3;9595-9696- /**9797- * This field indicates if the frame is an address frame (IAF or OAF)9898- * or if it is a information unit frame.9999- */100100- u32 is_address_frame:1;101101-102102- /**103103- * This field simply indicates the connection rate at which the frame104104- * was received.105105- */106106- u32 connection_rate:4;107107-108108- u32 reserved:23;109109-110110- /**111111- * This field represents the actual header data received on the link.112112- */113113- u32 data[SCU_UNSOLICITED_FRAME_HEADER_DATA_DWORDS];114114-115115-};116116-117117-#endif /* _SCU_UNSOLICITED_FRAME_H_ */
+44-1
drivers/scsi/isci/unsolicited_frame_control.h
···5757#define _SCIC_SDS_UNSOLICITED_FRAME_CONTROL_H_58585959#include "isci.h"6060-#include "scu_unsolicited_frame.h"6060+6161+#define SCU_UNSOLICITED_FRAME_HEADER_DATA_DWORDS 156262+6363+/**6464+ * struct scu_unsolicited_frame_header -6565+ *6666+ * This structure delineates the format of an unsolicited frame header. The6767+ * first DWORD are UF attributes defined by the silicon architecture. The data6868+ * depicts actual header information received on the link.6969+ */7070+struct scu_unsolicited_frame_header {7171+ /**7272+ * This field indicates if there is an Initiator Index Table entry with7373+ * which this header is associated.7474+ */7575+ u32 iit_exists:1;7676+7777+ /**7878+ * This field simply indicates the protocol type (i.e. SSP, STP, SMP).7979+ */8080+ u32 protocol_type:3;8181+8282+ /**8383+ * This field indicates if the frame is an address frame (IAF or OAF)8484+ * or if it is a information unit frame.8585+ */8686+ u32 is_address_frame:1;8787+8888+ /**8989+ * This field simply indicates the connection rate at which the frame9090+ * was received.9191+ */9292+ u32 connection_rate:4;9393+9494+ u32 reserved:23;9595+9696+ /**9797+ * This field represents the actual header data received on the link.9898+ */9999+ u32 data[SCU_UNSOLICITED_FRAME_HEADER_DATA_DWORDS];100100+101101+};102102+103103+6110462105/**63106 * enum unsolicited_frame_state -