Skip to content
Permalink
Branch: master
Commits on Jun 16, 2017
  1. grainuum-phy: be more liberal in sending NAK packets

    xobs committed Jun 16, 2017
    If we don't understand something, send a NAK.
    
    This covers the scenario where we get half a packet, e.g. due to
    being busy when the start of the packet came across.
    
    As a result of this patch, I no longer see errors during enumeration.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
Commits on Jun 13, 2017
  1. grainuum: add an 'elements' union for debugging

    xobs committed Jun 13, 2017
    The 'elements' union can be used to more easily separate packets
    when debugging.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  2. grainuum-state: only call callback when send completes

    xobs committed Jun 13, 2017
    Check the 'data finished' flag to see if we should call the callback.
    Otherwise, save it for later.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
Commits on Jun 8, 2017
  1. grainuum: add more USB packet type defines

    xobs committed Jun 8, 2017
    Add some extra defines for various USB packet types.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
Commits on Jun 2, 2017
  1. grainuum-state: add newline to end of file

    xobs committed Jun 2, 2017
    Signed-off-by: Sean Cross <sean@xobs.io>
  2. grainuum-buffers: force 4-byte alignment

    xobs committed Jun 2, 2017
    These buffers can occasionally become unstuck from a 4-byte alignment.
    
    Add an attribute to ensure they're always properly aligned.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  3. grainuum: add functions to drop currently-queued data

    xobs committed Jun 2, 2017
    These can be used to ignore data that's already in the buffer.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  4. grainuum-phy: minor whitespace removal

    xobs committed Jun 2, 2017
    Signed-off-by: Sean Cross <sean@xobs.io>
  5. grainuum-phy: don't call callback on a packet on IN

    xobs committed Jun 2, 2017
    If we get an IN packet, don't bother inserting a packet.  An IN
    packet will be followed by data that's queued, or will be dropped.
    Either way, there isn't much we can do about it.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
Commits on May 31, 2017
  1. grainuum-phy-ll: correct cycle counts

    xobs committed May 31, 2017
    In the course of debugging, it has become apparent that there were
    many errors in various cycle counts.
    
    Correct all known errors, including various permutations of
    stuff/SE0/J/K states.
    
    As a result of this change, we have been able to transfer about
    100 MB of data without a USB Beagle indicating any errors.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  2. grainuum-phy-ll: rename usb_unstuff to usb_phy_read__unstuff

    xobs committed May 31, 2017
    This label is a part of usb_phy_read(), so rename it to
    usb_phy_read__unstuff.  That way, the debugger will show that
    we're in usb_phy_read if we break in that chunk of code.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  3. grainuum-phy-ll: remove unused NMI handler

    xobs committed May 31, 2017
    This NMI handler is a holdover from a much earlier time.  It has
    been commented out, and is just vestigial now.
    
    Remove it.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  4. grainuum-phy-ll: correct typo in D+/D- comment

    xobs committed May 31, 2017
    The comment mentioned D+, but the code modified D-.  Correct the
    comment to reflect the code.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  5. grainuum-phy-ll: correct unstuffing for data rx

    xobs committed May 31, 2017
    On receipt, data was not being correctly unstuffed after the first
    instance.  That is, after the second instance, an extra bit was
    getting inserted.
    
    Remove this extra bit to get unstuffing working properly.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  6. grainuum-phy-ll: correct typo in default section

    xobs committed May 31, 2017
    The default section should be a version of the .text section in ram,
    called .ramtext.
    
    A typo had incorrectly labeled this as ".ramtest".  Fix that.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
Commits on May 29, 2017
  1. grainuum: swap D+/D- definitions

    xobs committed May 29, 2017
    Swap the definitions of these two values.
    
    Functionally it's the same, but it ends up being backwards from
    what the implementation does.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  2. grainuum: swap wValueH and wValueL

    xobs committed May 29, 2017
    These definitions in the header file were swapped.  wValueL is the low
    byte, which comes before wValueH.  This is opposite from the
    interpreted values, which is what we were using before.
    
    This fixes descriptor parsing.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
Commits on Dec 25, 2016
  1. grainuum: rename -mac to -state

    xobs committed Dec 25, 2016
    This better reflects the fact that it's a state machine.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
Commits on Dec 21, 2016
  1. grainuum: add parens around GRAINUUM_BUFFER_ADVANCE

    xobs committed Dec 21, 2016
    Properly escape the macro parameter.  It probably won't be necessary, but
    it's just good practice.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
  2. grainuum: fix out-of-bounds on grainuum_buffer

    xobs committed Dec 21, 2016
    The grainuum_buffer object would run off the end of the array, stomping on
    data that came after it in RAM.  This was due to using > instead of >= in
    the loop logic.
    
    Change it to >= to correctly wrap around.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
Commits on Dec 19, 2016
  1. grainuum: initial commit

    xobs committed Dec 19, 2016
    This is the initial commit of the Grainuum USB stack.
    
    Signed-off-by: Sean Cross <sean@xobs.io>
You can’t perform that action at this time.