From patchwork Sun Sep 15 01:53:07 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vladimir Oltean X-Patchwork-Id: 1162390 Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="IOdjPBY6"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 46WC98157jz9s00 for ; Sun, 15 Sep 2019 11:54:19 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727216AbfIOBxm (ORCPT ); Sat, 14 Sep 2019 21:53:42 -0400 Received: from mail-wr1-f67.google.com ([209.85.221.67]:36746 "EHLO mail-wr1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725825AbfIOBxm (ORCPT ); Sat, 14 Sep 2019 21:53:42 -0400 Received: by mail-wr1-f67.google.com with SMTP id y19so35467754wrd.3 for ; Sat, 14 Sep 2019 18:53:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=yK5EI9pWNYVGtFZ1I1ATBu57WYrOlRIdlmTNhI8Knwo=; b=IOdjPBY69xkyEyQOm5eVn3CFgDUlYUk9h531Mf7OoKnHeo0B3bchon39oe3USqSsma 7Pi7BgSOoMmKTGI10jVl8EJMwszm1m2gJqwOym9QH5pvmuNcJx9//WXrC5uNddomjPDg veFRzi1D+r9AEbVnH99vwuf6Nmzp4kA/f4olObI6sqQOS1cVTALNpNcal5cgALZmsOF4 F4txdbFwky2q+mV98+ur0bUr9Xw5C3x9ae3QU7tREK47MQvQ9vErYlPLapTn6I/Fz87k Wx4WOTtIWGmcLqSIPBQNYiHX7is5egPhEJ+YU0+vC6l6/BxL6NxdXR/ZtRyvMIZAbwn3 jF3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=yK5EI9pWNYVGtFZ1I1ATBu57WYrOlRIdlmTNhI8Knwo=; b=WhdffimZAr5TmkLNU/F/I/FtpQlczxS/b7cPEXNrGFCfetaLj778oSMsOVisEPo5zu ynN+Jf8kbUQ4KtYXab7JTtpXLZxiKBdXr8oTrAmHwOREL1hyyoLevScNj92CDDv9ScKt GUD3OUbaqE6NRBqQprbv/lBmvwC97zpahGwYA/sPcr4Bryu7heGOD3ICTICoYKQZBG2M sC0petmK3LvRke7C6Zf7h1IMwoCBhkwE5ATPMi8LOjt/lIcX+ODHbtoj6+lPpHrfYBoE xAaaif1VBx4JjXelaEF6qdFIw3RONawktzE6j66H/5fD900+bFK+/jRczrIznGcU5yKt +z1w== X-Gm-Message-State: APjAAAUXzVzfiTwpKyduzaFu1FB4KBrwQSEN6UM91B72byZhwxBgp2m0 dozg8qR3lRQcn/gGLMYklFg= X-Google-Smtp-Source: APXvYqxprOz36k9SiD5Hf3xF+Hk61UwYhqol2oD5NxKFceIj+yZ/Qq49p1founKLkDrE1XKXBP9/yw== X-Received: by 2002:a5d:4e89:: with SMTP id e9mr1058665wru.48.1568512419032; Sat, 14 Sep 2019 18:53:39 -0700 (PDT) Received: from localhost.localdomain ([86.124.196.40]) by smtp.gmail.com with ESMTPSA id p19sm5627044wmg.31.2019.09.14.18.53.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 14 Sep 2019 18:53:38 -0700 (PDT) From: Vladimir Oltean To: f.fainelli@gmail.com, vivien.didelot@gmail.com, andrew@lunn.ch, davem@davemloft.net, vinicius.gomes@intel.com, vedang.patel@intel.com, richardcochran@gmail.com Cc: weifeng.voon@intel.com, jiri@mellanox.com, m-karicheri2@ti.com, Jose.Abreu@synopsys.com, ilias.apalodimas@linaro.org, jhs@mojatatu.com, xiyou.wangcong@gmail.com, kurt.kanzenbach@linutronix.de, joergen.andreasen@microchip.com, netdev@vger.kernel.org, Vladimir Oltean Subject: [PATCH v3 net-next 0/7] tc-taprio offload for SJA1105 DSA Date: Sun, 15 Sep 2019 04:53:07 +0300 Message-Id: <20190915015314.26605-1-olteanv@gmail.com> X-Mailer: git-send-email 2.17.1 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This is the second attempt to submit the tc-taprio offload model for inclusion in the net tree. The sja1105 switch driver will provide the first implementation of the offload. Only the bare minimum is added: - The offload model and a DSA pass-through - The hardware implementation - The interaction with the netdev queues in the tagger code - Documentation What has been removed from the first attempt is support for PTP-as-clocksource in sja1105. This will be added as soon as the offload model is settled. Vinicius Costa Gomes (1): taprio: Add support for hardware offloading Vladimir Oltean (6): net: dsa: Pass ndo_setup_tc slave callback to drivers net: dsa: sja1105: Add static config tables for scheduling net: dsa: sja1105: Advertise the 8 TX queues net: dsa: sja1105: Make HOSTPRIO a kernel config net: dsa: sja1105: Configure the Time-Aware Scheduler via tc-taprio offload docs: net: dsa: sja1105: Add info about the time-aware scheduler Documentation/networking/dsa/sja1105.rst | 90 ++++ drivers/net/dsa/sja1105/Kconfig | 17 + drivers/net/dsa/sja1105/Makefile | 4 + drivers/net/dsa/sja1105/sja1105.h | 6 + .../net/dsa/sja1105/sja1105_dynamic_config.c | 8 + drivers/net/dsa/sja1105/sja1105_main.c | 28 +- .../net/dsa/sja1105/sja1105_static_config.c | 167 +++++++ .../net/dsa/sja1105/sja1105_static_config.h | 48 +- drivers/net/dsa/sja1105/sja1105_tas.c | 427 ++++++++++++++++++ drivers/net/dsa/sja1105/sja1105_tas.h | 42 ++ include/linux/netdevice.h | 1 + include/net/dsa.h | 2 + include/net/pkt_sched.h | 23 + include/uapi/linux/pkt_sched.h | 3 +- net/dsa/slave.c | 12 +- net/dsa/tag_sja1105.c | 3 +- net/sched/sch_taprio.c | 409 +++++++++++++++-- 17 files changed, 1237 insertions(+), 53 deletions(-) create mode 100644 drivers/net/dsa/sja1105/sja1105_tas.c create mode 100644 drivers/net/dsa/sja1105/sja1105_tas.h