Skip to content
  1. Mar 10, 2011
  2. Mar 04, 2011
  3. Mar 03, 2011
  4. Mar 02, 2011
    • Shweta Gulati's avatar
      OMAP2+: PM: SmartReflex: fix memory leaks in Smartreflex driver · b3329a33
      Shweta Gulati authored
      
      
      This Patch frees all the dynamically allocated memory
      which couldn't have been released in some error hitting cases.
      
      Signed-off-by: default avatarShweta Gulati <shweta.gulati@ti.com>
      Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
      b3329a33
    • Aaro Koskinen's avatar
      arm: mach-omap2: smartreflex: fix another memory leak · 865212ab
      Aaro Koskinen authored
      
      
      Temporary strings with volt_* file names should be released after the
      debugfs entries are created. While at it, also simplify the string
      allocation, and use just snprintf() to create the name.
      
      The patch eliminates kmemleak reports with the following stack trace
      (multiple objects depending on HW):
      
      unreferenced object 0xcedbc5a0 (size 64):
        comm "swapper", pid 1, jiffies 4294929375 (age 423.734s)
        hex dump (first 32 bytes):
          76 6f 6c 74 5f 39 37 35 30 30 30 00 00 00 00 00  volt_975000.....
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
        backtrace:
          [<c012fee0>] create_object+0x104/0x208
          [<c012dbc8>] kmem_cache_alloc_trace+0xf0/0x17c
          [<c0013f64>] omap_sr_probe+0x314/0x420
          [<c02a1724>] platform_drv_probe+0x18/0x1c
          [<c02a088c>] driver_probe_device+0xc8/0x188
          [<c02a09b4>] __driver_attach+0x68/0x8c
          [<c02a00ac>] bus_for_each_dev+0x44/0x74
          [<c029f9e0>] bus_add_driver+0xa0/0x228
          [<c02a0cac>] driver_register+0xa8/0x130
          [<c02a1b2c>] platform_driver_probe+0x18/0x8c
          [<c0013c1c>] sr_init+0x40/0x74
          [<c005a554>] do_one_initcall+0xc8/0x1a0
          [<c00084f4>] kernel_init+0x150/0x218
          [<c0065d64>] kernel_thread_exit+0x0/0x8
          [<ffffffff>] 0xffffffff
      
      Signed-off-by: default avatarAaro Koskinen <aaro.koskinen@nokia.com>
      Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
      865212ab
  5. Feb 28, 2011
    • Axel Lin's avatar
      davinci: cpufreq: fix section mismatch warning · 079db590
      Axel Lin authored
      
      
      Fix below section mismatch warning:
      WARNING: vmlinux.o(.data+0x673c): Section mismatch in reference from the variable davinci_driver to the function .init.text:davinci_cpu_init()
      The variable davinci_driver references
      the function __init davinci_cpu_init()
      If the reference is valid then annotate the
      variable with __init* or __refdata (see linux/init.h) or name the variable:
      *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,
      
      Signed-off-by: default avatarAxel Lin <axel.lin@gmail.com>
      Acked-by: default avatarSekhar Nori <nsekhar@ti.com>
      Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
      079db590
    • Sergei Shtylyov's avatar
      DaVinci: fix compilation warnings in <mach/clkdev.h> · 3113307a
      Sergei Shtylyov authored
      
      
      Commit 6d803ba7 (ARM: 6483/1: arm & sh:
      factorised duplicated clkdev.c) caused the following warnings:
      
      In file included from /home/headless/src/kernel.org/linux-davinci/arch/arm/
      include/asm/clkdev.h:17,
                       from include/linux/clkdev.h:15,
                       from arch/arm/mach-davinci/clock.h:71,
                       from arch/arm/mach-davinci/common.c:22:
      arch/arm/mach-davinci/include/mach/clkdev.h:4: warning: `struct clk' declared
      inside parameter list
      arch/arm/mach-davinci/include/mach/clkdev.h:4: warning: its scope is only this
      definition or declaration, which is probably not what you want
      arch/arm/mach-davinci/include/mach/clkdev.h:9: warning: `struct clk' declared
      inside parameter list
      
      Signed-off-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
      Acked-by: default avatarSekhar Nori <nsekhar@ti.com>
      Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
      3113307a
    • Hirosh Dabui's avatar
      davinci: tnetv107x: fix register indexing for GPIOs numbers > 31 · c284d9fa
      Hirosh Dabui authored
      
      
      This patch fix a bug in the register indexing for GPIOs numbers >  31
      to get the relevant hardware registers of tnetv107x to control the GPIOs.
      
      In the structure tnetv107x_gpio_regs:
      
      struct tnetv107x_gpio_regs {
                  u32     idver;
                  u32     data_in[3];
                  u32     data_out[3];
                  u32     direction[3];
                  u32     enable[3];
      };
      
      The GPIO hardware register addresses of tnetv107x are stored.
      The chip implements 3 registers of each entity to serve 96 GPIOs,
      each register provides a subset of 32 GPIOs.
      The driver provides these macros: gpio_reg_set_bit, gpio_reg_get_bit
      and gpio_reg_clear_bit.
      
      The bug implied the use of macros to access the relevant hardware
      register e.g. the driver code used the macro like this:
      'gpio_reg_clear_bit(&reg->data_out, gpio)'
      
      But it has to be used like this:
      'gpio_reg_clear_bit(reg->data_out, gpio)'.
      
      The different results are shown here:
      - &reg->data_out + 1 (it will add the full array size of data_out i.e. 12 bytes)
      - reg->data_out + 1 (it will increment only the size of data_out i.e. only 4 bytes)
      
      Acked-by: default avatarCyril Chemparathy <cyril@ti.com>
      Signed-off-by: default avatarHirosh Dabui <hirosh.dabui@snom.com>
      Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
      c284d9fa
    • Rajashekhara, Sudhakar's avatar
      davinci: da8xx/omap-l1x: add platform device for davinci-pcm-audio · b3d1ffb2
      Rajashekhara, Sudhakar authored
      After the multi-component commit f0fba2ad (ASoC: multi-component - ASoC
      Multi-Component Support) for ASoC, we need to register the platform
      device for davinci-pcm-audio.
      
      This patch and patch at [1] are required for audio to work on
      DA850/OMAP-L138.
      
      [1] https://patchwork.kernel.org/patch/495211/
      
      
      
      Signed-off-by: default avatarRajashekhara, Sudhakar <sudhakar.raj@ti.com>
      Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
      b3d1ffb2
  6. Feb 27, 2011
  7. Feb 26, 2011
  8. Feb 25, 2011
    • Santosh Shilimkar's avatar
      omap4: prcm: Fix the CPUx clockdomain offsets · 51c404b2
      Santosh Shilimkar authored
      
      
      CPU0 and CPU1 clockdomain is at the offset of 0x18 from the LPRM base.
      The header file has set it wrongly to 0x0. Offset 0x0 is for CPUx power
      domain control register
      
      Fix the same.
      
      The autogen scripts is fixed thanks to Benoit Cousson
      
      With the old value, the clockdomain code would access the
      *_PWRSTCTRL.POWERSTATE field when it thought it was accessing the
      *_CLKSTCTRL.CLKTRCTRL field.  In the worst case, this could cause
      system power management to behave incorrectly.
      
      Signed-off-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Cc: Rajendra Nayak <rnayak@ti.com>
      Cc: Benoit Cousson <b-cousson@ti.com>
      [paul@pwsan.com: added second paragraph to commit message]
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      51c404b2
  9. Feb 24, 2011
    • Paul Walmsley's avatar
      OMAP2+: clocksource: fix crash on boot when !CONFIG_OMAP_32K_TIMER · cbc94380
      Paul Walmsley authored
      
      
      
      OMAP2+ kernels built without CONFIG_OMAP_32K_TIMER crash on boot after the
      2.6.38 sched_clock changes:
      
      [    0.000000] OMAP clockevent source: GPTIMER1 at 13000000 Hz
      [    0.000000] Unable to handle kernel NULL pointer dereference at virtual address 00000000
      [    0.000000] pgd = c0004000
      [    0.000000] [00000000] *pgd=00000000
      [    0.000000] Internal error: Oops: 80000005 [#1] SMP
      [    0.000000] last sysfs file:
      [    0.000000] Modules linked in:
      [    0.000000] CPU: 0    Not tainted  (2.6.38-rc5-00057-g04aa67d #152)
      [    0.000000] PC is at 0x0
      [    0.000000] LR is at sched_clock_poll+0x2c/0x3c
      
      Without CONFIG_OMAP_32K_TIMER, the kernel has an clockevent and
      clocksource resolution about three orders of magnitude higher than
      with CONFIG_OMAP_32K_TIMER set.  The tradeoff is that the lowest
      power consumption states are not available.
      
      Fix by calling init_sched_clock() from the GPTIMER clocksource init code.
      
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      cbc94380
  10. Feb 23, 2011
    • Uwe Kleine-König's avatar
      ARM: 6757/1: fix tlb.h induced linux/swap.h build failure · 97594b0f
      Uwe Kleine-König authored
      
      
      Commit
      
      	06824ba8 (ARM: tlb: delay page freeing for SMP and ARMv7 CPUs)
      
      introduced a build failure for builds with CONFIG_SWAP=n:
      
      	In file included from arch/arm/mm/init.c:27:
      	arch/arm/include/asm/tlb.h: In function 'tlb_flush_mmu':
      	arch/arm/include/asm/tlb.h:101: error: implicit declaration of function 'release_pages'
      	arch/arm/include/asm/tlb.h: In function 'tlb_remove_page':
      	arch/arm/include/asm/tlb.h:165: error: implicit declaration of function 'page_cache_release'
      
      as linux/swap.h doesn't include linux/pagemap.h but actually needs it
      (see comments in linux/swap.h as to why this is.)
      
      Fix that by #including <linux/pagemap.h> in <asm/pgalloc.h> as it's done
      by x86.
      
      Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Acked-by: default avatarTony Lindgren <tony@atomide.com>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      97594b0f
    • John Ogness's avatar
      OMAP2/3: clock: fix fint calculation for DPLL_FREQSEL · ea68c00e
      John Ogness authored
      
      
      In OMAP35X TRM Rev 2010-05 Figure 7-18 "DPLL With EMI Reduction
      Feature", it is shown that the internal frequency is calculated by
      CLK_IN/(N+1). However, the value passed to _dpll_test_fint() is
      already "N+1" since Linux is using the values to divide by. In the
      technical reference manual, "N" is referring to the divider's register
      value (0-127).
      
      During power management testing, it was observed that programming the
      wrong jitter correction value can cause the system to become unstable
      and eventually crash.
      
      Signed-off-by: default avatarJohn Ogness <john.ogness@linutronix.de>
      [paul@pwsan.com: added second paragraph to commit message]
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      ea68c00e
  11. Feb 21, 2011
Loading