<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/include/linux/pci.h, branch linux-2.6.21.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.21.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.21.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2007-03-12T23:31:50Z</updated>
<entry>
<title>[PATCH] pci: Repair pci_save/restore_state so we can restore one save many times.</title>
<updated>2007-03-12T23:31:50Z</updated>
<author>
<name>Eric W. Biederman</name>
</author>
<published>2007-03-08T20:06:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9f35575dfc172f0a93fb464761883c8f49599b7a'/>
<id>urn:sha1:9f35575dfc172f0a93fb464761883c8f49599b7a</id>
<content type='text'>
Because we do not reserve space for the pci-x and pci-e state in struct
pci dev we need to dynamically allocate it.  However because we need
to support restore being called multiple times after a single save
it is never safe to free the buffers we have allocated to hold the
state.

So this patch modifies the save routines to first check to see
if we have already allocated a state buffer before allocating
a new one.  Then the restore routines are modified to not free
the state after restoring it.  Simple and it fixes some subtle
error path handling bugs, that are hard to test for.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Acked-by: Auke Kok &lt;auke-jan.h.kok@intel.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] msi: sanely support hardware level msi disabling</title>
<updated>2007-03-05T15:57:50Z</updated>
<author>
<name>Eric W. Biederman</name>
</author>
<published>2007-03-05T08:30:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f5f2b13129a6541debf8851bae843cbbf48298b7'/>
<id>urn:sha1:f5f2b13129a6541debf8851bae843cbbf48298b7</id>
<content type='text'>
In some cases when we are not using msi we need a way to ensure that the
hardware does not have an msi capability enabled.  Currently the code has been
calling disable_msi_mode to try and achieve that.  However disable_msi_mode
has several other side effects and is only available when msi support is
compiled in so it isn't really appropriate.

Instead this patch implements pci_msi_off which disables all msi and msix
capabilities unconditionally with no additional side effects.

pci_disable_device was redundantly clearing the bus master enable flag and
clearing the msi enable bit.  A device that is not allowed to perform bus
mastering operations cannot generate intx or msi interrupt messages as those
are essentially a special case of dma, and require bus mastering.  So the call
in pci_disable_device to disable msi capabilities was redundant.

quirk_pcie_pxh also called disable_msi_mode and is updated to use pci_msi_off.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Cc: Michael Ellerman &lt;michael@ellerman.id.au&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
Cc: Greg KH &lt;greg@kroah.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>PCI: Make CARDBUS_MEM_SIZE and CARDBUS_IO_SIZE boot options</title>
<updated>2007-02-16T23:30:10Z</updated>
<author>
<name>Atsushi Nemoto</name>
</author>
<published>2007-02-06T00:36:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4516a618a76eae6eb1b37259ad49f39b7b7f33d8'/>
<id>urn:sha1:4516a618a76eae6eb1b37259ad49f39b7b7f33d8</id>
<content type='text'>
CARDBUS_MEM_SIZE was increased to 64MB on 2.6.20-rc2, but larger size might
result in allocation failure for the reserving itself on some platforms
(for example typical 32bit MIPS).  Make it (and CARDBUS_IO_SIZE too)
customizable by "pci=" option for such platforms.

Signed-off-by: Atsushi Nemoto &lt;anemo@mba.ocn.ne.jp&gt;
Cc: Daniel Ritz &lt;daniel.ritz@gmx.ch&gt;
Cc: Ralf Baechle &lt;ralf@linux-mips.org&gt;
Cc: Ivan Kokshaysky &lt;ink@jurassic.park.msu.ru&gt;
Cc: Dominik Brodowski &lt;linux@dominikbrodowski.net&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>[PATCH] sort the devres mess out</title>
<updated>2007-02-11T19:18:07Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2007-02-11T15:41:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5ea8176994003483a18c8fed580901e2125f8a83'/>
<id>urn:sha1:5ea8176994003483a18c8fed580901e2125f8a83</id>
<content type='text'>
* Split the implementation-agnostic stuff in separate files.
* Make sure that targets using non-default request_irq() pull
  kernel/irq/devres.o
* Introduce new symbols (HAS_IOPORT and HAS_IOMEM) defaulting to positive;
  allow architectures to turn them off (we needed these symbols anyway for
  dependencies of quite a few drivers).
* protect the ioport-related parts of lib/devres.o with CONFIG_HAS_IOPORT.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>devres: device resource management</title>
<updated>2007-02-09T22:39:36Z</updated>
<author>
<name>Tejun Heo</name>
</author>
<published>2007-01-20T07:00:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9ac7849e35f705830f7b016ff272b0ff1f7ff759'/>
<id>urn:sha1:9ac7849e35f705830f7b016ff272b0ff1f7ff759</id>
<content type='text'>
Implement device resource management, in short, devres.  A device
driver can allocate arbirary size of devres data which is associated
with a release function.  On driver detach, release function is
invoked on the devres data, then, devres data is freed.

devreses are typed by associated release functions.  Some devreses are
better represented by single instance of the type while others need
multiple instances sharing the same release function.  Both usages are
supported.

devreses can be grouped using devres group such that a device driver
can easily release acquired resources halfway through initialization
or selectively release resources (e.g. resources for port 1 out of 4
ports).

This patch adds devres core including documentation and the following
managed interfaces.

* alloc/free	: devm_kzalloc(), devm_kzfree()
* IO region	: devm_request_region(), devm_release_region()
* IRQ		: devm_request_irq(), devm_free_irq()
* DMA		: dmam_alloc_coherent(), dmam_free_coherent(),
		  dmam_declare_coherent_memory(), dmam_pool_create(),
		  dmam_pool_destroy()
* PCI		: pcim_enable_device(), pcim_pin_device(), pci_is_managed()
* iomap		: devm_ioport_map(), devm_ioport_unmap(), devm_ioremap(),
		  devm_ioremap_nocache(), devm_iounmap(), pcim_iomap_table(),
		  pcim_iomap(), pcim_iounmap()

Signed-off-by: Tejun Heo &lt;htejun@gmail.com&gt;
Signed-off-by: Jeff Garzik &lt;jeff@garzik.org&gt;
</content>
</entry>
<entry>
<title>Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6</title>
<updated>2007-02-08T03:23:44Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2007-02-08T03:23:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=78149df6d565c36675463352d0bfe0000b02b7a7'/>
<id>urn:sha1:78149df6d565c36675463352d0bfe0000b02b7a7</id>
<content type='text'>
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (41 commits)
  Revert "PCI: remove duplicate device id from ata_piix"
  msi: Make MSI useable more architectures
  msi: Kill the msi_desc array.
  msi: Remove attach_msi_entry.
  msi: Fix msi_remove_pci_irq_vectors.
  msi: Remove msi_lock.
  msi: Kill msi_lookup_irq
  MSI: Combine pci_(save|restore)_msi/msix_state
  MSI: Remove pci_scan_msi_device()
  MSI: Replace pci_msi_quirk with calls to pci_no_msi()
  PCI: remove duplicate device id from ipr
  PCI: remove duplicate device id from ata_piix
  PCI: power management: remove noise on non-manageable hw
  PCI: cleanup MSI code
  PCI: make isa_bridge Alpha-only
  PCI: remove quirk_sis_96x_compatible()
  PCI: Speed up the Intel SMBus unhiding quirk
  PCI Quirk: 1k I/O space IOBL_ADR fix on P64H2
  shpchp: delete trailing whitespace
  shpchp: remove DBG_XXX_ROUTINE
  ...
</content>
</entry>
<entry>
<title>msi: Kill msi_lookup_irq</title>
<updated>2007-02-07T23:50:07Z</updated>
<author>
<name>Eric W. Biederman</name>
</author>
<published>2007-01-28T19:42:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ded86d8d37736df67ddeec4ae00e2ec1a5a90b3c'/>
<id>urn:sha1:ded86d8d37736df67ddeec4ae00e2ec1a5a90b3c</id>
<content type='text'>
The function msi_lookup_irq was horrible.  As a side effect of running
it changed dev-&gt;irq, and then the callers would need to change it
back.  In addition it does a global scan through all of the irqs,
which seems to be the sole justification of the msi_lock.

To remove the neede for msi_lookup_irq I added first_msi_irq to struct
pci_dev.  Then depending on the context I replaced msi_lookup_irq with
dev-&gt;first_msi_irq, dev-&gt;msi_enabled, or dev-&gt;msix_enabled.

msi_enabled and msix_enabled were already present in pci_dev for other
reasons.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Acked-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>MSI: Remove pci_scan_msi_device()</title>
<updated>2007-02-07T23:50:07Z</updated>
<author>
<name>Michael Ellerman</name>
</author>
<published>2007-01-25T08:34:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0fcfdabbdbedb3bdc63f29209aeeac805df78a92'/>
<id>urn:sha1:0fcfdabbdbedb3bdc63f29209aeeac805df78a92</id>
<content type='text'>
pci_scan_msi_device() doesn't do anything anymore, so remove it.

Signed-off-by: Michael Ellerman &lt;michael@ellerman.id.au&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI: make isa_bridge Alpha-only</title>
<updated>2007-02-07T23:50:06Z</updated>
<author>
<name>Adrian Bunk</name>
</author>
<published>2007-01-06T20:48:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8255cf35d503db7c1b26ae53b6b7f23ada82316f'/>
<id>urn:sha1:8255cf35d503db7c1b26ae53b6b7f23ada82316f</id>
<content type='text'>
Since isa_bridge is neither assigned any value !NULL nor used on !Alpha, 
there's no reason for providing it.

Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI: mark pci_find_device() as __deprecated</title>
<updated>2007-02-07T23:50:04Z</updated>
<author>
<name>Adrian Bunk</name>
</author>
<published>2006-11-18T00:06:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=429538ad3eeffec4199d8adddd1e9e4c80b2c08b'/>
<id>urn:sha1:429538ad3eeffec4199d8adddd1e9e4c80b2c08b</id>
<content type='text'>
On Fri, Nov 17, 2006 at 09:32:36AM -0500, Alan Cox wrote:
&gt; 
&gt; Soon we should deprecate pci_find_device as well

So let's mark it as __deprecated now, which also has the side effect 
that noone can later whine that removing it might break some shiny 
external modules.

Oh, and if anything starts complaining "But this adds some warnings to 
my kernel build!", he should either first fix the 200 kB (sic) of 
warnings I'm getting in 2.6.19-rc5-mm2 starting at MODPOST or go to hell.

Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Acked-by: Alan Cox &lt;alan@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
</feed>
