[#5336] canbus and ppifcd drivers can not be built on BF538-EZKIT
Submitted By: Vivi Li
Open Date
2009-07-10 01:52:34 Close Date
2009-07-15 23:27:35
Priority:
Medium Assignee:
Barry Song
Status:
Closed Fixed In Release:
N/A
Found In Release:
N/A Release:
Category:
Make Errors Board:
EZKIT Lite
Processor:
BF538 Silicon Revision:
Is this bug repeatable?:
Yes Resolution:
Fixed
Uboot version or rev.:
Toolchain version or rev.:
gcc4.1_2009r1-rc9
App binary format:
N/A
Summary: canbus and ppifcd drivers can not be built on BF538-EZKIT
Details:
canbus and ppifcd driver can not be built on BF538-EZKIT platform. Not a regression.
Bellow is the log for ppifcd:
--
LD kernel/built-in.o^M
drivers/char/bfin_ppifcd.c: In function ‘ppifcd_reg_reset’:^M
drivers/char/bfin_ppifcd.c:116: error: implicit declaration of function ‘bfin_clear_PPI_STATUS’^M
drivers/char/bfin_ppifcd.c: In function ‘ppi_ioctl’:^M
drivers/char/bfin_ppifcd.c:303: warning: ignoring return value of ‘copy_to_user’, declared with attribute warn_unused_result^M
drivers/char/bfin_ppifcd.c: In function ‘ppi_open’:^M
drivers/char/bfin_ppifcd.c:522: warning: ignoring return value of ‘request_irq’, declared with attribute warn_unused_result^M
make[3]: *** [drivers/char/bfin_ppifcd.o] Error 1^M
--
Bellow is the log for canbus:
--
CC [M] drivers/char/can4linux/core.o^M
In file included from drivers/char/can4linux/defs.h:336,^M
from drivers/char/can4linux/core.c:234:^M
drivers/char/can4linux/sja1000.h:393:4: error: #error Please specify a valid CAN_SYSCLK value (i.e. 8, 10) or define new parameters^M
drivers/char/can4linux/core.c: In function ‘can_init’:^M
drivers/char/can4linux/core.c:344: error: expected ‘)’ before ‘__CAN_TYPE__’^M
drivers/char/can4linux/core.c:467: warning: label ‘out_class’ defined but not used^M
make[4]: *** [drivers/char/can4linux/core.o] Error 1^M
make[3]: *** [drivers/char/can4linux] Error 2^M
--
Follow-ups
--- Barry Song 2009-07-13 00:05:33
-------------CAN-------------------------
check the Makefile and Kconfig in drivers/char/can4linux
CAN_SYSCLK is defined in Makefile by -D
ifeq "$(TARGET)" "AD_BLACKFIN"
# integrated CAN of the Analog Devices BlackFin DSP
DEFS = -D$(TARGET) -D$(DEBUG) -DCAN_MAJOR=$(CAN_MAJOR) \
-DCAN_SYSCLK=125 \
-DMAX_CHANNELS=1 \
#-DCONFIG_TIME_MEASURE=1
TARGET_MATCHED = true
endif
Only while BLACKFIN is selected, there will be this definition. Then we should
add BF538 to "config CAN_BLACKFIN" too:
config CAN_BLACKFIN
tristate "Analog Devices BlackFin CAN Controller"
depends on CAN4LINUX && EMBEDDED && (BF534 || BF536 ||
BF537 || BF54x)
---help---
This is can4linux support for the integrated CAN controller
found on Analog Devices BlackFin processors.
-------------ppifcd-------------------------
BSP forgets to define the bfin_clear_PPI_STATUS() function, according to the
BF538 manual "the entire register is cleared when read", add a line:
#define bfin_clear_PPI_STATUS() bfin_read_PPI_STATUS()
--- Vivi Li 2009-07-15 23:27:35
OK now. Close it.
Files
Changes
Commits
Dependencies
Duplicates
Associations
Tags
File Name File Type File Size Posted By
config.ppifcd application/octet-stream 31307 Vivi Li
config.canbus application/octet-stream 31575 Vivi Li