From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756058AbbIWV04 (ORCPT ); Wed, 23 Sep 2015 17:26:56 -0400 Received: from mail-bl2on0108.outbound.protection.outlook.com ([65.55.169.108]:53317 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755472AbbIWVZJ (ORCPT ); Wed, 23 Sep 2015 17:25:09 -0400 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=freescale.com; freescale.mail.onmicrosoft.com; dkim=none (message not signed) header.d=none;freescale.mail.onmicrosoft.com; dmarc=none action=none header.from=freescale.com; From: "J. German Rivera" To: , , , CC: , , , , , , , , , , , "J. German Rivera" Subject: [PATCH v3 1/6] staging: fsl-mc: Add new flags field to MC command header Date: Wed, 23 Sep 2015 16:10:58 -0500 Message-ID: <1443042663-21580-2-git-send-email-German.Rivera@freescale.com> X-Mailer: git-send-email 2.3.3 In-Reply-To: <1443042663-21580-1-git-send-email-German.Rivera@freescale.com> References: <1443042663-21580-1-git-send-email-German.Rivera@freescale.com> X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BN1BFFO11OLC003;1:hA1NL/KzUDSSmD1TH7UPgv6yryBUfqyviaCrzzzfnjUuA8i64GWnAif5Z9YdTC5jOBfl5Jd/eXYAX9oQptjFTx291i5Wm8MJR6rxLg8FazNVQNYr5PqlNUyr1lqWhWoTs9ZAeZq1N7BwTJIB1cmOgqjZOeiSzPn0DdR7W+kl4iqYl2Ri4mcXHaHrpR1ngZcViwEfuXOwoKMizeW4J1+3TWky+0jHLODhUfGxbZPjccuSGpjHJmSG6rRePmZt7GtNUsLBVvULnygW3hMhuxz3gb/b/Qy8UGHCI1N0taMIS0KUgeCdnbyE0wtzhZZ4uDgeu39QRH+wZDzE0k867koFwRuKMJV7ENXkjGPwQ7KyDs88HB4vRHptHRxliRWBrpgcQ2K9ocU7xomVG5nZ3isPFg== X-Forefront-Antispam-Report: CIP:192.88.168.50;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(62966003)(2201001)(77156002)(106466001)(50226001)(229853001)(5001830100001)(81156007)(5001860100001)(97736004)(104016004)(36756003)(5001770100001)(105606002)(4001540100001)(6806005)(2950100001)(85426001)(48376002)(86362001)(92566002)(47776003)(19580395003)(19580405001)(11100500001)(46102003)(68736005)(64706001)(77096005)(87936001)(5001960100002)(189998001)(76176999)(107886002)(5007970100001)(50466002)(50986999)(5001920100001)(5003940100001)(4001430100001);DIR:OUT;SFP:1102;SCL:1;SRVR:DM2PR03MB509;H:tx30smr01.am.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;MX:1;A:1;LANG:en; MIME-Version: 1.0 Content-Type: text/plain X-Microsoft-Exchange-Diagnostics: 1;DM2PR03MB509;2:OFM5Vers96s56Vy6DvXMVmJpn5xyNOuwkQdObLiXLIg0Bjq/b4OtJhuHfOQ7gfJ/UYNN5nNhGgHAVUpYXnPV8gVfYG+CETfKajTSaU6bFpqN0QT41KSRX9aJg51BAJ8tTgmpfa/sCBAJ+1WeK8WtfBnfUz6uiivKn8jYVyeXbRM=;3:GgG3/oEcIO6Y5RkUcm0Z/yVT/B8CVCI2NkAMmsdBooIBQs8KXE/BvcboF2+5NLR7vOZfk7RZNKnE4vgxTmXxg1kX03Qd4kWTkNFU+DVna3FRTFZH46M5nioHSVpVpHXbFpg/G+ueuTOFElOZT8pYkmh53kQ7K/oa6MboWJQwXHNljBOoMxrduRqDVbjdSVnUGD/+GunnvXwuOV4/i9ATzihXNV3QOKe68lBG5lQsm0E=;25:t1r6yqrJ6MkLb9oUV3Uho3iNFR4Vvny672X9lQh9HvrvvgKkV8E8oaZfDMWeznDk2IcjFc/Z2VQM/jPL/5rVdqJrh0KkHIVlbOVaIFFDZXQOJTTI7yd2dmbD3mdC/N2NeWSRtyL6uXnx1OzUK+AKTQ2JxzKrr8O7ilNHMe2n8uBMSyVFwW1mgwNHNtQfoQOPN59S8Qbpj/GtpndTSBgA4XAUu/QJrd6ELA8QtAuLi/3OFmqzhgBSGXheyxp4nlDyNjHaIVppLPWA3MrtxRS2mg== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DM2PR03MB509; X-Microsoft-Exchange-Diagnostics: 1;DM2PR03MB509;20:xzCgnvrJff8qXHcngVPaprAolksbE1nrEM03Cec+gv+SAiHy2XDIhSGi8e2vD9iCRRtoPsj/wxqIRr2HQVKBH9OAvzu2QcGfAKccWcXRvypeyFRqAzfBxyqQgAZEa0o0nGQMHOkzBLuFj8Pz8FACWBnMZfRzmEoqc9t+HYv4uhBOuQc380wQ+Uo0GuUkgCjUvVVKkdafhyQsGKxo1ymPklic5SSHJWpYzra61darG6OREfyKUC+sKPrVnMKFgFwXXdvRHAXmi9cQkkLRP3OeFVnyVbkRSumWqdVHeA6Szhq0Iy5NF+u2hUJyAjPDXHq7rZ/NOumdiJr9NPH76/jRkv9FfgpsOlMxS1vOI85hKRs=;4:N9i1tfv389K109oRkTGj1+og6ctqjFz9Z4o7OTb3cN1Eq8Ror5V9UcvbF1HeFcMChR+/d478MuAXnXbqij9JCySjIcTQYstGDfeylmsBp4u7ncudWYEHc7av/Sjf1t0gm6TShR5sK5qMLmlJOma3GyBbJegIzH/tQHpPLgSQPfOgQIzI2CffH7OzhHrUd65FxLX131IeIJQs44G2RRJJVI+jq3E496bSVTIbaGMQOgm6r8HMEEsxevtAL5zCSzLF1CWdKur/db2zk2B5ZUJtKHhMwNdW3dZk67Wyj05bxVTWRapbguq4kAWUYRIFQznpV/XnOKRQwT4G44vocdrJmeE4BODCbdIFG/xyEAAu5z0= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(5005006)(520078)(3002001);SRVR:DM2PR03MB509;BCL:0;PCL:0;RULEID:;SRVR:DM2PR03MB509; X-Forefront-PRVS: 07083FF734 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;DM2PR03MB509;23:Gea1+5gOBFPJQI7lxUi2abB7UAZn+1o7Q17glzwXPF?= =?us-ascii?Q?tn2Xha2lJQ/9rgs9k+p6LfFUaJJyqStXPrsM9/98ViUitPnW+WEyNGvCOaWq?= =?us-ascii?Q?RhRok3EXcjtfJvJ7GNp/l3vK8SKXW2N2orbivgpfEGylCgjykrJhUy7D45nm?= =?us-ascii?Q?pAqvz6/hbt6GA8kr5ba8cyo3pfpTs9+oU2mi1OzG8UE1H6S3OU1s6L/fl3jI?= =?us-ascii?Q?3nOTXrVS5nAWbm0Na5VCC3inMp31wW/FbzE11Jk1UbVfusnYKOM0OjJvzq9r?= =?us-ascii?Q?rhYibcD8ziZJ4spvEoLfiseFxwBTIDWWIjXuJ50eUE6OKuD1XvABtCJqhv1u?= =?us-ascii?Q?GgxmjAiaIi2O4/3OBQBVRd/nH0IevDY6ZoxoFGhOK9ndJ5ha4owCywUq+sQW?= =?us-ascii?Q?2z0OlEPaUGH7ul5h0axQ/MvglUffqOZELcKHxJOaA2kgISHVUlI806mHYCed?= =?us-ascii?Q?EOPos+RW16zGE1D4Uj7Bv9w0dbKPJRrAC5mYGqfbiO8KkJJXaKA+wDLtWtPP?= =?us-ascii?Q?Hmgoj5kWS7N4i6IRJTSSw2Q9nX9oQb0yo1yls0cD/Mv3xhoUVps1E7v1nyGR?= =?us-ascii?Q?W60F5tyjKpPiHsUoefvrWumc0ttCWpcuzuiyZxfl9Vx+v5SwjkVb1BdMrbi7?= =?us-ascii?Q?KEV/cfOuekWbXs5FiNtWn5duPIxUGWa/ZAOtzyDAs2ht4GfRpjTcEUlyAnW/?= =?us-ascii?Q?0/f78X3S4JCKU4EuP8CVqTlgXaIC7Ty2aFuRsfyltsTEK1hF/qk17MEos80p?= =?us-ascii?Q?xPKTuCmznNkqS+tg2zPqpfo8+8PMWnwy0mAl9du4rd6fRphIc4kVluV6GnBz?= =?us-ascii?Q?OM50oil4GRd3ROvz87TJyhBDDFu8448mpj51zzu19PWNzaPXw2eiwLIfCCJG?= =?us-ascii?Q?6Em+TQ7nPlbTHSkzQgHZBgbZ7eeUpIGavSfWEl5o4W6SGql13y2wqgOlSgW7?= =?us-ascii?Q?juRTReTVQcN4O6jb/W4lDAXdTkDRQbRI/iJ3ooIcv/RNwKzzTQCSCTBkqa+y?= =?us-ascii?Q?kE1+Gvel8fTr+2ArizPitWmqgfTfC0IIRFMopzU02eyWI69LvrYQJ3AUAaC4?= =?us-ascii?Q?r92FkKRT/FTetkB586PMpopW3omyqb5PZOONZk500jrIREK0CN7Z/7ccIZ2x?= =?us-ascii?Q?8wKmzdY2OpL5ge52Pn6a2ZFpHP2u74UjjOv1XQEH3KWglq9RgVFeGN666srJ?= =?us-ascii?Q?CUoZruD0zHFxuOCGwWwfd+E8JzKGHO/+yBrSItKUCDEtFZUfL/+Z4KPiLc4D?= =?us-ascii?Q?lZGPVBBzY31xP+SFev07h36Kf701Ox+TmlCVly27sInvLtkfz79WgT1nP4BA?= =?us-ascii?Q?=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;DM2PR03MB509;5:cNb+zm1cuU6YXAM2AzN9PSILT8hqAF2dyc3yClRoWwFYiLfk7S1rqHbmg9/yQqDBrYou9l2fa5IxBNmqElcbbe2XYyxd6MFlInsl7vzdU5W8E9jRrgZs/TvMxjJNPwszYQU8/VXgCP3w26pz1MnoPw==;24:I1LQIjXuIIxcoPWR0GeKjPqBvpdRA4JzgQmSm0/n9wbR2vmTcABQofN4XaQwLyl2BQu9K/6o48DZpyG3qceUgmucVRw2eI/eTtQHOjFXT+g=;20:AFOEb2UCjnqFQgqeen7TL9lUQ0tNFB7qccQC5cu1az9FDZChoNNfwK0i97s9Jk9zwI0+qi/st7HmZ1EIo4IFsQ== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Sep 2015 21:25:05.3843 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d;Ip=[192.88.168.50];Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR03MB509 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The Management Complex (MC) binary interface added a new "flags" field to the command header. Add the definitions for this field in preparation for adding the new cmd_flags parameter to all MC interface APIs. Signed-off-by: J. German Rivera --- drivers/staging/fsl-mc/include/mc-cmd.h | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/drivers/staging/fsl-mc/include/mc-cmd.h b/drivers/staging/fsl-mc/include/mc-cmd.h index 32501e0..af7de6e 100644 --- a/drivers/staging/fsl-mc/include/mc-cmd.h +++ b/drivers/staging/fsl-mc/include/mc-cmd.h @@ -67,14 +67,31 @@ enum mc_cmd_status { MC_CMD_STATUS_INVALID_STATE = 0xC /* Invalid state */ }; +/* + * MC command flags + */ + +/* High priority flag */ +#define MC_CMD_FLAG_PRI 0x00008000 +/* Command completion flag */ +#define MC_CMD_FLAG_INTR_DIS 0x01000000 + +/* + * TODO Remove following two defines after completion of flib 8.0.0 + * integration + */ +#define MC_CMD_PRI_LOW 0 /*!< Low Priority command indication */ +#define MC_CMD_PRI_HIGH 1 /*!< High Priority command indication */ + #define MC_CMD_HDR_CMDID_O 52 /* Command ID field offset */ #define MC_CMD_HDR_CMDID_S 12 /* Command ID field size */ #define MC_CMD_HDR_TOKEN_O 38 /* Token field offset */ #define MC_CMD_HDR_TOKEN_S 10 /* Token field size */ #define MC_CMD_HDR_STATUS_O 16 /* Status field offset */ #define MC_CMD_HDR_STATUS_S 8 /* Status field size*/ -#define MC_CMD_HDR_PRI_O 15 /* Priority field offset */ -#define MC_CMD_HDR_PRI_S 1 /* Priority field size */ +#define MC_CMD_HDR_FLAGS_O 0 /* Flags field offset */ +#define MC_CMD_HDR_FLAGS_S 32 /* Flags field size*/ +#define MC_CMD_HDR_FLAGS_MASK 0xFF00FF00 /* Command flags mask */ #define MC_CMD_HDR_READ_STATUS(_hdr) \ ((enum mc_cmd_status)mc_dec((_hdr), \ @@ -83,8 +100,8 @@ enum mc_cmd_status { #define MC_CMD_HDR_READ_TOKEN(_hdr) \ ((uint16_t)mc_dec((_hdr), MC_CMD_HDR_TOKEN_O, MC_CMD_HDR_TOKEN_S)) -#define MC_CMD_PRI_LOW 0 /* Low Priority command indication */ -#define MC_CMD_PRI_HIGH 1 /* High Priority command indication */ +#define MC_CMD_HDR_READ_FLAGS(_hdr) \ + ((uint32_t)mc_dec((_hdr), MC_CMD_HDR_FLAGS_O, MC_CMD_HDR_FLAGS_S)) #define MC_EXT_OP(_ext, _param, _offset, _width, _type, _arg) \ ((_ext)[_param] |= mc_enc((_offset), (_width), _arg)) @@ -96,14 +113,15 @@ enum mc_cmd_status { (_arg = (_type)mc_dec(_cmd.params[_param], (_offset), (_width))) static inline uint64_t mc_encode_cmd_header(uint16_t cmd_id, - uint8_t priority, + uint32_t cmd_flags, uint16_t token) { uint64_t hdr; hdr = mc_enc(MC_CMD_HDR_CMDID_O, MC_CMD_HDR_CMDID_S, cmd_id); + hdr |= mc_enc(MC_CMD_HDR_FLAGS_O, MC_CMD_HDR_FLAGS_S, + (cmd_flags & MC_CMD_HDR_FLAGS_MASK)); hdr |= mc_enc(MC_CMD_HDR_TOKEN_O, MC_CMD_HDR_TOKEN_S, token); - hdr |= mc_enc(MC_CMD_HDR_PRI_O, MC_CMD_HDR_PRI_S, priority); hdr |= mc_enc(MC_CMD_HDR_STATUS_O, MC_CMD_HDR_STATUS_S, MC_CMD_STATUS_READY); -- 2.3.3