• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
主题 : 请教下SPI驱动 加载的问题 复制链接 | 浏览器收藏 | 打印
专注与嵌入式linux的图像,视频方向的开发。
级别: 侠客
UID: 9607
精华: 0
发帖: 81
金钱: 405 两
威望: 81 点
综合积分: 162 分
注册时间: 2009-10-07
最后登录: 2015-02-02
楼主  发表于: 2012-08-02 13:31

 请教下SPI驱动 加载的问题

大家好,  我的板子是MINI6410  NAND:256M,DDR 256M  LCD :H43

按照http://www.aiothome.net/read.php?tid-10788.html 的步骤,做了如下操作:

步骤1 增加头文件
#include <linux/spi/spidev.h>
#include <linux/spi/spi.h>
#include <plat/s3c64xx-spi.h>  
步骤2 配置内核选项
Device Drivers  ---> [*] SPI support  ---> <M>   Samsung S3C24XX series SPI
                                           <M>   User mode SPI device driver support      
步骤三:
   增加 &s3c64xx_device_spi0, 到 --->>> [static struct platform_device *mini6410_devices[]] 的末尾    
   增加 add [obj-y       +=dev-spi.o] 到 arch/arm/mach-s3c64xx/Makefile
   在头文件语句的下面增加  
     static void  cs_set_level(unsigned line_id, int lvl) {
    gpio_direction_output(line_id, lvl);
};
static struct s3c64xx_spi_csinfo s3c64xx_spi0_csinfo = {
  .fb_delay=100,
  .line=S3C64XX_GPC(3),
  .set_level=cs_set_level,
};
static struct spi_board_info s3c6410_spi0_board[] = {
[0] = {
.modalias = "spidev",
.bus_num= 0,
.chip_select= 0, //必须小于s3c6410_spi0_platdata.num_cs
.irq =IRQ_SPI0,
.max_speed_hz= 500*1000,
.mode=SPI_MODE_0,
.controller_data=&s3c64xx_spi0_csinfo,
},
};
在mini6410_machine_init(before platform_add_devices)中增加
[ s3c64xx_spi_set_info(0,0,1);   //gzj++
       //s3c64xx_spi_set_info(1,0,1);

       spi_register_board_info(s3c6410_spi0_board, ARRAY_SIZE(s3c6410_spi0_board));
     // spi_register_board_info(s3c6410_spi1_board, ARRAY_SIZE(s3c6410_spi1_board));
  ]
    
步骤四:
        do make zImage
        do make
然后再6410的板子上执行:
             insmod spi_s3c64xx.ko  
             insmod spidev.ko  
            
            
             结果打印的信息是这样的:
            
[root@FriendlyARM plg]# insmod spi_s3c64xx.ko
:99 gpio_ensure_requested+0x48/0xf4()
autorequest GPIO-20
Modules linked in: spi_s3c64xx(+)
[<c0173c44>] (unwind_backtrace+0x0/0xe4) from [<c0182ea0>] (warn_slowpath_common
+0x4c/0x64)
[<c0182ea0>] (warn_slowpath_common+0x4c/0x64) from [<c0182f38>] (warn_slowpath_f
mt+0x2c/0x3c)
[<c0182f38>] (warn_slowpath_fmt+0x2c/0x3c) from [<c02df5ac>] (gpio_ensure_reques
ted+0x48/0xf4)
[<c02df5ac>] (gpio_ensure_requested+0x48/0xf4) from [<c02df79c>] (gpio_direction
_output+0x68/0x120)
[<c02df79c>] (gpio_direction_output+0x68/0x120) from [<bf00061c>] (s3c64xx_spi_s
etup+0x1f4/0x210 [spi_s3c64xx])
[<bf00061c>] (s3c64xx_spi_setup+0x1f4/0x210 [spi_s3c64xx]) from [<c0330914>] (sp
i_setup+0x40/0x48)
[<c0330914>] (spi_setup+0x40/0x48) from [<c0330b9c>] (spi_add_device+0xa0/0x118)

[<c0330b9c>] (spi_add_device+0xa0/0x118) from [<c0330c94>] (spi_new_device+0x80/
0xa4)
[<c0330c94>] (spi_new_device+0x80/0xa4) from [<c0330cd8>] (spi_match_master_to_b
oardinfo+0x20/0x40)
[<c0330cd8>] (spi_match_master_to_boardinfo+0x20/0x40) from [<c0330dcc>] (spi_re
gister_master+0xd4/0x118)
[<c0330dcc>] (spi_register_master+0xd4/0x118) from [<bf0043d4>] (s3c64xx_spi_pro
be+0x3d4/0x4a8 [spi_s3c64xx])
[<bf0043d4>] (s3c64xx_spi_probe+0x3d4/0x4a8 [spi_s3c64xx]) from [<c0300b40>] (pl
atform_drv_probe+0x14/0x18)
[<c0300b40>] (platform_drv_probe+0x14/0x18) from [<c02ffd34>] (driver_probe_devi
ce+0xa8/0x158)
[<c02ffd34>] (driver_probe_device+0xa8/0x158) from [<c02ffe44>] (__driver_attach
+0x60/0x84)
[<c02ffe44>] (__driver_attach+0x60/0x84) from [<c02ff01c>] (bus_for_each_dev+0x4
c/0x78)
[<c02ff01c>] (bus_for_each_dev+0x4c/0x78) from [<c02ff6b8>] (bus_add_driver+0xa8
/0x224)
[<c02ff6b8>] (bus_add_driver+0xa8/0x224) from [<c0300090>] (driver_register+0xa8
/0x12c)
[<c0300090>] (driver_register+0xa8/0x12c) from [<c0300da4>] (platform_driver_pro
be+0x18/0x8c)
[<c0300da4>] (platform_driver_probe+0x18/0x8c) from [<c01644d8>] (do_one_initcal
l+0xbc/0x190)
[<c01644d8>] (do_one_initcall+0xbc/0x190) from [<c01aa098>] (sys_init_module+0x1
58c/0x1754)
[<c01aa098>] (sys_init_module+0x158c/0x1754) from [<c016e5e0>] (ret_fast_syscall
+0x0/0x30)
---[ end trace 3539e128fcc177dd ]---
请教一下

这样的操作过后,可以在/dev下生成对应的spidev0.0这个设备,spi也可以首发,但是问题是: 当接收大概4--8个包以后,就不再接收 了,就是说我应用层读不来了。
专注与嵌入式linux的图像,视频方向的开发。
级别: 侠客
UID: 9607
精华: 0
发帖: 81
金钱: 405 两
威望: 81 点
综合积分: 162 分
注册时间: 2009-10-07
最后登录: 2015-02-02
1楼  发表于: 2012-08-02 15:27
从给板子上电,到 insmod 后出现错误的打印信息,如下:
NR_IRQS:246
VIC @f6000000: id 0x00041192, vendor 0x41
VIC @f6010000: id 0x00041192, vendor 0x41
Console: colour dummy device 80x30
console [ttySAC0] enabled
Calibrating delay loop... 530.84 BogoMIPS (lpj=2654208)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
s3c64xx_dma_init: Registering DMA channels
PL080: IRQ 73, at d0808000, channels 0..8
PL080: IRQ 74, at d080c000, channels 8..16
S3C6410: Initialising architecture
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
s3c-i2c s3c2440-i2c: slave address 0x10
s3c-i2c s3c2440-i2c: bus frequency set to 64 KHz
s3c-i2c s3c2440-i2c: i2c-0: S3C I2C adapter
Advanced Linux Sound Architecture Driver Version 1.0.23.
NET: Registered protocol family 2
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 5, 163840 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
UDP hash table entries: 128 (order: 0, 6144 bytes)
UDP-Lite hash table entries: 128 (order: 0, 6144 bytes)
NET: Registered protocol family 1
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
NetWinder Floating Point Emulator V0.97 (double precision)
squashfs: version 4.0 (2009/01/31) Phillip Lougher
msgmni has been set to 420
io scheduler noop registered (default)
io scheduler cfq registered
S3C_LCD clock got enabled :: 133.000 Mhz
LCD TYPE :: H43 will be initialized
Window[0] - FB1: map_video_memory: clear ff000000:0007f800
            FB1: map_video_memory: dma=5d780000 cpu=ff000000 size=0007f800
Window[0] - FB2: map_video_memory: clear ff03fc00:0003fc00
            FB2: map_video_memory: dma=5d7bfc00 cpu=ff03fc00 size=0003fc00
Console: switching to colour frame buffer device 60x34
fb0: s3cfb frame buffer device
Window[1] - FB1: map_video_memory: clear ff080000:0007f800
            FB1: map_video_memory: dma=5cc00000 cpu=ff080000 size=0007f800
Window[1] - FB2: map_video_memory: clear ff0bfc00:0003fc00
            FB2: map_video_memory: dma=5cc3fc00 cpu=ff0bfc00 size=0003fc00
fb1: s3cfb frame buffer device
Window[2] - FB1: map_video_memory: clear ff100000:0003fc00
            FB1: map_video_memory: dma=5d740000 cpu=ff100000 size=0003fc00
fb2: s3cfb frame buffer device
Window[3] - FB1: map_video_memory: clear ff140000:0003fc00
            FB1: map_video_memory: dma=5cc80000 cpu=ff140000 size=0003fc00
fb3: s3cfb frame buffer device
backlight       initialized
s3c6400-uart.0: ttySAC0 at MMIO 0x7f005000 (irq = 16) is a S3C6400/10
s3c6400-uart.1: ttySAC1 at MMIO 0x7f005400 (irq = 20) is a S3C6400/10
s3c6400-uart.2: ttySAC2 at MMIO 0x7f005800 (irq = 24) is a S3C6400/10
s3c6400-uart.3: ttySAC3 at MMIO 0x7f005c00 (irq = 28) is a S3C6400/10
leds    initialized
buttons initialized
pwm     initialized
adc     initialized
loop: module loaded
S3C NAND Driver, (c) 2008 Samsung Electronics
S3C NAND Driver is using hardware ECC.
NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3V 8-bit)
Creating 3 MTD partitions on "NAND 256MiB 3,3V 8-bit":
0x000000000000-0x000000080000 : "Bootloader"
0x000000080000-0x000000580000 : "Kernel"
0x000000580000-0x000010000000 : "File System"
PPP generic driver version 2.4.2
PPP Deflate Compression module registered
PPP BSD Compression module registered
PPP MPPE Compression module registered
NET: Registered protocol family 24
dm9000 Ethernet Driver, V1.31
eth0: dm9000a at d081e000,d0c00004 IRQ 108 MAC: 08:90:00:a0:90:90 (platform data)
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1
s3c2410-ohci s3c2410-ohci: irq 79, io mem 0x74300000
usb usb1: New USB device found, idVendor=1d6b, idProduct=0001
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: S3C24XX OHCI
usb usb1: Manufacturer: Linux 2.6.38-FriendlyARM ohci_hcd
usb usb1: SerialNumber: s3c24xx
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
USB Serial support registered for GSM modem (1-port)
usbcore: registered new interface driver option
option: v0.7.2:USB Driver for GSM modems
USB Serial support registered for aircable
usbcore: registered new interface driver aircable
USB Serial support registered for ark3116
usbcore: registered new interface driver ark3116
ark3116:v0.6:USB ARK3116 serial/IrDA driver
USB Serial support registered for Belkin / Peracom / GoHubs USB Serial Adapter
usbcore: registered new interface driver belkin
belkin_sa: v1.3:USB Belkin Serial converter driver
USB Serial support registered for ch341-uart
usbcore: registered new interface driver ch341
USB Serial support registered for cp210x
usbcore: registered new interface driver cp210x
cp210x: v0.09:Silicon Labs CP210x RS232 serial adaptor driver
USB Serial support registered for Reiner SCT Cyberjack USB card reader
usbcore: registered new interface driver cyberjack
cyberjack: v1.01 Matthias Bruestle
cyberjack: REINER SCT cyberJack pinpad/e-com USB Chipcard Reader Driver
USB Serial support registered for DeLorme Earthmate USB
USB Serial support registered for HID->COM RS232 Adapter
USB Serial support registered for Nokia CA-42 V2 Adapter
usbcore: registered new interface driver cypress
cypress_m8: v1.10:Cypress USB to Serial Driver
USB Serial support registered for debug
usbcore: registered new interface driver debug
USB Serial support registered for Digi 2 port USB adapter
USB Serial support registered for Digi 4 port USB adapter
usbcore: registered new interface driver digi_acceleport
digi_acceleport: v1.80.1.2:Digi AccelePort USB-2/USB-4 Serial Converter driver
USB Serial support registered for Edgeport 2 port adapter
USB Serial support registered for Edgeport 4 port adapter
USB Serial support registered for Edgeport 8 port adapter
USB Serial support registered for EPiC device
usbcore: registered new interface driver io_edgeport
io_edgeport: v2.7:Edgeport USB Serial Driver
USB Serial support registered for Edgeport TI 1 port adapter
USB Serial support registered for Edgeport TI 2 port adapter
usbcore: registered new interface driver io_ti
io_ti: v0.7mode043006:Edgeport USB Serial Driver
USB Serial support registered for empeg
usbcore: registered new interface driver empeg
empeg: v1.3:USB Empeg Mark I/II Driver
USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver ftdi_sio
ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
USB Serial support registered for funsoft
usbcore: registered new interface driver funsoft
USB Serial support registered for Garmin GPS usb/tty
usbcore: registered new interface driver garmin_gps
garmin_gps: v0.33:garmin gps driver
USB Serial support registered for hp4X
usbcore: registered new interface driver hp4X
hp4x: v1.00:HP4x (48/49) Generic Serial driver
USB Serial support registered for PocketPC PDA
usbcore: registered new interface driver ipaq
ipaq: v1.0:USB PocketPC PDA driver
USB Serial support registered for IPWireless converter
usbcore: registered new interface driver ipwtty
ipw: v0.4:IPWireless tty driver
USB Serial support registered for IR Dongle
usbcore: registered new interface driver ir-usb
ir_usb: v0.5:USB IR Dongle driver
USB Serial support registered for iuu_phoenix
usbcore: registered new interface driver iuu_phoenix
iuu_phoenix: v0.12:Infinity USB Unlimited Phoenix driver
USB Serial support registered for Keyspan - (without firmware)
USB Serial support registered for Keyspan 1 port adapter
USB Serial support registered for Keyspan 2 port adapter
USB Serial support registered for Keyspan 4 port adapter
usbcore: registered new interface driver keyspan
keyspan: v1.1.5:Keyspan USB to Serial Converter Driver
USB Serial support registered for Keyspan PDA
USB Serial support registered for Keyspan PDA - (prerenumeration)
USB Serial support registered for Xircom / Entregra PGS - (prerenumeration)
usbcore: registered new interface driver keyspan_pda
keyspan_pda: v1.1:USB Keyspan PDA Converter driver
USB Serial support registered for KL5KUSB105D / PalmConnect
usbcore: registered new interface driver kl5kusb105d
kl5kusb105: v0.4:KLSI KL5KUSB105 chipset USB->Serial Converter driver
USB Serial support registered for KOBIL USB smart card terminal
usbcore: registered new interface driver kobil
kobil_sct: 21/05/2004:KOBIL USB Smart Card Terminal Driver (experimental)
USB Serial support registered for MCT U232
usbcore: registered new interface driver mct_u232
mct_u232: z2.1:Magic Control Technology USB-RS232 converter driver
USB Serial support registered for Moschip 2 port adapter
mos7720: 2.1:Moschip USB Serial Driver
usbcore: registered new interface driver moschip7720
USB Serial support registered for Moschip 7840/7820 USB Serial Driver
mos7840: 1.3.2:Moschip 7840/7820 USB Serial Driver
usbcore: registered new interface driver mos7840
USB Serial support registered for moto-modem
usbcore: registered new interface driver moto-modem
USB Serial support registered for navman
usbcore: registered new interface driver navman
USB Serial support registered for ZyXEL - omni.net lcd plus usb
usbcore: registered new interface driver omninet
omninet: v1.1:USB ZyXEL omni.net LCD PLUS Driver
USB Serial support registered for opticon
usbcore: registered new interface driver opticon
USB Serial support registered for oti6858
usbcore: registered new interface driver oti6858
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
USB Serial support registered for qcaux
usbcore: registered new interface driver qcaux
USB Serial support registered for Qualcomm USB modem
usbcore: registered new interface driver qcserial
safe_serial: v0.1:USB Safe Encapsulated Serial
USB Serial support registered for safe_serial
usbcore: registered new interface driver safe_serial
USB Serial support registered for sam-ba
usbcore: registered new interface driver sam-ba
sam_ba: v1.0: Atmel SAM Boot Assistant (SAM-BA) driver
USB Serial support registered for siemens_mpi
usbcore: registered new interface driver siemens_mpi
Driver for Siemens USB/MPI adapter
Version 0.1 09/26/2005 Thomas Hergenhahn@web.de http://libnodave.sf.net
USB Serial support registered for Sierra USB modem
usbcore: registered new interface driver sierra
sierra: v.1.7.16:USB Driver for Sierra Wireless USB modems
USB Serial support registered for SPCP8x5
usbcore: registered new interface driver spcp8x5
spcp8x5: v0.10:SPCP8x5 USB to serial adaptor driver
USB Serial support registered for Quatech SSU-100 USB to Serial Driver
usbcore: registered new interface driver ssu100
ssu100: v0.1:Quatech SSU-100 USB to Serial Driver
USB Serial support registered for symbol
usbcore: registered new interface driver symbol
USB Serial support registered for TI USB 3410 1 port adapter
USB Serial support registered for TI USB 5052 2 port adapter
usbcore: registered new interface driver ti_usb_3410_5052
ti_usb_3410_5052: v0.10:TI USB 3410/5052 Serial Driver
USB Serial support registered for Handspring Visor / Palm OS
USB Serial support registered for Sony Clie 3.5
USB Serial support registered for Sony Clie 5.0
usbcore: registered new interface driver visor
visor: USB HandSpring Visor / Palm OS driver
USB Serial support registered for Connect Tech - WhiteHEAT - (prerenumeration)
USB Serial support registered for Connect Tech - WhiteHEAT
usbcore: registered new interface driver whiteheat
whiteheat: v2.0:USB ConnectTech WhiteHEAT driver
USB Serial support registered for vivopay-serial
usbcore: registered new interface driver vivopay-serial
vivopay_serial: v1.0:ViVOpay USB Serial Driver
USB Serial support registered for zio
usbcore: registered new interface driver zio
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
s3c-hsotg s3c-hsotg: regs d0840000, irq 90
s3c-hsotg s3c-hsotg: s3c_hsotg_corereset: reset failed, GRSTCTL=80000001
s3c-hsotg s3c-hsotg: GRXFSIZ=0x00001800, GNPTXFSIZ=0x18001800
s3c-hsotg s3c-hsotg: shared fifos
s3c-hsotg s3c-hsotg: cannot create debug root
s3c-hsotg s3c-hsotg: DCFG=0x00200000, DCTL=0x00000002, DIEPMSK=0000000f
s3c-hsotg s3c-hsotg: GAHBCFG=0x00000000, 0x44=0x00000000
s3c-hsotg s3c-hsotg: GRXFSIZ=0x00000800, GNPTXFSIZ=0x04000800
s3c-hsotg s3c-hsotg: DPTx[1] FSize=768, StAddr=0x00000f00
s3c-hsotg s3c-hsotg: DPTx[2] FSize=768, StAddr=0x00001200
s3c-hsotg s3c-hsotg: DPTx[3] FSize=768, StAddr=0x00001500
s3c-hsotg s3c-hsotg: DPTx[4] FSize=768, StAddr=0x00001800
s3c-hsotg s3c-hsotg: DPTx[5] FSize=768, StAddr=0x00001b00
s3c-hsotg s3c-hsotg: DPTx[6] FSize=768, StAddr=0x00001e00
s3c-hsotg s3c-hsotg: DPTx[7] FSize=768, StAddr=0x00002100
s3c-hsotg s3c-hsotg: DPTx[8] FSize=768, StAddr=0x00002400
s3c-hsotg s3c-hsotg: DPTx[9] FSize=768, StAddr=0x00002700
s3c-hsotg s3c-hsotg: DPTx[10] FSize=768, StAddr=0x00002a00
s3c-hsotg s3c-hsotg: DPTx[11] FSize=768, StAddr=0x00002d00
s3c-hsotg s3c-hsotg: DPTx[12] FSize=768, StAddr=0x00003000
s3c-hsotg s3c-hsotg: DPTx[13] FSize=768, StAddr=0x00003300
s3c-hsotg s3c-hsotg: DPTx[14] FSize=768, StAddr=0x00003600
s3c-hsotg s3c-hsotg: DPTx[15] FSize=768, StAddr=0x00003900
s3c-hsotg s3c-hsotg: ep0-in: EPCTL=0x00008000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep0-out: EPCTL=0x00008000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep1-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep1-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep2-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep2-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep3-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep3-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep4-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep4-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep5-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep5-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep6-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep6-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep7-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep7-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep8-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep8-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep9-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep9-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep10-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep10-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep11-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep11-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep12-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep12-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep13-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep13-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep14-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: ep14-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000
s3c-hsotg s3c-hsotg: DVBUSDIS=0x000017d7, DVBUSPULSE=000005b8
mousedev: PS/2 mouse device common for all mice
S3C Touchscreen driver, (c) 2010 FriendlyARM
touchscreen got loaded successfully : 12 bits
touchscreen-1wire       initialized
backlight-1wire initialized
input: TouchScreen Pipe as /devices/virtual/input/input0
ts-if   initialized
S3C24XX RTC, (c) 2004,2006 Simtec Electronics
s3c-rtc s3c64xx-rtc: rtc disabled, re-enabling
s3c-rtc s3c64xx-rtc: rtc core: registered s3c as rtc0
i2c /dev entries driver
Linux video capture interface: v2.00
i2c-core: driver [tuner] using legacy suspend method
i2c-core: driver [tuner] using legacy resume method
i2c-core: driver [msp3400] using legacy suspend method
i2c-core: driver [msp3400] using legacy resume method
usbcore: registered new interface driver usbvision
USBVision USB Video Device Driver for Linux : 0.9.10
usbcore: registered new interface driver pvrusb2
pvrusb2: V4L in-tree version:Hauppauge WinTV-PVR-USB2 MPEG2 Encoder/Tuner
pvrusb2: Debug mask is 31 (0x1f)
usbcore: registered new interface driver zr364xx
zr364xx: Zoran 364xx
usbcore: registered new interface driver stkwebcam
one_wire_status: 4
pwc: Philips webcam module version 10.0.14 loaded.
pwc: Supports Philips PCA645/646, PCVC675/680/690, PCVC720[40]/730/740/750 & PCVC830/840.
pwc: Also supports the Askey VC010, various Logitech Quickcams, Samsung MPC-C10 and MPC-C30,
one_wire_status: 4
pwc: the Creative WebCam 5 & Pro Ex, SOTEC Afina Eye and Visionite VCS-UC300 and VCS-UM100.
usbcore: registered new interface driver Philips webcam
gspca: v2.12.0 registered
one_wire_status: 4
usbcore: registered new interface driver benq
usbcore: registered new interface driver conex
usbcore: registered new interface driver cpia1
usbcore: registered new interface driver etoms
usbcore: registered new interface driver finepix
usbcore: registered new interface driver jeilinj
usbcore: registered new interface driver konica
usbcore: registered new interface driver mars
usbcore: registered new interface driver mr97310a
one_wire_status: 4
usbcore: registered new interface driver ov519
usbcore: registered new interface driver ov534
usbcore: registered new interface driver ov534_9
usbcore: registered new interface driver pac207
usbcore: registered new interface driver pac7302
usbcore: registered new interface driver pac7311
usbcore: registered new interface driver sn9c2028
usbcore: registered new interface driver sn9c20x
usbcore: registered new interface driver sonixb
one_wire_status: 4
usbcore: registered new interface driver sonixj
usbcore: registered new interface driver spca500
usbcore: registered new interface driver spca501
usbcore: registered new interface driver spca505
usbcore: registered new interface driver spca506
spca506: registered
usbcore: registered new interface driver spca508
usbcore: registered new interface driver spca561
usbcore: registered new interface driver spca1528
one_wire_status: 4
usbcore: registered new interface driver sq905
usbcore: registered new interface driver sq905c
usbcore: registered new interface driver sq930x
usbcore: registered new interface driver sunplus
usbcore: registered new interface driver stk014
usbcore: registered new interface driver stv0680
usbcore: registered new interface driver t613
usbcore: registered new interface driver tv8532
usbcore: registered new interface driver vc032x
one_wire_status: 4
usbcore: registered new interface driver xirlink-cit
usbcore: registered new interface driver zc3xx
usbcore: registered new interface driver ALi m5602
usbcore: registered new interface driver STV06xx
gspca_gl860: driver startup - version 0.9d10
usbcore: registered new interface driver gspca_gl860
usbcore: registered new interface driver hdpvr
usbcore: registered new interface driver s2255
s3c-fimc: controller 0 registered successfully
s3c-fimc: controller 1 registered successfully
FIMC Driver, 2010 ported by FriendlyARM http://www.arm9.net
ov965x: probe
s3c-fimc: i2c transfer error
s3c-fimc: i2c transfer error
s3c-fimc: i2c transfer error
s3c-fimc: i2c transfer error
one_wire_status: 4
s3c-fimc: ov965x: Product ID fb:fb Manufacturer ID fb:fb
parent clock for camera: 266.000 MHz, divisor: 11
[CAM]RESET CAM.
S3C6400 MFC Driver, (c) 2007 Samsung Electronics, 2010 ported by FriendlyARM http://www.arm9.net
S3C6400 MFC Driver init OK.
S3C PostProcessor Driver v3.12, (c) 2009 Samsung Electronics
S3C6410 TV encoder Driver, (c) 2008 Samsung Electronics
S3C6410 TV encoder Driver init OK.
S3C6410 TV scaler Driver, (c) 2008 Samsung Electronics
S3C6410 TV scaler Driver init OK.
S3C Rotator Driver, (c) 2008 Samsung Electronics
s3c_rotator_probe called
s3c_rotator_probe success
S3C JPEG Driver, (c) 2007 Samsung Electronics
one_wire_status: 4
s3c_g2d_probe called
s3c_g2d_probe Success
S3C G2D Init : Done
S3C G3D Driver, (c) 2007-2009 Samsung Electronics
s3c_g3d version : 0x1050000
S3C G3D Init : Done
usbcore: registered new interface driver uvcvideo
USB Video Class driver (v1.0.0)
S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
one_wire_status: 4
s3c-sdhci s3c-sdhci.0: clock source 0: hsmmc (133000000 Hz)
s3c-sdhci s3c-sdhci.0: clock source 1: hsmmc (133000000 Hz)
s3c-sdhci s3c-sdhci.0: clock source 2: mmc_bus (84666666 Hz)
mmc0: SDHCI controller on samsung-hsmmc [s3c-sdhci.0] using ADMA
s3c-sdhci s3c-sdhci.1: clock source 0: hsmmc (133000000 Hz)
s3c-sdhci s3c-sdhci.1: clock source 1: hsmmc (133000000 Hz)
s3c-sdhci s3c-sdhci.1: clock source 2: mmc_bus (84666666 Hz)
one_wire_status: 4
mmc1: SDHCI controller on samsung-hsmmc [s3c-sdhci.1] using ADMA
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
mmc0: new high speed SDHC card at address 5b2a
mmcblk0: mmc0:5b2a SD04G 3.69 GiB
mmcblk0: p1
asoc: wm9713-hifi <-> samsung-ac97 mapping ok
ALSA device list:
  #0: MINI6410
TCP cubic registered
NET: Registered protocol family 17
VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5
s3c-rtc s3c64xx-rtc: setting system clock to 2000-01-17 23:44:28 UTC (948152668)
Freeing init memory: 1412K
yaffs: dev is 32505858 name is "mtdblock2" rw
yaffs: passed flags ""
FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
fa_cpu_pfn: module license 'Proprietary' taints kernel.
Disabling lock debugging due to kernel taint
FriendlyARM proprietary driver for mini6410 initialized.
[17/Jan/2000:15:44:38 +0000] boa: server version Boa/0.94.13
[17/Jan/2000:15:44:38 +0000] boa: server built Dec 30 2010 at 11:18:35.
[17/Jan/2000:15:44:38 +0000] boa: starting server pid=955, port 80
                        
                        
Try to bring eth0 interface up......eth0: link down
Done

Please press Enter to activate this console.
[root@FriendlyARM /]# ls
bin                 lost+found          sys
dev                 mnt                 tmp
etc                 opt                 udisk
fa-network-service  proc                usr
home                root                var
lib                 sbin                www
linuxrc             sdcard
[root@FriendlyARM /]# cd /home/plg/
[root@FriendlyARM plg]# ls
[root@FriendlyARM plg]# cd ..
[root@FriendlyARM /home]# ls
plg             spi_s3c64xx.ko  spidev.ko
[root@FriendlyARM /home]# insmod spidev.ko
[root@FriendlyARM /home]# insmod spi_s3c64xx.ko
------------[ cut here ]------------
WARNING: at drivers/gpio/gpiolib.c:99 gpio_ensure_requested+0x48/0xf4()
autorequest GPIO-20
Modules linked in: spi_s3c64xx(+) spidev fa_cpu_pfn(P)
[<c0178c44>] (unwind_backtrace+0x0/0xe4) from [<c0188150>] (warn_slowpath_common+0x4c/0x64)
[<c0188150>] (warn_slowpath_common+0x4c/0x64) from [<c01881e8>] (warn_slowpath_fmt+0x2c/0x3c)
[<c01881e8>] (warn_slowpath_fmt+0x2c/0x3c) from [<c02e486c>] (gpio_ensure_requested+0x48/0xf4)
[<c02e486c>] (gpio_ensure_requested+0x48/0xf4) from [<c02e4a5c>] (gpio_direction_output+0x68/0x120)
[<c02e4a5c>] (gpio_direction_output+0x68/0x120) from [<bf00d614>] (s3c64xx_spi_setup+0x1ec/0x204 [spi_s3c64xx])
[<bf00d614>] (s3c64xx_spi_setup+0x1ec/0x204 [spi_s3c64xx]) from [<c034516c>] (spi_setup+0x40/0x48)
[<c034516c>] (spi_setup+0x40/0x48) from [<c03453f4>] (spi_add_device+0xa0/0x118)
[<c03453f4>] (spi_add_device+0xa0/0x118) from [<c03454ec>] (spi_new_device+0x80/0xa4)
[<c03454ec>] (spi_new_device+0x80/0xa4) from [<c0345530>] (spi_match_master_to_boardinfo+0x20/0x40)
[<c0345530>] (spi_match_master_to_boardinfo+0x20/0x40) from [<c0345624>] (spi_register_master+0xd4/0x118)
[<c0345624>] (spi_register_master+0xd4/0x118) from [<bf0113d4>] (s3c64xx_spi_probe+0x3d4/0x4a8 [spi_s3c64xx])
[<bf0113d4>] (s3c64xx_spi_probe+0x3d4/0x4a8 [spi_s3c64xx]) from [<c031530c>] (platform_drv_probe+0x14/0x18)
[<c031530c>] (platform_drv_probe+0x14/0x18) from [<c0314500>] (driver_probe_device+0xa8/0x158)
[<c0314500>] (driver_probe_device+0xa8/0x158) from [<c0314610>] (__driver_attach+0x60/0x84)
[<c0314610>] (__driver_attach+0x60/0x84) from [<c03137e8>] (bus_for_each_dev+0x4c/0x78)
[<c03137e8>] (bus_for_each_dev+0x4c/0x78) from [<c0313e84>] (bus_add_driver+0xa8/0x224)
[<c0313e84>] (bus_add_driver+0xa8/0x224) from [<c031485c>] (driver_register+0xa8/0x12c)
[<c031485c>] (driver_register+0xa8/0x12c) from [<c0315570>] (platform_driver_probe+0x18/0x8c)
[<c0315570>] (platform_driver_probe+0x18/0x8c) from [<c01694d8>] (do_one_initcall+0xbc/0x190)
[<c01694d8>] (do_one_initcall+0xbc/0x190) from [<c01af348>] (sys_init_module+0x158c/0x1754)
[<c01af348>] (sys_init_module+0x158c/0x1754) from [<c01735e0>] (ret_fast_syscall+0x0/0x30)
---[ end trace fa984f295d032b1b ]---
------------[ cut here ]------------
WARNING: at drivers/gpio/gpiolib.c:99 gpio_ensure_requested+0x48/0xf4()
autorequest GPIO-24
Modules linked in: spi_s3c64xx(+) spidev fa_cpu_pfn(P)
[<c0178c44>] (unwind_backtrace+0x0/0xe4) from [<c0188150>] (warn_slowpath_common+0x4c/0x64)
[<c0188150>] (warn_slowpath_common+0x4c/0x64) from [<c01881e8>] (warn_slowpath_fmt+0x2c/0x3c)
[<c01881e8>] (warn_slowpath_fmt+0x2c/0x3c) from [<c02e486c>] (gpio_ensure_requested+0x48/0xf4)
[<c02e486c>] (gpio_ensure_requested+0x48/0xf4) from [<c02e4a5c>] (gpio_direction_output+0x68/0x120)
[<c02e4a5c>] (gpio_direction_output+0x68/0x120) from [<bf00d614>] (s3c64xx_spi_setup+0x1ec/0x204 [spi_s3c64xx])
[<bf00d614>] (s3c64xx_spi_setup+0x1ec/0x204 [spi_s3c64xx]) from [<c034516c>] (spi_setup+0x40/0x48)
[<c034516c>] (spi_setup+0x40/0x48) from [<c03453f4>] (spi_add_device+0xa0/0x118)
[<c03453f4>] (spi_add_device+0xa0/0x118) from [<c03454ec>] (spi_new_device+0x80/0xa4)
[<c03454ec>] (spi_new_device+0x80/0xa4) from [<c0345530>] (spi_match_master_to_boardinfo+0x20/0x40)
[<c0345530>] (spi_match_master_to_boardinfo+0x20/0x40) from [<c0345624>] (spi_register_master+0xd4/0x118)
[<c0345624>] (spi_register_master+0xd4/0x118) from [<bf0113d4>] (s3c64xx_spi_probe+0x3d4/0x4a8 [spi_s3c64xx])
[<bf0113d4>] (s3c64xx_spi_probe+0x3d4/0x4a8 [spi_s3c64xx]) from [<c031530c>] (platform_drv_probe+0x14/0x18)
[<c031530c>] (platform_drv_probe+0x14/0x18) from [<c0314500>] (driver_probe_device+0xa8/0x158)
[<c0314500>] (driver_probe_device+0xa8/0x158) from [<c0314610>] (__driver_attach+0x60/0x84)
[<c0314610>] (__driver_attach+0x60/0x84) from [<c03137e8>] (bus_for_each_dev+0x4c/0x78)
[<c03137e8>] (bus_for_each_dev+0x4c/0x78) from [<c0313e84>] (bus_add_driver+0xa8/0x224)
[<c0313e84>] (bus_add_driver+0xa8/0x224) from [<c031485c>] (driver_register+0xa8/0x12c)
[<c031485c>] (driver_register+0xa8/0x12c) from [<c0315570>] (platform_driver_probe+0x18/0x8c)
[<c0315570>] (platform_driver_probe+0x18/0x8c) from [<c01694d8>] (do_one_initcall+0xbc/0x190)
[<c01694d8>] (do_one_initcall+0xbc/0x190) from [<c01af348>] (sys_init_module+0x158c/0x1754)
[<c01af348>] (sys_init_module+0x158c/0x1754) from [<c01735e0>] (ret_fast_syscall+0x0/0x30)
---[ end trace fa984f295d032b1c ]---
[root@FriendlyARM /home]#
[root@FriendlyARM /home]#
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
2楼  发表于: 2012-08-02 16:35

 回 1楼(282409975) 的帖子

这个错误信息不会导致SPI的硬件通信问题,它只是在你没有调用gpio_request的情况下就操作相应gpio的情况下的一个警告。我想通信的问题还是需要从SPI上的读取和发出数据分析入手。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
专注与嵌入式linux的图像,视频方向的开发。
级别: 侠客
UID: 9607
精华: 0
发帖: 81
金钱: 405 两
威望: 81 点
综合积分: 162 分
注册时间: 2009-10-07
最后登录: 2015-02-02
3楼  发表于: 2012-08-03 18:19
哦,谢谢了,你说的GPIO是不是 SPI的   .line=S3C64XX_GPC(3), 这个引脚,因为只有这个引脚的我调用GPIO的库来设置的。

现在的问题是:我能确定SPI的 CLK MISO MOSI是正常的,因为我把发送和接收脚短接,发现发送和接收数据完全正常的。
但我现在不能保证  .line=S3C64XX_GPC(3), 这个引脚是不是正常的,因为我在实际中发现 当外面接上spi的芯片时,小数据(比如读写某个寄存器)是正常的,但是如果大数据量 就会出现接收的数据错误, 请教下!!
谢谢了!
专注与嵌入式linux的图像,视频方向的开发。
级别: 侠客
UID: 9607
精华: 0
发帖: 81
金钱: 405 两
威望: 81 点
综合积分: 162 分
注册时间: 2009-10-07
最后登录: 2015-02-02
4楼  发表于: 2012-08-06 10:34
请问下楼主,我一直怀疑是 spi的cs脚 没有正常的拉高或拉低导致的,请问下这个SPI的cs脚只是设置了输出,他会自动的把GPC3脚设置为输出模式,并且是输出为1或0 吗,谢谢!
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
5楼  发表于: 2012-08-06 12:02

 回 4楼(282409975) 的帖子

负责输出0或1的是下面的代码:
在头文件语句的下面增加  
     static void  cs_set_level(unsigned line_id, int lvl) {
    gpio_direction_output(line_id, lvl);
};
static struct s3c64xx_spi_csinfo s3c64xx_spi0_csinfo = {
  .fb_delay=100,
  .line=S3C64XX_GPC(3),
  .set_level=cs_set_level,
};


另外,在gpio_direction_output()里最终应该会调用到arch/arm/plat-samsung/gpio.c里的 s3c_gpiolib_output()函数,在它里面会把对应GPIO的模式设置成output
复制代码
  1. 67 static int s3c_gpiolib_output(struct gpio_chip *chip,
  2. 68                               unsigned offset, int value)
  3. 69 {
  4. 70         struct s3c_gpio_chip *ourchip = to_s3c_gpio(chip);
  5. 71         void __iomem *base = ourchip->base;
  6. 72         unsigned long flags;
  7. 73         unsigned long dat;
  8. 74         unsigned long con;
  9. 75
  10. 76         s3c_gpio_lock(ourchip, flags);
  11. 77
  12. 78         dat = __raw_readl(base + 0x04);
  13. 79         dat &= ~(1 << offset);
  14. 80         if (value)
  15. 81                 dat |= 1 << offset;
  16. 82         __raw_writel(dat, base + 0x04);
  17. 83
  18. 84         con = __raw_readl(base + 0x00);
  19. 85         con &= ~(3 << (offset * 2));
  20. 86         con |= 1 << (offset * 2);
  21. 87
  22. 88         __raw_writel(con, base + 0x00);
  23. 89         __raw_writel(dat, base + 0x04);
  24. 90
  25. 91         s3c_gpio_unlock(ourchip, flags);
  26. 92         return 0;
  27. 93 }
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
专注与嵌入式linux的图像,视频方向的开发。
级别: 侠客
UID: 9607
精华: 0
发帖: 81
金钱: 405 两
威望: 81 点
综合积分: 162 分
注册时间: 2009-10-07
最后登录: 2015-02-02
6楼  发表于: 2012-08-09 10:04
感谢总版主,亲自找到源代码的位置并贴出来, 让人感动啊。!

我在积极的找这个问题的解决的办法,等找到了,贴上来,以免以后有人也遇到这样的问题,谢谢了
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
7楼  发表于: 2012-08-09 12:26

 回 6楼(282409975) 的帖子

这没有什么。在我看来,在这里讨论问题如果脱离了源代码,是一点意义也没有的。事实上这也是论坛上很多问题得不到解决的一个重要原因。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 81714
精华: 0
发帖: 9
金钱: 50 两
威望: 10 点
综合积分: 18 分
注册时间: 2012-11-13
最后登录: 2013-07-05
8楼  发表于: 2012-11-25 21:56
拜读了。。。
级别: 新手上路
UID: 84988
精华: 0
发帖: 7
金钱: 35 两
威望: 7 点
综合积分: 14 分
注册时间: 2012-12-28
最后登录: 2014-12-09
9楼  发表于: 2013-05-22 11:37
请问楼主现在这个问题解决了吗,后来人又遇到同样问题了,求指导啊~~
  • «
  • 1
  • 2
  • »
  • Pages: 1/2     Go