03 Mar, 2010

1 commit

  • Fix most of the remaining CodingStyle issues in drivers/pcmcia , which
    related to wrong indent -- PCMCIA historically used 4 spaces. Also, remove
    a custom min() implementation with the generic one.

    Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     

18 Jan, 2010

1 commit

  • 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
     

17 Dec, 2009

1 commit

  • The cardbus code creates PCI devices without ever going through the
    necessary fixup bits and pieces that normal PCI devices go through.

    There's in fact a commented out call to pcibios_fixup_bus() in there,
    it's commented because ... it doesn't work.

    I could make pcibios_fixup_bus() do the right thing on powerpc easily
    but I felt it cleaner instead to provide a specific hook pci_fixup_cardbus
    for which a weak empty implementation is provided by the PCI core.

    This fixes cardbus on powerbooks and probably all other PowerPC
    platforms which was broken completely for ever on some platforms and
    since 2.6.31 on others such as PowerBooks when we made the DMA ops
    mandatory (since those are setup by the fixups).

    Acked-by: Dominik Brodowski
    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Jesse Barnes

    Benjamin Herrenschmidt
     

15 Dec, 2009

1 commit


12 Dec, 2009

1 commit

  • * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (109 commits)
    PCI: fix coding style issue in pci_save_state()
    PCI: add pci_request_acs
    PCI: fix BUG_ON triggered by logical PCIe root port removal
    PCI: remove ifdefed pci_cleanup_aer_correct_error_status
    PCI: unconditionally clear AER uncorr status register during cleanup
    x86/PCI: claim SR-IOV BARs in pcibios_allocate_resource
    PCI: portdrv: remove redundant definitions
    PCI: portdrv: remove unnecessary struct pcie_port_data
    PCI: portdrv: minor cleanup for pcie_port_device_register
    PCI: portdrv: add missing irq cleanup
    PCI: portdrv: enable device before irq initialization
    PCI: portdrv: cleanup service irqs initialization
    PCI: portdrv: check capabilities first
    PCI: portdrv: move PME capability check
    PCI: portdrv: remove redundant pcie type calculation
    PCI: portdrv: cleanup pcie_device registration
    PCI: portdrv: remove redundant pcie_port_device_probe
    PCI: Always set prefetchable base/limit upper32 registers
    PCI: read-modify-write the pcie device control register when initiating pcie flr
    PCI: show dma_mask bits in /sys
    ...

    Fixed up conflicts in:
    arch/x86/kernel/amd_iommu_init.c
    drivers/pci/dmar.c
    drivers/pci/hotplug/acpiphp_glue.c

    Linus Torvalds
     

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
     

09 Nov, 2009

1 commit

  • Use the generic "dynamic debug" infrastructure instead of
    CONIG_PCMCIA_DEBUG in the PCMCIA core (pcmcia.ko and pcmcia_core.ko). To
    enable debugging, enable CONFIG_DYNAMIC_DEBUG, mount debugfs and

    $ echo -n 'module pcmcia_core +p' > /sys/kernel/debug/dynamic_debug/control

    for the complete module "pcmcia_core", for example. For more detailled
    instructions, please see Documentation/dynamic-debug-howto.txt

    Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     

05 Nov, 2009

1 commit

  • For non hotplug PCI devices, the system firmware usually configures
    CLS correctly. For pccard devices system firmware can't do it and
    Linux PCI layer doesn't do it either. Unfortunately this leads to
    poor performance for certain devices (sata_sil). Unless MWI, which
    requires separate configuration, is to be used, CLS doesn't affect
    correctness, so the configuration should be harmless.

    This patch makes pci_set_cacheline_size() always built and export it
    and make pccard call it during attach.

    Please note that some other PCI hotplug drivers (shpchp and pciehp)
    also configure CLS on hotplug.

    Signed-off-by: Tejun Heo
    Cc: Daniel Ritz
    Cc: Dominik Brodowski
    Cc: Greg KH
    Cc: Kenji Kaneshige
    Cc: Axel Birndt
    Signed-off-by: Jesse Barnes

    Tejun Heo
     

23 Aug, 2008

1 commit

  • Instead of using own error or success codes, the PCMCIA code should rely on
    the generic return values. Therefore, replace all occurrences of CS_SUCCESS
    with 0.

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

    Dominik Brodowski
     

24 Jun, 2008

2 commits

  • IN_CARD_SERVICES was #define'd but not used, so let's remove it.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Dominik Brodowski

    Adrian Bunk
     
  • The code in include/pcmcia/bulkmem.h was only kept for compatibility reasons.
    Therefore, move the remaining region_info_t definition to ds.h

    [linux@dominikbrodowski.net: do not modify the IOCTL, move definition to
    ds.h, and update changelog]
    Signed-off-by: Magnus Damm
    Signed-off-by: Dominik Brodowski

    Magnus Damm
     

01 May, 2008

1 commit

  • cb_alloc() uses a function (pci_scan_slot) that will be annotated __devinit.

    Annotate cb_alloc() with __ref to tell modpost to ignore this reference.

    Signed-off-by: Sam Ravnborg
    Cc: Dominik Brodowski
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sam Ravnborg
     

06 Feb, 2008

1 commit

  • pci_get_slot does a pci_dev_get, so pci_dev_put needs to be called in an
    error case.

    An extract of the semantic match used to find the problem is as follows:
    (http://www.emn.fr/x-info/coccinelle/)

    //
    @@
    type find1.T,T1,T2;
    identifier find1.E;
    statement find1.S;
    expression x1,x2,x3;
    expression find1.test;
    int ret != 0;
    @@

    T E;
    ...
    (
    * E = pci_get_slot(...);
    if (E == NULL) S
    |
    * if ((E = pci_get_slot(...)) == NULL)
    S
    )
    ... when != pci_dev_put(...,(T1)E,...)
    when != if (E != NULL) { ... pci_dev_put(...,(T1)E,...); ...}
    when != x1 = (T1)E
    when != E = x3;
    when any
    if (test) {
    ... when != pci_dev_put(...,(T2)E,...)
    when != if (E != NULL) { ... pci_dev_put(...,(T2)E,...); ...}
    when != x2 = (T2)E
    (
    * return;
    |
    * return ret;
    )
    }
    //

    Signed-off-by: Julia Lawall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Julia Lawall
     

18 Feb, 2007

1 commit


01 Oct, 2006

1 commit


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
     

08 Jul, 2005

1 commit


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