drm/vmwgfx: inline access to the pages from the piter
The indirection doesn't make sense because we always go through the same function pointer. Instead of the extra indirection lets inline the access to the current page. Signed-off-by: Zack Rusin <zackr@vmware.com> Reviewed-by: Martin Krastev <krastevm@vmware.com> Link: https://patchwork.freedesktop.org/patch/msgid/20210609172307.131929-7-zackr@vmware.com
This commit is contained in:
parent
f674a218c6
commit
8d9a8d9bd5
|
@ -358,7 +358,6 @@ struct vmw_piter {
|
|||
unsigned long num_pages;
|
||||
bool (*next)(struct vmw_piter *);
|
||||
dma_addr_t (*dma_address)(struct vmw_piter *);
|
||||
struct page *(*page)(struct vmw_piter *);
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -1088,7 +1087,7 @@ static inline dma_addr_t vmw_piter_dma_addr(struct vmw_piter *viter)
|
|||
*/
|
||||
static inline struct page *vmw_piter_page(struct vmw_piter *viter)
|
||||
{
|
||||
return viter->page(viter);
|
||||
return viter->pages[viter->i];
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -222,21 +222,6 @@ static bool __vmw_piter_sg_next(struct vmw_piter *viter)
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* __vmw_piter_non_sg_page: Helper functions to return a pointer
|
||||
* to the current page.
|
||||
*
|
||||
* @viter: Pointer to the iterator
|
||||
*
|
||||
* These functions return a pointer to the page currently
|
||||
* pointed to by @viter. Functions are selected depending on the
|
||||
* current mapping mode.
|
||||
*/
|
||||
static struct page *__vmw_piter_non_sg_page(struct vmw_piter *viter)
|
||||
{
|
||||
return viter->pages[viter->i];
|
||||
}
|
||||
|
||||
static dma_addr_t __vmw_piter_dma_addr(struct vmw_piter *viter)
|
||||
{
|
||||
return viter->addrs[viter->i];
|
||||
|
@ -264,7 +249,6 @@ void vmw_piter_start(struct vmw_piter *viter, const struct vmw_sg_table *vsgt,
|
|||
{
|
||||
viter->i = p_offset - 1;
|
||||
viter->num_pages = vsgt->num_pages;
|
||||
viter->page = &__vmw_piter_non_sg_page;
|
||||
viter->pages = vsgt->pages;
|
||||
switch (vsgt->mode) {
|
||||
case vmw_dma_alloc_coherent:
|
||||
|
|
Loading…
Reference in New Issue