From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from galahad.ideasonboard.com ([185.26.127.97]:57404 "EHLO galahad.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751415AbeDESlU (ORCPT ); Thu, 5 Apr 2018 14:41:20 -0400 From: Laurent Pinchart To: Mauro Carvalho Chehab Cc: Linux Media Mailing List , Mauro Carvalho Chehab , Bartlomiej Zolnierkiewicz , dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org Subject: Re: [PATCH 15/16] media: omapfb_dss.h: add stubs to build with COMPILE_TEST Date: Thu, 05 Apr 2018 21:41:18 +0300 Message-ID: <1527912.68v46ENJLK@avalon> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-media-owner@vger.kernel.org List-ID: Hi Mauro, Thank you for the patch. On Thursday, 5 April 2018 20:54:15 EEST Mauro Carvalho Chehab wrote: > Add stubs for omapfb_dss.h, in the case it is included by > some driver when CONFIG_FB_OMAP2 is not defined. The omapfb driver doesn't include any asm/ header, so it should probably build fine on non-ARM architectures. Instead of adding stubs here, you can enable compilation of the driver on all platforms, in which case the omap_vout driver could keep depending on FB_OMAP2 as it should. > That allows building such driver(s) with COMPILE_TEST. > > Signed-off-by: Mauro Carvalho Chehab > --- > include/video/omapfb_dss.h | 54 +++++++++++++++++++++++++++++++++++++++++-- > 1 file changed, 52 insertions(+), 2 deletions(-) > > diff --git a/include/video/omapfb_dss.h b/include/video/omapfb_dss.h > index 1d38901d599d..e9775144ff3b 100644 > --- a/include/video/omapfb_dss.h > +++ b/include/video/omapfb_dss.h > @@ -774,6 +774,12 @@ struct omap_dss_driver { > const struct hdmi_avi_infoframe *avi); > }; > > +#define for_each_dss_dev(d) while ((d = omap_dss_get_next_device(d)) != > NULL) + > +typedef void (*omap_dispc_isr_t) (void *arg, u32 mask); > + > +#ifdef CONFIG_FB_OMAP2 > + > enum omapdss_version omapdss_get_version(void); > bool omapdss_is_initialized(void); > > @@ -785,7 +791,6 @@ void omapdss_unregister_display(struct omap_dss_device > *dssdev); > > struct omap_dss_device *omap_dss_get_device(struct omap_dss_device > *dssdev); void omap_dss_put_device(struct omap_dss_device *dssdev); > -#define for_each_dss_dev(d) while ((d = omap_dss_get_next_device(d)) != > NULL) struct omap_dss_device *omap_dss_get_next_device(struct > omap_dss_device *from); struct omap_dss_device *omap_dss_find_device(void > *data, > int (*match)(struct omap_dss_device *dssdev, void *data)); > @@ -826,7 +831,6 @@ int omapdss_default_get_recommended_bpp(struct > omap_dss_device *dssdev); void omapdss_default_get_timings(struct > omap_dss_device *dssdev, > struct omap_video_timings *timings); > > -typedef void (*omap_dispc_isr_t) (void *arg, u32 mask); > int omap_dispc_register_isr(omap_dispc_isr_t isr, void *arg, u32 mask); > int omap_dispc_unregister_isr(omap_dispc_isr_t isr, void *arg, u32 mask); > > @@ -856,5 +860,51 @@ omapdss_of_get_first_endpoint(const struct device_node > *parent); > > struct omap_dss_device * > omapdss_of_find_source_for_first_ep(struct device_node *node); > +#else > + > +static inline enum omapdss_version omapdss_get_version(void) > +{ return OMAPDSS_VER_UNKNOWN; }; > + > +static inline bool omapdss_is_initialized(void) > +{ return false; }; > + > +static inline int omap_dispc_register_isr(omap_dispc_isr_t isr, > + void *arg, u32 mask) > +{ return 0; }; > + > +static inline int omap_dispc_unregister_isr(omap_dispc_isr_t isr, > + void *arg, u32 mask) > +{ return 0; }; > + > +static inline struct omap_dss_device > +*omap_dss_get_device(struct omap_dss_device *dssdev) > +{ return NULL; }; > + > +static inline struct omap_dss_device > +*omap_dss_get_next_device(struct omap_dss_device *from) > +{return NULL; }; > + > +static inline void omap_dss_put_device(struct omap_dss_device *dssdev) {}; > + > +static inline int omapdss_compat_init(void) > +{ return 0; }; > + > +static inline void omapdss_compat_uninit(void) {}; > + > +static inline int omap_dss_get_num_overlay_managers(void) > +{ return 0; }; > + > +static inline struct omap_overlay_manager *omap_dss_get_overlay_manager(int > num) +{ return NULL; }; > + > +static inline int omap_dss_get_num_overlays(void) > +{ return 0; }; > + > +static inline struct omap_overlay *omap_dss_get_overlay(int num) > +{ return NULL; }; > + > + > +#endif /* FB_OMAP2 */ > + > > #endif /* __OMAPFB_DSS_H */ -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Date: Thu, 05 Apr 2018 18:41:18 +0000 Subject: Re: [PATCH 15/16] media: omapfb_dss.h: add stubs to build with COMPILE_TEST Message-Id: <1527912.68v46ENJLK@avalon> List-Id: References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Mauro Carvalho Chehab Cc: Bartlomiej Zolnierkiewicz , Mauro Carvalho Chehab , linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org, Linux Media Mailing List Hi Mauro, Thank you for the patch. On Thursday, 5 April 2018 20:54:15 EEST Mauro Carvalho Chehab wrote: > Add stubs for omapfb_dss.h, in the case it is included by > some driver when CONFIG_FB_OMAP2 is not defined. The omapfb driver doesn't include any asm/ header, so it should probably build fine on non-ARM architectures. Instead of adding stubs here, you can enable compilation of the driver on all platforms, in which case the omap_vout driver could keep depending on FB_OMAP2 as it should. > That allows building such driver(s) with COMPILE_TEST. > > Signed-off-by: Mauro Carvalho Chehab > --- > include/video/omapfb_dss.h | 54 +++++++++++++++++++++++++++++++++++++++++-- > 1 file changed, 52 insertions(+), 2 deletions(-) > > diff --git a/include/video/omapfb_dss.h b/include/video/omapfb_dss.h > index 1d38901d599d..e9775144ff3b 100644 > --- a/include/video/omapfb_dss.h > +++ b/include/video/omapfb_dss.h > @@ -774,6 +774,12 @@ struct omap_dss_driver { > const struct hdmi_avi_infoframe *avi); > }; > > +#define for_each_dss_dev(d) while ((d = omap_dss_get_next_device(d)) !> NULL) + > +typedef void (*omap_dispc_isr_t) (void *arg, u32 mask); > + > +#ifdef CONFIG_FB_OMAP2 > + > enum omapdss_version omapdss_get_version(void); > bool omapdss_is_initialized(void); > > @@ -785,7 +791,6 @@ void omapdss_unregister_display(struct omap_dss_device > *dssdev); > > struct omap_dss_device *omap_dss_get_device(struct omap_dss_device > *dssdev); void omap_dss_put_device(struct omap_dss_device *dssdev); > -#define for_each_dss_dev(d) while ((d = omap_dss_get_next_device(d)) !> NULL) struct omap_dss_device *omap_dss_get_next_device(struct > omap_dss_device *from); struct omap_dss_device *omap_dss_find_device(void > *data, > int (*match)(struct omap_dss_device *dssdev, void *data)); > @@ -826,7 +831,6 @@ int omapdss_default_get_recommended_bpp(struct > omap_dss_device *dssdev); void omapdss_default_get_timings(struct > omap_dss_device *dssdev, > struct omap_video_timings *timings); > > -typedef void (*omap_dispc_isr_t) (void *arg, u32 mask); > int omap_dispc_register_isr(omap_dispc_isr_t isr, void *arg, u32 mask); > int omap_dispc_unregister_isr(omap_dispc_isr_t isr, void *arg, u32 mask); > > @@ -856,5 +860,51 @@ omapdss_of_get_first_endpoint(const struct device_node > *parent); > > struct omap_dss_device * > omapdss_of_find_source_for_first_ep(struct device_node *node); > +#else > + > +static inline enum omapdss_version omapdss_get_version(void) > +{ return OMAPDSS_VER_UNKNOWN; }; > + > +static inline bool omapdss_is_initialized(void) > +{ return false; }; > + > +static inline int omap_dispc_register_isr(omap_dispc_isr_t isr, > + void *arg, u32 mask) > +{ return 0; }; > + > +static inline int omap_dispc_unregister_isr(omap_dispc_isr_t isr, > + void *arg, u32 mask) > +{ return 0; }; > + > +static inline struct omap_dss_device > +*omap_dss_get_device(struct omap_dss_device *dssdev) > +{ return NULL; }; > + > +static inline struct omap_dss_device > +*omap_dss_get_next_device(struct omap_dss_device *from) > +{return NULL; }; > + > +static inline void omap_dss_put_device(struct omap_dss_device *dssdev) {}; > + > +static inline int omapdss_compat_init(void) > +{ return 0; }; > + > +static inline void omapdss_compat_uninit(void) {}; > + > +static inline int omap_dss_get_num_overlay_managers(void) > +{ return 0; }; > + > +static inline struct omap_overlay_manager *omap_dss_get_overlay_manager(int > num) +{ return NULL; }; > + > +static inline int omap_dss_get_num_overlays(void) > +{ return 0; }; > + > +static inline struct omap_overlay *omap_dss_get_overlay(int num) > +{ return NULL; }; > + > + > +#endif /* FB_OMAP2 */ > + > > #endif /* __OMAPFB_DSS_H */ -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH 15/16] media: omapfb_dss.h: add stubs to build with COMPILE_TEST Date: Thu, 05 Apr 2018 21:41:18 +0300 Message-ID: <1527912.68v46ENJLK@avalon> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from galahad.ideasonboard.com (galahad.ideasonboard.com [185.26.127.97]) by gabe.freedesktop.org (Postfix) with ESMTPS id CBA1189C0D for ; Thu, 5 Apr 2018 18:41:20 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Mauro Carvalho Chehab Cc: Bartlomiej Zolnierkiewicz , Mauro Carvalho Chehab , linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org, Linux Media Mailing List List-Id: dri-devel@lists.freedesktop.org SGkgTWF1cm8sCgpUaGFuayB5b3UgZm9yIHRoZSBwYXRjaC4KCk9uIFRodXJzZGF5LCA1IEFwcmls IDIwMTggMjA6NTQ6MTUgRUVTVCBNYXVybyBDYXJ2YWxobyBDaGVoYWIgd3JvdGU6Cj4gQWRkIHN0 dWJzIGZvciBvbWFwZmJfZHNzLmgsIGluIHRoZSBjYXNlIGl0IGlzIGluY2x1ZGVkIGJ5Cj4gc29t ZSBkcml2ZXIgd2hlbiBDT05GSUdfRkJfT01BUDIgaXMgbm90IGRlZmluZWQuCgpUaGUgb21hcGZi IGRyaXZlciBkb2Vzbid0IGluY2x1ZGUgYW55IGFzbS8gaGVhZGVyLCBzbyBpdCBzaG91bGQgcHJv YmFibHkgYnVpbGQgCmZpbmUgb24gbm9uLUFSTSBhcmNoaXRlY3R1cmVzLiBJbnN0ZWFkIG9mIGFk ZGluZyBzdHVicyBoZXJlLCB5b3UgY2FuIGVuYWJsZSAKY29tcGlsYXRpb24gb2YgdGhlIGRyaXZl ciBvbiBhbGwgcGxhdGZvcm1zLCBpbiB3aGljaCBjYXNlIHRoZSBvbWFwX3ZvdXQgZHJpdmVyIApj b3VsZCBrZWVwIGRlcGVuZGluZyBvbiBGQl9PTUFQMiBhcyBpdCBzaG91bGQuCgo+IFRoYXQgYWxs b3dzIGJ1aWxkaW5nIHN1Y2ggZHJpdmVyKHMpIHdpdGggQ09NUElMRV9URVNULgo+IAo+IFNpZ25l ZC1vZmYtYnk6IE1hdXJvIENhcnZhbGhvIENoZWhhYiA8bWNoZWhhYkBzLW9wZW5zb3VyY2UuY29t Pgo+IC0tLQo+ICBpbmNsdWRlL3ZpZGVvL29tYXBmYl9kc3MuaCB8IDU0ICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KPiAgMSBmaWxlIGNoYW5nZWQsIDUyIGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdmlkZW8v b21hcGZiX2Rzcy5oIGIvaW5jbHVkZS92aWRlby9vbWFwZmJfZHNzLmgKPiBpbmRleCAxZDM4OTAx ZDU5OWQuLmU5Nzc1MTQ0ZmYzYiAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL3ZpZGVvL29tYXBmYl9k c3MuaAo+ICsrKyBiL2luY2x1ZGUvdmlkZW8vb21hcGZiX2Rzcy5oCj4gQEAgLTc3NCw2ICs3NzQs MTIgQEAgc3RydWN0IG9tYXBfZHNzX2RyaXZlciB7Cj4gIAkJY29uc3Qgc3RydWN0IGhkbWlfYXZp X2luZm9mcmFtZSAqYXZpKTsKPiAgfTsKPiAKPiArI2RlZmluZSBmb3JfZWFjaF9kc3NfZGV2KGQp IHdoaWxlICgoZCA9IG9tYXBfZHNzX2dldF9uZXh0X2RldmljZShkKSkgIT0KPiBOVUxMKSArCj4g K3R5cGVkZWYgdm9pZCAoKm9tYXBfZGlzcGNfaXNyX3QpICh2b2lkICphcmcsIHUzMiBtYXNrKTsK PiArCj4gKyNpZmRlZiBDT05GSUdfRkJfT01BUDIKPiArCj4gIGVudW0gb21hcGRzc192ZXJzaW9u IG9tYXBkc3NfZ2V0X3ZlcnNpb24odm9pZCk7Cj4gIGJvb2wgb21hcGRzc19pc19pbml0aWFsaXpl ZCh2b2lkKTsKPiAKPiBAQCAtNzg1LDcgKzc5MSw2IEBAIHZvaWQgb21hcGRzc191bnJlZ2lzdGVy X2Rpc3BsYXkoc3RydWN0IG9tYXBfZHNzX2RldmljZQo+ICpkc3NkZXYpOwo+IAo+ICBzdHJ1Y3Qg b21hcF9kc3NfZGV2aWNlICpvbWFwX2Rzc19nZXRfZGV2aWNlKHN0cnVjdCBvbWFwX2Rzc19kZXZp Y2UKPiAqZHNzZGV2KTsgdm9pZCBvbWFwX2Rzc19wdXRfZGV2aWNlKHN0cnVjdCBvbWFwX2Rzc19k ZXZpY2UgKmRzc2Rldik7Cj4gLSNkZWZpbmUgZm9yX2VhY2hfZHNzX2RldihkKSB3aGlsZSAoKGQg PSBvbWFwX2Rzc19nZXRfbmV4dF9kZXZpY2UoZCkpICE9Cj4gTlVMTCkgc3RydWN0IG9tYXBfZHNz X2RldmljZSAqb21hcF9kc3NfZ2V0X25leHRfZGV2aWNlKHN0cnVjdAo+IG9tYXBfZHNzX2Rldmlj ZSAqZnJvbSk7IHN0cnVjdCBvbWFwX2Rzc19kZXZpY2UgKm9tYXBfZHNzX2ZpbmRfZGV2aWNlKHZv aWQKPiAqZGF0YSwKPiAgCQlpbnQgKCptYXRjaCkoc3RydWN0IG9tYXBfZHNzX2RldmljZSAqZHNz ZGV2LCB2b2lkICpkYXRhKSk7Cj4gQEAgLTgyNiw3ICs4MzEsNiBAQCBpbnQgb21hcGRzc19kZWZh dWx0X2dldF9yZWNvbW1lbmRlZF9icHAoc3RydWN0Cj4gb21hcF9kc3NfZGV2aWNlICpkc3NkZXYp OyB2b2lkIG9tYXBkc3NfZGVmYXVsdF9nZXRfdGltaW5ncyhzdHJ1Y3QKPiBvbWFwX2Rzc19kZXZp Y2UgKmRzc2RldiwKPiAgCQlzdHJ1Y3Qgb21hcF92aWRlb190aW1pbmdzICp0aW1pbmdzKTsKPiAK PiAtdHlwZWRlZiB2b2lkICgqb21hcF9kaXNwY19pc3JfdCkgKHZvaWQgKmFyZywgdTMyIG1hc2sp Owo+ICBpbnQgb21hcF9kaXNwY19yZWdpc3Rlcl9pc3Iob21hcF9kaXNwY19pc3JfdCBpc3IsIHZv aWQgKmFyZywgdTMyIG1hc2spOwo+ICBpbnQgb21hcF9kaXNwY191bnJlZ2lzdGVyX2lzcihvbWFw X2Rpc3BjX2lzcl90IGlzciwgdm9pZCAqYXJnLCB1MzIgbWFzayk7Cj4gCj4gQEAgLTg1Niw1ICs4 NjAsNTEgQEAgb21hcGRzc19vZl9nZXRfZmlyc3RfZW5kcG9pbnQoY29uc3Qgc3RydWN0IGRldmlj ZV9ub2RlCj4gKnBhcmVudCk7Cj4gCj4gIHN0cnVjdCBvbWFwX2Rzc19kZXZpY2UgKgo+ICBvbWFw ZHNzX29mX2ZpbmRfc291cmNlX2Zvcl9maXJzdF9lcChzdHJ1Y3QgZGV2aWNlX25vZGUgKm5vZGUp Owo+ICsjZWxzZQo+ICsKPiArc3RhdGljIGlubGluZSBlbnVtIG9tYXBkc3NfdmVyc2lvbiBvbWFw ZHNzX2dldF92ZXJzaW9uKHZvaWQpCj4gK3sgcmV0dXJuIE9NQVBEU1NfVkVSX1VOS05PV047IH07 Cj4gKwo+ICtzdGF0aWMgaW5saW5lIGJvb2wgb21hcGRzc19pc19pbml0aWFsaXplZCh2b2lkKQo+ ICt7IHJldHVybiBmYWxzZTsgfTsKPiArCj4gK3N0YXRpYyBpbmxpbmUgaW50IG9tYXBfZGlzcGNf cmVnaXN0ZXJfaXNyKG9tYXBfZGlzcGNfaXNyX3QgaXNyLAo+ICsJCQkJCSAgdm9pZCAqYXJnLCB1 MzIgbWFzaykKPiAreyByZXR1cm4gMDsgfTsKPiArCj4gK3N0YXRpYyBpbmxpbmUgaW50IG9tYXBf ZGlzcGNfdW5yZWdpc3Rlcl9pc3Iob21hcF9kaXNwY19pc3JfdCBpc3IsCj4gKwkJCQkJICAgIHZv aWQgKmFyZywgdTMyIG1hc2spCj4gK3sgcmV0dXJuIDA7IH07Cj4gKwo+ICtzdGF0aWMgaW5saW5l IHN0cnVjdCBvbWFwX2Rzc19kZXZpY2UKPiArKm9tYXBfZHNzX2dldF9kZXZpY2Uoc3RydWN0IG9t YXBfZHNzX2RldmljZSAqZHNzZGV2KQo+ICt7IHJldHVybiBOVUxMOyB9Owo+ICsKPiArc3RhdGlj IGlubGluZSBzdHJ1Y3Qgb21hcF9kc3NfZGV2aWNlCj4gKypvbWFwX2Rzc19nZXRfbmV4dF9kZXZp Y2Uoc3RydWN0IG9tYXBfZHNzX2RldmljZSAqZnJvbSkKPiAre3JldHVybiBOVUxMOyB9Owo+ICsK PiArc3RhdGljIGlubGluZSB2b2lkIG9tYXBfZHNzX3B1dF9kZXZpY2Uoc3RydWN0IG9tYXBfZHNz X2RldmljZSAqZHNzZGV2KSB7fTsKPiArCj4gK3N0YXRpYyBpbmxpbmUgaW50IG9tYXBkc3NfY29t cGF0X2luaXQodm9pZCkKPiAreyByZXR1cm4gMDsgfTsKPiArCj4gK3N0YXRpYyBpbmxpbmUgdm9p ZCBvbWFwZHNzX2NvbXBhdF91bmluaXQodm9pZCkge307Cj4gKwo+ICtzdGF0aWMgaW5saW5lIGlu dCBvbWFwX2Rzc19nZXRfbnVtX292ZXJsYXlfbWFuYWdlcnModm9pZCkKPiAreyByZXR1cm4gMDsg fTsKPiArCj4gK3N0YXRpYyBpbmxpbmUgc3RydWN0IG9tYXBfb3ZlcmxheV9tYW5hZ2VyICpvbWFw X2Rzc19nZXRfb3ZlcmxheV9tYW5hZ2VyKGludAo+IG51bSkgK3sgcmV0dXJuIE5VTEw7IH07Cj4g Kwo+ICtzdGF0aWMgaW5saW5lIGludCBvbWFwX2Rzc19nZXRfbnVtX292ZXJsYXlzKHZvaWQpCj4g K3sgcmV0dXJuIDA7IH07Cj4gKwo+ICtzdGF0aWMgaW5saW5lIHN0cnVjdCBvbWFwX292ZXJsYXkg Km9tYXBfZHNzX2dldF9vdmVybGF5KGludCBudW0pCj4gK3sgcmV0dXJuIE5VTEw7IH07Cj4gKwo+ ICsKPiArI2VuZGlmIC8qIEZCX09NQVAyICovCj4gKwo+IAo+ICAjZW5kaWYgLyogX19PTUFQRkJf RFNTX0ggKi8KCgotLSAKUmVnYXJkcywKCkxhdXJlbnQgUGluY2hhcnQKCgoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlz dApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==