LCOV - code coverage report
Current view: top level - include/asm-generic - fb.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 0 2 0.0 %
Date: 2023-08-24 13:40:31 Functions: 0 0 -

          Line data    Source code
       1             : /* SPDX-License-Identifier: GPL-2.0 */
       2             : 
       3             : #ifndef __ASM_GENERIC_FB_H_
       4             : #define __ASM_GENERIC_FB_H_
       5             : 
       6             : /*
       7             :  * Only include this header file from your architecture's <asm/fb.h>.
       8             :  */
       9             : 
      10             : #include <linux/io.h>
      11             : #include <linux/mm_types.h>
      12             : #include <linux/pgtable.h>
      13             : 
      14             : struct fb_info;
      15             : struct file;
      16             : 
      17             : #ifndef fb_pgprotect
      18             : #define fb_pgprotect fb_pgprotect
      19             : static inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma,
      20             :                                 unsigned long off)
      21             : {
      22             :         vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot);
      23             : }
      24             : #endif
      25             : 
      26             : #ifndef fb_is_primary_device
      27             : #define fb_is_primary_device fb_is_primary_device
      28             : static inline int fb_is_primary_device(struct fb_info *info)
      29             : {
      30             :         return 0;
      31             : }
      32             : #endif
      33             : 
      34             : /*
      35             :  * I/O helpers for the framebuffer. Prefer these functions over their
      36             :  * regular counterparts. The regular I/O functions provide in-order
      37             :  * access and swap bytes to/from little-endian ordering. Neither is
      38             :  * required for framebuffers. Instead, the helpers read and write
      39             :  * raw framebuffer data. Independent operations can be reordered for
      40             :  * improved performance.
      41             :  */
      42             : 
      43             : #ifndef fb_readb
      44             : static inline u8 fb_readb(const volatile void __iomem *addr)
      45             : {
      46             :         return __raw_readb(addr);
      47             : }
      48             : #define fb_readb fb_readb
      49             : #endif
      50             : 
      51             : #ifndef fb_readw
      52             : static inline u16 fb_readw(const volatile void __iomem *addr)
      53             : {
      54             :         return __raw_readw(addr);
      55             : }
      56             : #define fb_readw fb_readw
      57             : #endif
      58             : 
      59             : #ifndef fb_readl
      60             : static inline u32 fb_readl(const volatile void __iomem *addr)
      61             : {
      62             :         return __raw_readl(addr);
      63             : }
      64             : #define fb_readl fb_readl
      65             : #endif
      66             : 
      67             : #ifndef fb_readq
      68             : #if defined(__raw_readq)
      69             : static inline u64 fb_readq(const volatile void __iomem *addr)
      70             : {
      71             :         return __raw_readq(addr);
      72             : }
      73             : #define fb_readq fb_readq
      74             : #endif
      75             : #endif
      76             : 
      77             : #ifndef fb_writeb
      78             : static inline void fb_writeb(u8 b, volatile void __iomem *addr)
      79             : {
      80             :         __raw_writeb(b, addr);
      81             : }
      82             : #define fb_writeb fb_writeb
      83             : #endif
      84             : 
      85             : #ifndef fb_writew
      86             : static inline void fb_writew(u16 b, volatile void __iomem *addr)
      87             : {
      88             :         __raw_writew(b, addr);
      89             : }
      90             : #define fb_writew fb_writew
      91             : #endif
      92             : 
      93             : #ifndef fb_writel
      94             : static inline void fb_writel(u32 b, volatile void __iomem *addr)
      95             : {
      96             :         __raw_writel(b, addr);
      97             : }
      98             : #define fb_writel fb_writel
      99             : #endif
     100             : 
     101             : #ifndef fb_writeq
     102             : #if defined(__raw_writeq)
     103             : static inline void fb_writeq(u64 b, volatile void __iomem *addr)
     104             : {
     105             :         __raw_writeq(b, addr);
     106             : }
     107             : #define fb_writeq fb_writeq
     108             : #endif
     109             : #endif
     110             : 
     111             : #ifndef fb_memcpy_fromio
     112             : static inline void fb_memcpy_fromio(void *to, const volatile void __iomem *from, size_t n)
     113             : {
     114           0 :         memcpy_fromio(to, from, n);
     115             : }
     116             : #define fb_memcpy_fromio fb_memcpy_fromio
     117             : #endif
     118             : 
     119             : #ifndef fb_memcpy_toio
     120             : static inline void fb_memcpy_toio(volatile void __iomem *to, const void *from, size_t n)
     121             : {
     122           0 :         memcpy_toio(to, from, n);
     123             : }
     124             : #define fb_memcpy_toio fb_memcpy_toio
     125             : #endif
     126             : 
     127             : #ifndef fb_memset
     128             : static inline void fb_memset_io(volatile void __iomem *addr, int c, size_t n)
     129             : {
     130             :         memset_io(addr, c, n);
     131             : }
     132             : #define fb_memset fb_memset_io
     133             : #endif
     134             : 
     135             : #endif /* __ASM_GENERIC_FB_H_ */

Generated by: LCOV version 1.14