From: Roman Volkov <v1ron-oLhuKTjYqW/YtjvyW6yDsg@public.gmane.org>
To: Dmitry Torokhov
<dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org>,
Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
Ian Campbell
<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
Grant Likely
<grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Jiri Kosina <jkosina-AlSwsSmVLrQ@public.gmane.org>,
Wolfram Sang <wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>,
linux-input-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Roman Volkov <v1ron-JGs/UdohzUI@public.gmane.org>,
Tony Prisk <linux-ci5G2KO2hbZ+pU9mqzGVBQ@public.gmane.org>
Subject: Re: [PATCH 4/5] i8042: Prepare i8042 driver for DT support
Date: Wed, 4 Feb 2015 12:30:38 +0300 [thread overview]
Message-ID: <20150204123038.3fb7e6e1@v1ron-s7> (raw)
In-Reply-To: <20150203193835.GC20256@dtor-ws>
В Tue, 3 Feb 2015 11:38:35 -0800
Dmitry Torokhov <dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> пишет:
> On Tue, Feb 03, 2015 at 12:48:49AM +0300, Roman Volkov wrote:
> > Use platform_device_probe() instead of platform_create_bundle() when
> > compiled with DT support, since the latter function is not suitable
> > for handling the OF device tree.
> >
> > The order of initialization is changed, since i8042_platform_init()
> > for DT requires initialized platform_device structure. To avoid
> > searching of the compatible node twice, the platform_device
> > structure pointer must be passed to the i8042_platform_init()
> > function right after initialization by platform_device_probe().
> >
> > Signed-off-by: Tony Prisk <linux-ci5G2KO2hbZ+pU9mqzGVBQ@public.gmane.org>
> > Signed-off-by: Roman Volkov <v1ron-oLhuKTjYqW/YtjvyW6yDsg@public.gmane.org>
> > ---
> >
> > Yes, many of these ifdefs look ugly. Suggestions on how to avoid
> > this are welcome (except using of_find_compatible_node() for
> > searching the node twice before calling the probe function).
>
> I guess we need to split the dirver into part that create platform
> device and the standard driver part. Then your OF code can supply most
> of the needed data via resources/platform data. Yes, it is a larger
> change, but the current splat of ifdefs makes my eyes water.
>
> Thanks.
>
Dmitry, could you describe this in details? Currently there is
platform_create_bundle() function in the driver that is not acceptable
to be used with OF (it creates additional device). This function must be
replaced with platform_driver_probe() and it is all that common
between various architectures and can be the "standard" part of the
driver.
The difference is in device creation between OF case and, for example,
x86 case. Here is a chicken-and-egg problem that needs to be solved, if
we try to make the code consistent between various platforms. The
problem is that i8042_platform_init() expected to be called first, but
at this point DT version requires platform_device structure pointer.
Regards,
Roman.
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2015-02-04 9:30 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-02 21:48 [PATCH 1/5] i8042: intel-8042 DT documentation Roman Volkov
2015-02-02 21:48 ` [PATCH 2/5] i8042: Kernel configuration handling for DT support Roman Volkov
2015-02-02 21:48 ` [PATCH 3/5] i8042: Add OF match table Roman Volkov
2015-02-02 21:48 ` [PATCH 4/5] i8042: Prepare i8042 driver for DT support Roman Volkov
2015-02-03 19:38 ` Dmitry Torokhov
2015-02-04 9:30 ` Roman Volkov [this message]
2015-02-02 21:48 ` [PATCH 5/5] i8042: Add i8042_dt.h glue " Roman Volkov
[not found] ` <1422913730-12663-5-git-send-email-v1ron-oLhuKTjYqW/YtjvyW6yDsg@public.gmane.org>
2015-02-03 11:52 ` Mark Rutland
2015-02-03 19:14 ` Roman Volkov
2015-02-03 19:26 ` Dmitry Torokhov
2015-02-02 22:10 ` [PATCH 1/5] i8042: intel-8042 DT documentation Roman Volkov
2015-02-13 19:52 ` [PATCH v2 0/5] Device Tree support for i8042 driver Roman Volkov
[not found] ` <1423857173-16432-1-git-send-email-v1ron-oLhuKTjYqW/YtjvyW6yDsg@public.gmane.org>
2015-02-13 19:52 ` [PATCH v2 1/5] i8042: intel-8042 DT documentation Roman Volkov
2015-02-13 19:52 ` [PATCH v2 2/5] i8042: Kernel configuration handling for DT support Roman Volkov
2015-02-13 19:52 ` [PATCH v2 3/5] i8042: Add OF match table Roman Volkov
2015-02-13 19:52 ` [PATCH v2 4/5] i8042: Prepare i8042 driver for DT support Roman Volkov
2015-02-13 19:52 ` [PATCH v2 5/5] i8042: Add i8042_dt.h glue " Roman Volkov
2015-02-15 21:11 ` [PATCH v3 0/5] Device Tree support for i8042 driver Roman Volkov
2015-02-15 21:11 ` [PATCH v3 1/5] i8042: intel-8042 DT documentation Roman Volkov
[not found] ` <1424034707-15723-2-git-send-email-v1ron-oLhuKTjYqW/YtjvyW6yDsg@public.gmane.org>
2015-03-15 3:20 ` Dmitry Torokhov
2015-02-15 21:11 ` [PATCH v3 2/5] i8042: Kernel configuration handling for DT support Roman Volkov
2015-02-15 21:11 ` [PATCH v3 3/5] i8042: Add OF match table Roman Volkov
2015-02-15 21:11 ` [PATCH v3 4/5] i8042: Prepare i8042 driver for DT support Roman Volkov
2015-02-15 21:11 ` [PATCH v3 5/5] i8042: Add i8042_dt.h glue " Roman Volkov
2015-06-13 17:57 ` Roman Volkov
2015-02-03 11:38 ` [PATCH 1/5] i8042: intel-8042 DT documentation Mark Rutland
2015-02-03 19:32 ` Dmitry Torokhov
2015-02-10 21:01 ` Roman Volkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150204123038.3fb7e6e1@v1ron-s7 \
--to=v1ron-olhuktjyqw/ytjvyw6ydsg@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org \
--cc=jkosina-AlSwsSmVLrQ@public.gmane.org \
--cc=linux-ci5G2KO2hbZ+pU9mqzGVBQ@public.gmane.org \
--cc=linux-input-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
--cc=pawel.moll-5wv7dgnIgG8@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=v1ron-JGs/UdohzUI@public.gmane.org \
--cc=wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).