Re: [PATCH v2 01/14] net: ionic: Create an auxiliary device for rdma driver

Abhijit Gangurde
2025-05-12T05:49:31Z

On 5/10/25 02:00, Simon Horman wrote:
> On Thu, May 08, 2025 at 10:29:44AM +0530, Abhijit Gangurde wrote:
>> To support RDMA capable ethernet device, create an auxiliary device in
>> the ionic Ethernet driver. The RDMA device is modeled as an auxiliary
>> device to the Ethernet device.
>>
>> Reviewed-by: Shannon Nelson <shannon.nelson@amd.com>
>> Signed-off-by: Abhijit Gangurde <abhijit.gangurde@amd.com>
> ...
>
>> diff --git a/drivers/net/ethernet/pensando/ionic/ionic_aux.c b/drivers/net/ethernet/pensando/ionic/ionic_aux.c
>> new file mode 100644
>> index 000000000000..ba29c456de00
>> --- /dev/null
>> +++ b/drivers/net/ethernet/pensando/ionic/ionic_aux.c
>> @@ -0,0 +1,95 @@
>> +// SPDX-License-Identifier: GPL-2.0
>> +/* Copyright (C) 2018-2025, Advanced Micro Devices, Inc. */
>> +
>> +#include <linux/kernel.h>
>> +#include "ionic.h"
>> +#include "ionic_lif.h"
>> +#include "ionic_aux.h"
>> +
>> +static DEFINE_IDA(aux_ida);
>> +
>> +static void ionic_auxbus_release(struct device *dev)
>> +{
>> + struct ionic_aux_dev *ionic_adev;
>> +
>> + ionic_adev = container_of(dev, struct ionic_aux_dev, adev.dev);
>> + kfree(ionic_adev);
>> +}
>> +
>> +int ionic_auxbus_register(struct ionic_lif *lif)
>> +{
>> + struct ionic_aux_dev *ionic_adev;
>> + struct auxiliary_device *aux_dev;
>> + int err, id;
>> +
>> + if (!(lif->ionic->ident.lif.capabilities & IONIC_LIF_CAP_RDMA))
> Hi Abhijit,
>
> There is an endian mismatch here: .capabilities is a __le64,
> whereas IONIC_LIF_CAP_RDMA is host byte order.
>
> Flagged by Sparse
>
> ...

Thanks Simon. I will fix this in the next spin and make sure to
run sparse on it.

Abhijit.