From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0083.outbound.protection.outlook.com [104.47.34.83]) by dpdk.org (Postfix) with ESMTP id D7B2B2BBB for ; Wed, 7 Jun 2017 08:58:45 +0200 (CEST) Received: from BN6PR03CA0077.namprd03.prod.outlook.com (2603:10b6:405:6f::15) by DM2PR0301MB0909.namprd03.prod.outlook.com (2a01:111:e400:501c::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12; Wed, 7 Jun 2017 06:58:44 +0000 Received: from BN1AFFO11FD021.protection.gbl (2a01:111:f400:7c10::157) by BN6PR03CA0077.outlook.office365.com (2603:10b6:405:6f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12 via Frontend Transport; Wed, 7 Jun 2017 06:58:44 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; 6wind.com; dkim=none (message not signed) header.d=none;6wind.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BN1AFFO11FD021.mail.protection.outlook.com (10.58.52.81) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1101.12 via Frontend Transport; Wed, 7 Jun 2017 06:58:43 +0000 Received: from [10.232.14.39] ([10.232.14.39]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v576wf8Z003345; Tue, 6 Jun 2017 23:58:42 -0700 To: Gaetan Rivet CC: , Jan Blunck References: From: Shreyansh Jain Message-ID: <33c95f6a-82b4-6557-7011-f210f34cbc88@nxp.com> Date: Wed, 7 Jun 2017 12:36:53 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-Matching-Connectors: 131412923241252739; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39860400002)(39410400002)(39380400002)(39850400002)(39400400002)(39450400003)(39840400002)(2980300002)(1110001)(1109001)(339900001)(189002)(377454003)(199003)(24454002)(9170700003)(47776003)(65806001)(65956001)(5660300001)(54906002)(53936002)(229853002)(305945005)(65826007)(110136004)(64126003)(38730400002)(4001350100001)(6246003)(76176999)(54356999)(104016004)(50986999)(230700001)(50466002)(189998001)(498600001)(36756003)(31686004)(81166006)(77096006)(23676002)(85426001)(8936002)(8676002)(83506001)(2906002)(356003)(6916009)(4326008)(2950100002)(6666003)(106466001)(33646002)(86362001)(105606002)(31696002)(37363001); DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR0301MB0909; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD021; 1:CynP2fBRZRRb1hPve3LEEXYayqjqkhxpJZfSpE/lwNfV0fMRAJUWmeoWOTkuhSC7yntHUF84DUncGxst07sqlciAOO8pI4DJxG8FEbis/FKzXUXDt2Jr3bShOonTKRfQvMz+UBMrlESllQzBLXkQVjBFzUd4yrHCZTPCZuvbvLn0zcXo7plhlE0MdQsj+KDwvxEQu9b1tXgOGEPArFZKM5K7mpE/NjfePndOvtnaEBMiobcoVgH6ZBt3/s+nAbBJcSgcV0lUce/R2FM3doTUUXrDu2a9w9HnB8ZXeeHnAfn9KVzCvrTOB2VP/MnhSf5S7yMSJd5MsbqVfi+KhLJfJLwaj6MAkUb4ahfyF063fJYjUOYr33V0hYV1ZFSADSSk12kfDWGpTIufJwPirtwo7CbCBh+dC2Gm9uy7Rr0pwzIuYqZq23JV8ljxFAtaYFKLBFfNfapVrsYPzfnDhhcxZV3719Vm8peyja8+sfY2XNGdoRFzhkwZtaZHKjDRen6qNLy9iY+Ms8TDEtrBDeJAQqFl4BZeqCiV6ykghG1W8Eo= X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM2PR0301MB0909: X-MS-Office365-Filtering-Correlation-Id: fb49f54c-7db4-41f0-04c3-08d4ad72a323 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131430075)(201703131517081); SRVR:DM2PR0301MB0909; X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0909; 3:4XC0djHOskxBPBygG9Q/9T8ojSjkxZtWsycxzTBvS2UR1B7H2USoa/mkmhpsYxxE9XiZ6TNLjevSjKZ99SAl7z8bg81hEuQMW5DBfHxZ2+/rUXZuQJf4Ci94d2B1Lcl3S6S+XH2r5YEHXRAqOspaUmgASjFWR+niQth47ykvbbVj7VoIqfKpVPAuGAbOLBRkXCr9gHXijL3RSp6mW8zmNhHl8+Yddi4aEGaszMtr+aNFhR0ljwuPq37PHUorIixokIrkgCsTs9rD5xZYiQe3XSwAit60m7XXrr0HRaGeaKdkm9b439jeTZ7QXi3l3TJ55HRaxoTdb+n9qhsSO4/LkoEpJZ4p/1S3y2l1FyNmvBmOPIVQlue0k8mhaw94yGufmZ/NZUlSbODhKIrRTJ97+VKrMU+HZtHYIKV71IuwyvrxNtHA40BTXDLcwRcxsOVE; 25:ZkS562pNyTAcV763Udr2q2eWXUVDN4KcU43/efhR1QSd5dkfcNusgKPDpPbpQZmO07Ks4zuHEseI1eU6pQKRz4EnGYF4lrssxEGgO1es8c4/nFJm4kewfR7WB9RNMQL9Yy1HYq5gO8AuWc+Choa/3Sd+AkvMx7OtUc+r1Vb6Apck7iBsvHFMw2/f1nepmz8J7lbJzfVkRvCzaPYCEuZjUTT6w4W4fT8CZhj3ZPFAyVWpfFZ71dLdYms0h0dcHCoCfcS5unS9zN37fGwl/JIGKtJ8ezUZ+OUmz+6clxSIfyaZNjh02cDZCUJLZrR16Fu69m1LSFhijrfxcZNGPClzEnntKwvzSOUVUpvWar9SyB+5iaMk4HE3jq7s9rj0FhtKodDF2nHkpezRzO8nLfh3MqUw2To3Xv+0lc4mtCcXWgKzbJj6Su7fGnkBzMG8iRWjjx0MIsh9YM/JwV9EBGczVt4mke15/Fsuxz2UtwFepCQ= X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0909; 31:EeOfzDaMs4/jbBKQlqJVeZvRS4u5DHn0WOnIjFxA6/KeG9ugxyV/m1I3Ip9T0eBRMmGB/153RgYyvVxX5p5loje0Uu68TRw9HY0DHnvjspMG3u2npqtuZEj5yKtg2M6dtQw2oNSWtGngO5IzOJQMky2FdV9yHi8gp1ySX2VTYM3jJUGDAiji23k040xAO8i/80JJb1BG74gU4ZCY+CnzEF7b+n8+5zDha/9EH+cc7ANpnJoXaVTns2Qy5rYxFfH4 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(601004)(2401047)(13018025)(8121501046)(5005006)(13016025)(93006095)(93001095)(100000703101)(100105400095)(3002001)(10201501046)(6055026)(6096035)(20161123559100)(20161123565025)(201703131430075)(201703131441075)(201703131448075)(201703131433075)(201703161259150)(20161123556025)(20161123561025)(20161123563025)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DM2PR0301MB0909; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DM2PR0301MB0909; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtETTJQUjAzMDFNQjA5MDk7NDo5Qmd6ZFk2bEVwVzl1aHlpL2t4YXpPUm9m?= =?utf-8?B?WDNmZHJ5MFZCYkpjcklyc1o5RmZwMHZvSlBhVXBVTW01cDYwd214L21JSW1l?= =?utf-8?B?VTZFSEN4ek9kck9WYkw0eTYvYmFlK0JpWW1GSCswdU9VbTh4Ly9KMlNtMUpy?= =?utf-8?B?cmRCb0pBQ1c5dXJXcDQvUWJMM1RtWnAwMWx5QjFjU2ZmYnVXRExwdnpqYUFh?= =?utf-8?B?ME5CNTlSc2twY004NzlNQjFCT09MdXRubHYyb1ZjZ09GWithR0FMS01pVVI4?= =?utf-8?B?YjV4REU1R1lOTmF1My94WjdsS2lmWkxsUzZLTGFLcFA5cGtpMkk5R2dpclpm?= =?utf-8?B?ZktiK0R1NnI2amh0M3p5MlZPV01OTVBpbWJSNHlzTWw1UUpEcUZ4bm5rTDJt?= =?utf-8?B?ZWVwWnlrS0M1MXFzWnRLZmVkQ0svb0lkeEYwZzZCZUhoUDM4UGxrZnZ3bGlk?= =?utf-8?B?OHI4b1ZkMmQwVXA0ZExOZDZVT1FHT2pwN1E4R0dyQ2lmSEhiTy9lZ25tb3p1?= =?utf-8?B?Tzdndnp5UVlMdFdDeEd4SmRKc1dzb0d2QStmSmVoZDRLVFY0a2hwNWVMOXQ2?= =?utf-8?B?UlhFdDlLak92dnQvTlVDb1lIZ0R3R2xhelVqWEhBTW5YV1krQ0JxNFVzQVIw?= =?utf-8?B?QitFT1V6QktWaGtFcE1yRDh4d3I0dUN0QVg2Y1ZpTDQ3dmxpK2hOWGZZSk9k?= =?utf-8?B?QXhtMFd0dFNiV3FobjVnbm1UdC9VWXZMeHRKcE9Dby9XbE8wSTRPZERkc09h?= =?utf-8?B?aE4vcEM4bEtRa0pUTEZpYVV5YytMd0Erekp3ck0rc3I0UlhHVHNwSStkNUxP?= =?utf-8?B?andGcmhLYlpiS0Yvekl2RzhNNWo5Nk93c3lmVTlhUmdJNnBvVzBCMVpoOEJj?= =?utf-8?B?bkpORDk3VHlXdmtFMkJuSmJxVTdRYVFSOHQ5RmtIakd3VXdnd0UyN3hHKy9h?= =?utf-8?B?dDFjRGxQN01ZZmRjQnFPV2ZRZlBpYzExZS95VlB0aW9xa3VFQllUOE05S05N?= =?utf-8?B?U2Z0TDVtTGp2Rjhub2JIc01kYmdOUWwrOFNEdkxHaW9sSzhLdUczOUo5dHlh?= =?utf-8?B?MlQxdFI5Mit6bXoxMTBJOG4wL1c4M0EwdE1LU1EzMGZZZ3J4azE5RFFyMS85?= =?utf-8?B?cW8xa3p4UUQ4SkNCL3R1T3BXWERZVzFCR2JpY3Jqcko1QzJqYTNMekNLRzRk?= =?utf-8?B?dHk2TEhWcWMybnNhTkY3TVNJMDEzRDUwM000REVHbTljQWFXNGovWXdBaVZt?= =?utf-8?B?UGtTM3NHUGtpTGpPOWdtcFN1T3RYVGMrVHVqVlVFT1FxbEtlc2tmTnZTazJG?= =?utf-8?B?QVpqZ2J5MWtKTjhkZjJsYlI0NTlTbGkzN28xZFFrM1JHaVR3R3NwNkl5WnNV?= =?utf-8?B?ajBNemxreE5tbWplMW5kejdvWXJBdmVYYS9xMGM0RHcySFpPUkpyWHc4MWh3?= =?utf-8?B?UTBEc0xIa09zSUVXNGtHK09aZEN5RkJzaWkzR3VaSkpEWEw0WURYU0QrUWhr?= =?utf-8?B?c2Q4aG1oTXJySGdNaGhJbDE5Qzg3WndTb2NIRGVvSDNub2sxY0FVZzFXelRj?= =?utf-8?B?dEQrOWZGdWRZK2tzZmNHODVOdHRnQVhMY0ZtNkkrL2NUNzdKcW1NMjQ1Zyth?= =?utf-8?Q?3x7yhG53Pb8bcYDXB1Oei?= X-Forefront-PRVS: 03319F6FEF X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtETTJQUjAzMDFNQjA5MDk7MjM6YldHakhZVFhYSForR0EvUk1tMys0cDE5?= =?utf-8?B?SFhSTzYyaWVnckpRSXMvT09ETFdiL1NTRlNkYmoybE9vOU9FakRPdFZMMXZ5?= =?utf-8?B?Y2RLd2Nzb2U4RHB4Z3E0SW1qQWMwWXlJZnM0dG5uQUZOKy9helhNb1U4M0pX?= =?utf-8?B?cFI5M0d2MGNYWmdLSVVoTVoyWjZNNGVHWUwvQmNpR09VMEljTHZhSGFDRWRt?= =?utf-8?B?TW15SmR4TUt6dkhiN1dKK2h4U1E3MDRzNFpEOUN1TnlwbjM0NWZZRE1jU3Rh?= =?utf-8?B?U2ZaTGcyWm5BVDVrUFVKaGhQYm45aXhEd3EwclpyaDhDRG1hcUhYTy8vYWkz?= =?utf-8?B?WEdQUEwwaWhYcmdUMWtsM3M0ZlRDWm5BKzN6MTFadGZla3kzSXNqbmtuK041?= =?utf-8?B?U1JrNzB0YlNUbk55WVlQckRYWUFaUDM2bEFHMWsweitONDJ2aCtTYUtlRFJV?= =?utf-8?B?bnVHVGs3eG9uNmdJbW9pTUtIN1NaYnYxcFhXbHB3ZXVta3BNNUVldjJhV3JN?= =?utf-8?B?bTNpNHB4V04xN2wwZEZTQXUzZzVVck9xd3g0QjdHUkl1NElZWEJJeHFNNWdX?= =?utf-8?B?eU1ML3VPT1N4dmMzUDVMMGErVTZ5U0NaVnQ4dWx6WHIzbG9tWkhVazNxaWdC?= =?utf-8?B?NjNtYzBqV2F4RVhlTGlhUjZZbGRYdWpvUXgrZmhKeC9IY0dmTlJCdTNZYWJ2?= =?utf-8?B?SVIxeGU5QXdXN05Wd0VHQmtZTGxnc2ZIalBnbHU1UmdxUzVjdDhYT29uZndy?= =?utf-8?B?MTBJV0M5YzBPK1prTU56RU9mcTZVYTUwS0ZVdjhyN1gzd1FEd3BTajFxQytv?= =?utf-8?B?Nm9BNjVMVVJKSWdiU3lwNUJBS0thaDk0c0xyR0pWdFk2MHc4OU1ob29mZFdG?= =?utf-8?B?U0l1Nk5Vczh5YVh4bXAyaG80Uk0veHh0WGtHSHQ3NjJPV2lzNEJDRnAwVGp3?= =?utf-8?B?TVdHRnJ2V01lSnpZanVZM24zOHR0SFhPajRHVUtJZWNrbEVxWDlVUi9XNDVS?= =?utf-8?B?VGhVS1VUZjJrN1Jna2FlTTlFM3JzN0ZwQmFlVEl4S1o2bk5oeTkyVUhRcldR?= =?utf-8?B?T0QvaGdTSTJKWWk2TzFiRDhiSHZnVUZhWFpKOFY3UmZSNmpLRjVCSG53c3Qz?= =?utf-8?B?UDNpeFBva0F5SjhrNHZzT2JraVJ6K2EvWE5FSlhPUFViTFNsQjYybE5HQVBH?= =?utf-8?B?Mk5zdlNNQ0hmcFh4RDFSVUdoZEdvRFZKTk8yY29DalYrVXZ6cG9pZUVNVXMy?= =?utf-8?B?bVdWTUZPTTFkbXZWWUJEekN2MDZBWmNUTVMzZWRVbXF4dHpsUVV6U2lOd2hh?= =?utf-8?B?MjNWYU9pS3VVWDAvSi9YcGlkOHZxTFRub3haWmpYY2I5OHRObU90YXpGM2NR?= =?utf-8?B?NHduMzF6Risva1hLQWVEc0VpQkFtL092S01NSElMSlRLazhTaGdmZVVPeWN0?= =?utf-8?B?S0cyZmJqRzdpbnY4SlptdlhOVytZTllzaW93SW9rNzJ3Z1VyUmV3LytJYzU4?= =?utf-8?B?ZjBsTmxsWjBoeDNuRXZmb05pTnB6YmQwMmpqNWVBaFBNVC9TUEJ0Z012dWNy?= =?utf-8?B?L1NKVEpuekRheHBaYm5DMDhTdHVaQVBKWEtyOWhFVGdwK3ZQaDViWFk5UVkw?= =?utf-8?B?Y0Y4QXZTUXJwYTBpNlVtd1hCZWdQbjNkK2JyS3psVGZpOWRsUTBqRzZYVS8y?= =?utf-8?B?eW5lSksrbk1YS3htMjQrWms2cUxWMU9mSjhveDJURzM3eWlwZmF1cjRrakpE?= =?utf-8?B?WmxXdVV2WXQ1NFpUR05mWHNzZHBRYTh2TzZBL0JSc0FKK1p2SjRKZEF1Qzg1?= =?utf-8?B?QVc4SmdNODZOYzN4U0psQnBGVFFJamdFM0xKdWNZRzdMVk9xSWdjSzVyV2lx?= =?utf-8?B?S1g0MWZiY1duU3pBVkpEb3l5emhGMlArdTMvWElqUGZ4UUdISHpISGltRkJ4?= =?utf-8?B?ZUpmSDRjaTRnUm9CUDdwYXpHbkFuTGtPM0ZnNDhCL0x2aHljRjV1dzhKR2pQ?= =?utf-8?B?NUQ4M2ZZSTRSLzM2Q0lxWEFIYys1cGtNZngvTHlnPT0=?= X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0909; 6:h+7pqep0caQt8crBVFphOIy82uFlQsGbpAfbPrszmoN3wTV/XM1vBz6paXE20XHdaD3VZ58ffXX4lPxFxp1MztbLyXDvxR4eRw7KSQhALSgS7U3zbWOWxOIgzfaKLUJ92QP6k8508VwgBZDT94N7CTRh0LsUcOXmLZhIZgnseLizWqHwSMImW8Dz5HPMdDU3CYqXcdXrSglr8j7CfTXwkvpX7Ph2jkinvmi24THigeEu9rrd7PSQzPX5DRdYexFfKrVL66eroCD/RRwTmefGsqY90EQ7WJu+OP0i2weT2qFpeDEJZloi53Ait7SA0QluPr8c6Vkt16xhKzvEKAdpCjJ5+o8ma3h+0UDs2CH/DR9/boW7cbwi+ChBB4Ee49L2+tQE0BPmII4mhfFHPcJguChgZQZS7VrgKml/3vwsrAVQb7OEM34A+CYUKq9z5nePjr8RK7nuR6GaG8lKXLKEys6vATc4hyaNxV6ZtNNTveiGzoj+IFHWmNbO31vV1f0xGx32Nbe8WjhGDCIAoOaB0g== X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0909; 5:XEXlWJvm6UyvC2OZ88q/LCujc8bsBUaBlcoLg5l208YKr8F+b4WnlLN8yE4Jg4hLZb2eV44di65RxdI+HnI/hGjNgDSe/BaZNgR/+gBiaGo3nmk44Pf3FjHpWQacMiWXSsniKiXqUF+nNtqV8/l/UjTipvTnJ7J+6rkN41xo7ZlypxDX8HfgRNd+Y3PkK7nTHfYzyX/1aGJCRyOw1ssjOJh1bYkzkUiYEF+eH8OQ0hIFSw+STBUYrGzQ08+yXLs8xzdgp1ttKFpndiVWnItPEIzter/xRzXes2qYDPW92ikhhbIn48LxdchORx5pAjeXb6VMp+/UbsaJuSZCZn0tXaK5sOnp1PNZvFor7hrz8g9o8xPsdvh+2r475qLwWOXEOeqC3XAdT2rmr8s/lb6skRtt8AxQ2w1bjL1C9uNHuV1WX/3sE6OHyTnyI7PfXbYLB1hGwrQ27JNTv05ULjmX6pdv7urdwJN2Cc/plr6U8X7qPrMG/ryfxg3Q0Trc2UI4mogzo+xko6RT2aFixAuRgQ==; 24:t/8tjXvY67O5ZCZwqASObHAL9Wq9mvk3kLR3hnobhCHvH4Ao32+cXFelkbonm20RpgxdE+SjVJ6hQiGNJaMSXdvJI4rATUY9w5MMNGiV6bA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0909; 7:aR+qewoSq5C5U2dbi9Xyez7hbZ6N8ZqTe3u2tfPO6AsTKkoAB/XkX2YeDecVkZToBAF3/BmmBlNq/w7DdMfkDlknCPkG92t65zM1MHEiGV0OgqzSseo3egi0+EuyxnuVO/HQVZXM1kx7YtyAlAG9lT846iRtmBeSdIyTcT/5QYeMo/KfIl+3dh7Wj3XS5nMThGtBf+ZU7cnL8FPKQ0V0DR2vxqiTO1VMDu0CImlgY9xlgf8fy0/+hP7+2okqMFEIEY6q0397vz7q/1sswvujkX8CgsgFozs5heTjTGWfdscLAGCb1uIwPzC8BJtc9RoICSefgesecNrs034PtzcP7Q== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2017 06:58:43.9068 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR0301MB0909 Subject: Re: [dpdk-dev] [PATCH v2 01/11] bus: add bus iterator to find a particular bus X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Jun 2017 06:58:46 -0000 Hello Gaetan, On Wednesday 31 May 2017 06:47 PM, Gaetan Rivet wrote: > From: Jan Blunck > > Signed-off-by: Jan Blunck > Signed-off-by: Gaetan Rivet > --- > lib/librte_eal/bsdapp/eal/rte_eal_version.map | 1 + > lib/librte_eal/common/eal_common_bus.c | 13 ++++++++++ > lib/librte_eal/common/include/rte_bus.h | 32 +++++++++++++++++++++++++ > lib/librte_eal/linuxapp/eal/rte_eal_version.map | 1 + > 4 files changed, 47 insertions(+) > > diff --git a/lib/librte_eal/bsdapp/eal/rte_eal_version.map b/lib/librte_eal/bsdapp/eal/rte_eal_version.map > index 2e48a73..ed09ab2 100644 > --- a/lib/librte_eal/bsdapp/eal/rte_eal_version.map > +++ b/lib/librte_eal/bsdapp/eal/rte_eal_version.map > @@ -162,6 +162,7 @@ DPDK_17.02 { > DPDK_17.05 { > global: > > + rte_bus_find; > rte_cpu_is_supported; > rte_log_dump; > rte_log_register; > diff --git a/lib/librte_eal/common/eal_common_bus.c b/lib/librte_eal/common/eal_common_bus.c > index 8f9baf8..68f70d0 100644 > --- a/lib/librte_eal/common/eal_common_bus.c > +++ b/lib/librte_eal/common/eal_common_bus.c > @@ -145,3 +145,16 @@ rte_bus_dump(FILE *f) > } > } > } > + > +struct rte_bus * > +rte_bus_find(rte_bus_match_t match, const void *data) > +{ > + struct rte_bus *bus = NULL; > + > + TAILQ_FOREACH(bus, &rte_bus_list, next) { > + if (match(bus, data)) > + break; > + } > + > + return bus; > +} > diff --git a/lib/librte_eal/common/include/rte_bus.h b/lib/librte_eal/common/include/rte_bus.h > index 7c36969..006feca 100644 > --- a/lib/librte_eal/common/include/rte_bus.h > +++ b/lib/librte_eal/common/include/rte_bus.h > @@ -141,6 +141,38 @@ int rte_bus_probe(void); > void rte_bus_dump(FILE *f); > > /** > + * Bus match function. > + * > + * @param bus > + * bus under test. > + * > + * @param data > + * data matched > + * > + * @return > + * 0 if the bus does not match. > + * !0 if the bus matches. One of the common match function implementation could be simply to match a string. strcmp itself returns '0' for a successful match. On the same lines, should this function return value be reversed? - 0 if match !0 if not a match - That way, people would not have to change either the way strcmp works, for example, or the way various APIs expect '0' as success. same for rte_device_match_t as well. (in next patch) > + */ > +typedef int (*rte_bus_match_t)(const struct rte_bus *bus, const void *data); > + > +/** > + * Bus iterator to find a particular bus. > + * > + * If the callback returns non-zero this function will stop iterating over > + * any more buses. > + * > + * @param match > + * Callback function to check bus > + * > + * @param data > + * Data to pass to match callback > + * > + * @return > + * A pointer to a rte_bus structure or NULL in case no bus matches > + */ > +struct rte_bus *rte_bus_find(rte_bus_match_t match, const void *data); > + > +/** > * Helper for Bus registration. > * The constructor has higher priority than PMD constructors. > */ > diff --git a/lib/librte_eal/linuxapp/eal/rte_eal_version.map b/lib/librte_eal/linuxapp/eal/rte_eal_version.map > index 670bab3..6efa517 100644 > --- a/lib/librte_eal/linuxapp/eal/rte_eal_version.map > +++ b/lib/librte_eal/linuxapp/eal/rte_eal_version.map > @@ -166,6 +166,7 @@ DPDK_17.02 { > DPDK_17.05 { > global: > > + rte_bus_find; > rte_cpu_is_supported; > rte_intr_free_epoll_fd; > rte_log_dump; >