24 Mar, 2010

1 commit

  • Instead of requiring PCMCIA socket drivers to call various functions
    during their (bus) resume and suspend functions, register an own
    dev_pm_ops for this class. This fixes several suspend/resume bugs
    seen on db1xxx-ss, and probably on some other socket drivers, too.

    With regard to the asymmetry with only _noirq suspend, but split up
    resume, please see bug 14334 and commit 9905d1b411946fb3 .

    Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     

18 Feb, 2010

6 commits


18 Jan, 2010

2 commits

  • At least no in-kernel CardBus-capable PCI driver makes use of the CIS
    access functions. Therefore, it seems sensible to remove this unused
    code, and cleanup cardbus.c a lot.

    CC: Jesse Barnes
    CC: Linus Torvalds
    Tested-by: Wolfram Sang
    Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     
  • During a suspend/resume cycle, an user may change the card in the
    PCMCIA/CardBus slot. The pcmcia_core can at least look at the
    socket state to check whether it is the same.

    For PCMCIA devices, move the detection and handling of such a
    change to ds.c.

    For CardBus devices, the PCI hotplug interface doesn't offer a "rescan"
    facility which also _removes_ devices no longer to be found behind a
    bridge. Therefore, remove and re-add all devices unconditionally.

    CC: Jesse Barnes
    CC: Linus Torvalds
    Tested-by: Wolfram Sang
    Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     

08 Dec, 2009

1 commit

  • Fix several CodingStyle issues in drivers/pcmcia/ . checkpatch.pl no longer
    reports errors in the PCMCIA core. The remaining warnings mostly relate to
    wrong indent -- PCMCIA historically used 4 spaces --, to lines over 80
    characters and to hundreds of typedefs. The cleanup of those will follow
    in the future.

    Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     

06 Dec, 2009

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (50 commits)
    pcmcia: rework the irq_req_t typedef
    pcmcia: remove deprecated handle_to_dev() macro
    pcmcia: pcmcia_request_window() doesn't need a pointer to a pointer
    pcmcia: remove unused "window_t" typedef
    pcmcia: move some window-related code to pcmcia_ioctl.c
    pcmcia: Change window_handle_t logic to unsigned long
    pcmcia: Pass struct pcmcia_socket to pcmcia_get_mem_page()
    pcmcia: Pass struct pcmcia_device to pcmcia_map_mem_page()
    pcmcia: Pass struct pcmcia_device to pcmcia_release_window()
    drivers/pcmcia: remove unnecessary kzalloc
    pcmcia: correct handling for Zoomed Video registers in topic.h
    pcmcia: fix printk formats
    pcmcia: autoload module pcmcia
    pcmcia/staging: update comedi drivers
    PCMCIA: stop duplicating pci_irq in soc_pcmcia_socket
    PCMCIA: ss: allow PCI IRQs > 255
    PCMCIA: soc_common: remove 'dev' member from soc_pcmcia_socket
    PCMCIA: soc_common: constify soc_pcmcia_socket ops member
    PCMCIA: sa1111: remove duplicated initializers
    PCMCIA: sa1111: wrap soc_pcmcia_socket to contain sa1111 specific data
    ...

    Linus Torvalds
     

29 Nov, 2009

2 commits

  • Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     
  • Logic changes based on top of the other patches:

    This set of patches changed window_handle_t from being a pointer to an
    unsigned long. The unsigned long is now a simple index into socket->win[].
    Going from a pointer to unsigned long should leave the user space interface
    unchanged unless I'm mistaken.

    This change results in code that is less error prone and a user space
    interface which is much cleaner and safer. A nice side effect is that we
    are also are able to remove all members except one from window_t.

    [ linux@dominikbrodowski.net:
    Update to 2.6.31. Also, a plain "index" to socket->win[] does not
    work, as several codepaths rely on "window_handle_t" being
    non-zero if used. Therefore, set the window_handle_t to the
    socket->win[] index + 1. ]

    CC: netdev@vger.kernel.org
    Signed-off-by: Magnus Damm
    Signed-off-by: Dominik Brodowski

    Magnus Damm
     

09 Nov, 2009

1 commit


03 Nov, 2009

1 commit

  • Commit 0c570cdeb8fdfcb354a3e9cd81bfc6a09c19de0c
    (PM / yenta: Fix cardbus suspend/resume regression) caused resume to
    fail on systems with two CardBus bridges. While the exact nature
    of the failure is not known at the moment, it can be worked around by
    splitting the yenta resume into an early part, executed during the
    early phase of resume, that will only resume the socket and power it
    up if there was a card in it during suspend, and a late part,
    executed during "regular" resume, that will carry out all of the
    remaining yenta resume operations.

    Fixes http://bugzilla.kernel.org/show_bug.cgi?id=14334, which is a
    listed regression from 2.6.31.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Dominik Brodowski
    Reported-by: Stephen J. Gowdy
    Tested-by: Jose Marino

    Rafael J. Wysocki
     

29 Sep, 2009

1 commit


16 Sep, 2009

1 commit

  • Physical addresses are currently represented as int or long types.
    However, this does not work for processors like the PPC440EPx, which
    is a 32-bit processor with a 36-bit address space. This patch uses
    the phys_addr_t type, which correctly holds a 36-bit address on
    this processor.

    Signed-off-by: Steven A. Falco
    Signed-off-by: Wolfram Sang
    Signed-off-by: Greg Kroah-Hartman

    Steven A. Falco
     

26 Aug, 2008

1 commit


03 Aug, 2008

1 commit


24 Jun, 2008

3 commits


06 Feb, 2008

1 commit

  • Remove kio_addr_t, and replace it with unsigned int. No known architecture
    needs more than 32 bits for IO addresses and ports and having a separate type
    for it is just messy.

    Signed-off-by: Olof Johansson
    Cc: Christoph Hellwig
    Cc: Matthew Wilcox
    Cc: Alan Cox
    Cc: Dominik Brodowski
    Cc: Benjamin Herrenschmidt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Olof Johansson
     

08 Feb, 2007

1 commit


05 Dec, 2006

1 commit

  • s->functions needs to be initialized earlier, for the "let's see
    how high it increases" approach means that pcmcia_request_irq()
    (which makes use of this value) is confused, and might request
    an exclusive IRQ first even though it is not supposed to.

    Also, a CIS override autoloaded using the firmware loader may
    allow for the use of more or less functions in a multifunction
    card. Therefore, we may need to schedule a call to add this
    second function later on, or simply remove the other function
    (it's always the first -valid- function which reaches this
    codepath).

    Many thanks to Fabrice Bellet for debugging and testing patches.

    Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     

26 Apr, 2006

1 commit


01 Apr, 2006

1 commit


31 Mar, 2006

4 commits


06 Jan, 2006

3 commits


31 Oct, 2005

1 commit

  • I recently picked up my older work to remove unnecessary #includes of
    sched.h, starting from a patch by Dave Jones to not include sched.h
    from module.h. This reduces the number of indirect includes of sched.h
    by ~300. Another ~400 pointless direct includes can be removed after
    this disentangling (patch to follow later).
    However, quite a few indirect includes need to be fixed up for this.

    In order to feed the patches through -mm with as little disturbance as
    possible, I've split out the fixes I accumulated up to now (complete for
    i386 and x86_64, more archs to follow later) and post them before the real
    patch. This way this large part of the patch is kept simple with only
    adding #includes, and all hunks are independent of each other. So if any
    hunk rejects or gets in the way of other patches, just drop it. My scripts
    will pick it up again in the next round.

    Signed-off-by: Tim Schmielau
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tim Schmielau
     

26 Sep, 2005

1 commit

  • Echo Audio cardbus products are known to be incompatible with EnE bridges.
    in order to maybe solve the problem a EnE specific test bit has to be set,
    another cleared...but other setups have a good chance to break when just
    forcing the bits. so do the whole thingy automatically.

    The patch adds a hook in cb_alloc() that allows special tuning for the
    different chipsets. for ene just match the Echo products and set/clear the
    test bits, defaults to do the same thing as w/o the patch to not break
    working setups.

    Signed-off-by: Daniel Ritz
    Cc: Linus Torvalds
    Signed-off-by: Andrew Morton
    Signed-off-by: Dominik Brodowski

    Daniel Ritz
     

28 Jun, 2005

2 commits


24 Jun, 2005

1 commit

  • - make boot-up card recognition more reliable (ie. redo interrogation
    always if there is no valid 'card inserted' state) (and yes, i saw it
    happening on an o2micro controller that both CB_CBARD and CB_16BITCARD
    bits were set at the same time)

    - also redo interrogation before probing the ISA interrupts. it's safer
    to do the probing with the socket in a clean state.

    - make card insert detect more reliable. yenta_get_status() now returns
    SS_PENDING as long as the card is not completley inserted and one of the
    voltage bits is set. also !CB_CBARD doesn't mean CB_16BITCARD. there is
    CB_NOTACARD as well, so make an explicit check for CB_16BITCARD.

    - for TI bridges: disable IRQs during power-on. in all-serial and tied
    interrupt mode the interrupts are always disabled for single-slot
    controllers. for two-slot contollers the disabling is only done when the
    other slot is empty. to force disabling there is a new module parameter
    now: pwr_irqs_off=Y (which is a regression for working setups. that's
    why it's an option, only use when required)

    - modparm to disable ISA interrupt probing (isa_probe, defaults to on)

    - remove unneeded code/cleanups (ie. merge yenta_events() into
    yenta_interrupts())

    Signed-off-by: Daniel Ritz
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Daniel Ritz
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds