summaryrefslogtreecommitdiff
path: root/include/net/page_pool.h
diff options
context:
space:
mode:
authorMiquel Raynal <miquel.raynal@bootlin.com>2021-06-30 12:52:24 +0200
committerMiquel Raynal <miquel.raynal@bootlin.com>2021-06-30 12:52:24 +0200
commit0bcc3939c98d83955397eac1584d5f791fdc88d0 (patch)
tree21e6be9c578916ca86ffe0f88a9d807435318964 /include/net/page_pool.h
parent600d050944e133fde1f54b9113b01ccefbd82820 (diff)
parentc17e5c85b32f8809135f3211ba2525fb98b5c09f (diff)
downloadlinux-0bcc3939c98d83955397eac1584d5f791fdc88d0.tar.gz
linux-0bcc3939c98d83955397eac1584d5f791fdc88d0.tar.bz2
linux-0bcc3939c98d83955397eac1584d5f791fdc88d0.zip
Merge tag 'spi-nor/for-5.14' into mtd/next
SPI NOR core changes: - Ability to dump SFDP tables via sysfs - Support for erasing OTP regions on Winbond and similar flashes - Few API doc updates and fixes - Locking support for MX25L12805D SPI NOR controller drivers changes: - Use SPI_MODE_X_MASK in nxp-spifi - Intel Alder Lake-M SPI serial flash support
Diffstat (limited to 'include/net/page_pool.h')
-rw-r--r--include/net/page_pool.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/include/net/page_pool.h b/include/net/page_pool.h
index 6d517a37c18b..b4b6de909c93 100644
--- a/include/net/page_pool.h
+++ b/include/net/page_pool.h
@@ -198,7 +198,17 @@ static inline void page_pool_recycle_direct(struct page_pool *pool,
static inline dma_addr_t page_pool_get_dma_addr(struct page *page)
{
- return page->dma_addr;
+ dma_addr_t ret = page->dma_addr[0];
+ if (sizeof(dma_addr_t) > sizeof(unsigned long))
+ ret |= (dma_addr_t)page->dma_addr[1] << 16 << 16;
+ return ret;
+}
+
+static inline void page_pool_set_dma_addr(struct page *page, dma_addr_t addr)
+{
+ page->dma_addr[0] = addr;
+ if (sizeof(dma_addr_t) > sizeof(unsigned long))
+ page->dma_addr[1] = upper_32_bits(addr);
}
static inline bool is_page_pool_compiled_in(void)