On Thu, Apr 11, 2019 at 09:23:13AM +0100, Ben Dooks wrote: > > > On 2019-04-10 23:47, Stefan Agner wrote: > > In case the IOMMU API is not available compiling host1x fails with > > the following error: > > In file included from drivers/gpu/host1x/hw/host1x06.c:27: > > drivers/gpu/host1x/hw/channel_hw.c: In function > > ‘host1x_channel_set_streamid’: > > drivers/gpu/host1x/hw/channel_hw.c:118:30: error: implicit > > declaration of function > > ‘dev_iommu_fwspec_get’; did you mean ‘iommu_fwspec_free’? > > [-Werror=implicit-function-declaration] > > struct iommu_fwspec *spec = > > dev_iommu_fwspec_get(channel->dev->parent); > > ^~~~~~~~~~~~~~~~~~~~ > > iommu_fwspec_free > > > > Fixes: de5469c21ff9 ("gpu: host1x: Program the channel stream ID") > > Signed-off-by: Stefan Agner <stefan@xxxxxxxx> > > would it be better to provide something like this i nthe header that > defines dev_iommu_fwspec_get() to be: > > static inline struct iommu_fwspec *dev_iommu_fwspec_get(struct device *dev) > { return NULL; } > > although returning an PTR_ERR would have been better. I don't think there's really a large number of failures here. Either your device has an IOMMU fwspec or it doesn't. But yes, I think it'd be better to have the above static inline dummy in iommu.h, but I'll apply this for now in the hopes of getting it in before v5.1 final. Thierry > > > --- > > drivers/gpu/host1x/hw/channel_hw.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/host1x/hw/channel_hw.c > > b/drivers/gpu/host1x/hw/channel_hw.c > > index 27101c04a827..4030d64916f0 100644 > > --- a/drivers/gpu/host1x/hw/channel_hw.c > > +++ b/drivers/gpu/host1x/hw/channel_hw.c > > @@ -114,7 +114,7 @@ static inline void synchronize_syncpt_base(struct > > host1x_job *job) > > > > static void host1x_channel_set_streamid(struct host1x_channel *channel) > > { > > -#if HOST1X_HW >= 6 > > +#if IS_ENABLED(CONFIG_IOMMU_API) && HOST1X_HW >= 6 > > struct iommu_fwspec *spec = > > dev_iommu_fwspec_get(channel->dev->parent); > > u32 sid = spec ? spec->ids[0] & 0xffff : 0x7f;
Attachment:
signature.asc
Description: PGP signature