[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: SV: [microblaze-uclinux] Problem in using the PS/2 Keyboard



Chhavi,

Did you connect the interrupt (ps2_2_intr) properly in your hardware design? Does the hardware interrupt number match CONFIG_XILINX_PS2_DUAL_REF_0_SYS_INTR2_IRQ? Can you see with a 'scope that the keyboard signals on the PS/2 data and clock line when you press a key (=hardware is OK)?

/Lars


--- Den tis 2008-09-09 skrev chhavi dhawan <dhawan_chhavi@xxxxxxxxx>:

> Från: chhavi dhawan <dhawan_chhavi@xxxxxxxxx>
> Ämne: Re: SV: [microblaze-uclinux] Problem in using the PS/2 Keyboard
> Till: microblaze-uclinux@xxxxxxxxxxxxxx
> Datum: tisdag 9 september 2008 17.43
> Dear Lars,
>  
> Thanx a lot for the kind help...But unfortunately, after
> changing the KBD_INIT_TIMEOUT from 1000 to 2000 in the file
> linux2.4/include/linux/pc-keyb.h,  the output still
>  remains same i.e keyboard controller jammed and keyboard
> not initialised is still there as shown in attached file..
>  
>  
> Linux version 2.4.32-uc0 (root@localhost) (gcc version
> 3.4.1 ( PetaLinux 0.20
> Bu                                                                               
> 
> ild -rc1 050607 )) #12 Tue Sep 9 15:40:30 EDT
> 2008                                                 
> 
> On node 0 totalpages:
> 16384                           
> zone(0): 16384
> pages.                     
> zone(1): 0 pages.                 
> zone(2): 0 pages.                 
> CPU: MICROBLAZE               
> Kernel command line:                    
> Console: xmbserial on
> UARTLite                             
> 
> Calibrating delay loop... 49.86
> BogoMIPS                                       
> 
> Memory: 64MB = 64MB total   
>                      
> Memory: 62364KB available (1124K code, 1334K data, 48K
> init)                                                           
> 
> Dentry cache hash table entries: 8192 (order: 4, 65536
> bytes)                                                   
>          
> Inode cache hash table entries: 4096
> (order                                        
> 
> Mount cache hash table entries: 512 (order: 0, 4096
> bytes)                                                         
> 
> Buffer cache hash table entries: 4096 (order: 2, 16384
> bytes)                                                            
> 
> Page-cache hash table entries: 16384 (order: 4, 65536
> bytes)                                                           
> 
> POSIX conformance testing by
> UNIFIX                    
>               
> Linux NET4.0 for Linux
> 2.4                          
> Based upon Swansea University Computer Society
> NET3.039                                                      
> 
> Initializing RT netlink
> socket                             
> 
> Microblaze UARTlite serial driver version
> 1.00                                             
> 
> ttyS0 at 0x40600000 (irq = 5) is a Microblaze
> UARTlite                                                     
> 
> Starting kswapd               
> Xilinx PS/2 #1 at 0x2410A5C0 mapped to
> 0x2410A5C0                                                
> 
> Xilinx PS/2 #0 at 0x241095C0 mapped to
> 0x241095C0                                                
> 
> pc_keyb: controller jammed
> (0xC1).                                 
> 
> initialize_kbd: Keyboard failed self
> test                                        
> 
> xgpio #0 at 0x40000000 mapped to
> 0x40000000                                          
> 
> Xilinx GPIO
> registered                      
> RAMDISK driver initialized: 16 RAM disks of 4096K size 1024
> blocksize                                                                    
> 
> physmap_auto flash device: 800000 at
> 22000000                                            
> 
> physmap_auto probing buswidth
> 4                              
> 
> cfi_cmdset_0001: Erase suspend on write
> enabled                                              
> 
> 0:
> offset=0x0,size=0x40000,blocks=32                                   
> 
> Using buffer write
> method                         
> physmap_auto: no partition info available, registering
> whole
> flas                                                              
> 
> uclinux[mtd]: RAM probe address=0x2415cbc4
> size=0x10a000                                                       
> 
> uclinux[mtd]: root filesystem
> index=2                                    
> 
> ML40X flash probe(0x22000000,8388608,4): 800000 at
> 22000000                                                          
> 
> cfi_cmdset_0001: Erase suspend on write
> enabled                            
>                   
> 0:
> offset=0x0,size=0x40000,blocks=32                                   
> 
> Using buffer write
> method                         
> Creating 10 MTD partitions on
> "Flash":                                     
> 
> 0x00000000-0x00100000 : "fpga0"    
>                           
> 0x00100000-0x00200000 :
> "fpga1"                              
> 
> 0x00200000-0x00240000 :
> "Bootloader"                                   
> 
> 0x00240000-0x00280000 :
> "Bootargs"                                 
> 
> 0x00280000-0x002c0000 :
> "MAC"                            
> 
> 0x002c0000-0x00340000 :
> "Config"                               
> 
> 0x00340000-0x00400000 :
> "Spare"                              
> 
> 0x00400000-0x00700000 :
> "Image"                              
> 
> 0x00700000-0x00800000 :
> "JFFS2"                              
> 
> 0x00000000-0x00800000 :
> "Flash"                              
> 
> ML40X ram probe(0x2415cbc4,50397184,4): 3010000 at
> 2415cbc4                                                          
> 
> Creating 1 MTD partitions on "RAM":     
>                              
> 0x00000000-0x03010000 :
> "Romfs"                              
> 
> MicroBlaze auto-config flash probe(0x22000000,8388608,4):
> 800000 at
> 22000000                                                                           
> 
> cfi_cmdset_0001: Erase suspend on write
> enabled                                              
> 
> 0:
> offset=0x0,size=0x40000,blocks=32                                   
> 
> Using buffer write
> method                         
> Creating 8 MTD partitions on
> "Flash":                                    
> 
> 0x00000000-0x00004000 :
> "Bootloader"                                  
> 
> mtd: partition "Bootloader" doesn't end on an
> erase block -- force
> read-only                                                                     
>       
> 0x00004000-0x00008000 :
> "Bootargs"                                 
> 
> mtd: partition "Bootargs" doesn't start on an
> erase block boundary -- force
> read                                                                               
> 
> -only     
> 0x00008000-0x0000c000 :
> "MAC"                            
> 
> mtd: partition "MAC" doesn't start on an
> erase block boundary -- force
> read-only                                                                               
> 
>  
> 0x00010000-0x00020000 :
> "Config"          
>                      
> mtd: partition "Config" doesn't start on an
> erase block boundary -- force
> read-o                                                                               
> 
> nly   
> 0x0000c000-0x00010000 :
> "Spare"                              
> 
> mtd: partition "Spare" doesn't start on an
> erase block
> bo                                                      
> 
> ly  
> 0x00100000-0x00400000 :
> "Image"                              
> 
> 0x00400000-0x00800000 :
> "JFFS2"                              
> 
> 0x00000000-0x00800000 :
> "Flash"                              
> 
> MicroBlaze auto-config ram probe(0x2415cbc4,1089536,4):
> 10a000 at
> 2415cbc4                                                                         
> 
> Creating 1 MTD partitions on
> "RAM":                       
>            
> 0x00000000-0x0010a000 :
> "Romfs"                              
> 
> NET4: Linux TCP/IP 1.0 for
> NET4.0                                
> 
> IP Protocols: ICMP, UDP,
> TCP                            
> IP: routing cache hash table of 512 buckets,
> 4Kbytes    
>                                                
> TCP: Hash tables configured (established 4096 bind
> 8192)                                                       
> 
> NET4: Unix domain sockets 1.0/SMP for Linux
> NET4.0.                                                  
> 
> VFS: Mounted root (cramfs filesystem)
> readonly.                                              
> 
> Freeing init memory:
> 48K                        
> Mounting proc:              
> Mounting var:             
> Populating /var:                
> Running local start
> scripts.                           
> 
> Mounting
> /etc/config:                     
> Populating
> /etc/config:                       
> flatfsd: invalid header
> magic                            
> 
> flatfsd: Nonexistent or bad flatfs (-183), creating new
> one...                                                             
> 
> flatfsd: Failed to write flatfs (-85): Read-only file
> system                                        
>                    
> flatfsd: Created 6 configuration files (192
> bytes)                                                 
> 
> Setting hostname:                 
> Setting up interface
> lo:                        
> Starting thttpd:                
>  
> petalinux login:
> root                     
> Password:         
> # ps    
>   PID PORT STAT SIZE SHARED %CPU
> COMMAND                                       
> 
>     1      S    139K     0K 
> 2.0                             
> 
>     2      S      0K     0K  0.0
> keventd                 
>                       
>     3      R      0K     0K  0.0
> ksoftirqd_CPU0                                              
> 
>     4      S      0K     0K  0.0
> kswapd                                      
> 
>     5      S      0K     0K  0.0
> bdflush                  
>                      
>     6      S      0K     0K  0.0
> kupdated                                        
> 
>     7      S      0K     0K  0.0
> mtdblockd                                         
> 
>    35      S    151K     0K  0.0 thttpd -c
> *.cgi                                               
> 
>    37   S0 S    647K     0K  0.1
> -sh                                   
> 
>    38      S    133K     0K  0.0
> /bin/flatfsd                                        
>     
>    39      S     71K     0K  0.0
> /bin/inetd                                          
> 
>    40   S0 R     71K     0K  0.0
> ps                                  
> 
> # ls    
> bin   dev   etc   home  lib   mnt   proc 
> tmp                                      
>        
> # cd bin        
> # ls    
> [          date       free      
> kill       msh        rm        
> true                                                                     
> 
> agetty     dd         ftpd      
> killall    mtdm       rmmod     
> umount        
>                                                                
> basename   dhcpcd     gdbserver  ln        
> mv         sh        
> uname                                                                      
> 
> bcdm       dhrystone  hd        
> login      netflash   shutdown  
> uptime                                                                       
> 
> busybox    echo       hostname  
> ls         passwd     telnetd   
> version                                                                        
> 
> cat        erase      ifconfig  
> lsmod      ping       test      
> vi            
> chmod      eraseall   inetd     
> mkdir      ps         thdm       wget
> cmp        false      init      
> modprobe   pwd        thttpd
> cp         flatfsd    insmod    
> mount      reboot     touch
> # cd ..
> # cd dev
> # ls
> console     mtd14       mtdblock3  
> mtdr5       ptypa       ttyp4
> fb0         mtd2        mtdblock4  
> mtdr6       ptypb       ttyp5
> flash       mtd3        mtdblock5  
> mtdr7       ptypc       ttyp6
> gpio        mtd4        mtdblock6  
> mtdr8       ptypd       ttyp7
> gpio0       mtd5        mtdblock7  
> mtdr9       ptype       ttyp8
> gpio1       mtd6        mtdblock8  
> null        ptypf       ttyp9
> gpio2       mtd7        mtdblock9  
> nvram       random      ttypa
> gpio3       mtd8        mtdr0      
> ptyp0       rtc         ttypb
> gpio4       mtd9        mtdr1      
> ptyp1       tty         ttypc
> kmem        mtdblock0   mtdr10     
> ptyp2       ttyS0       ttypd
> mem         mtdblock1   mtdr11     
> ptyp3       ttyS1       ttype
> mtd0        mtdblock10  mtdr12     
> ptyp4       ttyS2       ttypf
> mtd1        mtdblock11  mtdr13     
> ptyp5       ttyS3       urandom
> mtd10       mtdblock12  mtdr14     
> ptyp6       ttyp0       zero
> mtd11       mtdblock13  mtdr2      
> ptyp7       ttyp1
> mtd12       mtdblock14  mtdr3      
> ptyp8       ttyp2
> mtd13       mtdblock2   mtdr4      
> ptyp9       ttyp3
> #
> 
>  
>  
>  
> Kindly suggest...
>  
> Thanx a lot..
> Regards
> Chhavi
> 
> --- On Mon, 9/8/08, Lars <lpn1328@xxxxxxxx> wrote:
> 
> From: Lars <lpn1328@xxxxxxxx>
> Subject: SV: [microblaze-uclinux] Problem in using the PS/2
> Keyboard
> To: microblaze-uclinux@xxxxxxxxxxxxxx
> Date: Monday, September 8, 2008, 11:35 PM
> 
> Hello Chhavi,
> 
> I had to change a time out value in the PS/2 init code to
> get my keyboard to
> work. In /linux-2.4.x/include/linux/pc_keyb.h I changed 
> KBD_INIT_TIMEOUT from
> 1000 to 2000.
> 
> Hoping to be of some help!
> 
> /Lars
> 
> --- Den sön 2008-09-07 skrev chhavi dhawan
> <dhawan_chhavi@xxxxxxxxx>:
> 
> > Från: chhavi dhawan <dhawan_chhavi@xxxxxxxxx>
> > Ämne: [microblaze-uclinux] Problem in using the PS/2
> Keyboard
> > Till: microblaze-uclinux@xxxxxxxxxxxxxx
> > Datum: söndag 7 september 2008 18.24
> >  
> >  
> > Dear All,
> >  
> > We have compiled the kernel image for ps/2 keyboard in
> > kernel 2.4.
> > The keyboard is not getting initialised and we get the
> > following debug messages related to controller jammed
> and
> > keyboard not properly initialised as shown in the
> attached
> > document.
> > 
> > Can anyone suggest if some additional patch is
> required to
> > initialise ps/2 keyboard properly in 2.4 kernel.
> > The console errors are copied below for the
> reference....
> >  
> >  
> >  
> >  
> > Linux version 2.4.32-uc0 (root@localhost) (gcc version
> > 3.4.1 ( PetaLinux 0.20
> >
> Bu                                                                               
> > 
> > ild -rc1 050607 )) #8 Fri Sep 5 19:29:21 EDT
> >
> 2008                                                
> > 
> > On node 0 totalpages:
> >
> 16384                           
> > zone(0): 16384
> > pages.                     
> > zone(1): 0 pages.                 
> > zone(2): 0 pages.                 
> > CPU: MICROBLAZE               
> > Kernel command
> line:                    
> > Console: xmbserial on
> >
> UARTLite                             
> > 
> > Calibrating delay loop... 49.86
> >
> BogoMIPS                                       
> > 
> > Memory: 64MB = 64MB total     
> >                    
> > Memory: 62328KB available (1150K code, 1344K data, 52K
> >
> init)                                                           
> > 
> > Dentry cache hash table entries: 8192 (order: 4, 65536
> >
> bytes)                                                     
> >        
> > Inode cache hash table entries: 4096
> >
> (order:                                         
> > 
> > Mount cache hash table entries: 512 (order: 0, 4096
> >
> bytes)                                                         
> > 
> > Buffer cache hash table entries: 4096 (order: 2, 16384
> >
> bytes)                                                            
> > 
> > Page-cache hash table entries: 16384 (order: 4, 65536
> >
> bytes)                                                           
> > 
> > POSIX conformance testing by
> > UNIFIX                    
> >               
> > Linux NET4.0 for Linux
> > 2.4                          
> > Based upon Swansea University Computer Society
> >
> NET3.039                                                      
> > 
> > Initializing RT netlink
> >
> socket                             
> > 
> > Microblaze UARTlite serial driver version
> >
> 1.00                                             
> > 
> > ttyS0 at 0x40600000 (irq = 5) is a Microblaze
> >
> UARTlite                                                     
> > 
> > Starting kswapd               
> > Xilinx PS/2 #1 at 0x241104D0 mapped to
> >
> 0x241104D0                                                
> > 
> > Xilinx PS/2 #0 at 0x2410F4D0 mapped to
> >
> 0x2410F4D0                                                
> > 
> > pc_keyb: controller jammed
> >
> (0xC1).                                 
> > 
> > initialize_kbd: Keyboard failed self
> >
> test                                        
> > 
> > pc_keyb: controller jammed
> >
> (0xCD).                                 
> > 
> > pc_keyb: controller jammed
> >
> (0xCD).                                 
> > 
> > Detected PS/2 Mouse
> > Port.                         
> > pc_keyb: controller jammed
> >
> (0xCD).                                 
> > 
> > pc_keyb: controller jammed
> >
> (0xCD).                                 
> > 
> > RAMDISK driver initialized: 16 RAM disks of 4096K size
> 1024
> >
> blocksize                                                
> >                     
> > eth0: using fifo
> > mode.                      
> > eth0: Xilinx EMAC #0 at 0x40C00000 mapped to
> 0x40C00000,
> >
> irq=2                                                             
> > 
> > eth0: id 2.0l; block id 11, type
> >
> 1                              
> >    
> > physmap_auto flash device:
> >
> 800000                                 
> > 
> > physmap_auto probing buswidth
> >
> 4                              
> > 
> > cfi_cmdset_0001: Erase suspend on write
> >
> enabled                                              
> > 
> > 0:
> >
> offset=0x0,size=0x40000,blocks=32                                   
> > 
> > Using buffer write
> > method                        
> 
> > physmap_auto: no partition info available, registering
> > whole flash at
> >
> once                                                                         
> > 
> > uclinux[mtd]: RAM probe address=0x24165d70
> >
> size=0x10a000                                                       
> > 
> > uclinux[mtd]: root filesystem
> >
> index=2                                    
> > 
> > ML40X flash probe(0x22000000,8388608,4): 800000 at
> > 22000000                 
> >
>                                          
> > cfi_cmdset_0001: Erase suspend on write
> >
> enabled                                              
> > 
> > 0:
> >
> offset=0x0,size=0x40000,blocks=32                                   
> > 
> > Using buffer write
> > method                    
>     
> > Creating 10 MTD partitions on
> >
> "Fla                               
> > 
> > 0x00000000-0x00100000 :
> >
> "fpga0"                              
> > 
> > 0x00100000-0x00200000 :
> >
> "fpga1"                              
> > 
> > 0x00200000-0x00240000 :
> >
> "Bootloader"                     
> >               
> > 0x00240000-0x00280000 :
> >
> "Bootargs"                                 
> > 
> > 0x00280000-0x002c0000 :
> >
> "MAC"                            
> > 
> > 0x002c0000-0x00340000 :
> >
> "Config"                               
> > 
> > 0x00340000-0x00400000 :
> > "Spare"                
> >               
> > 0x00400000-0x00700000 :
> >
> "Image"                              
> > 
> > 0x00700000-0x00800000 :
> >
> "JFFS2"                              
> > 
> > 0x00000000-0x00800000 :
> >
> "Flash"                              
> > 
> > ML40X ram probe(0x24165d70,50397184,4): 3010000 at
> >
> 24165d70                                                          
> > 
> > Creating 1 MTD partitions on
> >
> "RAM":                                  
> > 
> > 0x00000000-0x03010000 :
> >
> "Romfs"                              
> > 
> > MicroBlaze auto-config flash
> probe(0x22000000,8388608,4):
> >
> 800000                                                             
> > 
> > cfi_cmdset_0001: Erase suspend on write
> >
> enabled                                              
> > 
> > 0: offset=0x0,size=0x40000,blocks=32
> >
>                                    
> > Using buffer write
> > method                        
> 
> > Creating 8 MTD partitions on
> >
> "Flash":                                    
> > 
> > 0x00000000-0x00004000 :
> >
> "Bootloader"                                   
> > 
> > mtd: partition "Bootloader" doesn't end
> on an
> > erase block -- force
> >
> read-only                                                                           
> > 
> > 0x00004000-0x00008000 :
> >
> "Bootargs"                                 
> > 
> > mtd: partition "Bootargs" doesn't start
> on an
> > erase block boundary -- force
> >
> read                                                                               
> > 
> > -only     
> > 0x00008000-0x0000c000 :
> >
> "MAC"                            
> > 
> > mtd: partition "MAC" doesn't start on an
> > erase block boundary -- force
> >
> read-only                                                                               
> > 
> >  
> >
> 0x00010000-0x00020000                   
> > 
> > mtd: partition "Config" doesn't start on
> an
> > erase block boundary -- force
> >
> read-o                                                   
> >
>                             
> > nly   
> > 0x0000c000-0x00010000 :
> >
> "Spare"                              
> > 
> > mtd: partition "Spare" doesn't start on
> an
> > erase block boundary -- force
> >
> read-on                                                                            
> >    
> > ly  
> > 0x00100000-0x00400000 :
> >
> "Image"                              
> > 
> > 0x00400000-0x00800000 :
> >
> "JFFS2"                              
> > 
> > 0x00000000-0x00800000 :
> >
> "Flash"                              
> > 
> > MicroBlaze auto-config ram
> probe(0x24165d70,1089536,4):
> > 10a000 at
> >
> 24165d70                                                                         
> > 
> > Creating 1 MTD partitions on
> >
> "RAM":                                  
> > 
> > 0x00000000-0x0010a000 : "Romfs"    
> >                           
> > NET4: Linux TCP/IP 1.0 for
> >
> NET4.0                                
> > 
> > IP Protocols: ICMP, UDP,
> >
> TCP                            
> > IP: routing cache hash table of 512 buckets,
> >
> 4Kbytes                                                   
> > 
> > TCP: Hash tables configured (established 4096 bind
> >
> 8192)                                                       
> > 
> > NET4: Unix domain sockets 1.0/SMP for Linux
> >
> NET4.0.                                                  
> > 
> > VFS: Mounted root (cramfs filesystem)
> >
> readonly.                                              
> > 
> > Freeing init memory:
> > 52K                        
> > Mounting proc:              
> > Mounting var:             
> > Populating /var:                
> > Running local start
> >
> scripts.                           
> > 
> > Mounting
> > /etc/config:                     
> > Populating
> >
> /etc/config:                       
> > flatfsd: invalid header
> >
> magic                            
> > 
> > flatfsd: Nonexistent or bad flatfs (-183), creating
> new
> >
> one...                                                  
> >            
> > flatfsd: Failed to write flatfs (-85): Read-only file
> >
> system                                                           
> > 
> > flatfsd: Created 6 configuration files (192
> >
> bytes)                                                 
> > 
> > Setting hostname:                 
> > Setting up interface
> > lo:                        
> > Setting up interface
> >
> eth0:                          
> > eth0: Promiscuous mode
> >
> disabled.                               
> > 
> > Starting thttpd:                
> > eth0: Link carrier
> > lost.                        
> >  
> > petalinux login: eth0: Link carrier
> >
> restored.                                            
> > 
> > root    
> > Password:         
> > # ls    
> > bin   dev   etc   home  lib   mnt   proc 
> > tmp   usr  
> >
> var                                                        
> > 
> >  
> >  
> >  
> >  
> > Thanx
> > Regards
> > Chhavi
> 
> 
>      
> __________________________________________________________
> Ta semester! - sök efter resor hos Kelkoo.
> Jämför pris på flygbiljetter och hotellrum här:
> http://www.kelkoo.se/c-169901-resor-biljetter.html?partnerId=96914052
> 
> ___________________________
> microblaze-uclinux mailing list
> microblaze-uclinux@xxxxxxxxxxxxxx
> Project Home Page :
> http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
> Mailing List Archive :
> http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/


      __________________________________________________________
Ta semester! - sök efter resor hos Kelkoo.
Jämför pris på flygbiljetter och hotellrum här:
http://www.kelkoo.se/c-169901-resor-biljetter.html?partnerId=96914052

___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/