Forum | Documentation | Website | Blog

Skip to content
Snippets Groups Projects
  1. Jan 07, 2013
  2. Jan 03, 2013
    • Aaro Koskinen's avatar
      ARM: OMAP1: fix USB configuration use-after-release · 07fd296d
      Aaro Koskinen authored
      
      All boards, except Amstrad E3, mark USB config with __initdata.
      
      As a result, when you compile USB into modules, they will try to refer
      already released platform data and the behaviour is undefined. For example
      on Nokia 770, I get the following kernel panic when modprobing ohci-hcd:
      
      [    3.462158] Unable to handle kernel paging request at virtual address e7fddef0
      [    3.477050] pgd = c3434000
      [    3.487365] [e7fddef0] *pgd=00000000
      [    3.498535] Internal error: Oops: 80000005 [#1] ARM
      [    3.510955] Modules linked in: ohci_hcd(+)
      [    3.522705] CPU: 0    Not tainted  (3.7.0-770_tiny+ #5)
      [    3.535552] PC is at 0xe7fddef0
      [    3.546508] LR is at ohci_omap_init+0x5c/0x144 [ohci_hcd]
      [    3.560272] pc : [<e7fddef0>]    lr : [<bf003140>]    psr: a0000013
      [    3.560272] sp : c344bdb0  ip : c344bce0  fp : c344bdcc
      [    3.589782] r10: 00000001  r9 : 00000000  r8 : 00000000
      [    3.604553] r7 : 00000026  r6 : 000000de  r5 : c0227300  r4 : c342d620
      [    3.621032] r3 : e7fddef0  r2 : c048b880  r1 : 00000000  r0 : 0000000a
      [    3.637786] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
      [    3.655822] Control: 0005317f  Table: 13434000  DAC: 00000015
      [    3.672790] Process modprobe (pid: 425, stack limit = 0xc344a1b8)
      [    3.690643] Stack: (0xc344bdb0 to 0xc344c000)
      [    3.707031] bda0:                                     bf0030e4 c342d620 00000000 c049e62c
      [    3.727905] bdc0: c344be04 c344bdd0 c0150ff0 bf0030f4 bf001b88 00000000 c048a4ac c345b020
      [    3.748870] bde0: c342d620 00000000 c048a468 bf003968 00000001 bf006000 c344be34 c344be08
      [    3.769836] be00: bf001bf0 c0150e48 00000000 c344be18 c00b9bfc c048a478 c048a4ac bf0037f8
      [    3.790985] be20: c012ca04 c000e024 c344be44 c344be38 c012d968 bf001a84 c344be64 c344be48
      [    3.812164] be40: c012c8ac c012d95c 00000000 c048a478 c048a4ac bf0037f8 c344be84 c344be68
      [    3.833740] be60: c012ca74 c012c80c 20000013 00000000 c344be88 bf0037f8 c344beac c344be88
      [    3.855468] be80: c012b038 c012ca14 c38093cc c383ee10 bf0037f8 c35be5a0 c049d5e8 00000000
      [    3.877166] bea0: c344bebc c344beb0 c012c40c c012aff4 c344beec c344bec0 c012bfc0 c012c3fc
      [    3.898834] bec0: bf00378c 00000000 c344beec bf0037f8 00067f39 00000000 00005c44 c000e024
      [    3.920837] bee0: c344bf14 c344bef0 c012cd54 c012befc c04ce080 00067f39 00000000 00005c44
      [    3.943023] bf00: c000e024 bf006000 c344bf24 c344bf18 c012db14 c012ccc0 c344bf3c c344bf28
      [    3.965423] bf20: bf00604c c012dad8 c344a000 bf003834 c344bf7c c344bf40 c00087ac bf006010
      [    3.987976] bf40: 0000000f bf003834 00067f39 00000000 00005c44 bf003834 00067f39 00000000
      [    4.010711] bf60: 00005c44 c000e024 c344a000 00000000 c344bfa4 c344bf80 c004c35c c0008720
      [    4.033569] bf80: c344bfac c344bf90 01422192 01427ea0 00000000 00000080 00000000 c344bfa8
      [    4.056518] bfa0: c000dec0 c004c2f0 01422192 01427ea0 01427ea0 00005c44 00067f39 00000000
      [    4.079406] bfc0: 01422192 01427ea0 00000000 00000080 b6e11008 014221aa be941fcc b6e1e008
      [    4.102569] bfe0: b6ef6300 be941758 0000e93c b6ef6310 60000010 01427ea0 00000000 00000000
      [    4.125946] Backtrace:
      [    4.143463] [<bf0030e4>] (ohci_omap_init+0x0/0x144 [ohci_hcd]) from [<c0150ff0>] (usb_add_hcd+0x1b8/0x61c)
      [    4.183898]  r6:c049e62c r5:00000000 r4:c342d620 r3:bf0030e4
      [    4.205596] [<c0150e38>] (usb_add_hcd+0x0/0x61c) from [<bf001bf0>] (ohci_hcd_omap_drv_probe+0x17c/0x224 [ohci_hcd])
      [    4.248138] [<bf001a74>] (ohci_hcd_omap_drv_probe+0x0/0x224 [ohci_hcd]) from [<c012d968>] (platform_drv_probe+0x1c/0x20)
      [    4.292144]  r8:c000e024 r7:c012ca04 r6:bf0037f8 r5:c048a4ac r4:c048a478
      [    4.316192] [<c012d94c>] (platform_drv_probe+0x0/0x20) from [<c012c8ac>] (driver_probe_device+0xb0/0x208)
      [    4.360168] [<c012c7fc>] (driver_probe_device+0x0/0x208) from [<c012ca74>] (__driver_attach+0x70/0x94)
      [    4.405548]  r6:bf0037f8 r5:c048a4ac r4:c048a478 r3:00000000
      [    4.429809] [<c012ca04>] (__driver_attach+0x0/0x94) from [<c012b038>] (bus_for_each_dev+0x54/0x90)
      [    4.475708]  r6:bf0037f8 r5:c344be88 r4:00000000 r3:20000013
      [    4.500366] [<c012afe4>] (bus_for_each_dev+0x0/0x90) from [<c012c40c>] (driver_attach+0x20/0x28)
      [    4.528442]  r7:00000000 r6:c049d5e8 r5:c35be5a0 r4:bf0037f8
      [    4.553466] [<c012c3ec>] (driver_attach+0x0/0x28) from [<c012bfc0>] (bus_add_driver+0xd4/0x228)
      [    4.581878] [<c012beec>] (bus_add_driver+0x0/0x228) from [<c012cd54>] (driver_register+0xa4/0x134)
      [    4.629730]  r8:c000e024 r7:00005c44 r6:00000000 r5:00067f39 r4:bf0037f8
      [    4.656738] [<c012ccb0>] (driver_register+0x0/0x134) from [<c012db14>] (platform_driver_register+0x4c/0x60)
      [    4.706542] [<c012dac8>] (platform_driver_register+0x0/0x60) from [<bf00604c>] (ohci_hcd_mod_init+0x4c/0x8c [ohci_hcd])
      [    4.757843] [<bf006000>] (ohci_hcd_mod_init+0x0/0x8c [ohci_hcd]) from [<c00087ac>] (do_one_initcall+0x9c/0x174)
      [    4.808990]  r4:bf003834 r3:c344a000
      [    4.832641] [<c0008710>] (do_one_initcall+0x0/0x174) from [<c004c35c>] (sys_init_module+0x7c/0x194)
      [    4.881530] [<c004c2e0>] (sys_init_module+0x0/0x194) from [<c000dec0>] (ret_fast_syscall+0x0/0x2c)
      [    4.930664]  r7:00000080 r6:00000000 r5:01427ea0 r4:01422192
      [    4.956481] Code: bad PC value
      [    4.978729] ---[ end trace 58280240f08342c4 ]---
      [    5.002258] Kernel panic - not syncing: Fatal exception
      
      Fix this by taking a copy of the data. Also mark Amstrad E3's data with
      __initdata to save some memory with multi-board kernels.
      
      Signed-off-by: default avatarAaro Koskinen <aaro.koskinen@iki.fi>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      07fd296d
    • Tony Lindgren's avatar
      Merge tag 'omap-fixes-a2-for-v3.8-rc' of... · 2cd1f483
      Tony Lindgren authored
      Merge tag 'omap-fixes-a2-for-v3.8-rc' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into omap-for-v3.8-rc2/fixes
      
      Some OMAP PRCM and sparse fixes against v3.8-rc1.  A basic set of test
      logs are available here:
      
          http://www.pwsan.com/omap/testlogs/prcm_fixes_b_3.8-rc/20130102120724/
      
      The 3730 Beagle XM here has an intermittent failure mounting SD root,
      but the suspicion right now is that this is due to a failing SD card,
      rather than any change introduced by these patches.
      
      This second version includes a few changes requested by Tony Lindgren.
      2cd1f483
  3. Jan 02, 2013
  4. Jan 01, 2013
    • Paul Walmsley's avatar
      ARM: OMAP: SRAM: resolve sparse warnings · 9fbe7c24
      Paul Walmsley authored
      Commit bb772094
      
       ("ARM: OMAP: Move
      omap2+ specific parts of sram.c to mach-omap2") adds some new sparse
      warnings:
      
      arch/arm/plat-omap/sram.c:43:6: warning: symbol 'omap_sram_push_address' was not declared. Should it be static?
      arch/arm/plat-omap/sram.c:65:6: warning: symbol 'omap_sram_reset' was not declared. Should it be static?
      arch/arm/plat-omap/sram.c:73:13: warning: symbol 'omap_map_sram' was not declared. Should it be static?
      
      This second version fixes the warnings by including <plat/sram.h>, at
      Tony's request.
      
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Tony Lindgren <tony@atomide.com>
      9fbe7c24
    • Paul Walmsley's avatar
      ARM: OMAP AM33xx: hwmod data: resolve sparse warnings · 9816aa80
      Paul Walmsley authored
      Commit 70384a6a
      
       ("ARM: OMAP3+:
      hwmod: Add AM33XX HWMOD data for davinci_mdio module") adds two
      new sparse warnings:
      
      arch/arm/mach-omap2/omap_hwmod_33xx_data.c:2518:30: warning: symbol 'am33xx_mdio_addr_space' was not declared. Should it be static?
      arch/arm/mach-omap2/omap_hwmod_33xx_data.c:2526:26: warning: symbol 'am33xx_cpgmac0__mdio' was not declared. Should it be static?
      
      Fix by marking the two new records as static.
      
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Mugunthan V N <mugunthanvnm@ti.com>
      Cc: Vaibhav Hiremath <hvaibhav@ti.com>
      Cc: Peter Korsgaard <jacmet@sunsite.dk>
      Cc: Richard Cochran <richardcochran@gmail.com>
      Cc: David S. Miller <davem@davemloft.net>
      Acked-by: default avatarMugunthan V N <mugunthanvnm@ti.com>
      9816aa80
  5. Dec 30, 2012
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · 4a490b78
      Linus Torvalds authored
      Pull DRM update from Dave Airlie:
       "This is a bit larger due to me not bothering to do anything since
        before Xmas, and other people working too hard after I had clearly
        given up.
      
        It's got the 3 main x86 driver fixes pulls, and a bunch of tegra
        fixes, doesn't fix the Ironlake bug yet, but that does seem to be
        getting closer.
      
         - radeon: gpu reset fixes and userspace packet support
         - i915: watermark fixes, workarounds, i830/845 fix,
         - nouveau: nvd9/kepler microcode fixes, accel is now enabled and
           working, gk106 support
         - tegra: misc fixes."
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (34 commits)
        Revert "drm: tegra: protect DC register access with mutex"
        drm: tegra: program only one window during modeset
        drm: tegra: clean out old gem prototypes
        drm: tegra: remove redundant tegra2_tmds_config entry
        drm: tegra: protect DC register access with mutex
        drm: tegra: don't leave clients host1x member uninitialized
        drm: tegra: fix front_porch <-> back_porch mixup
        drm/nve0/graph: fix fuc, and enable acceleration on all known chipsets
        drm/nvc0/graph: fix fuc, and enable acceleration on GF119
        drm/nouveau/bios: cache ramcfg strap on later chipsets
        drm/nouveau/mxm: silence output if no bios data
        drm/nouveau/bios: parse/display extra version component
        drm/nouveau/bios: implement opcode 0xa9
        drm/nouveau/bios: update gpio parsing apis to match current design
        drm/nouveau: initial support for GK106
        drm/radeon: add WAIT_UNTIL to evergreen VM safe reg list
        drm/i915: disable shrinker lock stealing for create_mmap_offset
        drm/i915: optionally disable shrinker lock stealing
        drm/i915: fix flags in dma buf exporting
        drm/radeon: add support for MEM_WRITE packet
        ...
      4a490b78
    • Linus Torvalds's avatar
      Merge tag 'omap-late-cleanups' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 8d91a42e
      Linus Torvalds authored
      Pull late ARM cleanups for omap from Olof Johansson:
       "From Tony Lindgren:
      
        Here are few more patches to finish the omap changes for multiplatform
        conversion that are not strictly fixes, but were too complex to do
        with the dependencies during the merge window.  Those are to move of
        serial-omap.h to platform_data, and the removal of remaining
        cpu_is_omap macro usage outside mach-omap2.
      
        Then there are several trivial fixes for typos and few minimal
        omap2plus_defconfig updates."
      
      * tag 'omap-late-cleanups' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        arch/arm/mach-omap2/dpll3xxx.c: drop if around WARN_ON
        OMAP2: Fix a typo - replace regist with register.
        ARM/omap: use module_platform_driver macro
        ARM: OMAP2+: PMU: Remove unused header
        ARM: OMAP4: remove duplicated include from omap_hwmod_44xx_data.c
        ARM: OMAP2+: omap2plus_defconfig: enable twl4030 SoC audio
        ARM: OMAP2+: omap2plus_defconfig: Add tps65217 support
        ARM: OMAP2+: enable devtmpfs and devtmpfs automount
        ARM: OMAP2+: omap_twl: Change TWL4030_MODULE_PM_RECEIVER to TWL_MODULE_PM_RECEIVER
        ARM: OMAP2+: Drop plat/cpu.h for omap2plus
        ARM: OMAP: Split fb.c to remove last remaining cpu_is_omap usage
        MAINTAINERS: Add an entry for omap related .dts files
      8d91a42e
    • Linus Torvalds's avatar
      Merge tag 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 4fe2dfab
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "It's been quiet over the holidays, but we have had a couple of trivial
        fixes coming in for the newly introduced sunxi platform; one to add it
        to the multiplatform defconfig for build coverage, and one fixup for
        device tree strings."
      
      * tag 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        sunxi: Change the machine compatible string.
        ARM: multi_v7_defconfig: Add ARCH_SUNXI
      4fe2dfab
    • Dave Airlie's avatar
      Revert "drm: tegra: protect DC register access with mutex" · d5757dbe
      Dave Airlie authored
      This reverts commit 83c0bcb6
      
      .
      
      Lucas pointed out this was a mistake, and I missed the discussion,
      so just revert it out to save a rebase.
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      d5757dbe
  6. Dec 29, 2012