Keyboard issue

AmigaOne X5000 platform specific issues.
Post Reply
dstastny
Posts: 48
Joined: Fri Dec 16, 2016 6:31 am
Location: Atlanta GA

Keyboard issue

Post by dstastny »

Hi, I was trying to use a RGB mechanical keyboard Gamdias with my X5000 but it doesn't seem to work at all during UBOOT lots of polling errors and once inside of AmigaOS I have a nice HID Keyboard DSI dialog. I can kill the Grim Reaper and it still functions as keyboard but clearly something is not right. I assume that the Amiga error is something right in the UBOOT or machine hardware interface. Anyone else experience or have suggestion on a good mechanical keyboard they know works? Anything I can provide to someone to look at to debug?

Thanks
Doug
User avatar
tonyw
AmigaOS Core Developer
AmigaOS Core Developer
Posts: 1479
Joined: Wed Mar 09, 2011 1:36 pm
Location: Sydney, Australia

Re: Keyboard issue

Post by tonyw »

The U-Boot used in the X5000 and A1222 is not written by Hyperion, nor maintained by them. We (the OS4 devs) don't even have the source, so we can't make any changes to it.

If your keyboard does not work with U-Boot, then it must be pretty non-standard, since U-Boot (and Linux) support just about every hardware variation that ever existed. I would not expect it to work with OS4 unless it works OK with U-Boot first.

Sorry to say it, but I suggest you invest in a keyboard that supports standard USB protocol.
cheers
tony
dstastny
Posts: 48
Joined: Fri Dec 16, 2016 6:31 am
Location: Atlanta GA

Re: Keyboard issue

Post by dstastny »

Thanks Tony,

The keyboard is pretty standard and works fine on my assortment of machines. More research on my part I see that there are apparently issues with UBOOT based systems having issues with some USB keyboards(Ill have to dig up my RaspberryPI I think it too uses UBOOT). As I said keyboard does work after booted but leaves me with a nice GrimReaper DSI that if I ignore it works fine. No error in Linux. From my software development perspective the DSI in the Amiga Keyboard driver might be useful information for you Amiga OS guys. If not that is cool I have other keyboards, just was wondering if anyone else had similar issues. Ill reach out to A-EON to see if there interested in the UBOOT issue.

Regards
Doug
User avatar
tonyw
AmigaOS Core Developer
AmigaOS Core Developer
Posts: 1479
Joined: Wed Mar 09, 2011 1:36 pm
Location: Sydney, Australia

Re: Keyboard issue

Post by tonyw »

Can you provide a serial log from the DSI crash? That at least is something that can be fixed in the OS4 USB stack.
cheers
tony
kas1e
Beta Tester
Beta Tester
Posts: 542
Joined: Sat Jun 18, 2011 7:56 am
Contact:

Re: Keyboard issue

Post by kas1e »

Dunno if it related, but i reinstall yesterday os4 on x5k, and it crashes in keyboard driver at first booting (after that no more crashes, just first time). Keyboard is some Microsft usb one, and serial log are:

Code: Select all

Crash log for task "HID Keyboard"
Generated by GrimReaper 53.19
Crash occured in module hid.usbfd at address 0x7FDD0D7C
Type of crash: DSI (Data Storage Interrupt) exception
Alert number: 0x80000003

Register dump:
GPR (General Purpose Registers):
   0: 00000001 6CCF7EA0 00000002 6FED1720 6F9272B0 0192AE7C 0192AE7C 02012DD0 
   8: 6F8A240C 6FED17AC 00000000 00000000 22842482 0000000D 6CD1CDA4 6CDD2400 
  16: 02380000 EFF37240 6D1A0000 6D1D5980 6D1B8D70 6D4C7104 6D19C660 6FED1720 
  24: 6FED1720 6CCF7EE8 6D4C8D74 80000001 00000400 6FF602C4 6D1A0000 6FED1720 


FPR (Floating Point Registers, NaN = Not a Number):
   0:                0                0                0                0 
   4:                0                0                0                0 
   8:                0                0                0                0 
  12:                0                0                0                0 
  16:                0                0                0                0 
  20:                0                0                0                0 
  24:                0                0                0                0 
  28:                0                0                0                0 

FPSCR (Floating Point Status and Control Register): 0x00000000


SPRs (Special Purpose Registers):
           Machine State (msr) : 0x0002D030
                Condition (cr) : 0x6AC62D94
      Instruction Pointer (ip) : 0x7FDD0D7C
       Xtended Exception (xer) : 0x6CBDD028
                   Count (ctr) : 0x6FF6A4D0
                     Link (lr) : 0x7FC5F920
            DSI Status (dsisr) : 0x6CBDCDE0
            Data Address (dar) : 0x0198EC48



680x0 emulated registers:
DATA: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
ADDR: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
FPU0:                0                0                0                0 
FPU4:                0                0                0                0 



Symbol info:
Instruction pointer 0x7FDD0D7C belongs to module "hid.usbfd" (HUNK/Kickstart)

Stack trace:
    module DEVS:USB/fd/hid.usbfd at 0x7FDD0D7C (section 5 @ 0x6D58)
    module DEVS:USB/fd/hid.usbfd at 0x7FDD25A8 (section 5 @ 0x8584)
    module DEVS:USB/fd/hid.usbfd at 0x7FDD2C44 (section 5 @ 0x8C20)
    native kernel module dos.library.kmod+0x000255c8
    native kernel module kernel+0x0003f660
    native kernel module kernel+0x0003f6a8

PPC disassembly:
 7fdd0d74: 7c7f1b78   mr                r31,r3
 7fdd0d78: 816302dc   lwz               r11,732(r3)
*7fdd0d7c: 980b001e   stb               r0,30(r11)
 7fdd0d80: 38000017   li                r0,23
 7fdd0d84: b00b001c   sth               r0,28(r11)

System information:

CPU 
 Model: Freescale P50XX (E5500 core) V1.2 
 CPU speed: 1995 MHz 
 FSB speed: 798 MHz 
 Extensions:  

Machine 
 Machine name: AmigaOne X5000/20 
 Memory: 2097152 KB 
 Extensions: bus.pci bus.pcie 
 
dstastny
Posts: 48
Joined: Fri Dec 16, 2016 6:31 am
Location: Atlanta GA

Re: Keyboard issue

Post by dstastny »

I was able to finally get a serial dump hopefully this is useful. I cut it after the flood of UBOOT messages.

Code: Select all

## Starting application at 0x00200000 ...
AmigaOS 4.x U-Boot Bootloader V53.21



Please choose a configuration to boot:
> 1: AmigaOS 4.1 Final Edition      (Volume DH0)

[RETURN] Boot default      [SPACE] Stop Countdown
Move default [UP] or [DOWN] with arrows
[1] Boot appropriate config
(0 sec. until autoboot)>

(Booting default)
Booting configuration AmigaOS 4.1 Final Edition
Loading finished             [########################################] 100 %
About to call loader entry at 0x7BD02020
[EHCI] *usbbase=FE210100
[EHCI] *usbbase=FE211100
graphics.library P50XX optimizations enabled
RadeonHD.card (0): RadeonHD.chip 2.21 (25.10.2016)
RadeonHD (2): Graphics card name is: Radeon HD 7700 Series
RadeonHD (2): Identified the chipset as: VERDE
RadeonHD (2):   If - and only if - your card does not work or does not work optimally
        please submit a bug report at:
        http://www.amigadeveloper.com/bugreports
        Remember to include the driver version, and the following card details:
        0x683D:0x1787:0x7260: <name of board>
        and *please* describe the problems you are seeing in detail.
RadeonHD.chip (0): Object: ID: 310C name: HDMI_TYPE_A type: 3 id: C
RadeonHD.chip (0): Object: ID: 3104 name: DUAL_LINK_DVI_D type: 3 id: 4
RadeonHD.chip (0): Object: ID: 3105 name: VGA type: 3 id: 5
RadeonHD.chip (0):
RadeonHD.chip (0): --------------------------------------
RadeonHD.chip (0): CONNECTOR TABLE:
RadeonHD.chip (0):
RadeonHD.chip (0): Connector[0] HDMI 1:
RadeonHD.chip (0):   Type: RHD_CONNECTOR_HDMI_A
RadeonHD.chip (0):   DDC bus: RHD I2C line 4
RadeonHD.chip (0):   HPD: RHD_HPD_0 (monitor not connected)
RadeonHD.chip (0):   Outputs:
RadeonHD.chip (0):     Output AtomOutputUniphyF:
RadeonHD.chip (0):       Type: RHD_OUTPUT_UNIPHYF
RadeonHD.chip (0):       Device Type: atomDFP1
RadeonHD.chip (0):              Device Record: Type: atomDFP1, Connector Type: RHD_CONNECTOR_HDMI_A, ConnectorID: 0xC, EncoderID: 0x21
RadeonHD.chip (0):
RadeonHD.chip (0): Connector[1] DVI-D 1:
RadeonHD.chip (0):   Type: RHD_CONNECTOR_DVI
RadeonHD.chip (0):   DDC bus: RHD I2C line 3
RadeonHD.chip (0):   HPD: RHD_HPD_1 (monitor connected)
RadeonHD.chip (0):   Outputs:
RadeonHD.chip (0):     Output AtomOutputUniphyA:
RadeonHD.chip (0):       Type: RHD_OUTPUT_UNIPHYA
RadeonHD.chip (0):       Device Type: atomDFP2
RadeonHD.chip (0):              Device Record: Type: atomDFP2, Connector Type: RHD_CONNECTOR_DVI, ConnectorID: 0x4, EncoderID: 0x1E
RadeonHD.chip (0):
RadeonHD.chip (0): Connector[2] VGA 1:
RadeonHD.chip (0):   Type: RHD_CONNECTOR_VGA
RadeonHD.chip (0):   DDC bus: RHD I2C line 1
RadeonHD.chip (0):   HPD: RHD_HPD_NONE
RadeonHD.chip (0):   Outputs:
RadeonHD.chip (0):     Output AtomOutputDACA:
RadeonHD.chip (0):       Type: RHD_OUTPUT_DACA
RadeonHD.chip (0):       Device Type: atomCRT1
RadeonHD.chip (0):              Device Record: Type: atomCRT1, Connector Type: RHD_CONNECTOR_VGA, ConnectorID: 0x5, EncoderID: 0x15
RadeonHD.chip (0):
RadeonHD.chip (0): --------------------------------------
RadeonHD.chip (0):
RadeonHD.chip (0): RadeonHD card successfully opened
0000: 00 FF FF FF FF FF FF 00 09 D1 CA 78 45 54 00 00  ...........xET..
0010: 33 1A 01 03 80 3C 22 78 2E 2F A5 A5 54 50 9E 27  3....<"x./..TP.'
0020: 10 50 54 A5 6B 80 D1 C0 61 C0 81 00 81 C0 81 40  .PT.k...a......@
0030: 81 80 A9 C0 B3 00 02 3A 80 18 71 38 2D 40 58 2C  .......:..q8-@X,
0040: 45 00 56 50 21 00 00 1E 00 00 00 FF 00 45 43 47  E.VP!........ECG
0050: 30 34 34 38 30 53 4C 30 0A 20 00 00 00 FD 00 32  04480SL0.......2
0060: 4C 1E 53 15 00 0A 20 20 20 20 20 20 00 00 00 FC  L.S.............
0070: 00 42 65 6E 51 20 47 57 32 37 36 30 48 53 00 50  .BenQ.GW2760HS.P
0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
sii3112ide.device 53.20 (24.9.2014)
[sii3112ide/dev_init] Nothing started, bailing out
sii3114ide.device 53.20 (24.9.2014)
[sii3114ide/dev_init] Nothing started, bailing out
sii3512ide.device 53.20 (24.9.2014)
[sii3512ide/dev_init] Nothing started, bailing out
sii0680ide.device 53.20 (24.9.2014)
[sii0680ide/dev_init] Nothing started, bailing out
lsi53c8xx.device 53.20 (24.9.2014)
[lsi53c8xx/dev_init] Nothing started, bailing out
it8212ide.device 53.20 (24.9.2014)
[it8212ide/dev_init] Nothing started, bailing out
[mediaboot] Diskboot is present. Skip mounting static devices.
fdmain.c/29 Task "exec.task" [fdmain_init()] =>enter
fdmain.c/32 Task "exec.task" [fdmain_init()] =>leave
fdmain.c/49 Task "exec.task" [fdmain_register()] =>MyFDKey=0x6FF1A870
[EHCI] Found P50xx CPU
launch_dev() enter
p5020sata.device.kmod 54.69
create_sata_port(0)
0:task_entry(su=0x6FFB2680)
0:CHBA = 0x2400000 (virtual@0x6FC41000)
6ata0: SATA max UDMA/133 irq 84
6ata0: hard resetting link
6ata0: Signature Update detected @ 500 msecs
6ata0: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
6ata0.00: ATA-9: OWC Mercury Electra 3G SSD, N1007C, max UDMA/133
6ata0.00: 937703088 sectors, multi 1: LBA48 NCQ (depth 16/32)
6ata0.00: configured for UDMA/133
0:handle_io(su=0x6FFB2680) ENTER
started p5020sata.device Port 0 interrupt=84
create_sata_port(1)
1:task_entry(su=0x6FEBE000)
1:CHBA = 0x400000 (virtual@0x6FA25000)
6ata1: SATA max UDMA/133 irq 85
6ata1: hard resetting link
6ata1: Signature Update detected @ 500 msecs
6ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
6ata1.00: ATAPI: HL-DT-ST DVDRAM GH24NSC0, LI00, max UDMA/133
6ata1.00: configured for UDMA/133
1:handle_io(su=0x6FEBE000) ENTER
started p5020sata.device Port 1 interrupt=85
unit 0 announced
dev_open(unitNumber=0) [Mounter Task]
0:HD_SCSICMD: class=1 CmdCode=0x43 CmdLength=10 ignored
0:HD_SCSICMD: class=1 CmdCode=0x43 CmdLength=10 ignored
0:HD_SCSICMD: class=1 CmdCode=0x43 CmdLength=10 ignored
0:HD_SCSICMD: class=1 CmdCode=0x43 CmdLength=10 ignored
port 1 mounting failed
launch_dev() exit
[bootmenu] Detected machine type = AmigaOne X5000/20
[bootmenu] No preferred BootDevice specified
[bootmenu] Preferred keyboard device is "keyboard.device" unit 0
[bootmenu] PeekQualifier(): LMB is up, MMB is up, RMB is up
[bootmenu] Input handler installed
[bootmenu] Waiting 5 ticks for user input
[bootmenu] No user input detected within wait loop
[bootmenu] Removed input handler
[bootmenu] PeekQualifier(): LMB is up, MMB is up, RMB is up
[bootmenu] Continuing normal boot sequence
[strap] Begin
[strap] Skipping non-boot node 0x6FFA83E2 (type = 111)
[strap] Device node "DH0" is boot point device
[strap] Handover to dos for "DH0"

[DOS] NOTE: Kernel debug level detected as 7
fdmain.c/76 Task "massstorage.usbfd" [fdmain()] =>enter
fdmain.c/98 Task "massstorage.usbfd" [fdmain()] =>Waiting for the attachment message 0x6F957300 to be replied
[DOS] Bootnode from expansion->mountlist is device name "DH0"
[DOS] BootCli process started, initial doslib create task now ending.

dev_open(unitNumber=0) [DH0/NGFileSystem 54.34 ]
dev_open(unitNumber=0) [DH1/NGFileSystem 54.34 ]
dev_open(unitNumber=0) [DH2/NGFileSystem 54.34 ]
[RAM] Handler has started successfully. [DebugLevel=7]
[DOS] Sending DeathSignal to task 0x6F8E1030 by #22 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #24 ('DST watcher')
[DOS] Sending DeathSignal to task 0x6C80D050 by #25 ('DST watcher')
fdmain.c/101 Task "massstorage.usbfd" [fdmain()] =>Attachment message 0x6f957300 was replied
fdmain.c/128 Task "massstorage.usbfd" [fdmain()] =>leave
[DOS] Sending DeathSignal to task 0x6C80D050 by #27 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #28 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #29 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #30 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #31 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #32 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #33 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #34 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #35 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #36 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #37 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #38 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #39 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #40 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #41 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #42 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #43 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #44 ('datatypes.library')
[DOS] Sending DeathSignal to task 0x6C80D050 by #45 ('datatypes.library')
Dump of context at 0xEFF22BA0
Trap type: DSI exception
Exception Syndrome Register (ESR): 0x00800000
Machine State (raw): 0x0002D030
Machine State (verbose): [Critical Ints on] [ExtInt on] [User] [IAT on] [DAT on]
DSISR: 00800000  DAR: 0000001E
No matching page found
Temporary stack trace:
#0: 0x7FD76D7C
#1: 0x7FD785A8
#2: 0x7FD78C44
#3: in module dos.library.kmod+0x000255C8 (0x01921248)
#4: in module kernel+0x0003F660 (0x0183F660)
#5: in module kernel+0x0003F6A8 (0x0183F6A8)
#6: 0x00000000

Crashed process: HID Keyboard (0x6CBD8080)
DSI verbose error description: Page not found in hash table (page fault)
Access not allowed by page protection (protection violation)
Access was a load operation
 0: 00000001 6CBA7EA0 00000002 6D975390 6F832D30 0002D030 022D4E14 022D4E84
 8: 6DCDC340 6D97541C 00000000 00000000 22842482 0000000D 6CBECDA4 6CE376D0
16: 02380000 EFF749C0 6CF00000 6C811DD0 6D974B80 6E66C104 6CF037B0 6D975390
24: 6D975390 6CBA7EE8 6E66DD74 80000001 00000400 6FF612C4 6CF00000 6D975390
CR: 24842482   XER: 00000000  CTR: 0181B528  LR: 7FD785A8
DSISR: 00800000  DAR: 0000001E

Disassembly of crash site:
 7FD76D6C: BFA10014   stmw              r29,20(r1)
 7FD76D70: 3FC06CF0   lis               r30,27888
 7FD76D74: 7C7F1B78   mr                r31,r3
 7FD76D78: 816302DC   lwz               r11,732(r3)
>7FD76D7C: 980B001E   stb               r0,30(r11)
 7FD76D80: 38000017   li                r0,23
 7FD76D84: B00B001C   sth               r0,28(r11)
 7FD76D88: 38000014   li                r0,20
 7FD76D8C: 815E3384   lwz               r10,13188(r30)
 7FD76D90: 808302DC   lwz               r4,732(r3)

Kernel command line: serial munge debuglevel=7

Registers pointing to code:
r0 : module L:launch-handler at 0x00000001 (section 0 @ 0xFFFFFFDC)
r6 : native kernel module kernel+0x00ad4e14
r7 : native kernel module kernel+0x00ad4e84
r16: native kernel module graphics.library.kmod+0x007bc460
r21: module DEVS:USB/fd/hid.usbfd at 0x6E66C104 (section 6 @ 0xE0)
r26: module DEVS:USB/fd/hid.usbfd at 0x6E66DD74 (section 6 @ 0x1D50)
ip : module DEVS:USB/fd/hid.usbfd at 0x7FD76D7C (section 5 @ 0x6D58)
lr : module DEVS:USB/fd/hid.usbfd at 0x7FD785A8 (section 5 @ 0x8584)
ctr: native kernel module kernel+0x0001b528

Stack trace:
(0x6CBA7EA0) module DEVS:USB/fd/hid.usbfd at 0x7FD76D7C (section 5 @ 0x6D58)
(0x6CBA7EC0) module DEVS:USB/fd/hid.usbfd at 0x7FD785A8 (section 5 @ 0x8584)
(0x6CBA7F40) module DEVS:USB/fd/hid.usbfd at 0x7FD78C44 (section 5 @ 0x8C20)
(0x6CBA7F90) native kernel module dos.library.kmod+0x000255c8
(0x6CBA7FC0) native kernel module kernel+0x0003f660
(0x6CBA7FD0) native kernel module kernel+0x0003f6a8

Disassembly of crash site:
 7FD76D6C: BFA10014   stmw              r29,20(r1)
 7FD76D70: 3FC06CF0   lis               r30,27888
 7FD76D74: 7C7F1B78   mr                r31,r3
 7FD76D78: 816302DC   lwz               r11,732(r3)
>7FD76D7C: 980B001E   stb               r0,30(r11)
 7FD76D80: 38000017   li                r0,23
 7FD76D84: B00B001C   sth               r0,28(r11)
 7FD76D88: 38000014   li                r0,20
 7FD76D8C: 815E3384   lwz               r10,13188(r30)
 7FD76D90: 808302DC   lwz               r4,732(r3)
Stack pointer (0x6CBA7EA0) is inside bounds
Redzone is OK (4)

68k register dump
DATA: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
ADDR: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Page information:
Page not found


CMI8738 found! :-)
CS4281 DRIVERINIT
No card present.
Open NotificationServer
No Envy24 found! :-(
[DOS] Entering Call_FinalCode() function for process #93 ('ClipViewer')
Open Calendar
Open Clock
Open ramlib
No FM801 found! :-(
No SB128 found! :-(
No SOLO_ONE found! :-(
No cards found! :-(
Error looks to be similar to Kas1e's.

Let me know if I can provide anything else.

Regards
Doug
User avatar
tonyw
AmigaOS Core Developer
AmigaOS Core Developer
Posts: 1479
Joined: Wed Mar 09, 2011 1:36 pm
Location: Sydney, Australia

Re: Keyboard issue

Post by tonyw »

Thanks for those logs, I'll write a BZ for the HID...BZ 9860.
cheers
tony
Post Reply