S5PV210串口驅動——一維激光掃描模塊(motorola symbol SE955)

在目錄/drivers/serial/下創建se955_scan.c

修改同目錄下的Makefile和Kconfig文件

修改Makefile文件:

在文件的最後添加

obj-$(CONFIG_SE955_SCAN)	+= se955_scan.o

修改Kconfig文件:

在文件serial drivers menu處添加

menu "Serial drivers"
	depends on HAS_IOMEM

# added by [email protected]
config SE955_SCAN
	tristate "SE955_module"
	depends on MACH_SMDKV210 || MACH_SMDKC110
	help
	  This support for v-simtone se955 scan module

在調試的時候配置make menuconfig的時候將se955_scan 驅動配置成M,方便加載、卸載調試。

此處先略去se955_scan.c文件的內容,先講解整個驅動創建流程,文章後面會填補此文件的具體內容。

編輯好了se955_scan.c文件後,編譯生成*.ko文件,切換到到linux kernel的根目錄下:

make SUBDIR=drivers/serial/  modules
命令編輯模塊,生成ko文件。

將ko文件通過adb工具push到嵌入式文件系統中,然後加載:

insmod **.ko


下面附上se955_scan.c文件(注:若有此話,說明未調試完,會有陸續改動)。





在沒有加載ko文件前,文件系統中的設備信息打印如下:

# ls dev/                                                                    
s3c_bc                                                                         
cpuctl                                                                         
fb4                                                                            
fb3                                                                            
fb2                                                                            
fb1                                                                            
fb0                                                                            
pvrsrvkm                                                                       
video22                                                                        
video21                                                                        
video14                                                                        
video2                                                                         
video1                                                                         
video0                                                                         
ppp                                                                            
mtd                                                                            
cdev_pm                                                                        
vcsa1                                                                          
vcs1                                                                           
vcsa                                                                           
vcs                                                                            
ptmx   ttyef

                                                 
console                                                                        
tty                                                                            
input                                                                          
s3c-mem                                                                        
kmsg                                                                           
urandom                                                                        
random                                                                         
full                                                                           
zero                                                                           
port                                                                           
null                                                                           
kmem                                                                           
mem                                                                            
network_throughput                                                             
network_latency                                                                
cpu_dma_latency                                                                
log                                                                            
binder                                                                         
device-mapper                                                                  
watchdog                                                                       
alarm                                                                          
psaux                                                                          
android_adb_enable                                                             
android_adb                                                                    
ubi_ctrl                                                                       
apm_bios                                                                       
sec-g2d                                                                        
CEC                                                                            
HPD                                                                            
s3c-jpg                                                                        
s3c-mfc                                                                        
ecompass_ctrl                                                                  
mmc31xx                                                                        
ashmem                                                                         
adc                                                                            
rfkill                                                                         
vga_arbiter                                                                    
snd                                                                            
ttyS3                                                                          
ttyS2                                                                          
ttyS1                                                                          
ttyS0                                                                          
s3c2410_serial3                                                                
s3c2410_serial2                                                                
s3c2410_serial1                                                                
s3c2410_serial0                                                                
usbdev1.1                                                                      
usb1                                                                           
rtc0                                                                           
graphics                                                                       
block                                                                          
i2c-5                                                                          
i2c-4                                                                          
i2c-3                                                                          
i2c-2                                                                          
i2c-1                                                                          
i2c-0                                                                          
socket                                                                         
pts
# ls dev/                                                                      
s3c_bc                                                                         
cpuctl                                                                         
fb4                                                                            
fb3                                                                            
fb2                                                                            
fb1                                                                            
fb0                                                                            
pvrsrvkm                                                                       
video22                                                                        
video21                                                                        
video14                                                                        
video2                                                                         
video1                                                                         
video0                                                                         
ppp                                                                            
mtd                                                                            
cdev_pm                                                                        
vcsa1                                                                          
vcs1                                                                           
vcsa                                                                           
vcs                                                                            
ptmx                                                                           
ttyef                                                                          
                                                                       
console                                                                        
tty                                                                            
input                                                                          
s3c-mem                                                                        
kmsg                                                                           
urandom                                                                        
random                                                                         
full                                                                           
zero                                                                           
port                                                                           
null                                                                           
kmem                                                                           
mem                                                                            
network_throughput                                                             
network_latency                                                                
cpu_dma_latency                                                                
log                                                                            
binder                                                                         
device-mapper                                                                  
watchdog                                                                       
alarm                                                                          
psaux                                                                          
android_adb_enable                                                             
android_adb                                                                    
ubi_ctrl                                                                       
apm_bios                                                                       
sec-g2d                                                                        
CEC                                                                            
HPD                                                                            
s3c-jpg                                                                        
s3c-mfc                                                                        
ecompass_ctrl                                                                  
mmc31xx                                                                        
ashmem                                                                         
adc                                                                            
rfkill                                                                         
vga_arbiter                                                                    
snd                                                                            
ttyS3                                                                          
ttyS2                                                                          
ttyS1                                                                          
ttyS0                                                                          
s3c2410_serial3                                                                
s3c2410_serial2                                                                
s3c2410_serial1                                                                
s3c2410_serial0                                                                
usbdev1.1                                                                      
usb1                                                                           
rtc0                                                                           
graphics                                                                       
block                                                                          
i2c-5                                                                          
i2c-4                                                                          
i2c-3                                                                          
i2c-2                                                                          
i2c-1                                                                          
i2c-0                                                                          
socket                                                                         
pts



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章