Re: [PATCH net-next v3 4/7] net: rpmsg-eth: Add netdev ops

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 08/09/25 2:37 pm, MD Danish Anwar wrote:

> +static int create_request(struct rpmsg_eth_common *common,
> +                         enum rpmsg_eth_rpmsg_type rpmsg_type)
> +{
> +       struct message *msg = &common->send_msg;
> +       int ret = 0;
> +
> +       msg->msg_hdr.src_id = common->port->port_id;
> +       msg->req_msg.type = rpmsg_type;
> +
> +       switch (rpmsg_type) {
> +       case RPMSG_ETH_REQ_SHM_INFO:
> +               msg->msg_hdr.msg_type = RPMSG_ETH_REQUEST_MSG;
> +               break;
> +       case RPMSG_ETH_REQ_SET_MAC_ADDR:
> +               msg->msg_hdr.msg_type = RPMSG_ETH_REQUEST_MSG;
> +               ether_addr_copy(msg->req_msg.mac_addr.addr,
> +                               common->port->ndev->dev_addr);
> +               break;
> +       case RPMSG_ETH_NOTIFY_PORT_UP:
> +       case RPMSG_ETH_NOTIFY_PORT_DOWN:
> +               msg->msg_hdr.msg_type = RPMSG_ETH_NOTIFY_MSG;
> +               break;
> +       default:
> +               ret = -EINVAL;
> +               dev_err(common->dev, "Invalid RPMSG request\n");
I don't think you need 'ret' here instead directly return -EINVAL and 
above 'ret' declaration can be removed.
> +       }
> +       return ret;
can be return 0;
> +}
> +
> +static int rpmsg_eth_create_send_request(struct rpmsg_eth_common *common,
> +                                        enum rpmsg_eth_rpmsg_type rpmsg_type,
> +                                        bool wait)
> +{
> +       unsigned long flags;
> +       int ret = 0;
No need to initialize.
> +
> +       if (wait)
> +               reinit_completion(&common->sync_msg);
> +
> +       spin_lock_irqsave(&common->send_msg_lock, flags);
> +
> +static int rpmsg_eth_set_mac_address(struct net_device *ndev, void *addr)
> +{
> +       struct rpmsg_eth_common *common = rpmsg_eth_ndev_to_common(ndev);
> +       int ret;
> +
> +       ret = eth_mac_addr(ndev, addr);
> +
> +       if (ret < 0)
> +               return ret;
> +       ret = rpmsg_eth_create_send_request(common, RPMSG_ETH_REQ_SET_MAC_ADDR, false);
You can directly return from here.
> +       return ret;
> +}
> +
Best regards,
Parthiban V




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux