Received: by 2002:a05:6358:d09b:b0:dc:cd0c:909e with SMTP id jc27csp15676347rwb; Mon, 28 Nov 2022 14:48:31 -0800 (PST) X-Google-Smtp-Source: AA0mqf6eUlka6jK/06yLUyr4wy9/VnYhY554oJBeg2DINxLRunlxwj8lxoQ0zGSqVJeWhF3eH64b X-Received: by 2002:a17:90b:360f:b0:218:ac6c:b229 with SMTP id ml15-20020a17090b360f00b00218ac6cb229mr28023040pjb.144.1669675710978; Mon, 28 Nov 2022 14:48:30 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669675710; cv=none; d=google.com; s=arc-20160816; b=PoXecD5f94ef5R0nHGSXR/Bv99tIgF0AA62rpR+Vq+dsu6XeClm23qaog7u70H9w1u HgnwrUMzoXRHWdB0WA3pbfYP8NQssMRThybjFV0x0cZS2iRxM4smfinqREu9bTbIoBBo 9kC8vpUf7xGvsNb9nbmqpTDuBaaxsPrwb6PkCf3qsBXNAfINsDY4j7iJ4e0xbb4PT3Kg xiaF7NtzaPn3JbDTroZcujdOlYXQubjcSCeW6P7gq7qPcxkuwstTZhXzhUpfUiBB+pcj NGIQDVgl+ccyOJbY04NJ9Bnrpdn7DPdFst6GaOxs56vYGKf+5lr3VEMp9TQdK9uvSOJw cJpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=LYB25Fvn7CGwTHKU/acIvDCx4DwFl3MWCqKj8wShNt4=; b=t/aJ5M0+HGaY1gnGEbJl0HbZPW1LfFRbZHgxFlgA4epJVZrkIVE5Cc9BG/PtZ1Uiex lKyj7NsafAPTDLZaFNVwxjnzQcC0COJvwTsyjTUusbFewNyKv8SEqsIpQzAhPvrz8L/c Vcw0741nDMObKHs/WFEQnBXxdcu78xxS9DTWFo/cCnY1VGTGVtReMsQqrKQY2wYU/N3J 3AIFYTAOCKJ9OSr3GCxQxH2tcQ1/yKZY7cLJn/nyQgw6jjMP/DFWwlltx8CqwMMV3l0K s174gAt7njB8P/Y1/SgCqLsR32bYP6JS+znQ0FC2oT14qCcJxQsAJbHoPyRqqjM5OYC8 AZ4w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@fritzc.com header.s=dkim header.b="pQdNiJ/s"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id x15-20020a170902ec8f00b00186aace22ccsi14151316plg.288.2022.11.28.14.48.18; Mon, 28 Nov 2022 14:48:30 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=fail header.i=@fritzc.com header.s=dkim header.b="pQdNiJ/s"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234322AbiK1Vs5 (ORCPT + 83 others); Mon, 28 Nov 2022 16:48:57 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41124 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234149AbiK1Vsi (ORCPT ); Mon, 28 Nov 2022 16:48:38 -0500 Received: from fritzc.com (mail.fritzc.com [IPv6:2a00:17d8:100::e31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A8AF92F391; Mon, 28 Nov 2022 13:48:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=fritzc.com; s=dkim; 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=LYB25Fvn7CGwTHKU/acIvDCx4DwFl3MWCqKj8wShNt4=; b=pQdNiJ/spdN4Pd+sUAsg/yCloS JrK1bF6nV4L6s3xSW7/B9R51576cN4zE/KAAGmJ7hPFGZetTJJwH+nvj9W2HoZd5RaNXy92TEEGBR j+FQmjcZPuSDrz0NzRIlX/UhJIoZ2aFphVeXMiwV+LHTbqhqJZdlHNJs6lQhSh8jIryg=; Received: from 127.0.0.1 by fritzc.com with esmtpsa (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim latest) (envelope-from ) id 1ozlyz-000cJ6-JF; Mon, 28 Nov 2022 22:48:10 +0100 Date: Mon, 28 Nov 2022 22:48:07 +0100 From: Christoph Fritz To: Ryan Edwards , Oliver Hartkopp , Pavel Pisa , Andreas Lauser , Richard Weinberger , Wolfgang Grandegger , Marc Kleine-Budde , "David S . Miller" , Jakub Kicinski , Eric Dumazet , Paolo Abeni Cc: Jonathan Corbet , linux-can@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [RFC][PATCH 0/2] LIN support for Linux Message-ID: References: <20221127190244.888414-1-christoph.fritz@hexdev.de> <202211281549.47092.pisa@cmp.felk.cvut.cz> <202211281852.30067.pisa@cmp.felk.cvut.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: X-Spam_score: -1.0 X-Spam_bar: - X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Thanks for all the participation and feedback. Here is my attempt at a summary of what we have discussed so far: - Common goal: A solid LIN UAPI and API - LIN fits CAN well and could be embedded into Linux CAN infrastructure - LIN support cannot be a tty-line-discipline driver for all devices out there - slLIN should become a user of this API - slLIN itself needs some more options in the line-discipline configuraion (to tweak UART FIFO settings and e.g. enable LIN-break-detection for supported UARTs) _or_ tty-LIN support becomes something more like RS485 and get integrated into tty-drivers directly. - LIN devices with off loading capabilities are a bit special. - one approach is to have a kfifo for the slavetable (64 entries a 8 bytes + checksum and some extra flags for some LIN special cases) while updating it from userland through CAN or a simple sysfs interface - when we agree that "dumb" UARTs have no need for an in-kernel-off-load slavetable (because of RT-Linux), then there are only devices left (e.g. some USB adapters) maintaining their own table, so a simple e.g. sysfs update mechanism would be enough (without the need for an in-kernel kfifo buffer). - LIN slavetable might need another name - LIN needs rx, tx, set bitrate, set checksum variant and maybe update a slavetable (or whatever it is called then...) What do you think? Any objections, corrections, enhancements? My question is: Which approach of an API is favored: Patch 1 or 2 of this RFC series or something completely different? Thanks -- Christoph