Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12748 Discussions

button device driver(uClinux) for linux

Altera_Forum
Honored Contributor II
1,238 Views

Dear all. 

 

I do testing button device driver(uClinux) for linux(Cyclone III 3C120 FPGA Dev kit). 

 

1. In SOPC system, button pio name is user_pb_pio_4in(input ports only, Either edge, Interrupt : Edge). 

 

2. sopc-create-header-files -- single custom_fpga.h  

cp custom_fpga.h nios2-linux/linux-2.6/arch/nios/include/asm 

make menuconfig 

NiosII Configuration --->NiosII FPGA configuration --->(X) CUSTOM_FPGA 

 

3. Edite de2_botton.c# define BUTTONS_BASE na_KEY# define BUTTONS_IRQ na_KEY_irq 

to# define BUTTONS_BASE na_user_pb_pio_4in# define BUTTONS_IRQ na_user_pb_pio_4in_irq 

 

4. Copy de2_botton.c, de2_include.h(http://www.hs-augsburg.de/~carcass/nios2-uclinux/) to linux-2.6/drivers/char 

Edite Kconfig, Makefile 

<Kconfig> 

config DE2_BUTTONS 

tristate "DE2 BUTTONS MODULE" 

depends on NIOS || NIOS2 

help 

rudimentary module, which makes access to the buttons 

(reading out the last pressed button(s)).  

MAJOR number: 244 

DEVICE FILE: /dev/buttons 

 

<Makefile> 

obj-$(CONFIG_DE2_BUTTONS) += de2_buttons.o 

 

5. make menuconfig 

device drivers > character devices >  

[*] DE2_BUTTONS MODULE 

 

6. make 

 

I meet follow error message 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:64: error: 'na_user_pb_pio_4in' undeclared here (not in a function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c: In function 'button_isr': 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:73: error: 'np_pio' undeclared (first use in this function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:73: error: (Each undeclared identifier is reported only once 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:73: error: for each function it appears in.) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:73: error: 'pio_buttons' undeclared (first use in this function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:73: error: expected expression before ')' token 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c: In function 'button_start': 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:107: error: 'np_pio' undeclared (first use in this function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:107: error: 'pio_buttons' undeclared (first use in this function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:107: error: expected expression before ')' token 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:117: error: 'na_user_pb_pio_4in_irq' undeclared (first use in this function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:117: error: 'SA_INTERRUPT' undeclared (first use in this function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:117: warning: passing argument 2 of 'request_irq' from incompatible pointer type 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c: In function 'button_init': 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:216: error: 'np_pio' undeclared (first use in this function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c: In function 'button_exit': 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:244: error: 'np_pio' undeclared (first use in this function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:244: error: 'pio_buttons' undeclared (first use in this function) 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:244: error: expected expression before ')' token 

/home/sls/Nios2-Linux/Linux_source/linux-2.6/drivers/char/de2_buttons.c:250: error: 'na_user_pb_pio_4in_irq' undeclared (first use in this function) 

make[4]: *** [drivers/char/de2_buttons.o] &#50724;&#47448; 1 

make[3]: *** [drivers/char] &#50724;&#47448; 2 

make[2]: *** [drivers] &#50724;&#47448; 2 

make[1]: *** [sub-make] &#50724;&#47448; 2 

make[1]: Leaving directory `/home/sls/Nios2-Linux/Linux_source/linux-2.6' 

make: *** [linux] &#50724;&#47448; 1 

 

Please help me 

Sorry for my poor English.
0 Kudos
0 Replies
Reply