]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge branches 'x86/amd', 'x86/vt-d', 'arm/omap', 'arm/smmu', 'arm/renesas', 's390...
authorJoerg Roedel <jroedel@suse.de>
Sun, 1 Nov 2015 15:12:31 +0000 (00:12 +0900)
committerJoerg Roedel <jroedel@suse.de>
Sun, 1 Nov 2015 15:12:31 +0000 (00:12 +0900)
Conflicts:
drivers/iommu/amd_iommu_types.h

1  2  3  4  5  6  7  8  9 
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 9de185da5f5b0dfe1be0730b8248b3aff44e0c84,274f85405584e1249c8b089b789f1a4d11973500,9f6685f6c5a97062e7d44d04493afe518fa27ab8,5f467845ef725f42cca522e9f02bf93292c42d4a,5f467845ef725f42cca522e9f02bf93292c42d4a,b8577ad9b8a24debb71b8834ce371091754f30c1,8dfe79589681336988785817aa40b12acbbeaff0,5f467845ef725f42cca522e9f02bf93292c42d4a,9f6685f6c5a97062e7d44d04493afe518fa27ab8..92fbf458c4163629458f7d45a77461d198647d9a
@@@@@@@@@@ -11401,10 -11364,21 -11378,19 -11377,10 -11377,10 -11401,10 -11385,19 -11377,10 -11378,19 +11408,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
 -       T:     git git://opensource.wolfsonmicro.com/linux-2.6-touch
 -       W:     http://opensource.wolfsonmicro.com/node/7
  -   - -W:     https://github.com/CirrusLogic/linux-drivers/wiki
 --   - -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 08d2775887f7add00e44858cc6bf4a5eece6e260,02b8ad76160027585d25bc74db2925c89625fe47,f82060e778a23bb7a8901ef2356d42b5363d93a6,f82060e778a23bb7a8901ef2356d42b5363d93a6,f82060e778a23bb7a8901ef2356d42b5363d93a6,08d2775887f7add00e44858cc6bf4a5eece6e260,f82060e778a23bb7a8901ef2356d42b5363d93a6,8d74e38914ddfdaa1cd052059493c00905f769a6,532e2a211fe1cf9b3d7ff71d36cbcfde49bd29df..0d533bba4ad18097e447be3dca3fa41e5d9abeab
@@@@@@@@@@ -2005,17 -1913,10 -2005,8 -2005,8 -2005,8 -2005,17 -2005,8 -2005,8 -2005,17 +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,dd92a8d8f0ca1c55da1afb2f966ff4c0e2811910,5ef347a13cb5d54789c07869b0527d81cb24365e,5ef347a13cb5d54789c07869b0527d81cb24365e,5ef347a13cb5d54789c07869b0527d81cb24365e,1b066e7d144d6fdc0043cfbfa340ce2e7a209c50,5ef347a13cb5d54789c07869b0527d81cb24365e,5ef347a13cb5d54789c07869b0527d81cb24365e,1b066e7d144d6fdc0043cfbfa340ce2e7a209c50..a7cc3996d3b6d6e5e7978b61b8939dafd433a4f7
@@@@@@@@@@ -604,15 -577,12 -604,15 -604,15 -604,15 -604,15 -604,15 -604,15 -604,15 +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 f65908841be0184db61f049bc8e2b5a622ca2fbe,fc9501dc706750a934399c628b0cc8686ae2c266,f65908841be0184db61f049bc8e2b5a622ca2fbe,f65908841be0184db61f049bc8e2b5a622ca2fbe,f65908841be0184db61f049bc8e2b5a622ca2fbe,f65908841be0184db61f049bc8e2b5a622ca2fbe,f65908841be0184db61f049bc8e2b5a622ca2fbe,f65908841be0184db61f049bc8e2b5a622ca2fbe,c9b64722f62309d76e56ad52c5a3691737ffd6ac..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,48a39dfa977795deb8271dc5b34a7b3e0be002d0,7c20a68b5a95937f5e339ed603e8cc5119d703b0,48a39dfa977795deb8271dc5b34a7b3e0be002d0,48a39dfa977795deb8271dc5b34a7b3e0be002d0,b4c0629d7f7d96170cafaf47884c3c5b4742fc72,48a39dfa977795deb8271dc5b34a7b3e0be002d0..47dc7a793f5cf070c50a2f2f98c15058582bb9ee
@@@@@@@@@@ -1363,10 -1363,10 -1363,10 -1363,10 -1366,10 -1363,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