This list is closed, nobody may subscribe to it.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(8) |
Jun
(40) |
Jul
(72) |
Aug
(898) |
Sep
(511) |
Oct
(477) |
Nov
(332) |
Dec
(563) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(952) |
Feb
(777) |
Mar
(546) |
Apr
(481) |
May
(465) |
Jun
(216) |
Jul
(115) |
Aug
(107) |
Sep
(83) |
Oct
(143) |
Nov
(89) |
Dec
(116) |
2004 |
Jan
(31) |
Feb
(49) |
Mar
(27) |
Apr
(16) |
May
(70) |
Jun
(37) |
Jul
(15) |
Aug
(28) |
Sep
(50) |
Oct
(30) |
Nov
(32) |
Dec
(13) |
2005 |
Jan
(12) |
Feb
(14) |
Mar
(11) |
Apr
(9) |
May
(27) |
Jun
(29) |
Jul
(32) |
Aug
(21) |
Sep
(10) |
Oct
(23) |
Nov
(23) |
Dec
(13) |
2006 |
Jan
(41) |
Feb
(18) |
Mar
(11) |
Apr
(7) |
May
(8) |
Jun
|
Jul
(9) |
Aug
(13) |
Sep
(18) |
Oct
(29) |
Nov
(11) |
Dec
|
2007 |
Jan
(4) |
Feb
(6) |
Mar
(6) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(6) |
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
(1) |
Mar
(2) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
(2) |
2009 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
From: Paul D S. <pau...@ho...> - 2011-10-17 12:50:50
|
Apologies if this has already been answered but I can't figure out how to search the archives. I have an XBox running ye olde kernel (2.4) and it's probably time I slowly and carefully updated it - but how? Are there any nice "how tos" around on how to bring the kernel and rest of Linux up to something approaching recent Debian releases? Thanks, Paul DS. |
From: Rob G. <rgg...@gm...> - 2009-07-03 07:12:58
|
Has anyone developed working drivers for this version of Xorg yet? I tried compiling the nvxbox source available on sourceforge CVS but got no joy. Rob |
From: dimitri <dim...@gm...> - 2009-01-04 00:21:20
|
Hi, i've a problem with cromwell-2.4 and a xbox-1.0. i attached a wireless usb dongle (Bus 001 Device 003: ID 0ace:1215 ZyDAS WLA-54L WiFi) to xbox. when it boots cromwell-2.4 bios, it freezes post detecting hd and cdrom. if i boot with usb dongle not connected, it boots normally. do i've include something (or exclude usb detect process in cromwell)? i've downloaded cvs tree and i've built it with a chroot ambient for debian lenny i386 (gcc-3.4). i've loaded 2.41-dev into xbox but problem seems to be present also. waiting your response, best regards. - Dimitri |
From: <bbo...@fr...> - 2008-12-11 04:19:23
|
Has anybody ported the xir.c USB DVD remote driver to work with a 2.6 era kernel? If so, could you send me the patch or zipped source files? Thanks, Brian |
From: Micah H. <ha...@gm...> - 2008-10-05 04:39:36
|
Hello, I was wondering why the xpad trigger buttons don't have digital mappings like some of the other buttons?I added BTN_TL and BTN_TR and it seems to work alright so I why aren't these in there by default? btw great driver, very handy. -micah |
From: Jukka A. <juk...@ik...> - 2008-04-17 00:11:29
|
Ronald C.F. Antony wrote: > b) we DO use floating point in drivers/video/xbox/conexant.c > > Now if all the other screen drivers can figure out the parameters w/o > floating point calcuations, why does the XBOX chip need such tricks? > First, all screen dimensions are integer in the first place. Second, > even things like clock rates, etc. can be made integer by getting the > proper unit e.g. 0.3 seconds are 300ms. > > If the code were a bit more readable/documented, then I'd take it > upon myself to convert that into integer math, but given the > potential to fry screens and graphic chips with the wrong data in the > registers, that's not something I want to debug without having a > clear understanding of what is supposed to be going on. :) > > The amount and kind of math done in floating point seems trivial, but > it's not clear to me what precision is required and what some of > these parameters mean, because fields in some structs are not > documented, etc. > > Any takers for either explaining me the details or converting this to > integer math? It seems odd that for one such module we run afoul of > the rules. The floating-point calculations are probably there just because setting up the video encoder is hairy business and it was the easiest way to go forward with trying to get control of the thing. Those who last touched the code were probably just glad to get it working and obviously lost the interest in optimizing the calculations once the pieces fell in place. In order to understand the Conexant CX25871 calculations, you need to read the data sheet / programming documentation. This document has been available from Conexant as a free download - a PDF file. However, Conexant seems to have reorganized their site (again), and I couldn't find the document now. You can get it from me, though, if you need it. -- znark |
From: Roderick B. G. <rod...@gm...> - 2008-03-07 19:06:25
|
I've done some additional digging and where it fails below usb_fill_int_urb(xpad->irq_in, udev, usb_rcvintpipe(udev, ep_irq_in->bEndpointAddress), xpad->idata, XPAD_PKT_LEN, xpad_irq_in, xpad, ep_irq_in->bInterval); I've added in some test code (diff below) just before it. The code bails if ep_irq_in is NULL (undefined): @@ -554,6 +556,13 @@ /* init input URB for USB INT transfer from device */ ep_irq_in = &intf->cur_altsetting->endpoint[0].desc; + + // Testing for valid input + if (!ep_irq_in) { + info("ep_irq_in undefined"); + goto fail2; + } + usb_fill_int_urb(xpad->irq_in, udev, usb_rcvintpipe(udev, ep_irq_in->bEndpointAddress), xpad->idata, XPAD_PKT_LEN, xpad_irq_in, As you can see in the dmesg output below: [ 104.270277] input: Mad Catz Beat Pad as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.0/input/input10 [ 104.285890] input: Mad Catz Beat Pad as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.1/input/input11 [ 104.298252] input: Mad Catz Beat Pad as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.2/input/input12 [ 104.304010] /home/rgreening/xpad/xpad.c: ep_irq_in undefined [ 104.304558] xpad: probe of 1-1:1.3 failed with error -12 It appears that the call to "ep_irq_in = &intf->cur_altsetting->endpoint[0].desc;" is returning NULL is not caught by the code. Therefore it crashes. I guess there's some additional checking and logic that needs to occur there, though I am at a loss as to exactly what needs to be done. Suggestions? On Friday 07 March 2008 2:41:34 pm Roderick B. Greening wrote: > I have an unrecognized controller. It's a Mad Catz Beat Pad. > > I have modified the xpad.c (from version 0.1.7 in CVS) to attempt to > support this controller. No luck. I can get it to start and perform the > xpad_probe, at which point it picks up the inputs (3 of them) and then > promptly causes the kernel to OOPS with a NULL reference. > > Here's the diff of my change: > > --- xpad.c.orig 2008-03-06 17:09:03.000000000 -0330 > +++ xpad.c 2008-03-07 10:59:29.000000000 -0330 > @@ -104,6 +104,7 @@ > { 0x0738, 0x4540, "Mad Catz Beat Pad", GAMEPAD_XBOX_MAT }, > { 0x0738, 0x4556, "Mad Catz Lynx Wireless Controller", GAMEPAD_XBOX > }, { 0x0738, 0x4716, "Mad Catz Xbox 360 Controller", GAMEPAD_XBOX360 }, + > { 0x0738, 0x4740, "Mad Catz Beat Pad", GAMEPAD_XBOX_MAT }, { 0x0738, > 0x6040, "Mad Catz Beat Pad Pro", GAMEPAD_XBOX_MAT }, { 0x0c12, 0x8802, > "Zeroplus Xbox Controller", GAMEPAD_XBOX }, { 0x0c12, 0x8810, "Zeroplus > Xbox Controller", GAMEPAD_XBOX }, @@ -161,6 +162,7 @@ > { USB_DEVICE(0x045e, 0x028e) }, /* Xbox 360 Controller */ > { USB_DEVICE(0x045e, 0x0291) }, /* Xbox 360 Wireless Controller */ > { USB_DEVICE(0x045e, 0x0719) }, /* Xbox 360 Wireless PC Receiver */ > + { USB_DEVICE(0x0738, 0x4740) }, /* Mad Catz Beat Pad */ > { USB_DEVICE(0x1430, 0x4748) }, /* RedOctane Guitar Hero X-plorer > */ { } > }; > > > Here's the output of lsusb -vv -d 0x0738:0x4740 > > Bus 001 Device 002: ID 0738:4740 Mad Catz, Inc. > Device Descriptor: > bLength 18 > bDescriptorType 1 > bcdUSB 2.00 > bDeviceClass 255 Vendor Specific Class > bDeviceSubClass 255 Vendor Specific Subclass > bDeviceProtocol 255 Vendor Specific Protocol > bMaxPacketSize0 8 > idVendor 0x0738 Mad Catz, Inc. > idProduct 0x4740 > bcdDevice 31.20 > iManufacturer 1 Mad Catz, Inc. > iProduct 2 Beat Pad > iSerial 3 4C7CD68 > bNumConfigurations 1 > Configuration Descriptor: > bLength 9 > bDescriptorType 2 > wTotalLength 153 > bNumInterfaces 4 > bConfigurationValue 1 > iConfiguration 0 > bmAttributes 0xa0 > (Bus Powered) > Remote Wakeup > MaxPower 500mA > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 0 > bAlternateSetting 0 > bNumEndpoints 2 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 93 > bInterfaceProtocol 1 > iInterface 0 > ** UNRECOGNIZED: 11 21 10 01 05 25 81 14 03 03 03 04 13 02 08 03 03 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x81 EP 1 IN > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x0020 1x 32 bytes > bInterval 4 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x02 EP 2 OUT > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x0020 1x 32 bytes > bInterval 8 > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 1 > bAlternateSetting 0 > bNumEndpoints 4 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 93 > bInterfaceProtocol 3 > iInterface 0 > ** UNRECOGNIZED: 1b 21 00 01 01 01 83 40 01 04 20 16 85 00 00 00 00 > 00 00 16 05 00 00 00 00 00 00 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x83 EP 3 IN > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x0020 1x 32 bytes > bInterval 2 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x04 EP 4 OUT > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x0020 1x 32 bytes > bInterval 4 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x85 EP 5 IN > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x0020 1x 32 bytes > bInterval 64 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x05 EP 5 OUT > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x0020 1x 32 bytes > bInterval 16 > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 2 > bAlternateSetting 0 > bNumEndpoints 1 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 93 > bInterfaceProtocol 2 > iInterface 0 > ** UNRECOGNIZED: 09 21 00 01 01 22 86 07 00 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x86 EP 6 IN > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x0020 1x 32 bytes > bInterval 16 > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 3 > bAlternateSetting 0 > bNumEndpoints 0 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 253 > bInterfaceProtocol 19 > iInterface 4 > ** UNRECOGNIZED: 06 41 00 01 01 03 > Device Status: 0x0002 > (Bus Powered) > Remote Wakeup Enabled > > If I modprobe the driver with the added info, it segfaults. > > Here is the output from /proc/bus/input/devices after I modprobe the > driver: > > I: Bus=0003 Vendor=0738 Product=4740 Version=3120 > N: Name="Mad Catz Beat Pad" > P: Phys=usb-0000:00:1d.0-1/input0 > S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.0/input/input10 > U: Uniq= > H: Handlers=event10 > B: EV=3 > B: KEY=81b0000 40000f 0 0 0 0 0 0 0 0 > > I: Bus=0003 Vendor=0738 Product=4740 Version=3120 > N: Name="Mad Catz Beat Pad" > P: Phys=usb-0000:00:1d.0-1/input0 > S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.1/input/input11 > U: Uniq= > H: Handlers=event11 > B: EV=3 > B: KEY=81b0000 40000f 0 0 0 0 0 0 0 0 > > I: Bus=0003 Vendor=0738 Product=4740 Version=3120 > N: Name="Mad Catz Beat Pad" > P: Phys=usb-0000:00:1d.0-1/input0 > S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.2/input/input12 > U: Uniq= > H: Handlers=event12 > B: EV=3 > B: KEY=81b0000 40000f 0 0 0 0 0 0 0 0 > > Here is the OOPS info from the fault: > > [ 1821.884921] input: Mad Catz Beat Pad > as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.0/input/input10 > [ 1821.912849] input: Mad Catz Beat Pad > as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.1/input/input11 > [ 1821.928805] input: Mad Catz Beat Pad > as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.2/input/input12 > [ 1821.944820] BUG: unable to handle kernel NULL pointer dereference at > virtual address 00000006 > [ 1821.944827] printing eip: f8f60a5c *pde = 00000000 > [ 1821.944832] Oops: 0000 [#1] SMP > [ 1821.944836] Modules linked in: xpad snd_rtctimer binfmt_misc af_packet > pktcdvd i915 drm ppdev ipv6 acpi_cpufreq cpufreq_stats cpufreq_conservative > cpufreq_powersave cpufreq_userspace cpufreq_ondemand > freq_table container dock sbs sbshc iptable_filter ip_tables x_tables > aes_i586 dm_crypt dm_mod berry_charge parport_pc lp parport acerhk usbhid > hid arc4 ecb blkcipher joydev pcmcia snd_hda_intel snd_pc > m_oss snd_mixer_oss snd_pcm snd_page_alloc snd_hwdep battery snd_seq_dummy > iwl3945 ac iwlwifi_mac80211 cfg80211 snd_seq_oss sdhci video output > tifm_7xx1 snd_seq_midi snd_rawmidi mmc_core tifm_core yenta > _socket rsrc_nonstatic pcmcia_core snd_seq_midi_event snd_seq snd_timer > snd_seq_device button snd iTCO_wdt iTCO_vendor_support psmouse soundcore > serio_raw intel_agp agpgart acer_acpi led_class evdev pcs > pkr shpchp pci_hotplug wmi_acer ext3 jbd mbcache sg sr_mod cdrom sd_mod > pata_acpi ata_piix ata_generic libata scsi_mod ehci_hcd r8169 uhci_hcd > usbcore thermal processor fan fuse > [ 1821.944908] > [ 1821.944911] Pid: 23723, comm: modprobe Not tainted (2.6.24-11-generic > #1) [ 1821.944914] EIP: 0060:[<f8f60a5c>] EFLAGS: 00010286 CPU: 1 > [ 1821.944921] EIP is at xpad_probe+0x23c/0x4b0 [xpad] > [ 1821.944923] EAX: 00000000 EBX: ef67d214 ECX: f74f0080 EDX: 00000002 > [ 1821.944926] ESI: 00000016 EDI: f71ef000 EBP: f066d400 ESP: ea8adda8 > [ 1821.944928] DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 > [ 1821.944932] Process modprobe (pid: 23723, ti=ea8ac000 task=eff49680 > task.ti=ea8ac000) > [ 1821.944934] Stack: ef67d214 00000041 f8f60fe3 f7d1ace4 f066d404 ef81761c > ef817600 01f625a4 > [ 1821.944941] ef67d200 f8f625a4 ef817600 f8f625a4 ef817600 f8f62480 > f066d400 f88a15a9 > [ 1821.944948] 00000000 ef81761c ef817694 00000000 ef81761c 00000000 > f8f624b4 f88ba500 > [ 1821.944954] Call Trace: > [ 1821.944970] [<f88a15a9>] usb_probe_interface+0xb9/0x140 [usbcore] > [ 1821.945007] [<c027ea28>] driver_probe_device+0x88/0x190 > [ 1821.945022] [<c027ec9e>] __driver_attach+0x9e/0xa0 > [ 1821.945032] [<c027de5b>] bus_for_each_dev+0x3b/0x60 > [ 1821.945044] [<c027e8a6>] driver_attach+0x16/0x20 > [ 1821.945048] [<c027ec00>] __driver_attach+0x0/0xa0 > [ 1821.945052] [<c027e1da>] bus_add_driver+0x8a/0x1e0 > [ 1821.945064] [<f88a10ee>] usb_register_driver+0x8e/0x110 [usbcore] > [ 1821.945096] [<f8a49018>] usb_xpad_init+0x18/0x39 [xpad] > [ 1821.945100] [<c0146547>] blocking_notifier_call_chain+0x17/0x20 > [ 1821.945110] [<c01516c6>] sys_init_module+0x126/0x19c0 > [ 1821.945151] [<c01053c2>] sysenter_past_esp+0x6b/0xa9 > [ 1821.945169] ======================= > [ 1821.945170] Code: 00 98 f0 0f ab 47 1c 83 c2 01 0f b7 84 12 ec 0e f6 f8 > 66 85 c0 79 ea 8b 54 24 18 8b 42 04 8b 54 24 20 8b 40 0c 8b 4a 0c 8b 55 00 > <0f> b6 70 06 0f b6 40 02 c1 e2 08 c1 e0 0f 09 c2 8b 44 24 20 81 > [ 1821.945204] EIP: [<f8f60a5c>] xpad_probe+0x23c/0x4b0 [xpad] SS:ESP > 0068:ea8adda8 > [ 1821.945211] ---[ end trace 4b99b6c629b69949 ]--- > > I have tried this on two different systems with two different kernels. This > system is Hardy Heron (latest development release from Ubuntu) running > kernel 2.6.24. I also tried it on my wifes system, which is Gutsy Gibbon > (7.10 Ubuntu) running kernel 2.6.22. Both exhibit the same problem. > > If I do not apply the patch, the controller is not picked up. Is there some > default thing I can test here? > > If only apply "{ 0x0738, 0x4740, "Mad Catz Beat Pad", GAMEPAD_XBOX_MAT },", > then it is still not picked up. > > Anything you can do to assist would be greatly appreciated. > > Also, it appears as though this driver is not updated into later kernels. > The default in 2.6.24 is version 0.0.6 where it should be 0.1.7 (seeing as > it's been 9 months since that version was released). Do you pass this along > to upstream kernel? > > I've attmpted to isolate exactly where in the code it fails. After some > further debugging, i'vediscovered that it succesfully gets input 10, 11 and > 12 (3 successive calls to xpad_probe), it then attmpts to get the next > input and fails (this is the fourth call to xpad_probe). > > It crashes here in the code: > > usb_fill_int_urb(xpad->irq_in, udev, > usb_rcvintpipe(udev, ep_irq_in->bEndpointAddress), > xpad->idata, XPAD_PKT_LEN, xpad_irq_in, > xpad, ep_irq_in->bInterval); > > I'm not sure I can offer any additional assistance, as I am not familiar > with the code nor the intent, only that for some reason this causes a NULL > reference and crashes the kernel, but only on the fourth iteration. Perhaps > one of the parameters to the call to usb_fill_int_urb is being passed a > NULL or some other invalid value causing usb_int_fill_urb to fail. > > I am willing to assist further in debugging, just let me know what to test. > > Cheers, > > Rod. |
From: Roderick B. G. <rod...@gm...> - 2008-03-07 18:11:46
|
I have an unrecognized controller. It's a Mad Catz Beat Pad. I have modified the xpad.c (from version 0.1.7 in CVS) to attempt to support this controller. No luck. I can get it to start and perform the xpad_probe, at which point it picks up the inputs (3 of them) and then promptly causes the kernel to OOPS with a NULL reference. Here's the diff of my change: --- xpad.c.orig 2008-03-06 17:09:03.000000000 -0330 +++ xpad.c 2008-03-07 10:59:29.000000000 -0330 @@ -104,6 +104,7 @@ { 0x0738, 0x4540, "Mad Catz Beat Pad", GAMEPAD_XBOX_MAT }, { 0x0738, 0x4556, "Mad Catz Lynx Wireless Controller", GAMEPAD_XBOX }, { 0x0738, 0x4716, "Mad Catz Xbox 360 Controller", GAMEPAD_XBOX360 }, + { 0x0738, 0x4740, "Mad Catz Beat Pad", GAMEPAD_XBOX_MAT }, { 0x0738, 0x6040, "Mad Catz Beat Pad Pro", GAMEPAD_XBOX_MAT }, { 0x0c12, 0x8802, "Zeroplus Xbox Controller", GAMEPAD_XBOX }, { 0x0c12, 0x8810, "Zeroplus Xbox Controller", GAMEPAD_XBOX }, @@ -161,6 +162,7 @@ { USB_DEVICE(0x045e, 0x028e) }, /* Xbox 360 Controller */ { USB_DEVICE(0x045e, 0x0291) }, /* Xbox 360 Wireless Controller */ { USB_DEVICE(0x045e, 0x0719) }, /* Xbox 360 Wireless PC Receiver */ + { USB_DEVICE(0x0738, 0x4740) }, /* Mad Catz Beat Pad */ { USB_DEVICE(0x1430, 0x4748) }, /* RedOctane Guitar Hero X-plorer */ { } }; Here's the output of lsusb -vv -d 0x0738:0x4740 Bus 001 Device 002: ID 0738:4740 Mad Catz, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 255 Vendor Specific Class bDeviceSubClass 255 Vendor Specific Subclass bDeviceProtocol 255 Vendor Specific Protocol bMaxPacketSize0 8 idVendor 0x0738 Mad Catz, Inc. idProduct 0x4740 bcdDevice 31.20 iManufacturer 1 Mad Catz, Inc. iProduct 2 Beat Pad iSerial 3 4C7CD68 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 153 bNumInterfaces 4 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 500mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 93 bInterfaceProtocol 1 iInterface 0 ** UNRECOGNIZED: 11 21 10 01 05 25 81 14 03 03 03 04 13 02 08 03 03 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0020 1x 32 bytes bInterval 4 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0020 1x 32 bytes bInterval 8 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 4 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 93 bInterfaceProtocol 3 iInterface 0 ** UNRECOGNIZED: 1b 21 00 01 01 01 83 40 01 04 20 16 85 00 00 00 00 00 00 16 05 00 00 00 00 00 00 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0020 1x 32 bytes bInterval 2 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x04 EP 4 OUT bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0020 1x 32 bytes bInterval 4 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x85 EP 5 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0020 1x 32 bytes bInterval 64 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x05 EP 5 OUT bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0020 1x 32 bytes bInterval 16 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 93 bInterfaceProtocol 2 iInterface 0 ** UNRECOGNIZED: 09 21 00 01 01 22 86 07 00 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x86 EP 6 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0020 1x 32 bytes bInterval 16 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 3 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 253 bInterfaceProtocol 19 iInterface 4 ** UNRECOGNIZED: 06 41 00 01 01 03 Device Status: 0x0002 (Bus Powered) Remote Wakeup Enabled If I modprobe the driver with the added info, it segfaults. Here is the output from /proc/bus/input/devices after I modprobe the driver: I: Bus=0003 Vendor=0738 Product=4740 Version=3120 N: Name="Mad Catz Beat Pad" P: Phys=usb-0000:00:1d.0-1/input0 S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.0/input/input10 U: Uniq= H: Handlers=event10 B: EV=3 B: KEY=81b0000 40000f 0 0 0 0 0 0 0 0 I: Bus=0003 Vendor=0738 Product=4740 Version=3120 N: Name="Mad Catz Beat Pad" P: Phys=usb-0000:00:1d.0-1/input0 S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.1/input/input11 U: Uniq= H: Handlers=event11 B: EV=3 B: KEY=81b0000 40000f 0 0 0 0 0 0 0 0 I: Bus=0003 Vendor=0738 Product=4740 Version=3120 N: Name="Mad Catz Beat Pad" P: Phys=usb-0000:00:1d.0-1/input0 S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.2/input/input12 U: Uniq= H: Handlers=event12 B: EV=3 B: KEY=81b0000 40000f 0 0 0 0 0 0 0 0 Here is the OOPS info from the fault: [ 1821.884921] input: Mad Catz Beat Pad as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.0/input/input10 [ 1821.912849] input: Mad Catz Beat Pad as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.1/input/input11 [ 1821.928805] input: Mad Catz Beat Pad as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.2/input/input12 [ 1821.944820] BUG: unable to handle kernel NULL pointer dereference at virtual address 00000006 [ 1821.944827] printing eip: f8f60a5c *pde = 00000000 [ 1821.944832] Oops: 0000 [#1] SMP [ 1821.944836] Modules linked in: xpad snd_rtctimer binfmt_misc af_packet pktcdvd i915 drm ppdev ipv6 acpi_cpufreq cpufreq_stats cpufreq_conservative cpufreq_powersave cpufreq_userspace cpufreq_ondemand freq_table container dock sbs sbshc iptable_filter ip_tables x_tables aes_i586 dm_crypt dm_mod berry_charge parport_pc lp parport acerhk usbhid hid arc4 ecb blkcipher joydev pcmcia snd_hda_intel snd_pc m_oss snd_mixer_oss snd_pcm snd_page_alloc snd_hwdep battery snd_seq_dummy iwl3945 ac iwlwifi_mac80211 cfg80211 snd_seq_oss sdhci video output tifm_7xx1 snd_seq_midi snd_rawmidi mmc_core tifm_core yenta _socket rsrc_nonstatic pcmcia_core snd_seq_midi_event snd_seq snd_timer snd_seq_device button snd iTCO_wdt iTCO_vendor_support psmouse soundcore serio_raw intel_agp agpgart acer_acpi led_class evdev pcs pkr shpchp pci_hotplug wmi_acer ext3 jbd mbcache sg sr_mod cdrom sd_mod pata_acpi ata_piix ata_generic libata scsi_mod ehci_hcd r8169 uhci_hcd usbcore thermal processor fan fuse [ 1821.944908] [ 1821.944911] Pid: 23723, comm: modprobe Not tainted (2.6.24-11-generic #1) [ 1821.944914] EIP: 0060:[<f8f60a5c>] EFLAGS: 00010286 CPU: 1 [ 1821.944921] EIP is at xpad_probe+0x23c/0x4b0 [xpad] [ 1821.944923] EAX: 00000000 EBX: ef67d214 ECX: f74f0080 EDX: 00000002 [ 1821.944926] ESI: 00000016 EDI: f71ef000 EBP: f066d400 ESP: ea8adda8 [ 1821.944928] DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 [ 1821.944932] Process modprobe (pid: 23723, ti=ea8ac000 task=eff49680 task.ti=ea8ac000) [ 1821.944934] Stack: ef67d214 00000041 f8f60fe3 f7d1ace4 f066d404 ef81761c ef817600 01f625a4 [ 1821.944941] ef67d200 f8f625a4 ef817600 f8f625a4 ef817600 f8f62480 f066d400 f88a15a9 [ 1821.944948] 00000000 ef81761c ef817694 00000000 ef81761c 00000000 f8f624b4 f88ba500 [ 1821.944954] Call Trace: [ 1821.944970] [<f88a15a9>] usb_probe_interface+0xb9/0x140 [usbcore] [ 1821.945007] [<c027ea28>] driver_probe_device+0x88/0x190 [ 1821.945022] [<c027ec9e>] __driver_attach+0x9e/0xa0 [ 1821.945032] [<c027de5b>] bus_for_each_dev+0x3b/0x60 [ 1821.945044] [<c027e8a6>] driver_attach+0x16/0x20 [ 1821.945048] [<c027ec00>] __driver_attach+0x0/0xa0 [ 1821.945052] [<c027e1da>] bus_add_driver+0x8a/0x1e0 [ 1821.945064] [<f88a10ee>] usb_register_driver+0x8e/0x110 [usbcore] [ 1821.945096] [<f8a49018>] usb_xpad_init+0x18/0x39 [xpad] [ 1821.945100] [<c0146547>] blocking_notifier_call_chain+0x17/0x20 [ 1821.945110] [<c01516c6>] sys_init_module+0x126/0x19c0 [ 1821.945151] [<c01053c2>] sysenter_past_esp+0x6b/0xa9 [ 1821.945169] ======================= [ 1821.945170] Code: 00 98 f0 0f ab 47 1c 83 c2 01 0f b7 84 12 ec 0e f6 f8 66 85 c0 79 ea 8b 54 24 18 8b 42 04 8b 54 24 20 8b 40 0c 8b 4a 0c 8b 55 00 <0f> b6 70 06 0f b6 40 02 c1 e2 08 c1 e0 0f 09 c2 8b 44 24 20 81 [ 1821.945204] EIP: [<f8f60a5c>] xpad_probe+0x23c/0x4b0 [xpad] SS:ESP 0068:ea8adda8 [ 1821.945211] ---[ end trace 4b99b6c629b69949 ]--- I have tried this on two different systems with two different kernels. This system is Hardy Heron (latest development release from Ubuntu) running kernel 2.6.24. I also tried it on my wifes system, which is Gutsy Gibbon (7.10 Ubuntu) running kernel 2.6.22. Both exhibit the same problem. If I do not apply the patch, the controller is not picked up. Is there some default thing I can test here? If only apply "{ 0x0738, 0x4740, "Mad Catz Beat Pad", GAMEPAD_XBOX_MAT },", then it is still not picked up. Anything you can do to assist would be greatly appreciated. Also, it appears as though this driver is not updated into later kernels. The default in 2.6.24 is version 0.0.6 where it should be 0.1.7 (seeing as it's been 9 months since that version was released). Do you pass this along to upstream kernel? I've attmpted to isolate exactly where in the code it fails. After some further debugging, i'vediscovered that it succesfully gets input 10, 11 and 12 (3 successive calls to xpad_probe), it then attmpts to get the next input and fails (this is the fourth call to xpad_probe). It crashes here in the code: usb_fill_int_urb(xpad->irq_in, udev, usb_rcvintpipe(udev, ep_irq_in->bEndpointAddress), xpad->idata, XPAD_PKT_LEN, xpad_irq_in, xpad, ep_irq_in->bInterval); I'm not sure I can offer any additional assistance, as I am not familiar with the code nor the intent, only that for some reason this causes a NULL reference and crashes the kernel, but only on the fourth iteration. Perhaps one of the parameters to the call to usb_fill_int_urb is being passed a NULL or some other invalid value causing usb_int_fill_urb to fail. I am willing to assist further in debugging, just let me know what to test. Cheers, Rod. |
From: Martin E. <mar...@gm...> - 2008-02-02 13:22:09
|
I just downloaded today's CVS and built it in an attempt to get etherboot going. I have not been able to get xromwell to etherboot in either 2.40 (release) or 2.41-dev Feb 2. The former tries forever to get an address via DHCP, which works fine everywhere but here. The latter hangs while trying to display the first icon, or so it appears. I'm not sure how to debug that. Had to add -fno-stack-protector (IIRC) to the CFLAGS for etherboot to get it to build at all. Built on Ubuntu Gutsy... Does anyone have a working etherbooting xromwell xbe? Does such a thing exist? I haven't really heard of anyone with an unmodified cromwell successfully etherbooting anything, but I've seen lots of complaints about it not working... Do I just need to build it with an antique GCC or something? |
From: Ivo A. ( [K. ) <knu...@gm...> - 2007-08-06 13:53:54
|
On 8/6/07, Daniel <yel...@or...> wrote: > > > im not too worried about it not working with fatx as i never use it > i just want an up to date distro that works with mech Installer as most > don't seam to any more eg X-DSL, GentooX was also gonna try out this as > well http://elisa.fluendo.com/ Elisa is very nice, but it currently needs 3d hardware to work properly (otherwise it's just too slow), and afaik there's no 3d on linux on the xbox. (I think it's possible, tough, now that the nouveau project exists to add support for the nvidia graphics chip that the xbox uses.) Ivo |
From: Daniel <yel...@or...> - 2007-08-06 13:08:29
|
Hi, > The distro xUbuntu is not simply a version of XUbuntu. > > Because xUbuntu is worked out of a console version. > Then the graphical environment was activated. > To get a small desktop environment packages of all repositories was > integrated. > Mr. Hucek created the distro Xebian as a live disk and so did I. > > Then Ubuntu community adopted the conception of live disk to dapper and > feisty. > > So you may think, xUbuntu (with kernel 2.4.32) uses feisty packages. > > ---------- > > The founders of xbox-linux installed successfully linux on xbox360 and > closed development for first Xbox. > I developed xUbuntu (Ubuntu Dapper) for myself with a kernel 2.6.16-20-xbox > and never published it. The fatx driver works with kernel 2.6.18 but not > with newer kernels. > > Mr. Hucek created mactel-linux. This way it is possible to upgrade my new > xUbuntu (kernel 2.6.16-20) with a mactel-kernel to feisty. > But I believe Mr. Hucek will not be very amused. > > Ciao. > > im not too worried about it not working with fatx as i never use it i just want an up to date distro that works with mech Installer as most don't seam to any more eg X-DSL, GentooX was also gonna try out this as well http://elisa.fluendo.com/ |
From: joojola <jo...@us...> - 2007-08-04 17:31:18
|
Hi, The distro xUbuntu is not simply a version of XUbuntu. Because xUbuntu is worked out of a console version. Then the graphical environment was activated. To get a small desktop environment packages of all repositories was integrated. Mr. Hucek created the distro Xebian as a live disk and so did I. Then Ubuntu community adopted the conception of live disk to dapper and feisty. So you may think, xUbuntu (with kernel 2.4.32) uses feisty packages. ---------- The founders of xbox-linux installed successfully linux on xbox360 and closed development for first Xbox. I developed xUbuntu (Ubuntu Dapper) for myself with a kernel 2.6.16-20-xbox and never published it. The fatx driver works with kernel 2.6.18 but not with newer kernels. Mr. Hucek created mactel-linux. This way it is possible to upgrade my new xUbuntu (kernel 2.6.16-20) with a mactel-kernel to feisty. But I believe Mr. Hucek will not be very amused. Ciao. |
From: Daniel <yel...@or...> - 2007-08-04 11:48:11
|
On Sat, Aug 04, 2007 at 04:53:14AM EST, Daniel wrote: > > is it possible to change to latest kernel? > > or should I just got to 2.4.32? > > It all depends on which distro you are running. As of Ubuntu feisty, you > can only use a 2.6 kernel. running xebian at the moment > > > and just wondering if xUbuntu uses feisty packages? > > No. It hasn't been updated in a long while. > > > kinda want to make a up to date ubuntu style distribution > > for my xbox but if xUbuntu is up to date i could just use that > > Unfortunately, since recent versions of Ubuntu only work with 2.6, > nothing has really been done to make an up to date Ubuntu disc, as > 2.4 is the only kernel that has a good FATX filesystem driver. just thinking about how often I use the driver and realized I have never used it what would take to convert to 2.6 then? ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Xbox-linux-devel mailing list Xbo...@li... https://lists.sourceforge.net/lists/listinfo/xbox-linux-devel |
From: Luke Y. <th...@th...> - 2007-08-03 22:46:30
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Sat, Aug 04, 2007 at 04:53:14AM EST, Daniel wrote: > is it possible to change to latest kernel? > or should I just got to 2.4.32? It all depends on which distro you are running. As of Ubuntu feisty, you can only use a 2.6 kernel. > and just wondering if xUbuntu uses feisty packages? No. It hasn't been updated in a long while. > kinda want to make a up to date ubuntu style distribution > for my xbox but if xUbuntu is up to date i could just use that Unfortunately, since recent versions of Ubuntu only work with 2.6, nothing has really been done to make an up to date Ubuntu disc, as 2.4 is the only kernel that has a good FATX filesystem driver. - -- Luke Yelavich GPG key: 0xD06320CE (http://www.themuso.com/themuso-gpg-key.txt) Email & MSN: th...@th... Jabber: th...@ja... -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFGs7AwjVefwtBjIM4RAkSwAKCtJn4dl9FEs7YItOh8jh88Opz2CQCeO/Z8 tKPQ4BEooJoN//MCyeawoic= =AJ6N -----END PGP SIGNATURE----- |
From: Daniel <yel...@or...> - 2007-08-03 18:55:42
|
is it possible to change to latest kernel? or should I just got to 2.4.32? and just wondering if xUbuntu uses feisty packages? kinda want to make a up to date ubuntu style distribution for my xbox but if xUbuntu is up to date i could just use that |
From: Ronald C.F. A. <rc...@cu...> - 2007-03-04 12:26:13
|
On 3 Mar 2007, at 13:21, Ronald C.F. Antony wrote: > So if Linux automatically uses a math processor, if present, unless > told to do so otherwise, then why on the one hand does the arch/ > i386/Makefile specify in the standard kernel the -msoft-float > compiler flag, and why do we bother removing it for the xbox if the > standard kernel decides it's important to have that option? > > I mean, either the kernel does the right thing, even with this > option, and uses the coprocessor if present, or it doesn't. > Somehow, this seems somewhat contradictory to me. > > I then googled on the subject, and found this here: > > http://uwsg.iu.edu/hypermail/linux/kernel/0409.1/2266.html > >> On Wed, Sep 15, 2004 at 02:14:18AM +0600, Denis Zaitsev wrote: >>> Why this kernel is always compiled with the FP emulation for x86? >>> This is the line from the beginning of arch/i386/Makefile: >>> >>> CFLAGS += -pipe -msoft-float >>> >>> And it's hardcoded, it does not depend on CONFIG_MATH_EMULATION. >>> So, >>> is this just a typo or not? >> >> It catches bogus attempts to use floating point in the kernel by >> making them error at link-time. > > So does this mean the kernel is not supposed to use floating point > at all, and the -msoft-float forces the compiled to create > references to libraries, which then aren't linked and hence cause a > link error to catch this problem? > > If so, shouldn't we stop patching this, and leave the -msoft-float > compiler flag where it is and reduce the size of the xbox-linux > kernel patch a bit? To answer my own question: a) the kernel isn't supposed to use floating point calculations => http://uwsg.iu.edu/hypermail/linux/kernel/0409.1/2534.html To quote: > The problem is that the kernel can't use the FPU. I think this is > because its context is not saved on context switch (userland -> > kernel), so we'd end up messing up the FPU state, and userland > applications would get silly results for calculations with context > switches in between. > > Thus we force gcc to use the library functions for floating point > arith, and since we don't link against gcc's lib, FPU users get a > fancy linker error. > > If you want to use floating point arith inside the kernel, you're > probably wrong wanting it. If you really need it, you can > > a) emulate it using fixed-point math on unsigned long or > b) manually save the FPU state, load your operations into it, operate, > get the results and restore the FPU state. > > I have yet to see someone who really needs to do floating point maths > inside the kernel. b) we DO use floating point in drivers/video/xbox/conexant.c Now if all the other screen drivers can figure out the parameters w/o floating point calcuations, why does the XBOX chip need such tricks? First, all screen dimensions are integer in the first place. Second, even things like clock rates, etc. can be made integer by getting the proper unit e.g. 0.3 seconds are 300ms. If the code were a bit more readable/documented, then I'd take it upon myself to convert that into integer math, but given the potential to fry screens and graphic chips with the wrong data in the registers, that's not something I want to debug without having a clear understanding of what is supposed to be going on. :) The amount and kind of math done in floating point seems trivial, but it's not clear to me what precision is required and what some of these parameters mean, because fields in some structs are not documented, etc. Any takers for either explaining me the details or converting this to integer math? It seems odd that for one such module we run afoul of the rules. Ronald |
From: Ronald C.F. A. <rc...@cu...> - 2007-03-03 18:22:20
|
Subject says it all. One question, though, that I don't get. In the kernel configuration's "Processor type and features" section, the "Math emulation" help states this: > CONFIG_MATH_EMULATION: > > Linux can emulate a math coprocessor (used for floating point > operations) if you don't have one. 486DX and Pentium processors > have a math coprocessor built in, 486SX and 386 do not, unless you > added a 487DX or 387, respectively. (The messages during boot time > can give you some hints here ["man dmesg"].) Everyone needs either > a coprocessor or this emulation. > > If you don't have a math coprocessor, you need to say Y here; if > you say Y here even though you have a coprocessor, the coprocessor > will be used nevertheless. (This behavior can be changed with the > kernel command line option "no387", which comes handy if your > coprocessor is broken. Try "man bootparam" or see the documentation > of your boot loader (lilo or loadlin) about how to pass options to > the kernel at boot time.) This means that it is a good idea to say > Y here if you intend to use this kernel on different machines. > > More information about the internals of the Linux math coprocessor > emulation can be found in <file:arch/i386/math-emu/README>. > > If you are not sure, say Y; apart from resulting in a 66 KB > biggerkernel, it won't hurt. > > Symbol: MATH_EMULATION [=y] > Prompt: Math emulation > Defined at arch/i386/Kconfig:676 > Location: > -> Processor type and features So if Linux automatically uses a math processor, if present, unless told to do so otherwise, then why on the one hand does the arch/i386/ Makefile specify in the standard kernel the -msoft-float compiler flag, and why do we bother removing it for the xbox if the standard kernel decides it's important to have that option? I mean, either the kernel does the right thing, even with this option, and uses the coprocessor if present, or it doesn't. Somehow, this seems somewhat contradictory to me. I then googled on the subject, and found this here: http://uwsg.iu.edu/hypermail/linux/kernel/0409.1/2266.html > On Wed, Sep 15, 2004 at 02:14:18AM +0600, Denis Zaitsev wrote: >> Why this kernel is always compiled with the FP emulation for x86? >> This is the line from the beginning of arch/i386/Makefile: >> >> CFLAGS += -pipe -msoft-float >> >> And it's hardcoded, it does not depend on CONFIG_MATH_EMULATION. So, >> is this just a typo or not? > > It catches bogus attempts to use floating point in the kernel by > making them error at link-time. So does this mean the kernel is not supposed to use floating point at all, and the -msoft-float forces the compiled to create references to libraries, which then aren't linked and hence cause a link error to catch this problem? If so, shouldn't we stop patching this, and leave the -msoft-float compiler flag where it is and reduce the size of the xbox-linux kernel patch a bit? Ronald |
From: Ronald C.F. A. <rc...@cu...> - 2007-03-02 19:00:25
|
OK, my quest for fairly universal, modular kernel has been reasonably successful. I now have a 2.6.20.1 kernel working that has modular support for just about anything one might want to run on an XBOX or use the XBOX to do development work on. Only actual hardware drivers have not been compiled into modules, because there are so many, and some seem to result in an unbootable kernel and if I wanted to try which, I'd still be running compile cycles for the next three months. Most subsystems however seem to work, e.g. if anyone wants to play with ATM, they can use the ATM over ethernet module and know the basic infrastructure is in the kernel. For some that's overkill, for me it's just an insurance that I don't have to keep dealing with the kernel itself, except if there's significant upgrade. The two stumbling blocks I found are the APIC setting ( CONFIG_X86_UP_API ) as mentioned previously. It claims to be harmless, but for some reason on the XBOX it is not. The other is the fact that FATX seems to be dependent on NOT having CONFIG_LBD set. Interestingly enough, though, having CONFIG_LSF set doesn't seem to be a problem. It seems odd, though, that a modular file system would depend on the system's ability to deal with large volumes. Just because that file system cannot address that large a volume shouldn't mean that the rest of the system and other file systems should not be able to do so. Even more curious: the FAT file system code, on which FATX is based, does NOT have that restriction. So do we REALLY need that restriction of not having CONFIG_LBD set? Otherwise, if someone tells me where I can upload the source and kernel rpms along with the patch and config file, then I'm pretty much ready to share the results if anyone is interested. Ronald |
From: Ronald C.F. A. <rc...@cu...> - 2007-03-02 01:05:44
|
On 1 Mar 2007, at 17:31, Luke Yelavich wrote: > On Thu, Mar 01, 2007 at 08:53:20AM EST, Ronald C.F. Antony wrote: >> Hi, >> >> I have been able to eliminate a lot of potential sources for the >> unbootable kernel. >> >> I have found one culprit however (there may be more, I'm still >> testing). >> The one known problematic kernel option is this one: >> >>> CONFIG_X86_UP_APIC: > <snip> > > This option is only needed if the Xbox's CPU supports apic. Have a > look > at /proc/cpuinfo. If apic is not mentioned in the flags, this > option can > remain deselected. > > I think that the PIII CPUs don't support this option, unless they are > used in an SMP configuration. That may well be true. However, at least according to the make menuconfig option help, this should (and likely is in non-XBOX configurations) a safe option to select, and the kernel should just ignore it at run time when the CPU doesn't support the feature. Depending on which precise version of the kernel source you have, it basically says "when in doubt, select this option" because the kernel will just ignore it if the CPU doesn't support the feature and will run w/o slowdown if the option is selected. However, something about the XBOX prevents the system from booting when the option is selected. So ideally, either the option should not be selectable if the XBOX subarchitecture is selected, or the code needs to be fixed somehow, such that the option behaves as benignly on an XBOX as it supposedly behaves on other PC platforms. Unfortunately I know way too little about the linux kernel to attempt fixing this. Ronald |
From: Luke Y. <th...@th...> - 2007-03-01 22:32:04
|
On Thu, Mar 01, 2007 at 08:53:20AM EST, Ronald C.F. Antony wrote: > Hi, >=20 > I have been able to eliminate a lot of potential sources for the =20 > unbootable kernel. >=20 > I have found one culprit however (there may be more, I'm still testing). > The one known problematic kernel option is this one: >=20 > >CONFIG_X86_UP_APIC: <snip> This option is only needed if the Xbox's CPU supports apic. Have a look=20 at /proc/cpuinfo. If apic is not mentioned in the flags, this option can=20 remain deselected. I think that the PIII CPUs don't support this option, unless they are=20 used in an SMP configuration. --=20 Luke Yelavich GPG key: 0xD06320CE=20 (http://www.themuso.com/themuso-gpg-key.txt) Email & MSN: th...@th... Jabber: th...@ja... |
From: Ronald C.F. A. <rc...@cu...> - 2007-03-01 10:19:24
|
Hi, I have been able to eliminate a lot of potential sources for the unbootable kernel. I have found one culprit however (there may be more, I'm still testing). The one known problematic kernel option is this one: > CONFIG_X86_UP_APIC: > > A local APIC (Advanced Programmable Interrupt Controller) is an > integrated interrupt controller in the CPU. If you have a single- > CPU system which has a processor with a local APIC, you can say Y > here to enable and use it. If you say Y here even though your > machine doesn't have a local APIC, then the kernel will still run > with no slowdown at all. The local APIC supports CPU-generated self- > interrupts (timer, performance counters), and the NMI watchdog > which detects hard lockups. > > Symbol: X86_UP_APIC > [=n] > Prompt: Local APIC support on > uniprocessors > Defined at arch/i386/Kconfig:289 > Depends on: !SMP && !X86_VISWS && !X86_VOYAGER && !X86_GENERICARCH > Location: -> Processor type and features From the description, this seemed like a perfectly OK option to select. Somehow, it seems, the XBOX doesn't like it at all. Either the dependencies of that option should make it unavailable when the XBOX architecture is selected, or we need some additional bug fixes somewhere that do whatever's needed that this behaves properly. My (lack of) knowledge of the kernel prevents me however from dealing with this issue, so for now I continue with this option deselected, to see if there are other options that have similar effects. Ronald |
From: Ronald C.F. A. <rc...@cu...> - 2007-02-27 18:38:52
|
On 27 Feb 2007, at 10:43, Matthew A. Nicholson wrote: > Ronald C.F. Antony wrote: >> Hi, >> I'm trying to apply the xpad.c patch posted on this list back in 5 >> October 2006 by Matt. >> All the list archives seem to be web based, and I can't download a >> raw patch file (or copy/paste in a useful way) the patch as >> displayed by the various web interfaces and web archives of the list. >> Also, why isn't a patch like this reflected in the current source >> or available on the files list on sourceforge. >> I'm currently in the process of trying to get a 2.6.21-rc1 kernel >> running (2.6.20.1 is already working), but getting all the latest >> patches into the code is a major PITA because they are not >> collected in a central location from what I can tell. >> Any hints/help appreciated. >> Ronald > > My patch only has stuff for the Xbox360 controller. I can update > it if you need to use it. Thanks for the offer. *RIGHT NOW* I don't need the Xbox 360 controller. So for myself it's not much of an issue, particularly since I'm not a game player, but I hope to make my 2.6.20.1 patches available once things work smoothly, so others can use it, too. So the issue is much more how to get a definitive version of that code, particularly since the xpad driver is also in the standard Linux kernel distribution, so changes really should be pushed upstream. The less patches we need to do an xbox kernel, and the more we can push into the regular kernel sources, the better. Maybe if you have the time, you could compare the state of affairs in the 2.6.20.1 source tree, and what's on the xbox-linux sourceforge site, add whatever may be missing from your patches and the xbox- linux version into the official version, and propagate it to the kernel maintainers. That way we can then hopefully just get completely rid of a separately maintained xpad driver. Greetings, Ronald |
From: Matthew A. N. <ma...@ma...> - 2007-02-27 15:43:59
|
Ronald C.F. Antony wrote: > Hi, > > I'm trying to apply the xpad.c patch posted on this list back in 5 > October 2006 by Matt. > All the list archives seem to be web based, and I can't download a raw > patch file (or copy/paste in a useful way) the patch as displayed by the > various web interfaces and web archives of the list. > > Also, why isn't a patch like this reflected in the current source or > available on the files list on sourceforge. > > I'm currently in the process of trying to get a 2.6.21-rc1 kernel > running (2.6.20.1 is already working), but getting all the latest > patches into the code is a major PITA because they are not collected in > a central location from what I can tell. > > Any hints/help appreciated. > > Ronald My patch only has stuff for the Xbox360 controller. I can update it if you need to use it. -- Matthew A. Nicholson matt-land.com |
From: Ronald C.F. A. <rc...@cu...> - 2007-02-26 06:23:00
|
Hi, I have a bootable kernel for 2.6.20.1 kernel. Of course, I have no idea if/how well the FATX support will crash the system, but at least it will compile, and thus hopefully entice someone who knows what he's doing to fix it eventually ;-) I have however another problem: I tried to configure that's as universally useful as possible w/o sacrificing XBOX bootability. The only way I get a bootable kernel though is if I use the 2.6.18-fc6 xbox kernel, and then do a make oldconfig. However, the moment I try to make a slightly more universally useful kernel by enabling a few options that seem like they might come in handy at some point or another, the kernel won't boot anymore. Now, since each option change and compile install, and rescue boot and revert cycle takes several hours, it's extremely unpractical the enable options one-by one, or to try to narrow down which option(s) it is exactly that make the kernel not boot. So what I wonder is if any of you had similar experiences when you compiled an xbox kernel. If you know/remember any option that you tried that made the kernel not boot, I'd be very interested in knowing which because maybe it's as simple as deselecting a few known bad options to achieve what I want with the rest. Greetings, Ronald |
From: Ronald C.F. A. <rc...@cu...> - 2007-02-25 01:37:09
|
On 24 Feb 2007, at 19:43, Matt Finnicum wrote: > I've copy-pasted it for you. See attached. Hi, thanks. Unfortunately, this patch seems to create more questions than it solves ;-) Since most of the xbox kernel patches I could find were rather old and wouldn't cleanly patch, I followed the instructions found here: http://www.phoronix.net/forums/showthread.php?p=4445 and use the files found here: http://xbox-linux.cvs.sourceforge.net/*checkout*/xbox-linux/ kernel-2.6/drivers/usb/input/xpad.c http://xbox-linux.cvs.sourceforge.net/*checkout*/xbox-linux/ kernel-2.6/drivers/usb/input/xpad.h with minor changes as the post there describes: > for the 2.6.19 kernel it states that you're supposed to edit > > "#include <linux/usb_input.h>" and change it to > "#include <linux/usb/input.h>" > > and comment lines 54 "#include <linux/config.h>" to > "/* #include <linux/config.h> */" > > and line 161 "input_regs(dev, regs);" to > "/* input_regs(dev, regs); */" except instead of commenting out, I just deleted the corresponding lines, since there's no point to carry old code in the source for a new version of the kernel. The problem is, the patch doesn't work with these versions of the files, and now I don't know if I work with files that are a) too new b) too old c) from a totally different, incompatible branch for the patch to work. If the sources I use are newer, then is the functionality of the patch already in there? If the sources I use are older, then were is a more up to date version of the xpad.c to be found to which I can apply the patch? If the sources I use are from a separate source branch, then which should I use and why, and why do we have more than one branch in the first place? Just trying to get the cleanest (most applicable patches applied) and newest kernel running on an XBoX such that I have a good basis from which to work forward, but it's not like I know anything about xpad device drivers... Ronald |