16 Mar, 2012

1 commit

  • The header includes a lot of stuff, and
    it in turn gets a lot of use just for the basic "struct device"
    which appears so often.

    Clean up the users as follows:

    1) For those headers only needing "struct device" as a pointer
    in fcn args, replace the include with exactly that.

    2) For headers not really using anything from device.h, simply
    delete the include altogether.

    3) For headers relying on getting device.h implicitly before
    being included themselves, now explicitly include device.h

    4) For files in which doing #1 or #2 uncovers an implicit
    dependency on some other header, fix by explicitly adding
    the required header(s).

    Any C files that were implicitly relying on device.h to be
    present have already been dealt with in advance.

    Total removals from #1 and #2: 51. Total additions coming
    from #3: 9. Total other implicit dependencies from #4: 7.

    As of 3.3-rc1, there were 110, so a net removal of 42 gives
    about a 38% reduction in device.h presence in include/*

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

27 Feb, 2009

1 commit

  • This patch updates the maple bus to support asynchronous block reads
    and writes as well as generally improving the quality of the code and
    supporting concurrency (all needed to support the Dreamcast visual
    memory unit - a driver will also be posted for that).

    Changes in the bus driver necessitate some changes in the two maple bus
    input drivers that are currently in mainline.

    As well as supporting block reads and writes this code clean up removes
    some poor handling of locks, uses an atomic status variable to serialise
    access to devices and more robusly handles the general performance
    problems of the bus.

    Signed-off-by: Adrian McMenamin
    Signed-off-by: Paul Mundt

    Adrian McMenamin
     

04 Aug, 2008

2 commits


29 Jul, 2008

1 commit

  • This patch cleans up the handling of the maple bus queue to remove
    the risk of races when adding packets. It also removes references to the
    redundant connect and disconnect functions.

    Signed-off-by: Adrian McMenamin
    Signed-off-by: Paul Mundt

    Adrian McMenamin
     

28 Jul, 2008

1 commit


26 Feb, 2008

1 commit


14 Feb, 2008

3 commits


21 Sep, 2007

1 commit

  • The Maple bus is SEGA's proprietary serial bus for peripherals
    (keyboard, mouse, controller etc). The bus is capable of some
    (limited) hotplugging and operates at up to 2 M/bits.

    Drivers of one sort or another existed/exist for 2.4 and a rudimentary
    port, which didn't support the 2.6 device driver model was also in
    existence.

    This driver - for the bus logic itself and for the keyboard (other
    drivers will follow) are based on the code and concepts of those old
    drivers but have lots of completely rewritten parts.

    I have the maple bus code as a built in now as that seems the sane and
    rational way to handle something like that - you either want the bus
    or you don't.

    Signed-off-by: Adrian McMenamin
    Signed-off-by: Paul Mundt

    Adrian McMenamin