Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3166215imu; Thu, 29 Nov 2018 17:03:00 -0800 (PST) X-Google-Smtp-Source: AFSGD/XE1K5SWiCTOPsSDyYTmvUnVEXa0s3qSjTti3i5dEU6sGAtkY22Pmdp1eGc4o1HpqD2FU0r X-Received: by 2002:a17:902:4222:: with SMTP id g31mr3646524pld.240.1543539780252; Thu, 29 Nov 2018 17:03:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543539780; cv=none; d=google.com; s=arc-20160816; b=MzDv9HVmZeA/4c8aMV/BgoEjE6oSJtlV0qNkTiZ3L3UuhP9TpHHIgoaUm6ZAzUT9ya STS0/HRFDIBHCjGXgozS3Ep4UVOn0Lc2cPVZZYASo73Fiz9zUS1f2hhjibf2nY0zZc6V HOhT372AHqdL5MQn1wj9ZdsO3m4s6NqoMNxOovgChHnd+R8GAsdLOCW0hkftbFD/Xr46 wR1pK+cqtE5qo+or8pbQdQ6Jl61Qs3BF+PVCs/k9dVaXVDrMuCI5DTJh3jiEEb0wuBlr AFoOoEbmxX93XSBthTYNHPNt1zVFHOgiBWe8VDFK2eSJ6/HiteR6e1EP0Wyym9OjfsnX UI+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=ZcWGuDETYEwB5nk4PaURcB6Qlay5aIqsEp3HxUySEsg=; b=kSZgxHIUi/a3RIoRo4bC1JOA8UXJzD1BcqVj017JkY3PO6jLZHhQTwQQ2PnElRjW7g GZ2SI7B7jOOjUYePa3ikuOH1VQRNfWXHLZoVgFzebP4nWn+57hawPiGw1Eil1XqG7sFE v7uqdy96LLOur7ZAAYn+90PTJzFjhfKundRLPsmFwDdWwPStd0Rk6ekETEHmSZEE69T4 R613bLBfDPLT5L9J1rGHVjpw7kXP/4jBFO4QRsKUSgplkRtxuc4zBkrxVYQgIfg7huJ4 Ga0V41Mx02InxdOeZwrDjXYlFdrjXRxkCAokClEV7nT97mrmuGV7VG/UNhPdzmx6uT0k tVIw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xzKkLNSm; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z4si3332624pgl.16.2018.11.29.17.02.44; Thu, 29 Nov 2018 17:03:00 -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=pass header.i=@kernel.org header.s=default header.b=xzKkLNSm; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727126AbeK3MJf (ORCPT + 99 others); Fri, 30 Nov 2018 07:09:35 -0500 Received: from mail.kernel.org ([198.145.29.99]:58138 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726451AbeK3MJf (ORCPT ); Fri, 30 Nov 2018 07:09:35 -0500 Received: from mail-qt1-f171.google.com (mail-qt1-f171.google.com [209.85.160.171]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 6809A2146F; Fri, 30 Nov 2018 01:02:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1543539727; bh=KK5k0pzTObpUzakdBmfER3QGnjqssQrfk33KN4O3inQ=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=xzKkLNSmukAla+88rHZKmE9E9a5zQjmrR8tYLKMW5kZ/7MED1cPChm2mVFe2vSJKP KSBR5L9uZQAYSa+7myQwmEsG4pxKpRNRdNkbVBIJ/QzH04S+nvus99Ghmptzs8zuVf 10UVArGMwCbWI7Rh83mOt2jFJpbEh34pZBw+DYrU= Received: by mail-qt1-f171.google.com with SMTP id t13so4255188qtn.3; Thu, 29 Nov 2018 17:02:07 -0800 (PST) X-Gm-Message-State: AA+aEWZXiRAcEy2xbBPMxbwXnlD4gKmjxkByQBH1g5z8wclnAVAwhEic lKm9aEO5hpqaYwMa+XGtFhDJrUvMMR5m/AF11g== X-Received: by 2002:a0c:8c8a:: with SMTP id p10mr3723310qvb.218.1543539726606; Thu, 29 Nov 2018 17:02:06 -0800 (PST) MIME-Version: 1.0 References: <20181106183609.207702-1-sboyd@kernel.org> <20181106183609.207702-2-sboyd@kernel.org> <154161585170.88331.1822872519370217248@swboyd.mtv.corp.google.com> <154353772392.88331.16937191244549721858@swboyd.mtv.corp.google.com> In-Reply-To: <154353772392.88331.16937191244549721858@swboyd.mtv.corp.google.com> From: Rob Herring Date: Thu, 29 Nov 2018 19:01:54 -0600 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 1/4] of/device: Add a way to probe drivers by match data To: Stephen Boyd Cc: Michael Turquette , "linux-kernel@vger.kernel.org" , "moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" , linux-clk , linux-mediatek@lists.infradead.org, devicetree@vger.kernel.org, Matthias Brugger , Ryder Lee , Frank Rowand Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Nov 29, 2018 at 6:28 PM Stephen Boyd wrote: > > Quoting Stephen Boyd (2018-11-07 10:37:31) > > appropriate structure with to_platform_device() or to_i2c_client()? > > > > So the example would become > > > > struct of_driver_probe_func { > > int (*probe)(struct device *dev); > > }; > > > > struct of_driver_probe_func mtk_probes[] = { > > mtk_probe1, > > mtk_probe2, > > mtk_probe3, > > }; > > > > struct platform_driver mtk_driver = { > > .driver = { > > .name = "mtk-foo"; > > .of_match_table = mtk_match_table, > > .of_probes = &mtk_probes; > > }, > > }; > > > > And the probe functions might need to container_of() the device pointer > > to get the struct they know they need. The probe function could also be > > added to of_device_id and then we would have to look and see if that > > pointer is populated when the device is matched in generic device code. > > > > I guess I'll go down the path of extending the of_device_id structure? Unfortunately, I don't think you can change of_device_id as it's part of the kernel ABI. Rob