Message ID | 20190429144428.29254-8-julien.grall@arm.com |
---|---|
State | Superseded |
Headers | show |
Series | iommu/dma-iommu: Split iommu_dma_map_msi_msg in two parts | expand |
On 29/04/2019 15:44, Julien Grall wrote: > A recent change split iommu_dma_map_msi_msg() in two new functions. The > function was still implemented to avoid modifying all the callers at > once. > > Now that all the callers have been reworked, iommu_dma_map_msi_msg() can > be removed. Yay! The end of my horrible bodge :) Reviewed-by: Robin Murphy <robin.murphy@arm.com> > Signed-off-by: Julien Grall <julien.grall@arm.com> > > --- > Changes in v2: > - Rework the commit message > --- > drivers/iommu/dma-iommu.c | 20 -------------------- > include/linux/dma-iommu.h | 5 ----- > 2 files changed, 25 deletions(-) > > diff --git a/drivers/iommu/dma-iommu.c b/drivers/iommu/dma-iommu.c > index 2309f59cefa4..12f4464828a4 100644 > --- a/drivers/iommu/dma-iommu.c > +++ b/drivers/iommu/dma-iommu.c > @@ -936,23 +936,3 @@ void iommu_dma_compose_msi_msg(struct msi_desc *desc, > msg->address_lo &= cookie_msi_granule(domain->iova_cookie) - 1; > msg->address_lo += lower_32_bits(msi_page->iova); > } > - > -void iommu_dma_map_msi_msg(int irq, struct msi_msg *msg) > -{ > - struct msi_desc *desc = irq_get_msi_desc(irq); > - phys_addr_t msi_addr = (u64)msg->address_hi << 32 | msg->address_lo; > - > - if (WARN_ON(iommu_dma_prepare_msi(desc, msi_addr))) { > - /* > - * We're called from a void callback, so the best we can do is > - * 'fail' by filling the message with obviously bogus values. > - * Since we got this far due to an IOMMU being present, it's > - * not like the existing address would have worked anyway... > - */ > - msg->address_hi = ~0U; > - msg->address_lo = ~0U; > - msg->data = ~0U; > - } else { > - iommu_dma_compose_msi_msg(desc, msg); > - } > -} > diff --git a/include/linux/dma-iommu.h b/include/linux/dma-iommu.h > index 3fc48fbd6f63..ddd217c197df 100644 > --- a/include/linux/dma-iommu.h > +++ b/include/linux/dma-iommu.h > @@ -82,7 +82,6 @@ int iommu_dma_prepare_msi(struct msi_desc *desc, phys_addr_t msi_addr); > void iommu_dma_compose_msi_msg(struct msi_desc *desc, > struct msi_msg *msg); > > -void iommu_dma_map_msi_msg(int irq, struct msi_msg *msg); > void iommu_dma_get_resv_regions(struct device *dev, struct list_head *list); > > #else > @@ -122,10 +121,6 @@ static inline void iommu_dma_compose_msi_msg(struct msi_desc *desc, > { > } > > -static inline void iommu_dma_map_msi_msg(int irq, struct msi_msg *msg) > -{ > -} > - > static inline void iommu_dma_get_resv_regions(struct device *dev, struct list_head *list) > { > } >
Hi Julien, On 4/29/19 4:44 PM, Julien Grall wrote: > A recent change split iommu_dma_map_msi_msg() in two new functions. The > function was still implemented to avoid modifying all the callers at > once. > > Now that all the callers have been reworked, iommu_dma_map_msi_msg() can > be removed. > > Signed-off-by: Julien Grall <julien.grall@arm.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> Thanks Eric > > --- > Changes in v2: > - Rework the commit message > --- > drivers/iommu/dma-iommu.c | 20 -------------------- > include/linux/dma-iommu.h | 5 ----- > 2 files changed, 25 deletions(-) > > diff --git a/drivers/iommu/dma-iommu.c b/drivers/iommu/dma-iommu.c > index 2309f59cefa4..12f4464828a4 100644 > --- a/drivers/iommu/dma-iommu.c > +++ b/drivers/iommu/dma-iommu.c > @@ -936,23 +936,3 @@ void iommu_dma_compose_msi_msg(struct msi_desc *desc, > msg->address_lo &= cookie_msi_granule(domain->iova_cookie) - 1; > msg->address_lo += lower_32_bits(msi_page->iova); > } > - > -void iommu_dma_map_msi_msg(int irq, struct msi_msg *msg) > -{ > - struct msi_desc *desc = irq_get_msi_desc(irq); > - phys_addr_t msi_addr = (u64)msg->address_hi << 32 | msg->address_lo; > - > - if (WARN_ON(iommu_dma_prepare_msi(desc, msi_addr))) { > - /* > - * We're called from a void callback, so the best we can do is > - * 'fail' by filling the message with obviously bogus values. > - * Since we got this far due to an IOMMU being present, it's > - * not like the existing address would have worked anyway... > - */ > - msg->address_hi = ~0U; > - msg->address_lo = ~0U; > - msg->data = ~0U; > - } else { > - iommu_dma_compose_msi_msg(desc, msg); > - } > -} > diff --git a/include/linux/dma-iommu.h b/include/linux/dma-iommu.h > index 3fc48fbd6f63..ddd217c197df 100644 > --- a/include/linux/dma-iommu.h > +++ b/include/linux/dma-iommu.h > @@ -82,7 +82,6 @@ int iommu_dma_prepare_msi(struct msi_desc *desc, phys_addr_t msi_addr); > void iommu_dma_compose_msi_msg(struct msi_desc *desc, > struct msi_msg *msg); > > -void iommu_dma_map_msi_msg(int irq, struct msi_msg *msg); > void iommu_dma_get_resv_regions(struct device *dev, struct list_head *list); > > #else > @@ -122,10 +121,6 @@ static inline void iommu_dma_compose_msi_msg(struct msi_desc *desc, > { > } > > -static inline void iommu_dma_map_msi_msg(int irq, struct msi_msg *msg) > -{ > -} > - > static inline void iommu_dma_get_resv_regions(struct device *dev, struct list_head *list) > { > } >
diff --git a/drivers/iommu/dma-iommu.c b/drivers/iommu/dma-iommu.c index 2309f59cefa4..12f4464828a4 100644 --- a/drivers/iommu/dma-iommu.c +++ b/drivers/iommu/dma-iommu.c @@ -936,23 +936,3 @@ void iommu_dma_compose_msi_msg(struct msi_desc *desc, msg->address_lo &= cookie_msi_granule(domain->iova_cookie) - 1; msg->address_lo += lower_32_bits(msi_page->iova); } - -void iommu_dma_map_msi_msg(int irq, struct msi_msg *msg) -{ - struct msi_desc *desc = irq_get_msi_desc(irq); - phys_addr_t msi_addr = (u64)msg->address_hi << 32 | msg->address_lo; - - if (WARN_ON(iommu_dma_prepare_msi(desc, msi_addr))) { - /* - * We're called from a void callback, so the best we can do is - * 'fail' by filling the message with obviously bogus values. - * Since we got this far due to an IOMMU being present, it's - * not like the existing address would have worked anyway... - */ - msg->address_hi = ~0U; - msg->address_lo = ~0U; - msg->data = ~0U; - } else { - iommu_dma_compose_msi_msg(desc, msg); - } -} diff --git a/include/linux/dma-iommu.h b/include/linux/dma-iommu.h index 3fc48fbd6f63..ddd217c197df 100644 --- a/include/linux/dma-iommu.h +++ b/include/linux/dma-iommu.h @@ -82,7 +82,6 @@ int iommu_dma_prepare_msi(struct msi_desc *desc, phys_addr_t msi_addr); void iommu_dma_compose_msi_msg(struct msi_desc *desc, struct msi_msg *msg); -void iommu_dma_map_msi_msg(int irq, struct msi_msg *msg); void iommu_dma_get_resv_regions(struct device *dev, struct list_head *list); #else @@ -122,10 +121,6 @@ static inline void iommu_dma_compose_msi_msg(struct msi_desc *desc, { } -static inline void iommu_dma_map_msi_msg(int irq, struct msi_msg *msg) -{ -} - static inline void iommu_dma_get_resv_regions(struct device *dev, struct list_head *list) { }
A recent change split iommu_dma_map_msi_msg() in two new functions. The function was still implemented to avoid modifying all the callers at once. Now that all the callers have been reworked, iommu_dma_map_msi_msg() can be removed. Signed-off-by: Julien Grall <julien.grall@arm.com> --- Changes in v2: - Rework the commit message --- drivers/iommu/dma-iommu.c | 20 -------------------- include/linux/dma-iommu.h | 5 ----- 2 files changed, 25 deletions(-) -- 2.11.0