From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759594AbbIVXXI (ORCPT ); Tue, 22 Sep 2015 19:23:08 -0400 Received: from mail-bn1bn0109.outbound.protection.outlook.com ([157.56.110.109]:48448 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1758103AbbIVXXD (ORCPT ); Tue, 22 Sep 2015 19:23:03 -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 v2 1/6] staging: fsl-mc: Add new flags field to MC command header Date: Tue, 22 Sep 2015 18:08:54 -0500 Message-ID: <1442963339-32084-2-git-send-email-German.Rivera@freescale.com> X-Mailer: git-send-email 2.3.3 In-Reply-To: <1442963339-32084-1-git-send-email-German.Rivera@freescale.com> References: <1442963339-32084-1-git-send-email-German.Rivera@freescale.com> X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BN1BFFO11FD015;1:/RutbIsCL2n1IVrSZh+L28g8d7nMHAsxjVDQ6t4ML7uTwb4AVBdyT5SFUNJpKlQ5fgqMYMuSKy00TtORR7zrbeR0YJ3kwE6vqI0js49HGUu9j0c3OC2fyOAEokqCVpdKbDMCXfwzSXFZFFVqvCJXjponL1zvkXv9PM75R9nyAabSwqtZ1nFO0I0fYHLN79ye6CAoAmoWCvB2Cqfmnr6saW1B2JpiIb+MupUttn2teYh8yaph/bsj5cu4IW+kfCpe3ilzbV5xTB5tNtU/vz/epIJSz1q9XDMM1FjVuDT5qn0+AQkHSjfWU3KoI6G6U6UnzTM5PNOuGsy/PMUKXDCF3ZmUeJRq4xVzLgCk1Wydjgh51W/9PqQAuKbjCVTUWSFKdKdqMnB4+W23F8dRChVrKg== X-Forefront-Antispam-Report: CIP:192.88.168.50;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(36756003)(85426001)(76176999)(106466001)(5007970100001)(5003940100001)(50986999)(77096005)(50466002)(6806005)(104016004)(11100500001)(68736005)(86362001)(107886002)(5001960100002)(92566002)(189998001)(48376002)(97736004)(4001540100001)(50226001)(2950100001)(19580405001)(64706001)(19580395003)(47776003)(5001860100001)(87936001)(81156007)(105606002)(5001770100001)(5001830100001)(77156002)(2201001)(62966003)(46102003)(229853001)(4001430100001);DIR:OUT;SFP:1102;SCL:1;SRVR:BY1PR0301MB1302;H:tx30smr01.am.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; MIME-Version: 1.0 Content-Type: text/plain X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1302;2:MV0m4f+welWbMLTcn+/SBB6c4wRLc2Mes1AsZLVPzxKU42wYaDEWfWx3EoLjErfDwc5KsTY1MGa0Jt286RyDBbgF3FT3JYyAkrpP3xk4+psnmDaJxdK7ZxnyGl8CQa/CHlPY8C0Defuf7UDpjnrmsIRt+yFf0UAHdBtX0RpZ0W4=;3:pmCdDF1OjOfY8CKarj9yse85Ia22I7DehKiCtHPHVr0otlq6421hLv0xtPqxNBwnG/jeJR+3imdJoyo6LUR3MeCxihU2QX8fUR1IvK2kfpWXBorh+/nhb2CiszU4xqCmP+Fs3PtgRLgYTqmjVoKmv2DaKTahni+LQwkDEeb0VLnamuHkK4fSbqoFslQk10AjhPUALYG3qeOwpq9sI0j1UXOGW+1PpgFEo46f+FdRka4=;25:N1krOlEUkw45+EFi7j/2GX1psiJwy/kSj+R3k1RlsenrP2SiIpLJFZgR4R4Gy2iSo1y2Qup6GzJNmReWuhe2u4mWUyUF2OYQ8CgSRUjLvV0s+KzAXi2SifUIw/xvZXIoy/TR65XtY74UoiBi8thRH9IXnK0yYlLMd2q54h2Gc7ZoCaV6W9cE41eOGll2+pgbHgR0gLUN3DWI7/UO2GclSktQfjRb9GnWnjnvDvpkFfTaSHJw/TnCu6+le/3YDcbOBmbt8oJCScNUzQEXTbfQRw== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY1PR0301MB1302; X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1302;20:8SqWPDJoNGfYVTtBUJZhoTonRRZd3HVuRuegZDqEBJUWe9ZaoRNiIMZqjhF4N7NRx/y2POl43RjzTzgtfopJgSDLRVigb/YRcz+oZDGTh9WsVmnT2VbronPcF1+L9F4mtiCgOEotpyIaGiNoRmBwzYPup1LkVk8SH0lvX5nxkkp+5WxZaAyadBMINwVNykZg2bjUYrrAW2r1eZpdqPoF3SdWWFqDtLHlDmNTDjrfz3DziZ2k7CN6XlUSFKVNzOd1IUEIiYAsitNFG6WtEANd08mUEBtsChplxNfhAUORGBaAVkAO4xEuYVZ9H6rsfh/lJIVX4zhkOq6ajGA2uEmxlyDPiziXo5uyKvQxGX2dbQ8=;4:Is5TabyjdRmwgjoL77jsCqDira+hqls039E5PSQxVfFjxeIMI5M/fQC8TovwX43U5kWRH7kAlBFDHvyU43SiIqJBQawUFqvpQsV23C8OCQ9V42fLSoDxYLDt+5Oc0QGPtgskwCEaUkE9PNLrRmEAS9mHK3mBBjaMl/ONUzTtHmUowsIV9QqaAlQq1v7w5F5/1Yfj1gXHyVo8fA23gjhaRtgk8vxNg9Q4krszFZJAONoVfLeNsmvFfJgUIVneAGOu41m4Qtzpx+VRFqM6eHGqEQrMPKojJfB6AAGAl0nHuvz9k3jpB21d0sGWrGtTFbo3cXndvJERk+on9NlPtXX4ksOBHxHDJb1Rvn3imU+2lSo= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(520078)(8121501046)(5005006)(3002001);SRVR:BY1PR0301MB1302;BCL:0;PCL:0;RULEID:;SRVR:BY1PR0301MB1302; X-Forefront-PRVS: 0707248B64 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BY1PR0301MB1302;23:AOaIwdl/Tf0nPwSECKrECzcVDl2g5CW+3qJFLF5?= =?us-ascii?Q?zzjj5Aou/M4DhDIRoU3eh59s67NGgxV3blPnhmTREHr6ix7kmBMppg75ZA5q?= =?us-ascii?Q?38Ab/NRqSnXNMQxj3xYUdrBtXqGWsVUgmhWmHotvYOHhNOaAQlH0tcceNAc9?= =?us-ascii?Q?4t/ev3C9FUp++cqvj7jO8IpxWhNWsuvDP5WXXsWCefoAOe4WElcimIlZrOP+?= =?us-ascii?Q?rHE+MdFC82/IcWeBcouI5+BKeqtHsIbxYLIkY9tnXMzOnsbSjIZJp5c/QXX9?= =?us-ascii?Q?4VBkh+w7dLYFq68G3lz560cwrXO3ms0Gpj/rX7qzuQitfXR3bqIKM2dMVaRh?= =?us-ascii?Q?pobViG4uRXLpi4fGM57EFgAaa/fiVKBbQ5WXVtECQIfVQSU8WChP9qorHNup?= =?us-ascii?Q?Qo7Cux/FvrkrBnVoFD16xKlBZw/7dS4K2Y6MXvi/M4U/htxTWOgnZjGjj3VA?= =?us-ascii?Q?C64/3GyhRLzr0Hc4Wg985ZBgl1zjgJ79tL6Q2ftRKC/5TC1r8jdb5u3dYyKK?= =?us-ascii?Q?0mnGgoA7o4RMC87U3IZcEIRKyFjdOpAZxqJ5AxnoiTfgTTzJ5Yot5dtVN8qD?= =?us-ascii?Q?DRxzZJ4EIw4dVKEkNzOlZp1qarp2nsLmaTp/uiLixFpgYoHinU31tpn66wzY?= =?us-ascii?Q?h64h+Gkd9XmULb50bBGgGNGTaUrZdfkFh4ymIMtN6lwbeoUz0WDcuXl9f+KW?= =?us-ascii?Q?2gJU53nc3CFhgX4VEGG+sN/Z+S6zwEtnqe6zccnzBqjiLr6z5d2F4xW24X5L?= =?us-ascii?Q?0jebmc+gYt/qq5Wa2VzsnLuw/6lV5k0LhQ0YdM5cFVZ7sFrNZX75jZPRUW66?= =?us-ascii?Q?N4MHFYxOBdvjak4Eov83sM5iWMDTs2c39OFSeTDugfKNt3pNlTVVfCSViPu4?= =?us-ascii?Q?/qk806GxGg9mYrj7HWDUNMm8TfrKSdvoWBQDwt/94TJ03m/xF8iNkkwRSCPK?= =?us-ascii?Q?fVXGyOhqIXStcNCWP5bOcu5pp9QUno2eVGTr28/MuTeJ046igt+0ePlz+dF3?= =?us-ascii?Q?ro0n/SQPBXfW6i+OIPUFAZQdonQ94Fcp+54wNmnyv4hnbDQgbfn+SaQwicJU?= =?us-ascii?Q?uKdqAjvkRCS+Maqd8mpSbDSZgorDAZD3+uslwHIVA0pL09cvIVPrnKNvAjft?= =?us-ascii?Q?gyWFdsn7lh87yFoI/psmaKT+dWjIAI+Qu/yCy9TCnifIP/rLXL3tVkRvSVGK?= =?us-ascii?Q?nnOKDoRegF3WReuSwRohFeCrfR8gem9a7HLv59RcapqwfsoOJjGmyLohpShz?= =?us-ascii?Q?MLN9SUXi43UjrzAtasAQ=3D?= X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1302;5:uJKJ753BImddNQQotmOdlHmfTXAVlmikHaxXTZKGE1NWRiONVn8G9blKiSL1suoNZe0veeXzZOrJqoQBL0tEMR0j9AmNZXe8yoZ/PtwipDvSZv+u4D6PvlU3jABWPYUV2tZ6tjDtPlGuSaSyPeHNwQ==;24:WplK4uLofQd5RNWhqxUhadby4q9M7u6G3rxbiAvD1nBR7XpLJFNRfyrFZ3wXspsoTnz/y+mbEJfATlAqPHHs0X4WoB1AdmVTP9h8hbsK+Ds=;20:/Z6DEFdsgsDiycvbtdDXFNP1IBqqvbaZFUDnWAzeoDTM1lEyC4rg3gQUnqXKh5GvGorJebDn9bKDdpq/rkqa4g== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2015 23:22:59.0802 (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: BY1PR0301MB1302 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