aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Merge branch 'amd-iommu/2.6.32' of ↵Ingo Molnar2009-09-04
|\ | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu into core/iommu
| * Merge branch 'amd-iommu/pagetable' into amd-iommu/2.6.32Joerg Roedel2009-09-03
| |\ | | | | | | | | | | | | Conflicts: arch/x86/kernel/amd_iommu.c
| | * x86/amd-iommu: Change iommu_map_page to support multiple page sizesJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a map_size parameter to the iommu_map_page function which makes it generic enough to handle multiple page sizes. This also requires a change to alloc_pte which is also done in this patch. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Support higher level PTEs in iommu_page_unmapJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | This patch changes fetch_pte and iommu_page_unmap to support different page sizes too. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Remove old page table handling macrosJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | These macros are not longer required. So remove them. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Use 2-level page tables for dma_ops domainsJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | The driver now supports a dynamic number of levels for IO page tables. This allows to reduce the number of levels for dma_ops domains by one because a dma_ops domain has usually an address space size between 128MB and 4G. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Remove bus_addr check in iommu_map_pageJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | The driver now supports full 64 bit device address spaces. So this check is not longer required. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Remove last usages of IOMMU_PTE_L0_INDEXJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | This change allows to remove these old macros later. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Change alloc_pte to support 64 bit address spaceJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | This patch changes the alloc_pte function to be able to map pages into the whole 64 bit address space supported by AMD IOMMU hardware from the old limit of 2**39 bytes. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Introduce increase_address_space functionJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | This function will be used to increase the address space size of a protection domain. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Flush domains if address space size was increasedJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | Thist patch introduces the update_domain function which propagates the larger address space of a protection domain to the device table and flushes all relevant DTEs and the domain TLB. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Introduce set_dte_entry functionJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | This function factors out some logic of attach_device to a seperate function. This new function will be used to update device table entries when necessary. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Add a gneric version of amd_iommu_flush_all_devicesJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | This patch adds a generic variant of amd_iommu_flush_all_devices function which flushes only the DTEs for a given protection domain. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Use fetch_pte in amd_iommu_iova_to_physJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | Don't reimplement the page table walker in this function. Use the generic one. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Use fetch_pte in iommu_unmap_pageJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | Instead of reimplementing existing logic use fetch_pte to walk the page table in iommu_unmap_page. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * x86/amd-iommu: Make fetch_pte aware of dynamic mapping levelsJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | This patch changes the fetch_pte function in the AMD IOMMU driver to support dynamic mapping levels. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * | Merge branch 'amd-iommu/passthrough' into amd-iommu/2.6.32Joerg Roedel2009-09-03
| |\ \ | | | | | | | | | | | | | | | | | | | | Conflicts: arch/x86/kernel/amd_iommu.c arch/x86/kernel/amd_iommu_init.c
| | * | x86/amd-iommu: Initialize passthrough mode when requestedJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch enables the passthrough mode for AMD IOMMU by running the initialization function when iommu=pt is passed on the kernel command line. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: Don't detach device from pt domain on driver unbindJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes sure a device is not detached from the passthrough domain when the device driver is unloaded or does otherwise release the device. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: Make sure a device is assigned in passthrough modeJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the IOMMU driver runs in passthrough mode it has to make sure that every device not assigned to an IOMMU-API domain must be put into the passthrough domain instead of keeping it unassigned. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: Align locking between attach_device and detach_deviceJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes the locking behavior between the functions attach_device and __attach_device consistent with the locking behavior between detach_device and __detach_device. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: Fix device table write orderJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The V bit of the device table entry has to be set after the rest of the entry is written to not confuse the hardware. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: Add passthrough mode initialization functionsJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When iommu=pt is passed on kernel command line the devices should run untranslated. This requires the allocation of a special domain for that purpose. This patch implements the allocation and initialization path for iommu=pt. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: Add core functions for pd allocation/freeingJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch factors some code of protection domain allocation into seperate functions. This way the logic can be used to allocate the passthrough domain later. As a side effect this patch fixes an unlikely domain id leakage bug. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/dma: Mark iommu_pass_through as __read_mostlyJoerg Roedel2009-09-03
| | |/ | | | | | | | | | | | | | | | | | | | | | This variable is read most of the time. This patch marks it as such. It also documents the meaning the this variable while at it. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | |
| | \
| *-. \ Merge branches 'gart/fixes', 'amd-iommu/fixes+cleanups' and ↵Joerg Roedel2009-09-03
| |\ \ \ | | | | | | | | | | | | | | | 'amd-iommu/fault-handling' into amd-iommu/2.6.32
| | | * | x86/amd-iommu: Reset command buffer if wait loop failsJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of a panic on an comletion wait loop failure, try to recover from that event from resetting the command buffer. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | | * | x86/amd-iommu: Panic if IOMMU command buffer reset failsJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To prevent the driver from doing recursive command buffer resets, just panic when that recursion happens. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | | * | x86/amd-iommu: Reset command buffer on ILLEGAL_COMMAND_ERRORJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On an ILLEGAL_COMMAND_ERROR the IOMMU stops executing further commands. This patch changes the code to handle this case better by resetting the command buffer in the IOMMU. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | | * | x86/amd-iommu: Add reset function for command buffersJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch factors parts of the command buffer initialization code into a seperate function which can be used to reset the command buffer later. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | | * | x86/amd-iommu: Add function to flush all DTEs on one IOMMUJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This function flushes all DTE entries on one IOMMU for all devices behind this IOMMU. This is required for command buffer resetting later. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | | * | x86/amd-iommu: Introduce function for iommu-local domain flushJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces a function to flush all domain tlbs for on one given IOMMU. This is required later to reset the command buffer on one IOMMU. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | | * | x86/amd-iommu: Dump illegal command on ILLEGAL_COMMAND_ERRORJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds code to dump the command which caused an ILLEGAL_COMMAND_ERROR raised by the IOMMU hardware. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | | * | x86/amd-iommu: Dump fault entry on DTE errorJoerg Roedel2009-09-03
| | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds code to dump the content of the device table entry which caused an ILLEGAL_DEV_TABLE_ENTRY error from the IOMMU hardware. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: fix broken check in amd_iommu_flush_all_devicesJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The amd_iommu_pd_table is indexed by protection domain number and not by device id. So this check is broken and must be removed. Cc: stable@kernel.org Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: Remove redundant 'IOMMU' stringJoerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'IOMMU: ' prefix is not necessary because the DUMP_printk macro already prints its own prefix. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: replace "AMD IOMMU" by "AMD-Vi"Joerg Roedel2009-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch replaces the "AMD IOMMU" printk strings with the official name for the hardware: "AMD-Vi". Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| | * | x86/amd-iommu: Remove some merge helper codeJoerg Roedel2009-09-03
| | |/ | | | | | | | | | | | | | | | | | | This patch removes some left-overs which where put into the code to simplify merging code which also depends on changes in other trees. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * / x86/gart: Do not select AGP for GART_IOMMUPavel Vasilyev2009-09-03
| |/ | | | | | | | | | | | | | | | | There is no dependency from the gart code to the agp code. And since a lot of systems today do not have agp anymore remove this dependency from the kernel configuration. Signed-off-by: Pavel Vasilyev <pavel@pavlinux.ru> Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * autofs4 - fix missed case when changing to use struct pathIan Kent2009-08-31
| | | | | | | | | | | | | | | | | | In the recent change by Al Viro that changes verious subsystems to use "struct path" one case was missed in the autofs4 module which causes mounts to no longer expire. Signed-off-by: Ian Kent <raven@themaw.net> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
| * Merge branch 'fix/hda' of ↵Linus Torvalds2009-08-31
| |\ | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'fix/hda' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: hda - Fix MacBookPro 3,1/4,1 quirk with ALC889A ALSA: hda - Add missing mux check for VT1708
| | * ALSA: hda - Fix MacBookPro 3,1/4,1 quirk with ALC889ATakashi Iwai2009-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the wrong headphone output routing for MacBookPro 3,1/4,1 quirk with ALC889A codec, which caused the silent headphone output. Also, this gives the individual Headphone and Speaker volume controls. Reference: kernel bug#14078 http://bugzilla.kernel.org/show_bug.cgi?id=14078 Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: <stable@kernel.org>
| | * ALSA: hda - Add missing mux check for VT1708Takashi Iwai2009-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In patch_vt1708(), the check of MUX nids is missing and this results in the -EINVAL error in accessing Input Source mixer element. Simpliy adding the call of get_mux_nids() fixes the problem. Reference: Novell bnc#534904 https://bugzilla.novell.com/show_bug.cgi?id=534904 Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | Merge branch 'for_linus' of ↵Linus Torvalds2009-08-31
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: V4L/DVB (12564a): MAINTAINERS: Update gspca sn9c20x name style V4L/DVB (12502): gspca - sn9c20x: Fix gscpa sn9c20x build errors. V4L/DVB (12495): em28xx: Don't call em28xx_ir_init when disable_ir is true V4L/DVB (12457): zr364: wrong indexes V4L/DVB (12451): Update KConfig File to enable SDIO and USB interfaces V4L/DVB (12450): Siano: Fixed SDIO compilation bugs V4L/DVB (12449): adds webcam for Micron device MT9M111 0x143A to em28xx V4L/DVB (12446): sms1xxx: restore GPIO functionality for all Hauppauge devices
| | * | V4L/DVB (12564a): MAINTAINERS: Update gspca sn9c20x name styleJoe Perches2009-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
| | * | V4L/DVB (12502): gspca - sn9c20x: Fix gscpa sn9c20x build errors.Randy Dunlap2009-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reported-by: Toralf Forster <toralf.foerster@gmx.de> Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
| | * | V4L/DVB (12495): em28xx: Don't call em28xx_ir_init when disable_ir is trueShine Liu2009-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should call em28xx_ir_init(dev) only when disable_ir is true. Signed-off-by: Shine Liu <shinel@foxmail.com> Reviewed-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
| | * | V4L/DVB (12457): zr364: wrong indexesRoel Kluin2009-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The order of indexes is reversed Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Antoine Jacquet <royale@zerezo.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
| | * | V4L/DVB (12451): Update KConfig File to enable SDIO and USB interfacesUdi Atar2009-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update KConfig file to enbale selection of SDIO and USB interfaces, and add dependancy on relevant modules. [mchehab@redhat.com: fix merge conflicts, remove default: m, add missing endmenu] Signed-off-by: Udi Atar <udia@siano-ms.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
| | * | V4L/DVB (12450): Siano: Fixed SDIO compilation bugsUdi Atar2009-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed SDIO compilation bugs Also fixed a memory overrun issue in buffer management. Signed-off-by: Udi Atar <udia@siano-ms.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>