[dpdk-dev] [PATCH v4 03/41] bus/dpaa: add compatibility and helper macros

Shreyansh Jain shreyansh.jain at nxp.com
Tue Sep 19 15:57:37 CEST 2017


On Tuesday 19 September 2017 07:10 PM, Ferruh Yigit wrote:
> On 9/19/2017 2:18 PM, Shreyansh Jain wrote:
>> On Monday 18 September 2017 08:19 PM, Ferruh Yigit wrote:
>>> On 9/9/2017 12:20 PM, Shreyansh Jain wrote:
>>>> From: Hemant Agrawal <hemant.agrawal at nxp.com>
>>>>
>>>> Linked list, bit operations and compatibility macros.
>>>>
>>>> Signed-off-by: Geoff Thorpe <geoff.thorpe at nxp.com>
>>>> Signed-off-by: Hemant Agrawal <hemant.agrawal at nxp.com>
>>>
>>> <...>
>>>
>>>> diff --git a/drivers/bus/dpaa/include/compat.h b/drivers/bus/dpaa/include/compat.h
>>>> new file mode 100644
>>>> index 0000000..a1fd53e
>>>> --- /dev/null
>>>> +++ b/drivers/bus/dpaa/include/compat.h
>>>> @@ -0,0 +1,389 @@
>>>> +/*-
>>>> + * This file is provided under a dual BSD/GPLv2 license. When using or
>>>> + * redistributing this file, you may do so under either license.
>>>
>>> The content of the file looks like for Linux, is the file coming from an
>>> existing GPL license? If so, is it allowed to add BSD license to this?
>>>
>>>> + *
>>>> + *   BSD LICENSE
>>>> + *
>>>> + * Copyright 2011 Freescale Semiconductor, Inc.
>>>> + * All rights reserved.
>>>> + *
>>>> + * Redistribution and use in source and binary forms, with or without
>>>> + * modification, are permitted provided that the following conditions are met:
>>>> + * * Redistributions of source code must retain the above copyright
>>>> + * notice, this list of conditions and the following disclaimer.
>>>> + * * Redistributions in binary form must reproduce the above copyright
>>>> + * notice, this list of conditions and the following disclaimer in the
>>>> + * documentation and/or other materials provided with the distribution.
>>>> + * * Neither the name of the above-listed copyright holders nor the
>>>> + * names of any contributors may be used to endorse or promote products
>>>> + * derived from this software without specific prior written permission.
>>>> + *
>>>> + *   GPL LICENSE SUMMARY
>>>> + *
>>>> + * ALTERNATIVELY, this software may be distributed under the terms of the
>>>> + * GNU General Public License ("GPL") as published by the Free Software
>>>> + * Foundation, either version 2 of that License or (at your option) any
>>>> + * later version.
>>>> + *
>>>> + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
>>>> + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
>>>> + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
>>>> + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
>>>> + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
>>>> + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
>>>> + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
>>>> + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
>>>> + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
>>>> + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
>>>> + * POSSIBILITY OF SUCH DAMAGE.
>>>> + */
>>>
> 
> <...>
> 
>>>> +
>>>> +#ifndef __DPAA_LIST_H
>>>> +#define __DPAA_LIST_H
>>>> +
>>>> +/****************/
>>>> +/* Linked-lists */
>>>> +/****************/
>>>
>>> Do we need to maintain a linked list implementation, why no just use
>>> sys/queue.h ones as done many places in DPDK?
>>>
>>>> +
>>>> +struct list_head {
>>>> +	struct list_head *prev;
>>>> +	struct list_head *next;
>>>> +};
>>>> +
>>>
>>> <...>
>>>
>>
>> The underlying DPAA infrastructure code is shared between kernel and
>> userspace. That is why, changing the internal headers (for example,
>> using RTE_* queues) is something I want to avoid until absolutely
>> necessary. The outer layers (drivers/*/dpaa/<here>) are something I am
>> trying to keep as close to possible to DPDK.
> 
> I understand you want to escape from maintaining a copy of common files
> for DPDK, this has been done by many drivers, as not changing "base"
> files, this makes sense.
> 
> But for this case, file is "dpaa_list.h" and as far as I can see all it
> has is linked list implementation, this looked easy to exclude, but if
> not you can ignore the comment.

Got your point. I will respin and see how much is the impact.
Thanks for inputs.

> 
>>
>> -
>> Shreyansh
>>
> 
> 



More information about the dev mailing list