1. 31 1月, 2013 1 次提交
  2. 30 1月, 2013 1 次提交
    • S
      regulator: clear state each invocation of of_regulator_match · a2f95c36
      Stephen Warren 提交于
      of_regulator_match() saves some dynamcially allocated state into the
      match table that's passed to it. By implementation and not contract, for
      each match table entry, if non-NULL state is already present,
      of_regulator_match() will not overwrite it. of_regulator_match() is
      typically called each time a regulator is probe()d. This means it is
      called with the same match table over and over again if a regulator
      triggers deferred probe. This results in stale, kfree()d data being left
      in the match table from probe to probe, which causes a variety of crashes
      or use of invalid data.
      
      Explicitly free all output state from of_regulator_match() before
      generating new results in order to avoid this.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Cc: stable@vger.kernel.org
      a2f95c36
  3. 27 1月, 2013 3 次提交
  4. 26 1月, 2013 3 次提交
  5. 24 1月, 2013 2 次提交
  6. 10 1月, 2013 1 次提交
  7. 08 1月, 2013 2 次提交
  8. 04 1月, 2013 1 次提交
    • G
      Drivers: regulator: remove __dev* attributes. · 3d68dfe3
      Greg Kroah-Hartman 提交于
      CONFIG_HOTPLUG is going away as an option.  As a result, the __dev*
      markings need to be removed.
      
      This change removes the use of __devinit, __devexit_p, __devinitdata,
      __devinitconst, and __devexit from these drivers.
      
      Based on patches originally written by Bill Pemberton, but redone by me
      in order to handle some of the coding style issues better, by hand.
      
      Cc: Bill Pemberton <wfp5p@virginia.edu>
      Cc: Liam Girdwood <lrg@ti.com>
      Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      3d68dfe3
  9. 03 1月, 2013 1 次提交
  10. 25 12月, 2012 2 次提交
    • A
      regulator: core: Fix continuous_voltage_range case in regulator_can_change_voltage · 19280e40
      Axel Lin 提交于
      Regulator drivers with continuous_voltage_range flag set allows not setting
      n_voltages. Thus if continuous_voltage_range is set, check the constraint range
      instead.
      Signed-off-by: NAxel Lin <axel.lin@ingics.com>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      19280e40
    • I
      regulator: s5m8767: Fix probe failure due to stack corruption · 3ef30398
      Inderpal Singh 提交于
      The function sec_reg_read invokes regmap_read which expects unsigned int *
      as the destination address. The existing driver is passing address of local
      variable "val" which is u8. This causes the stack corruption and following
      dump is observed during probe.
      
      Hence change "val" from u8 to unsigned int.
      
      Unable to handle kernel paging request at virtual address 02410020
      pgd = c0004000
      [02410020] *pgd=00000000
      Internal error: Oops: 80000005 [#1] PREEMPT SMP ARM
      Modules linked in:
      CPU: 0    Not tainted  (3.6.0-00696-g98a28b18-dirty #27)
      PC is at 0x2410020
      LR is at _regulator_get_voltage+0x3c/0x70
      pc : [<02410020>]    lr : [<c02395d4>]    psr: 20000013
      sp : cf839b68  ip : 00000000  fp : cf92d410
      r10: 0000cfd0  r9 : c06d9878  r8 : 0000f0a0
      r7 : cf839b70  r6 : cf92d400  r5 : 00000011  r4 : cf000000
      r3 : 02410020  r2 : 00000000  r1 : 00000048  r0 : cf000000
      Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
      ...........................
      .................................
      
      [<c02395d4>] (_regulator_get_voltage+0x3c/0x70) from [<c023ad80>] (print_constraints+0x50/0x36c)
      [<c023ad80>] (print_constraints+0x50/0x36c) from [<c023e504>] (set_machine_constraints+0xe8/0x2b0)
      [<c023e504>] (set_machine_constraints+0xe8/0x2b0) from [<c023e9c8>] (regulator_register+0x2fc/0x604)
      [<c023e9c8>] (regulator_register+0x2fc/0x604) from [<c049d628>] (s5m8767_pmic_probe+0x688/0x718)
      [<c049d628>] (s5m8767_pmic_probe+0x688/0x718) from [<c029915c>] (platform_drv_probe+0x18/0x1c)
      [<c029915c>] (platform_drv_probe+0x18/0x1c) from [<c0297dd0>] (really_probe+0x68/0x1f4)
      [<c0297dd0>] (really_probe+0x68/0x1f4) from [<c0298070>] (driver_probe_device+0x30/0x48)
      Signed-off-by: NInderpal Singh <inderpal.singh@linaro.org>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      3ef30398
  11. 11 12月, 2012 4 次提交
  12. 10 12月, 2012 6 次提交
  13. 07 12月, 2012 2 次提交
  14. 06 12月, 2012 4 次提交
  15. 02 12月, 2012 3 次提交
  16. 29 11月, 2012 4 次提交