Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1360204ybz; Sat, 25 Apr 2020 17:22:03 -0700 (PDT) X-Google-Smtp-Source: APiQypJS4DHhQ6hJUPTw1TsXMWL8TDGXYcgmc08haYr95dkHcmRpnFvjByp9uO5nJE62BxEnIFYu X-Received: by 2002:a17:906:74c:: with SMTP id z12mr13991759ejb.87.1587860523721; Sat, 25 Apr 2020 17:22:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587860523; cv=none; d=google.com; s=arc-20160816; b=eYMHSwonqRef58z4IeDu5qv3/6MRyJA+5tQsLbn+PW0+9QhUzVwfMsBYgcag+D9c32 XW555VzdKuSfq6OuN+JOdOzZWVhGcTgeOtxuWO1k1fTvMoVaMH1EDoYF8apBx0NPlFtd QDYblzQNvsrfQDPSF8Fk7g2yLq7PYcU4PAtxIkhYqP/Kc3hWVgiy3cNFFSQacTMXiHtm Pc81pIt32vPz+0fBEzuSl4U48XKT3u2vW8C7qD7woPzDj0Yz4oA1fiOTc5N58apu0URh fQQf8yh5KLiYI9GtAay28byXjZM34v8+B0TCPekK/Ts1MAUS3wGt8L15s88y9wrxts/N 2OVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature; bh=GjVFWEgrL2Ux9uVNk0g7rNZWZJTRkYADX8y42+b1M8o=; b=Ii5TfdlVcmtCTVaeX4cKkJMQ6cPHYsjGVexhq1bNRSIXNhEGMTtTO19aN2hvsOBrOm gtFjAt+BSLbntictAFAOse9lWNR8jGrikamBQ1YldGRkie07yyJJb8aNesNABk+uR/UD FIXylUWUuorRIglytiWYFV9YBc2dyg71XSslSKy3+7pnMwktGwfOyAlTrc4+D5vb9Vhi wf+vItfCkhHN3qtUIwID1I4s4D/CMD/KYilYXNj68++ZETRYfRUphMfXuuXYkDC6BX1X gJ1B2/Zu3K3i7E7+JZujy+VzyStDtzCkBNfzOzVglns8+t30hGL/+1pxrSCjc8RRM3P4 YS5w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ZC3zrU05; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g5si5865247ejs.290.2020.04.25.17.21.38; Sat, 25 Apr 2020 17:22:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ZC3zrU05; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726125AbgDZATz (ORCPT + 99 others); Sat, 25 Apr 2020 20:19:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47146 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726070AbgDZATy (ORCPT ); Sat, 25 Apr 2020 20:19:54 -0400 Received: from mail-lf1-x143.google.com (mail-lf1-x143.google.com [IPv6:2a00:1450:4864:20::143]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2DF9AC061A0C; Sat, 25 Apr 2020 17:19:54 -0700 (PDT) Received: by mail-lf1-x143.google.com with SMTP id t11so10806022lfe.4; Sat, 25 Apr 2020 17:19:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=GjVFWEgrL2Ux9uVNk0g7rNZWZJTRkYADX8y42+b1M8o=; b=ZC3zrU05fbizWbcQ8emn7edlFo5iDg+TzQvaZFSeyPTgMqBlTrkiO7mfTOWoeR4f7j 0QTnpwcVxBqJT81DSpxSbXsckT1+9keSn+Sn0K7cO/EojkNs+MYfglPs/Lry42tlHoD0 RDYstxLxpFSUInviPshcJun4Yq/vA3N+cAh7c0HfDYW9GoR4664ZxL5fjhpxzT1F962+ 8HgVwtVjzr/q695NlphgLfDvLpROaOF203uHLmQ5u9TEMpar8PlzKBvEZiqfijfaqOpt 8+ZvE3Vqh/LJCFHP4//oo4E7I1dC+rRTmt6r76grtsvlDvhj1fKzeFk2AJcuvJ6FyQE4 He1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=GjVFWEgrL2Ux9uVNk0g7rNZWZJTRkYADX8y42+b1M8o=; b=JTyq7qOiqgatlHFQTBOMX4BuGowEqujX4lxgX8hhAbXRzynfXRY5ggunMWzyR3rTuD zztHw6KaCz9qcSwJB9PFNNBL1Rz797OmfRFCTbr4zUZBEA8qeidoG6iDl762Lqg8IGMz DkwIHCvm2AMJDv9jY2XK5BjZ5EYdV+sq+fxs6J+eznBigZaCFUHLMP23SmYfhGjbS25o JFNlmnygoE1cBzcl0rwrGTJVdOaOZ+jYLecGm9hqE++P/VR8TVwwQhm05kR0LBODP1SM dq4wvvFUrHYFfU8zm7oF3CGQ1PFfAm33uJHCC+DbzYY2k5UAOTHKN5sFz72pvDyxg0Yc qhpA== X-Gm-Message-State: AGi0Pua1KK2c4VF7HgNIHb+AWMkL459t6irBaQRDXL3mC2yranMtb5re KzYjIlV5zm9w3gQi/XAfFOYdei4h X-Received: by 2002:a19:3848:: with SMTP id d8mr10665209lfj.44.1587860392392; Sat, 25 Apr 2020 17:19:52 -0700 (PDT) Received: from [192.168.2.145] (ppp91-78-208-152.pppoe.mtu-net.ru. [91.78.208.152]) by smtp.googlemail.com with ESMTPSA id g6sm7016432ljj.78.2020.04.25.17.19.50 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 25 Apr 2020 17:19:51 -0700 (PDT) Subject: Re: [RFC PATCH v10 6/9] media: tegra: Add Tegra210 Video input driver To: Sowjanya Komatineni , thierry.reding@gmail.com, jonathanh@nvidia.com, frankc@nvidia.com, hverkuil@xs4all.nl, sakari.ailus@iki.fi, helen.koike@collabora.com Cc: sboyd@kernel.org, linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org References: <1587700513-28449-1-git-send-email-skomatineni@nvidia.com> <1587700513-28449-7-git-send-email-skomatineni@nvidia.com> <3155e0d2-94b0-6e0a-bf35-b3560c201039@gmail.com> <6568af00-3d65-4ddb-f003-7a4161d751a0@gmail.com> From: Dmitry Osipenko Message-ID: <5a6f61c6-2049-fb61-3a80-e729708b3fb8@gmail.com> Date: Sun, 26 Apr 2020 03:19:50 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 26.04.2020 02:44, Sowjanya Komatineni пишет: ... >> How much of the T210 code could be reused by T186/194? > > vi/csi are common driver where soc structure should be populated for > T186/T194 > > Tegra210.c can't be reused for Tegra186/t194 as programming seq is a > whole lot diff > How are you going to separate Tegra210/186/194 drivers from each other? I don't think you'll want to have one "fat" driver that covers all those SoCs, won't you? In the end it should be three modules: tegra210-video.ko tegra186-video.ko tegra194-video.ko. Using a per-SoC OPS doesn't allow you to do that because the "root" driver will have to lookup OPS' code symbols of every SoC, and thus, the unwanted driver modules will get auto-loaded if you'll try to factor out the OPS into a separate driver modules.