- 01 Jan, 2015 1 commit
-
-
Robert Sprowson authored
Exposed possible return with reserved bit 8 set when enter was pressed. Version 0.91. Tagged as 'NetBSD-0_91'
-
- 17 Dec, 2014 1 commit
-
-
Robert Sprowson authored
From NetBSD revision 1.687, this adds the 9514 hub featured on the Pandaboard. Tested on a Pandaboard rev A3, now named in *USBDEVICES. Version 0.90. Tagged as 'NetBSD-0_90'
-
- 25 Oct, 2014 1 commit
-
-
Robert Sprowson authored
OHCIDriver (only) had sketchy support for a HAL based scheme for controlling the port power and monitor overcurrent. However the implementation was limited to supporting the single port required for an embedded product (aka Rhenium in the CVS history). The change makes it follow a model much more akin to the HAL_TimerDevice/HAL_TimerIRQStatus/HAL_TimerIRQClear set of functions. Version: Bumped OHCIDriver and USBDriver version numbers. ohcimodule.c: Use some defines from OsBytes.h. Group the debug variables within the OHCI_DEBUG define so they go away in the release case. Allow for up to 15 ports to be controlled via the revised HAL API, and pass something other than a hardwired controller of 0 when controlling/monitoring power. Enumerate the device numbers for overcurrent monitoring on startup. Deal with the possibility of one (or more) of the device numbers being shared interrupts. Squash a few trivial compiler warnings. ohcimodhead.cmhg: rename the handler/entry to reflect their use for overcurrent ohci.c: Allow for up to 15 ports to be controlled by passing in the port index where needed. usb_subr.c/usbdivar.h: Remove a RISC OS-ism in datatoggle, to converge with NetBSD a bit. ehcivar.h/usb_port.h: Relocate the overrides for mutex_ functions here since this is the only controller using them. Previously when in "usb_port.h" they would indirectly get dragged in ia the nested include in "usb.h". The could in fact now be implemented using SyncLib, an exercise left to the reader. usb.h Merge some of the device classes and other allocations from NetBSD. While it's not been possible to test the revised API, due to not having sight of the original platform on which it was implemented, none of the actively maintained HALs currently use the HAL based power and overcurrent scheme anyway, so the new code never gets called. In that respect, it's no more broken then the previous single port-single controller version. Version 0.89. Tagged as 'NetBSD-0_89'
-
- 29 Aug, 2014 2 commits
-
-
Jeffrey Lee authored
Detail: build/c/ehcihal - Corrected EHCIF_ETTF flag Admin: Tested on BB-xM Version 0.88. Retagged as 'NetBSD-0_88'
-
Jeffrey Lee authored
Detail: build/Version - Bump EHCIDriver version number build/c/ehcihal, build/c/ehcimodule, build/c/ohcimodule - Use the HAL USB controller type & flag definitions from Hdr:HALEntries instead of using magic numbers build/c/ehcimodule - Avoid double-read of hardware register in debug version of bus_space_read_4(); ensures that we report the value that's actually returned to the driver dev/usb/c/ehci - Merge in the following revisions from NetBSD: - 1.172, 1.173, 1.178, 1.193 - Support for controllers with embedded transaction translators - 1.174 - alloc_sqtd_chain() fix for short packets that end on page boundaries - 1.179 - ehci_set_qh_qtd() fixed to terminate alternate next qTD pointer with EHCI_NULL, not 0 dev/usb/h/ehcireg - Updated to latest NetBSD version (1.34) dev/usb/h/ehcivar - Merge in revision 1.38 (ETTF support) Admin: Tested on BB-xM Version 0.88. Tagged as 'NetBSD-0_88'
-
- 12 Aug, 2014 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/usbmodule - Improve *USBDevInfo to display the devices connection speed build/h/USBDevFS - Correct device speed listing to match reality build/Version - Bump USBDriver version number Admin: Tested on Raspberry Pi Version 0.87. Tagged as 'NetBSD-0_87'
-
- 01 Jun, 2014 2 commits
-
-
Jeffrey Lee authored
Detail: dev/usb/usbdevs - Updated to the latest version from the NetBSD CVS, mainly for several new DisplayLink product IDs. Merged in our TouchBook definitions from rev 1.5, and commented out a couple of duplicate products. dev/usb/c/usb_quirks - Updated to cope with MetaGeek vendor being renamed to Misc build/Version - Bump USBDriver version number Admin: Tested in OMAP3 ROM build Version 0.86. Tagged as 'NetBSD-0_86'
-
Jeffrey Lee authored
Detail: build/h/USBDevFS - Added extra #ifdef guard to allow USBDevFS.h to be safely included by software that uses the BSD USB headers. Add the DeviceFS_CallDevice codes that USBDriver uses. build/h/service - Removed redundant secondary definition of the service call structures which the drivers were using internally build/c/ehcihal - Removed redundant #includes build/c/ehcidriver, build/c/ohcidriver - Use USBDevFS.h instead of service.h build/c/usbmodule - Use USBDevFS.h instead of service.h. Get rid of local DeviceCall definitions and use the ones which are now in USBDevFS.h. Also switched over to using Interface/DevicsFS.h for the main DevicsFS call reason codes, to match the naming convention used by USBDevFS.h (as opposed to the OSLib naming convention that was used previously). Stripped the unused OBSOLETE_SERVICE_CALLS code. build/Makefile - Add usbdi_util.h to the header exports Admin: Tested with building OMAP3, Tungsten & BCM2835 ROMs Builds to binary-identical modules as previous version. Version 0.85. Tagged as 'NetBSD-0_85'
-
- 27 May, 2014 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/usbhal - Restructured triggercbs() so that it doesn't use irqsema to prevent callbacks triggering recursively, as this behaviour can be required sometimes (e.g. xfer timeout callback for a blocking xfer that's being performed within the bus explore callback). Instead, a 'callbacks needed' flag is used to decide whether callbacks should be processed, which operates in a similar way to the kernel's CBack_VectorReq flag - once a triggercbs() instance starts processing callbacks, no other calls will process them until a new callback is inserted. Also fixed indexing of the callback array within triggercbs() to correctly deal with wrap-around build/Hdr/usbhal, dev/usb/h/usbhal - Add cbs_needed to workspace Admin: Tested on BB-xM with high processor vectors Fixes hang during boot time keyboard scan that was seen when certain devices were connected Version 0.84. Tagged as 'NetBSD-0_84'
-
- 06 May, 2014 1 commit
-
-
Robert Sprowson authored
Version 0.83. Tagged as 'NetBSD-0_83'
-
- 26 Apr, 2014 1 commit
-
-
Jeffrey Lee authored
Detail: dev/usb/c/usb_subr - Merge in latest usbd_new_device() changes from NetBSD (rev 1.196). This primarily changes around the order of the SET_ADDRESS and descriptor get calls, as well as changing the descriptor get to request 64 bytes of data instead of 8. build/Version - Bump USBDriver version number Admin: Tested on BB-xM, Raspberry Pi, Iyonix ROM softload Fixes issue reported on forums with Raspberry Pi Model A not initialising correctly when connected as a device. Previously it was getting stuck fetching the descriptors after setting the address. http://www.riscosopen.org/forum/forums/5/topics/2534 Version 0.82. Tagged as 'NetBSD-0_82'
-
- 13 Jul, 2013 1 commit
-
-
Robert Sprowson authored
Merge of code change from revision 1.152 of usbdi.c from NetBSD, function usb_transfer_complete - this just swaps the ordering around to ensure the callback & done are in the right order. Built, but not tested. Version 0.81. Tagged as 'NetBSD-0_81'
-
- 30 May, 2013 1 commit
-
-
Robert Sprowson authored
Retagged as NetBSD-0_80.
-
- 27 May, 2013 1 commit
-
-
Robert Sprowson authored
Previously, if an endpoint was specified the endpoint type would be matched as type BULK even if that wasn't the case for the given endpoint number. Also, the find_interface_and_endpoint could exit without assigning the alternate. Line 2001: only search for BULK when neither the type nor endpoint were given Line 2028: take the first match on any fields that were given, assign all 3 return values Line 2094: remove some dead code, 'ep' is not read by find_interface_and_endpoint, so no need to initialise it Test case OPENIN "devicefs#endpoint1;size8:USB1" now gets the actual endpoint_type of the device, rather than BULK all the time. Changes from Colin, ref http://www.riscosopen.org/forum/forums/3/topics/1895 Version 0.80. Tagged as 'NetBSD-0_80'
-
- 25 May, 2013 1 commit
-
-
Robert Sprowson authored
No transfer occurred if maxpacketsize exactly equalled the free space in the buffer. Changes from Colin, ref http://www.riscosopen.org/forum/forums/3/topics/1895 Module version number bumped. Version 0.79. Tagged as 'NetBSD-0_79'
-
- 10 May, 2013 1 commit
-
-
Robert Sprowson authored
Spotted by Colin http://www.riscosopen.org/forum/forums/4/topics/1874 Built, but not tested. Version 0.78. Tagged as 'NetBSD-0_78'
-
- 30 Mar, 2013 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/ehcimodule, build/c/ohcimodule - Added a re-entrancy check to USBDriver registration, to avoid shenanigans if we receive "USBDriver has started" service calls while in the middle of registering build/Version - Bump EHCIDriver & OHCIDriver versions & dates Admin: Tested on BB-xM Doesn't fix any known EHCIDriver/OHCIDriver-related issues, but is the same fix as was made to DWCDriver after the above-mentioned problem was found to be the cause of a hang on boot in recent Pi ROMs Version 0.77. Tagged as 'NetBSD-0_77'
-
- 05 Dec, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/usbkboard - detach_keyboard() now issues KeyV_KeyboardRemoved when the last keyboard is removed, to provide a hint to other keyboard drivers (e.g. PandoraKey) that they can reclaim KeyV. build/Version - Increased USBDriver version number Admin: Tested on Pandora Version 0.76. Tagged as 'NetBSD-0_76'
-
- 19 Sep, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/usbmodule - The introduction of the delayed_read flag brought with it a bug, whereby performing one read at the filing system level would result in two transfers at the USB level: One transfer triggered by the RxWakeUp device call, and a second read triggered by the Resume device call once the devices buffer becomes empty. To counter this a new read_status variable is used to track the state of the filesystem-level transfer; idle, busy, or complete. Only start_read calls triggered by RxWakeUp are able to start new filesystem-level transfers, while Resume is only able to continue transfers which had been paused due to lack of buffer space. Additionally if a RxWakeUp call is received before the previous transfer had finished, the read amount is now buffered correctly, and the read count/padding count will only be reset once the new read actually starts. Also made DeviceFS-level debug output more verbose and useful; most read/write debug output now lists the associated usbd_xfer_handle, making it easier to track transfers once they enter the NetBSD layer. build/Version - Increase USBDriver version number Admin: Tested on BB-xM FTDIDriver now apears to work correctly again Version 0.75. Tagged as 'NetBSD-0_75'
-
- 13 Jul, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/usbmodule - read_cb() now explicitly clears the delayed_read flag, and only issues a delayed read if the pipe isn't a repeating type build/Version - Increased USBDriver version number Admin: Tested on BB-xM Version 0.74. Tagged as 'NetBSD-0_74'
-
- 09 Jul, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/usbmodule - If there's a read xfer which has been delayed due to RxWakeup being called before the previous xfer had finished (e.g. while inside a buffer filling upcall), report the transfer as having not finished yet. Should match the old behaviour before the delayed reads were introduced. build/Version - Increment USBDriver version number Admin: Tested briefly on BB-xM Version 0.73. Tagged as 'NetBSD-0_73'
-
- 24 Jun, 2012 1 commit
-
-
Jeffrey Lee authored
Fix null pointer dereferences. Add protection against DeviceFS xfers being multiply inserted into their pipes xfer queue. Detail: build/Version - Increased version numbers build/c/ehcimodule, build/c/ohcimodule - Fixed null pointer dereferences in debug code build/c/port, build/s/triggercbs - Fix debug code in tsleep() using hardcoded IRQsema ptr. Now requests the right pointer from build/s/triggercbs. build/c/usbmodule - Fix null pointer deferences in debug code and MonitorTX/MonitorRX handlers. Add xfer_busy and delayed_read flags to devstream struct in order to track whether the xfer associated with the stream is busy or not. Previously if the TxWakeUp/RxWakeUp device calls were made on a stream which already had an active xfer, the xfer would end up being inserted in the USB pipes xfer queue twice, creating a circular reference, resulting in (at the least) infinite loops in usbd_dump_queue() when debugging is enabled. Now, in the case of reads, a second read will automatically be issued once the first completes, while in the case of writes, the write request will simply be ignored. This isn't a proper fix for all the shortcomings of the DeviceFS interface, but at least the code is now a little bit safer. Admin: Tested on Raspberry Pi with high processor vectors Version 0.72. Tagged as 'NetBSD-0_72'
-
- 07 Jun, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: build/Makefile, build/!MkDebug,fd7 - Debug versions of the modules can now be built just by passing "DEBUG=TRUE" to amu build/!MkRhenium,fd7 - Deleted obsolete file build/Version - Increased version numbers build/c/ehcihal, build/c/ehcimodule, build/c/ohcimodule - Only accept USB controllers if HAL_USBControllerInfo says the struct size is an exact match with what we expect. Rework USB controller enumeration to allow modules to properly support both PCI and HAL controllers being available on the same machine, and without RHENIUM switch (module sources only). build/c/ehcimodule - Get rid of remaining RHENIUM bits; RHENIUM flag no longer needed for 32bit wide register reads/writes to be supported build/c/ohcimodule, build/cmhg/ohcimodhead, dev/usb/c/ohci - Get rid of remaining RHENIUM bits; RHENIUM flag no longer needed for HAL port power controls to be supported. build/c/usbhal, build/c/usbmodule, dev/usb/c/uhub, dev/usb/h/usb_port - Get rid of empty riscos_failed_device function build/s/call_veneer, build/s/triggercbs - Use Entry/EXIT macros to avoid single-reg LDM/STM performance warnings. Convert tabs to spaces. dev/usb/h/usb - Get rid of RHENIUM switch on USB_PORT_RESET_DELAY. Now always uses non-RHENIUM value of 100ms. Admin: Tested on rev A2 BB-xM, Iyonix, Raspberry Pi Version 0.71. Tagged as 'NetBSD-0_71'
-
- 14 May, 2012 1 commit
-
-
Robert Sprowson authored
Internally they're already in "usb.h" but possibly useful elsewhere. Version 0.70. Tagged as 'NetBSD-0_70'
-
- 20 Feb, 2012 1 commit
-
-
Robert Sprowson authored
Avoids potential buffer overrun, since the actual buffers are 128 at the moment. Version 0.69. Tagged as 'NetBSD-0_69'
-
- 18 Feb, 2012 1 commit
-
-
Robert Sprowson authored
In particular, the SMSC ethernet controller and hub on the Beagleboard xm. Changed pointer assignments & comparisons with 0 to be NULL for clarity. Implement a left trim function for any printed out strings obtained from the device (to mirror usbd_trim_spaces) so that when dopey manufacturers use a space instead of their company name everything lines up still. Version 0.68. Tagged as 'NetBSD-0_68'
-
- 05 Feb, 2012 1 commit
-
-
Robert Sprowson authored
Two rules into one. Version 0.67. Tagged as 'NetBSD-0_67'
-
- 04 Feb, 2012 1 commit
-
-
Robert Sprowson authored
Remove some of the proliferation of !Mk[stuff] files due to lack of relevance. Combined the OBJ[target] listings into the main makefile with a switch. Remove a spurious # from the EHCIMessages. Version 0.66. Tagged as 'NetBSD-0_66'
-
- 18 Dec, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: dev/usb/c/ehci - Force all EHCI data buffers to be 512 byte aligned. This is a workaround for what I believe is a bug in the DM37x EHCI controller - It looks like if the last packet of a bulk in transfer is a short packet, and that packet crosses a page boundary, then the second half of the packet doesn't seem to be written out to the correct address in memory. Version - increased EHCI module version number Admin: Tested on rev A2 BB-xM Fixes issue reported on forums with unreliable USB ethernet: http://www.riscosopen.org/forum/fourms/5/topics/828#posts-9691 Version 0.65. Tagged as 'NetBSD-0_65'
-
- 10 Dec, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/usbmouse - Scrollwheel code now only sends scroll requests in a given direction if the window has an appropriate scroll bar. build/Version - Incremented USBDriver version number Admin: Tested in OMAP3 ROM Fixes issue reported on forums where it was possible to scroll filer windows horizontally if you used a mouse with a 'w' axis Version 0.64. Tagged as 'NetBSD-0_64'
-
- 04 Dec, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: dev/usb/c/ehci, dev/usb/c/ohci - Fixed device descriptor and config descriptor reads writing outside the destination buffer if the buffer was small enough. build/Version - Incremented EHCI & OHCI version numbers & dates Admin: Tested in OMAP3 ROM & Iyonix ROM softload Version 0.63. Tagged as 'NetBSD-0_63'
-
- 22 Aug, 2011 1 commit
-
-
Jeffrey Lee authored
Update HAL USB code for new HAL_KbdScanInterrupt behaviour. Fix data aborts during keyboard scanning. Detail: build/c/usbhal, build/h/usbhal - Updated USBHAL_KbdScanInterrupt to behave the same way HAL_KbdScanInterrupt is now expected to behave. build/c/ehci, build/c/ohci - Fixed some root hub emulation code which was writing to a global structure before copying it into the destination buffer. Although this works fine in ROM modules it was causing data aborts in the USB HAL libraries due to lack of automatic RW data relocation by the compiler. build/Version - Updated version numbers Admin: Tested on rev C2 BB. Version 0.62. Tagged as 'NetBSD-0_62'
-
- 08 Aug, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/ohcimodule - Not all PCI_ReadInfo calls were checking for null pointers afterwards, leading to strncpy being called with a null source build/Version - Updated OCHIDriver version number Admin: Tested in Iyonix ROM softload Version 0.61. Tagged as 'NetBSD-0_61'
-
- 05 Aug, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/port - Removed ability to cancel transfers by pressing escape. Too dangerous for things like mass storage devices, and the code won't work anyway for the common case of being in the wimp build/s/triggercbs - Try using OS_ReadSysInfo 6 to get IRQsema ptr before falling back on legacy address build/Version - Updated version numbers Admin: Tested on rev A2 BB-xM Version 0.60. Tagged as 'NetBSD-0_60'
-
- 22 May, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: build/Makefile, build/OBJEHCIDriver, build/OBJOHCIDriver, build/OBJUSBDriver - Modified makefiles to build the HAL libs during the export libs phase build/!MkHAL,fd7 - Handy script for building the HAL libs build/Hdr/usbhal - Header containing definitions for the assembler code. Also gets exported so that HALs know how much workspace to reserve. build/c/usbhal - HAL version of usbmodule.c & port.c. Also contains the keyboard scan code, adapted from the code in the Tungsten HAL. build/s/porthal - Assembler versions of some port.c routines that were easier to do in assembler than C build/s/halheap - OS_Heap code that's been adapted for use in the HAL. Could easily be changed into a standalone library instead of being part of the HAL USB libs. Supports memory-efficient allocation of aligned blocks. build/c/ehcihal - HAL version of ehcimodule.c. Currently only supports EHCI controllers exposed via HAL_USBControll...
-
- 14 Apr, 2011 1 commit
-
-
Ben Avison authored
Detail: A couple of source files now have a dependency on an auto-generated header file, dev/usb/usbdevs.h. Normally you get away with this, because it's created during the export_hdrs phase. But if the first build you do on a freshly checked-out build tree includes a rom phase, then srcbuild cleans the component between the export_hdrs and rom phases, so the rom phase fails. Fixed by adding a couple of static dependencies to Makefile. Admin: Tested manually. Version 0.58. Tagged as 'NetBSD-0_58'
-
- 01 Feb, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: A couple of the USB modules were including their resources both in the Messages module and within themselves, leading to wasted ROM space build/OBJOHCIDriver, build/OBJUSBDriver - Tweaked makefiles so that ohcimsgs.o and usbmsgs.o only get built/linked for RAM builds build/c/usbmodule - Fix erroneous attempt to free non-registered resource files in ROM builds Version - Increased OHCIDriver & USBDriver version numbers Admin: Tested with Iyonix ROM softload. Saves approx 48k of ROM space. Fixes bug #265 Version 0.57. Tagged as 'NetBSD-0_57'
-
- 23 Nov, 2010 1 commit
-
-
Jeffrey Lee authored
Detail: build/c/usbdi - Fix compiler warning in usbd_clear_endpoint_stall() build/c/usbmodule - Fix detach_device() to deregister any pending attach callback for the detaching device. Fixes crash seen when inserting 16GB USB stick into EHCI port of rev C2 beagleboard (a current surge or something causes the stick to immediately disconnect then reconnect, but the disconnect occurs before the initial attach callback) build/c/usbmodule - Fix device_initialise() to use a timeout of 0 if no timeout was specified in the DeviceFS special field build/c/usbmodule - Fix the new read_cb() buffer padding logic to only pad up to totalcount instead of filling the entire buffer Admin: Tested on rev C2 beagleboard. This seems to fix the problems that were preventing Steffen Huber's USB CD code from working properly. Version 0.56. Tagged as 'NetBSD-0_56'
-
- 20 Oct, 2010 2 commits
-
-
Steve Revill authored
Version 0.55. Tagged as 'NetBSD-0_55'
-
Steve Revill authored
Detail: I have done some minor changes to the USB documenation in a few points and corrected a smaller bug inside the USB alias handling (used release instead interface). Author: Thomas Milius Version 0.54. Tagged as 'NetBSD-0_54'
-