Message ID | 1393199401-27197-4-git-send-email-sre@debian.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sun, Feb 23, 2014 at 11:49:58PM +0000, Sebastian Reichel wrote: > Add of_match_table to hsi_char driver, so that it can > be referenced from Device Tree. > > Signed-off-by: Sebastian Reichel <sre@debian.org> > --- > drivers/hsi/clients/hsi_char.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/drivers/hsi/clients/hsi_char.c b/drivers/hsi/clients/hsi_char.c > index e61e5f9..7f64bed 100644 > --- a/drivers/hsi/clients/hsi_char.c > +++ b/drivers/hsi/clients/hsi_char.c > @@ -42,6 +42,7 @@ > #include <linux/stat.h> > #include <linux/hsi/hsi.h> > #include <linux/hsi/hsi_char.h> > +#include <linux/of_device.h> > > #define HSC_DEVS 16 /* Num of channels */ > #define HSC_MSGS 4 > @@ -758,12 +759,22 @@ static int hsc_remove(struct device *dev) > return 0; > } > > +#ifdef CONFIG_OF > +static const struct of_device_id hsi_char_of_match[] = { > + { .compatible = "ssi-char", }, This string is undocumented. > + { .compatible = "hsi-char", }, I'm not sure either string makes sense though; this feels like a binding for the sake of the driver rather than describing the device and allowing the driver to pick it up if it makes sense to do so. What exactly is a "ssi-char" device or a "hsi-char" device? Cheers, Mark. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Feb 24, 2014 at 03:13:01PM +0000, Mark Rutland wrote: > On Sun, Feb 23, 2014 at 11:49:58PM +0000, Sebastian Reichel wrote: > > Add of_match_table to hsi_char driver, so that it can > > be referenced from Device Tree. > > > > Signed-off-by: Sebastian Reichel <sre@debian.org> > > --- > > drivers/hsi/clients/hsi_char.c | 11 +++++++++++ > > 1 file changed, 11 insertions(+) > > > > diff --git a/drivers/hsi/clients/hsi_char.c b/drivers/hsi/clients/hsi_char.c > > index e61e5f9..7f64bed 100644 > > --- a/drivers/hsi/clients/hsi_char.c > > +++ b/drivers/hsi/clients/hsi_char.c > > @@ -42,6 +42,7 @@ > > #include <linux/stat.h> > > #include <linux/hsi/hsi.h> > > #include <linux/hsi/hsi_char.h> > > +#include <linux/of_device.h> > > > > #define HSC_DEVS 16 /* Num of channels */ > > #define HSC_MSGS 4 > > @@ -758,12 +759,22 @@ static int hsc_remove(struct device *dev) > > return 0; > > } > > > > +#ifdef CONFIG_OF > > +static const struct of_device_id hsi_char_of_match[] = { > > + { .compatible = "ssi-char", }, > > This string is undocumented. > > > + { .compatible = "hsi-char", }, > > I'm not sure either string makes sense though; this feels like a binding > for the sake of the driver rather than describing the device and > allowing the driver to pick it up if it makes sense to do so. > > What exactly is a "ssi-char" device or a "hsi-char" device? mh. I guess I will update the hsi framework, so that it simply loads the client driver for each registered port. This is indeed only a binding to load the driver. -- Sebastian
diff --git a/drivers/hsi/clients/hsi_char.c b/drivers/hsi/clients/hsi_char.c index e61e5f9..7f64bed 100644 --- a/drivers/hsi/clients/hsi_char.c +++ b/drivers/hsi/clients/hsi_char.c @@ -42,6 +42,7 @@ #include <linux/stat.h> #include <linux/hsi/hsi.h> #include <linux/hsi/hsi_char.h> +#include <linux/of_device.h> #define HSC_DEVS 16 /* Num of channels */ #define HSC_MSGS 4 @@ -758,12 +759,22 @@ static int hsc_remove(struct device *dev) return 0; } +#ifdef CONFIG_OF +static const struct of_device_id hsi_char_of_match[] = { + { .compatible = "ssi-char", }, + { .compatible = "hsi-char", }, + {}, +}; +MODULE_DEVICE_TABLE(of, hsi_char_of_match); +#endif + static struct hsi_client_driver hsc_driver = { .driver = { .name = "hsi_char", .owner = THIS_MODULE, .probe = hsc_probe, .remove = hsc_remove, + .of_match_table = of_match_ptr(hsi_char_of_match), }, };
Add of_match_table to hsi_char driver, so that it can be referenced from Device Tree. Signed-off-by: Sebastian Reichel <sre@debian.org> --- drivers/hsi/clients/hsi_char.c | 11 +++++++++++ 1 file changed, 11 insertions(+)