]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
Merge branches 'x86/vt-d', 'arm/omap', 'arm/smmu', 's390', 'core' and 'x86/amd' into...
authorJoerg Roedel <jroedel@suse.de>
Mon, 2 Nov 2015 11:03:34 +0000 (20:03 +0900)
committerJoerg Roedel <jroedel@suse.de>
Mon, 2 Nov 2015 11:03:34 +0000 (20:03 +0900)
Conflicts:
drivers/iommu/amd_iommu_types.h

1  2  3  4  5  6  7 
MAINTAINERS
drivers/iommu/Kconfig
drivers/iommu/Makefile
drivers/iommu/amd_iommu.c
drivers/iommu/amd_iommu_init.c
drivers/iommu/amd_iommu_types.h
drivers/iommu/arm-smmu-v3.c
drivers/iommu/arm-smmu.c
drivers/iommu/intel-iommu.c

diff --cc MAINTAINERS
index 747c65316167a70ec147d1254dc33afe7708c149,9f6685f6c5a97062e7d44d04493afe518fa27ab8,5f467845ef725f42cca522e9f02bf93292c42d4a,5f467845ef725f42cca522e9f02bf93292c42d4a,8dfe79589681336988785817aa40b12acbbeaff0,5f467845ef725f42cca522e9f02bf93292c42d4a,274f85405584e1249c8b089b789f1a4d11973500..4a63bebf9e0fdebe5021475c83c79a0faa8c0e82
@@@@@@@@ -11409,10 -11378,19 -11377,10 -11377,10 -11385,19 -11377,10 -11364,21 +11416,10 @@@@@@@@ W:    http://oops.ghostprotocols.net:81/bl
       S:       Maintained
       F:       drivers/net/wireless/wl3501*
       
 -  - -WM97XX TOUCHSCREEN DRIVERS
 -  - -M:       Mark Brown <broonie@kernel.org>
 -  - -M:       Liam Girdwood <lrg@slimlogic.co.uk>
 -  - -L:       linux-input@vger.kernel.org
 -  -  W:       https://github.com/CirrusLogic/linux-drivers/wiki
      -T:       git git://opensource.wolfsonmicro.com/linux-2.6-touch
      -W:       http://opensource.wolfsonmicro.com/node/7
 -  - -S:       Supported
 -  - -F:       drivers/input/touchscreen/*wm97*
 -  - -F:       include/linux/wm97xx.h
 -  - -
       WOLFSON MICROELECTRONICS DRIVERS
       L:       patches@opensource.wolfsonmicro.com
      -T:       git git://opensource.wolfsonmicro.com/linux-2.6-asoc
      -T:       git git://opensource.wolfsonmicro.com/linux-2.6-audioplus
      -W:       http://opensource.wolfsonmicro.com/content/linux-drivers-wolfson-devices
      +T:       git https://github.com/CirrusLogic/linux-drivers.git
      +W:       https://github.com/CirrusLogic/linux-drivers/wiki
       S:       Supported
       F:       Documentation/hwmon/wm83??
       F:       arch/arm/mach-s3c64xx/mach-crag6410*
Simple merge
Simple merge
index 532e2a211fe1cf9b3d7ff71d36cbcfde49bd29df,f82060e778a23bb7a8901ef2356d42b5363d93a6,f82060e778a23bb7a8901ef2356d42b5363d93a6,f82060e778a23bb7a8901ef2356d42b5363d93a6,f82060e778a23bb7a8901ef2356d42b5363d93a6,8d74e38914ddfdaa1cd052059493c00905f769a6,02b8ad76160027585d25bc74db2925c89625fe47..0d533bba4ad18097e447be3dca3fa41e5d9abeab
@@@@@@@@ -2005,17 -2005,8 -2005,8 -2005,8 -2005,8 -2005,8 -1913,10 +1913,19 @@@@@@@@ static void do_attach(struct iommu_dev_
       static void do_detach(struct iommu_dev_data *dev_data)
       {
        struct amd_iommu *iommu;
++++++  u16 alias;
 +++++ 
 ++++++ /*
 ++++++  * First check if the device is still attached. It might already
 ++++++  * be detached from its domain because the generic
 ++++++  * iommu_detach_group code detached it and we try again here in
 ++++++  * our alias handling.
 ++++++  */
 ++++++ if (!dev_data->domain)
 ++++++         return;
      +
        iommu = amd_iommu_rlookup_table[dev_data->devid];
++++++  alias = amd_iommu_alias_table[dev_data->devid];
       
        /* decrease reference counters */
        dev_data->domain->dev_iommu[iommu->index] -= 1;
index 1b066e7d144d6fdc0043cfbfa340ce2e7a209c50,5ef347a13cb5d54789c07869b0527d81cb24365e,5ef347a13cb5d54789c07869b0527d81cb24365e,5ef347a13cb5d54789c07869b0527d81cb24365e,5ef347a13cb5d54789c07869b0527d81cb24365e,5ef347a13cb5d54789c07869b0527d81cb24365e,dd92a8d8f0ca1c55da1afb2f966ff4c0e2811910..a7cc3996d3b6d6e5e7978b61b8939dafd433a4f7
@@@@@@@@ -604,15 -604,15 -604,15 -604,15 -604,15 -604,15 -577,12 +577,12 @@@@@@@@ static void __init free_event_buffer(st
       }
       
       /* allocates the memory where the IOMMU will log its events to */
------ static u8 * __init alloc_ppr_log(struct amd_iommu *iommu)
++++++ static int __init alloc_ppr_log(struct amd_iommu *iommu)
       {
------  iommu->ppr_log = (u8 *)__get_free_pages(GFP_KERNEL | __GFP_ZERO,
------                                          get_order(PPR_LOG_SIZE));
 ----- 
 -----  if (iommu->ppr_log == NULL)
 -----          return NULL;
++++++  iommu->ppr_log = (void *)__get_free_pages(GFP_KERNEL | __GFP_ZERO,
++++++                                            get_order(PPR_LOG_SIZE));
       
-       if (iommu->ppr_log == NULL)
-               return NULL;
-      
------  return iommu->ppr_log;
++++++  return iommu->ppr_log ? 0 : -ENOMEM;
       }
       
       static void iommu_enable_ppr_log(struct amd_iommu *iommu)
index c9b64722f62309d76e56ad52c5a3691737ffd6ac,f65908841be0184db61f049bc8e2b5a622ca2fbe,f65908841be0184db61f049bc8e2b5a622ca2fbe,f65908841be0184db61f049bc8e2b5a622ca2fbe,f65908841be0184db61f049bc8e2b5a622ca2fbe,f65908841be0184db61f049bc8e2b5a622ca2fbe,fc9501dc706750a934399c628b0cc8686ae2c266..08166ae3b6a4b3c6170e70d7cd3e23353e2ba6ab
       #define IOMMU_PTE_IR (1ULL << 61)
       #define IOMMU_PTE_IW (1ULL << 62)
       
 ----- #define DTE_FLAG_IOTLB   (0x01UL << 32)
 ----- #define DTE_FLAG_GV      (0x01ULL << 55)
++++++ #define DTE_FLAG_IOTLB   (1ULL << 32)
++++++ #define DTE_FLAG_GV      (1ULL << 55)
 ++++++#define DTE_FLAG_MASK    (0x3ffULL << 32)
-      #define DTE_FLAG_IOTLB   (0x01UL << 32)
-      #define DTE_FLAG_GV      (0x01ULL << 55)
       #define DTE_GLX_SHIFT    (56)
       #define DTE_GLX_MASK     (3)
       
Simple merge
index 48a39dfa977795deb8271dc5b34a7b3e0be002d0,48a39dfa977795deb8271dc5b34a7b3e0be002d0,48a39dfa977795deb8271dc5b34a7b3e0be002d0,7c20a68b5a95937f5e339ed603e8cc5119d703b0,48a39dfa977795deb8271dc5b34a7b3e0be002d0,b4c0629d7f7d96170cafaf47884c3c5b4742fc72,48a39dfa977795deb8271dc5b34a7b3e0be002d0..47dc7a793f5cf070c50a2f2f98c15058582bb9ee
@@@@@@@@ -1363,10 -1363,10 -1363,10 -1366,10 -1363,10 -1348,13 -1363,10 +1351,13 @@@@@@@@ static int arm_smmu_init_platform_devic
       
       static int arm_smmu_add_device(struct device *dev)
       {
----- - if (dev_is_pci(dev))
----- -         return arm_smmu_add_pci_device(to_pci_dev(dev));
+++++ + struct iommu_group *group;
+++ + +
   -    return arm_smmu_add_platform_device(dev);
+++++ + group = iommu_group_get_for_dev(dev);
+++++ + if (IS_ERR(group))
+++++ +         return PTR_ERR(group);
   +   
--- - - return arm_smmu_add_platform_device(dev);
+++++ + return 0;
       }
       
       static void arm_smmu_remove_device(struct device *dev)
Simple merge