Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3141852imu; Thu, 29 Nov 2018 16:30:40 -0800 (PST) X-Google-Smtp-Source: AFSGD/XS1697vgWlyJkUX/U+WHSi1gYKBh9VdEyu/uL7ABeiQzpqmLSDGhJ26o8PgyESgDqGwUjn X-Received: by 2002:a17:902:9a02:: with SMTP id v2mr3683335plp.180.1543537840647; Thu, 29 Nov 2018 16:30:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543537840; cv=none; d=google.com; s=arc-20160816; b=H7wLJbeWk97bwOkgwiTI082UotCnqdxDzXlu2nBIs+xvIxb7KffMZ22GyqBRVJLcoq zG7zDF9pt9JtxFbMQixXPSG4Sjz9BZBaom2rNLGwoC8fXVpulMKKjMGhOyzlM6lvdVSn icSlK1ldnTO15oEOGpjfVmNdI9hvhUapg2vG8Dth+ff8qSGXQhBhvzAk//hKe45zrmSC umIihJezvsiZ/0FSP7n814UhgK0gwhO2RAJhPRoc7L6TOt/HiGrJC8utGmn6uag1K8Xt JCRYC/jQvy+8jdNvnrycpvNq2UAOtcJxEiqH7w3EUvbyZXpB1xjLX6gAfTPoqymPk4U4 i1Pg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:date:subject:user-agent:message-id :references:cc:in-reply-to:from:to:content-transfer-encoding :mime-version:dkim-signature; bh=sTa/85jTDfn34cGm4L+tCxg60HB4b8ZtVCXAGtci2kY=; b=czu7M0ZKYSfrgu+cJ8dAYTjLMZYp7Eaa0TbQTDez5jhdw3SQpXEguINVUlu7cx11dU F05YffkUf4B7GsHFIwod1E+h8sed0UZgj190yt+hXGrt/DAbs8d6XvEV29vPzFklhaq6 BQM89cW1Up0wRd6ufpEaWyj5OBuUzkT5YAyp3cz25em8sUqiAE2NiYZ6TMQtDmv9SyJg ev9Yn7O3RA7G8WGPVKf8pBkrE8AQcjzf1y69UMnNQZcATZglEH02Y3gZyc1iu3D1S9nA +Hz7eY6e/R+NGONyInsIyluVBTW1fcLn7z1S+GM6iQlYN0e5MjgCvq5GhExVWz9Zhwmb 9VmQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=2wbqaKRJ; 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 p185si3921003pfg.112.2018.11.29.16.30.26; Thu, 29 Nov 2018 16:30:40 -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=2wbqaKRJ; 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 S1727177AbeK3LgH (ORCPT + 99 others); Fri, 30 Nov 2018 06:36:07 -0500 Received: from mail.kernel.org ([198.145.29.99]:44150 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726446AbeK3LgH (ORCPT ); Fri, 30 Nov 2018 06:36:07 -0500 Received: from localhost (unknown [104.132.0.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 8A0E72081C; Fri, 30 Nov 2018 00:28:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1543537724; bh=1tV5SDAr69cUs1iDQjfHJLRQ6J6D7Js/d801NobftGg=; h=To:From:In-Reply-To:Cc:References:Subject:Date:From; b=2wbqaKRJzdFhGgTm3xX3QHwUPHJXBvCnhDUHHlgd8ov4irUpPejrWTxU8DNS8ACOP xUyWwgLO2myyrMsjyDG+Sv2I3/KgFW2BBr0EOWzPKD9cZoejSA9+BQA1c98tEndPIk ecBPUp4sY20CAoLdBPwy0LokzegYfZxRHZ+oBzAA= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable To: Rob Herring From: Stephen Boyd In-Reply-To: <154161585170.88331.1822872519370217248@swboyd.mtv.corp.google.com> 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 References: <20181106183609.207702-1-sboyd@kernel.org> <20181106183609.207702-2-sboyd@kernel.org> <154161585170.88331.1822872519370217248@swboyd.mtv.corp.google.com> Message-ID: <154353772392.88331.16937191244549721858@swboyd.mtv.corp.google.com> User-Agent: alot/0.7 Subject: Re: [PATCH 1/4] of/device: Add a way to probe drivers by match data Date: Thu, 29 Nov 2018 16:28:43 -0800 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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[] =3D { > mtk_probe1, > mtk_probe2, > mtk_probe3, > }; > = > struct platform_driver mtk_driver =3D { > .driver =3D { > .name =3D "mtk-foo"; > .of_match_table =3D mtk_match_table, > .of_probes =3D &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?