启程 发表于 2019-8-16 08:29:14

敢问各位大神,关于相机驱动编译出错的问题请帮我解答一下

ubuntu18.04 在加入相机驱动后编译,遇到 :

CC      drivers/media/video/rk_camsys/camsys_cif.o
CC      drivers/media/media-device.o
drivers/media/video/rk_camsys/camsys_cif.c: In function ‘camsys_cif_iomux_cb’:
drivers/media/video/rk_camsys/camsys_cif.c:86:37: error: ‘RK_GRF_VIRT’ undeclared (first use in this function)
__raw_writel(((1<<1)|(1<<(1+16))), RK_GRF_VIRT+0x0380);
                                     ^~~~~~~~~~~
drivers/media/video/rk_camsys/camsys_cif.c:86:37: note: each undeclared identifier is reported only once for each function it appears in
drivers/media/video/rk_camsys/camsys_cif.c:9:15: warning: unused variable ‘cif_vol_sel’ [-Wunused-variable]
error, forbidden warning:camsys_cif.c:9
unsigned int cif_vol_sel;
               ^~~~~~~~~~~
drivers/media/video/rk_camsys/camsys_cif.c: In function ‘camsys_cif_irq’:
drivers/media/video/rk_camsys/camsys_cif.c:196:26: warning: passing argument 1 of ‘__raw_readl’ makes pointer from integer without a cast [-Wint-conversion]
error, forbidden warning:camsys_cif.c:196
   intsta = __raw_readl(camsys_dev->devmems.registermem->vir_base +
                        ^~~~~~~~~~
In file included from include/linux/io.h:25:0,
               from drivers/media/video/rk_camsys/camsys_internal.h:13,
               from drivers/media/video/rk_camsys/camsys_cif.h:5,
               from drivers/media/video/rk_camsys/camsys_cif.c:2:
./arch/arm/include/asm/io.h:115:21: note: expected ‘const volatile void *’ but argument is of type ‘long unsigned int’
#define __raw_readl __raw_readl
                     ^
./arch/arm/include/asm/io.h:116:19: note: in expansion of macro ‘__raw_readl’
static inline u32 __raw_readl(const volatile void __iomem *addr)
                   ^~~~~~~~~~~
drivers/media/video/rk_camsys/camsys_cif.c:198:26: warning: passing argument 1 of ‘__raw_readl’ makes pointer from integer without a cast [-Wint-conversion]
error, forbidden warning:camsys_cif.c:198
   frmsta = __raw_readl(camsys_dev->devmems.registermem->vir_base +
                        ^~~~~~~~~~
In file included from include/linux/io.h:25:0,
               from drivers/media/video/rk_camsys/camsys_internal.h:13,
               from drivers/media/video/rk_camsys/camsys_cif.h:5,
               from drivers/media/video/rk_camsys/camsys_cif.c:2:
./arch/arm/include/asm/io.h:115:21: note: expected ‘const volatile void *’ but argument is of type ‘long unsigned int’
#define __raw_readl __raw_readl
                     ^
./arch/arm/include/asm/io.h:116:19: note: in expansion of macro ‘__raw_readl’
static inline u32 __raw_readl(const volatile void __iomem *addr)
                   ^~~~~~~~~~~
drivers/media/video/rk_camsys/camsys_cif.c:204:4: warning: passing argument 2 of ‘__raw_writel’ makes pointer from integer without a cast [-Wint-conversion]
error, forbidden warning:camsys_cif.c:204
    camsys_dev->devmems.registermem->vir_base +
    ^~~~~~~~~~
In file included from include/linux/io.h:25:0,
               from drivers/media/video/rk_camsys/camsys_internal.h:13,
               from drivers/media/video/rk_camsys/camsys_cif.h:5,
               from drivers/media/video/rk_camsys/camsys_cif.c:2:
./arch/arm/include/asm/io.h:98:22: note: expected ‘volatile void *’ but argument is of type ‘long unsigned int’
#define __raw_writel __raw_writel
                      ^
./arch/arm/include/asm/io.h:99:20: note: in expansion of macro ‘__raw_writel’
static inline void __raw_writel(u32 val, volatile void __iomem *addr)
                  ^~~~~~~~~~~~
drivers/media/video/rk_camsys/camsys_cif.c:207:4: warning: passing argument 2 of ‘__raw_writel’ makes pointer from integer without a cast [-Wint-conversion]
error, forbidden warning:camsys_cif.c:207
    camsys_dev->devmems.registermem->vir_base +
    ^~~~~~~~~~
In file included from include/linux/io.h:25:0,
               from drivers/media/video/rk_camsys/camsys_internal.h:13,
               from drivers/media/video/rk_camsys/camsys_cif.h:5,
               from drivers/media/video/rk_camsys/camsys_cif.c:2:
./arch/arm/include/asm/io.h:98:22: note: expected ‘volatile void *’ but argument is of type ‘long unsigned int’
#define __raw_writel __raw_writel
                      ^
./arch/arm/include/asm/io.h:99:20: note: in expansion of macro ‘__raw_writel’
static inline void __raw_writel(u32 val, volatile void __iomem *addr)
                  ^~~~~~~~~~~~
drivers/media/video/rk_camsys/camsys_cif.c:213:4: warning: passing argument 2 of ‘__raw_writel’ makes pointer from integer without a cast [-Wint-conversion]
error, forbidden warning:camsys_cif.c:213
    camsys_dev->devmems.registermem->vir_base +
    ^~~~~~~~~~
In file included from include/linux/io.h:25:0,
               from drivers/media/video/rk_camsys/camsys_internal.h:13,
               from drivers/media/video/rk_camsys/camsys_cif.h:5,
               from drivers/media/video/rk_camsys/camsys_cif.c:2:
./arch/arm/include/asm/io.h:98:22: note: expected ‘volatile void *’ but argument is of type ‘long unsigned int’
#define __raw_writel __raw_writel
                      ^
./arch/arm/include/asm/io.h:99:20: note: in expansion of macro ‘__raw_writel’
static inline void __raw_writel(u32 val, volatile void __iomem *addr)
                  ^~~~~~~~~~~~
drivers/media/video/rk_camsys/camsys_cif.c:216:4: warning: passing argument 2 of ‘__raw_writel’ makes pointer from integer without a cast [-Wint-conversion]
error, forbidden warning:camsys_cif.c:216
    camsys_dev->devmems.registermem->vir_base +
    ^~~~~~~~~~
In file included from include/linux/io.h:25:0,
               from drivers/media/video/rk_camsys/camsys_internal.h:13,
               from drivers/media/video/rk_camsys/camsys_cif.h:5,
               from drivers/media/video/rk_camsys/camsys_cif.c:2:
./arch/arm/include/asm/io.h:98:22: note: expected ‘volatile void *’ but argument is of type ‘long unsigned int’
#define __raw_writel __raw_writel
                      ^
./arch/arm/include/asm/io.h:99:20: note: in expansion of macro ‘__raw_writel’
static inline void __raw_writel(u32 val, volatile void __iomem *addr)
                  ^~~~~~~~~~~~
drivers/media/video/rk_camsys/camsys_cif.c:219:4: warning: passing argument 2 of ‘__raw_writel’ makes pointer from integer without a cast [-Wint-conversion]
error, forbidden warning:camsys_cif.c:219
    camsys_dev->devmems.registermem->vir_base +
    ^~~~~~~~~~
In file included from include/linux/io.h:25:0,
               from drivers/media/video/rk_camsys/camsys_internal.h:13,
               from drivers/media/video/rk_camsys/camsys_cif.h:5,
               from drivers/media/video/rk_camsys/camsys_cif.c:2:
./arch/arm/include/asm/io.h:98:22: note: expected ‘volatile void *’ but argument is of type ‘long unsigned int’
#define __raw_writel __raw_writel
                      ^
./arch/arm/include/asm/io.h:99:20: note: in expansion of macro ‘__raw_writel’
static inline void __raw_writel(u32 val, volatile void __iomem *addr)
                  ^~~~~~~~~~~~
scripts/Makefile.build:277: recipe for target 'drivers/media/video/rk_camsys/camsys_cif.o' failed
make: *** Error 1
scripts/Makefile.build:484: recipe for target 'drivers/media/video/rk_camsys' failed
make: *** Error 2
make: *** Waiting for unfinished jobs....
scripts/Makefile.build:484: recipe for target 'drivers/media' failed
make: *** Error 2
make: *** Waiting for unfinished jobs....
Makefile:1031: recipe for target 'drivers' failed
make: *** Error 2

请各位有志之士,帮忙解答一下{:4_107:}
页: [1]
查看完整版本: 敢问各位大神,关于相机驱动编译出错的问题请帮我解答一下