Merge tag 'lsk-v3.10-android-15.02'
authorHuang, Tao <huangtao@rock-chips.com>
Thu, 5 Mar 2015 09:11:40 +0000 (17:11 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Thu, 5 Mar 2015 09:11:40 +0000 (17:11 +0800)
LSK Android 15.02 v3.10

Conflicts:
drivers/Kconfig
drivers/regulator/core.c
include/linux/of.h

18 files changed:
1  2 
Makefile
arch/arm/Kconfig
arch/arm/mm/dma-mapping.c
drivers/Kconfig
drivers/Makefile
drivers/base/platform.c
drivers/i2c/i2c-core.c
drivers/of/base.c
drivers/of/fdt.c
drivers/pinctrl/core.c
drivers/regulator/core.c
drivers/staging/android/ion/ion.c
drivers/staging/android/ion/ion_heap.c
drivers/staging/android/ion/ion_priv.h
drivers/staging/android/ion/ion_system_heap.c
drivers/usb/gadget/android.c
include/linux/of.h
kernel/sys.c

diff --cc Makefile
Simple merge
Simple merge
Simple merge
diff --cc drivers/Kconfig
index 45a3e8015410c4e2ca7f6e6b63a6a207ce4c16bb,4f990ce9515ac28f7fb010ec9ff64bd2fa5f9ac4..27d02dccf21bfc2431a1ce61b3d0dd98eafe7cf8
mode 100755,100644..100755
@@@ -168,10 -168,8 +168,12 @@@ source "drivers/ipack/Kconfig
  
  source "drivers/reset/Kconfig"
  
 +source "drivers/phy/Kconfig"
 +
  source "drivers/gator/Kconfig"
  
 +source "drivers/headset_observe/Kconfig"
 +
+ source "drivers/android/Kconfig"
  endmenu
index a77fca50d5505cff8689081eabe8a0679bea1905,3774b56c5d80c3dc961479ba1f9e5eff85c6ea20..6f90a3177c700d40a7fcc6b2236fd10a7d75c3c6
mode 100755,100644..100755
@@@ -157,5 -155,5 +157,6 @@@ obj-$(CONFIG_IPACK_BUS)            += ipack
  obj-$(CONFIG_NTB)             += ntb/
  
  obj-$(CONFIG_GATOR)           += gator/
 +obj-y                         += headset_observe/
  obj-$(CONFIG_CORESIGHT)               += coresight/
+ obj-$(CONFIG_ANDROID)         += android/
Simple merge
index c604ce8661b50899a37ddb9e4641fb4de668f9fd,780599ce4657c74e433e48121453a82fcbec09af..c1f8ccd40b15dbf283772c062f58f3bf9c4bf5b0
mode 100755,100644..100755
Simple merge
Simple merge
Simple merge
index d7b9b4dc8a3db12ef7094e54e80b959289fc142c,f3082ca20f116b376f86d4f7ec06df9c91c0a552..bc9aed9b1ec7a2a549e4f9bd0ff60803c49df06e
@@@ -1363,36 -1410,7 +1363,36 @@@ struct regulator *regulator_get_exclusi
  }
  EXPORT_SYMBOL_GPL(regulator_get_exclusive);
  
- /* Locks held by regulator_put() */
 +/**
 + * regulator_get_optional - obtain optional access to a regulator.
 + * @dev: device for regulator "consumer"
 + * @id: Supply name or regulator ID.
 + *
 + * Returns a struct regulator corresponding to the regulator producer,
 + * or IS_ERR() condition containing errno.  Other consumers will be
 + * unable to obtain this reference is held and the use count for the
 + * regulator will be initialised to reflect the current state of the
 + * regulator.
 + *
 + * This is intended for use by consumers for devices which can have
 + * some supplies unconnected in normal use, such as some MMC devices.
 + * It can allow the regulator core to provide stub supplies for other
 + * supplies requested using normal regulator_get() calls without
 + * disrupting the operation of drivers that can handle absent
 + * supplies.
 + *
 + * Use of supply names configured via regulator_set_device_supply() is
 + * strongly encouraged.  It is recommended that the supply name used
 + * should match the name used for the supply and/or the relevant
 + * device pins in the datasheet.
 + */
 +struct regulator *regulator_get_optional(struct device *dev, const char *id)
 +{
 +      return _regulator_get(dev, id, 0);
 +}
 +EXPORT_SYMBOL_GPL(regulator_get_optional);
 +
+ /* regulator_list_mutex lock held by regulator_put() */
  static void _regulator_put(struct regulator *regulator)
  {
        struct regulator_dev *rdev;
index 44178ca69a7522329a96acf0592fabb1a9bfdf84,698e363be5512245b774c099554ff2dacb2ab498..f497979b6c4051ef317d116634661b6cd58c3239
mode 100755,100644..100755
@@@ -2034,20 -1615,9 +2043,21 @@@ void __init ion_reserve(struct ion_plat
                if (data->heaps[i].size == 0)
                        continue;
  
 -              if (data->heaps[i].base == 0) {
 +              if (data->heaps[i].id==ION_CMA_HEAP_ID) {
 +                      struct device *dev = (struct device*)data->heaps[i].priv;
 +                      int ret = dma_declare_contiguous(dev,
 +                                              data->heaps[i].size,
 +                                              data->heaps[i].base,
 +                                              MEMBLOCK_ALLOC_ANYWHERE);
 +                      if (ret) {
 +                              pr_err("%s: dma_declare_contiguous failed %d\n",
 +                                      __func__, ret);
 +                              continue;
 +                      };
 +                      data->heaps[i].base = PFN_PHYS(dev_get_cma_area(dev)->base_pfn);
 +              } else if (data->heaps[i].base == 0) {
                        phys_addr_t paddr;
                        paddr = memblock_alloc_base(data->heaps[i].size,
                                                    data->heaps[i].align,
                                                    MEMBLOCK_ALLOC_ANYWHERE);
index 5c838ee384f9a7c0ea390dcf984b431b4a8ca428,e1bbd8b1b4f4b700d544832a21d0dd210b62b02b..7201bc55b3213b2d5c56809f376a716708f23f52
mode 100755,100644..100755
index 671b05248edd0077c51c626e5454df411e211169,8871f35f384b18224dd79a357aad87d4c3cd8b76..aaac72219b24d446de34d7a155a4100fc515f8a9
mode 100755,100644..100755
index e53e0456787eada34ee292fea146b3b0a679cde4,5945445ee5f38031c33d84e5eb4b2e55e04e8b87..2476b0358d11bf735c9763b027047ca4e88ca0ed
mode 100755,100644..100755
index 58c2b3c1c4d1a0ce99546742caf2d7ddad41cdd1,83b1240d9b19f8112b7070daeca505eb53c2e7a4..8027ec940f96a571a0806a7bf1045a9826406789
mode 100755,100644..100755
Simple merge
diff --cc kernel/sys.c
Simple merge