1. 18 Jan, 2013 2 commits
  2. 14 Jan, 2013 1 commit
  3. 11 Jan, 2013 1 commit
  4. 08 Jan, 2013 1 commit
    • Mike Dunn's avatar
      ALSA: pxa27x: fix ac97 warm reset · 3b4bc7bc
      Mike Dunn authored
      This patch fixes some code that implements a work-around to a hardware bug in
      the ac97 controller on the pxa27x.  A bug in the controller's warm reset
      functionality requires that the mfp used by the controller as the AC97_nRESET
      line be temporarily reconfigured as a generic output gpio (AF0) and manually
      held high for the duration of the warm reset cycle.  This is what was done in
      the original code, but it was broken long ago by commit fb1bf8cd
      
      
          ([ARM] pxa: introduce processor specific pxa27x_assert_ac97reset())
      which changed the mfp to a GPIO input instead of a high output.
      
      The fix requires the ac97 controller to obtain the gpio via gpio_request_one(),
      with arguments that configure the gpio as an output initially driven high.
      
      Tested on a palm treo 680 machine.  Reportedly, this broken code only prevents a
      warm reset on hardware that lacks a pull-up on the line, which appears to be the
      case for me.
      Signed-off-by: default avatarMike Dunn <mikedunn@newsguy.com>
      Signed-off-by: default avatarIgor Grinberg <grinberg@compulab.co.il>
      Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
      Cc: stable@vger.kernel.org
      3b4bc7bc
  5. 07 Jan, 2013 12 commits
  6. 06 Jan, 2013 10 commits
  7. 05 Jan, 2013 1 commit
  8. 03 Jan, 2013 5 commits
    • Fabio Estevam's avatar
      ARM: dts: imx31-bug: Fix manufacturer compatible string · 4aaa0195
      Fabio Estevam authored
      
      
      In the compatible field we should point the manufacturer of the board, which
      in this case is Buglabs.
      Signed-off-by: default avatarFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
      4aaa0195
    • Greg Kroah-Hartman's avatar
      ARM: drivers: remove __dev* attributes. · 351a102d
      Greg Kroah-Hartman authored
      
      
      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,
      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: Russell King <linux@arm.linux.org.uk>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      351a102d
    • Linus Walleij's avatar
      ARM: nomadik: bump the IRQ numbers again · d9621176
      Linus Walleij authored
      
      
      Bump the IRQ numbers from offset at 1 (right above NO_IRQ)
      to 32. This is the painful way to learn that if you're using
      SPARSE_IRQ and avoid to define .nr_irqs in your machine,
      the first 16 IRQs will be pre-allocated, and the IRQdomain
      code (as the VIC core code before it) will then assume
      that all IRQ descriptors are pre-allocated, and 16 of them
      are - by somebody else. So mapping the IRQs will fail in
      irq_create_mapping(). Moving the offset upward rids us of
      this problem.
      
      Cc: Rob Herring <rob.herring@calxeda.com>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      d9621176
    • Linus Walleij's avatar
      ARM: nomadik: delete dangling include · 7f252b16
      Linus Walleij authored
      
      
      This reference to the old include header for the FSMC NAND
      MTD driver was somehow left in place, get rid of it.
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      7f252b16
    • 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
  9. 02 Jan, 2013 7 commits