Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp1126270ybl; Fri, 10 Jan 2020 12:34:54 -0800 (PST) X-Google-Smtp-Source: APXvYqza4Mi1MrHqcRW4q4WJ78ExBFBaOfKf0mKRyOxWsVN7ts7+B9SpzMV5rIsQ2YrGsHcwWYNF X-Received: by 2002:a9d:7ac9:: with SMTP id m9mr3881809otn.80.1578688494670; Fri, 10 Jan 2020 12:34:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1578688494; cv=none; d=google.com; s=arc-20160816; b=ZYM83MIfy0EmreyEomiFyggbyyisBgpKzOHXx0iECnI9mkqbq3tuiqWyfAwKkhdJgQ CVYX6RJ+zxhTgxoeLEWZ5B8/Ro3ZeCzLaEOAaZSAm6ihk837HwbZ8Qi6WLNSgtI54iL4 SnKzFb6gYZYZRqYwbcGzT7FmoCuqquiG6wVzuFSlyNjkZvnKqvSzDwgroWgT26LfGRu5 gr+MYsuoHThidvg8O6Ix1k41P/AjYdXsZ/geTTul/pMXgNUNzVMF9P2fMew9rAuUgKt4 G8p4wLtHvqN6HCkQhs61lBpTs1zWENDeISDLPKBRg3Qj60ZRQsMpGilcgcfhcSk0HcY0 o+kA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=u3jxCHUDd5Pm/Y2q0b/qKxrWWseDBaS/hK6okC7Pk38=; b=bjY1jFb5Y2p+QSiS6tHS0YIYXmg+/HTjqGn8WYizWnEOps8Y3pIPP3HsFttm5GR4Ch Bqa9pqbfubw6+AujOHy9hse0uA9A5zClgwNqyZ7glQ+CdkWvGkc8MHRI5/RD1zw7vjjp 5v9mzNzllK6xHjnp/HFUQxT2MKS369pwg2vhs7472ovx5HRH6HrIRNcHN/WH3JQyLp0Q fY7c+hx+28BK/uQVk3jftm9bhdQgtspa5cDPbM8AGQqnJH+l3DSPlcYuhBnSvJFj3tZ6 t6E4aj6BqvOmDnB6uB4/lLMKzGPYIA6UInvfoCS+TQiekfywi0mJiJqEf0X1COeYGqJ8 21Lg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@lunn.ch header.s=20171124 header.b=YHFcu8cc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n2si1858974otk.177.2020.01.10.12.34.42; Fri, 10 Jan 2020 12:34:54 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@lunn.ch header.s=20171124 header.b=YHFcu8cc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726705AbgAJUds (ORCPT + 99 others); Fri, 10 Jan 2020 15:33:48 -0500 Received: from vps0.lunn.ch ([185.16.172.187]:60662 "EHLO vps0.lunn.ch" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726623AbgAJUds (ORCPT ); Fri, 10 Jan 2020 15:33:48 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lunn.ch; s=20171124; h=In-Reply-To:Content-Type:MIME-Version:References:Message-ID: Subject:Cc:To:From:Date:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=u3jxCHUDd5Pm/Y2q0b/qKxrWWseDBaS/hK6okC7Pk38=; b=YHFcu8ccMp5yFy9YS4lh6wzLz/ 8fCAAtavMf+JJh9EqEP0ZkXV6mLtbmco+6Jx7JSgW3DgH0KSS+gmK9gMPsupNwqNRy56wsbsSNszi uYcm8f/wSwIdznLSiE+eT8ROc96UUbliZxKnHfakYQO2WZo+4U4euwJOt0NPElAigykE=; Received: from andrew by vps0.lunn.ch with local (Exim 4.93) (envelope-from ) id 1iq0yT-0004fK-5C; Fri, 10 Jan 2020 21:33:41 +0100 Date: Fri, 10 Jan 2020 21:33:41 +0100 From: Andrew Lunn To: Horatiu Vultur Cc: Vladimir Oltean , Nikolay Aleksandrov , lkml , netdev , bridge@lists.linux-foundation.org, "David S. Miller" , Roopa Prabhu , Jakub Kicinski , Vivien Didelot , Jeff Kirsher , anirudh.venkataramanan@intel.com, David Ahern , Jiri Pirko , Microchip Linux Driver Support Subject: Re: [RFC net-next Patch 0/3] net: bridge: mrp: Add support for Media Redundancy Protocol(MRP) Message-ID: <20200110203341.GU19739@lunn.ch> References: <20200109150640.532-1-horatiu.vultur@microchip.com> <6f1936e9-97e5-9502-f062-f2925c9652c9@cumulusnetworks.com> <20200110160456.enzomhfsce7bptu3@soft-dev3.microsemi.net> <20200110172536.42rdfwdc6eiwsw7m@soft-dev3.microsemi.net> <20200110175608.GK19739@lunn.ch> <20200110201248.tletol7glyr4soqz@soft-dev3.microsemi.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200110201248.tletol7glyr4soqz@soft-dev3.microsemi.net> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jan 10, 2020 at 09:12:48PM +0100, Horatiu Vultur wrote: > The 01/10/2020 18:56, Andrew Lunn wrote: > > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > > > > > > Horatiu, could you also give some references to the frames that need > > > > to be sent. I've no idea what information they need to contain, if the > > > > contents is dynamic, or static, etc. > > > It is dynamic - but trivial... > > > > If it is trivial, i don't see why you are so worried about abstracting > > it? > Maybe we misunderstood each other. When you asked if it is dynamic or > static, I thought you meant if it is the same frame being send repeated > or if it needs to be changed. It needs to be changed but the changes are > trivial, but it means that a non-MRP aware frame generator can't > properly offload this. The only frame generator i've ever seen are for generating test packets. They generally have random content, random length, maybe the option to send invalid CRC etc. These are never going to work for MRP. So we should limit our thinking to hardware specifically designed for MRP offload. What we need to think about is an abstract model for MRP offload. What must such a bit of hardware do? What parameters do we need to pass to it? When should it interrupt us because some event has happened? Once we have an abstract model, we can define netlink messages, or devlink messages. And you can implement driver code which takes this abstract model and implements it for your real hardware. And if you have the abstract model correct, other vendors should also be able to implement drivers as well. Since this is a closed standard, there is not much the rest of us can do. You need to define this abstract model. We can then review it. Andrew