Reputation: 1835
I am trying to compile my android kernel, but I get an error for implicit declaration of a a function.
Here is the error in full:
../drivers/interconnect/qcom/msm8916.c:310:9: error: implicit declaration of function 'qnoc_probe' [-Werror,-Wimplicit-function-declaration]
return qnoc_probe(pdev, sizeof(msm8916_bus_clocks),
^
../drivers/interconnect/qcom/msm8916.c:324:12: error: use of undeclared identifier 'qnoc_remove'; did you mean 'idr_remove'?
.remove = qnoc_remove,
^~~~~~~~~~~
idr_remove
../include/linux/idr.h:118:7: note: 'idr_remove' declared here
void *idr_remove(struct idr *, unsigned long id);
^
../drivers/interconnect/qcom/msm8916.c:324:12: error: incompatible pointer types initializing 'int (*)(struct platform_device *)' with an expression of type 'void *(struct idr *, unsigned long)' [-Werror,-Wincompatible-pointer-types]
.remove = qnoc_remove,
^~~~~~~~~~~
3 errors generated.
I understand what this means. But when I go to the file in question, I find this:
#include "icc-rpm.h"
Which contains the declaration of the function:
int qnoc_probe(struct platform_device *pdev, size_t cd_size, int cd_num,
const struct clk_bulk_data *cd);
What am I missing?
Upvotes: 0
Views: 18