1. 23 8月, 2012 1 次提交
  2. 17 8月, 2012 12 次提交
    • R
      MIPS: Malta: Delete duplicate PCI fixup. · 16cc2cf6
      Ralf Baechle 提交于
      2ec8663f9c03a96f2c328c7c483603c31d62ad37 (lmo) rsp.
      497e5ff0 (kernel.org) [MIPS: Malta: Move
      PIIX4 PCI fixup to where it belongs.] attempted to move this PCI fixup
      but really only added it at it's new location without deleting the old
      instance.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      16cc2cf6
    • G
      MIPS: ath79: don't hardcode the unavailability of the DSP ASE · 00dc5ce2
      Gabor Juhos 提交于
      The ath79 platform code allows to run a single kernel image on various
      SoCs which are based on the 24Kc and 74Kc cores.  The current code
      explicitely disables the DSP ASE, but that is available in the 74Kc core.
      
      Remove the override in order to let the kernel to detect the availability
      of the DSP ASE at runtime.
      Signed-off-by: NGabor Juhos <juhosg@openwrt.org>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/4222/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      00dc5ce2
    • J
      MIPS: Synchronize MIPS count one CPU at a time · cf9bfe55
      Jayachandran C 提交于
      The current implementation of synchronise_count_{master,slave} blocks
      slave CPUs in early boot until all of them come up. This no longer
      works because blocking a CPU with interrupts off after notifying the
      CPU to be online causes problems with the current kernel.
      
      Specifically, after the workqueue changes
      (commit a08489c5 "Pull workqueue changes from Tejun Heo")
      the CPU_ONLINE notification callback workqueue_cpu_up_callback()
      will hang on wait_for_completion(&idle_rebind.done), if the slave
      CPUs are blocked for synchronize_count_slave().
      
      The changes are to update synchronize_count_{master,slave}() to handle
      one CPU at a time and to call synchronise_count_master() in __cpu_up()
      so that the CPU_ONLINE notification goes out only after the COP0 COUNT
      register is synchronized.
      
      [ralf@linux-mips.org: This matter only to those few platforms which are
      using the cp0 counter as their clocksource which are XLP, XLR and MIPS'
      CMP solution.]
      Signed-off-by: NJayachandran C <jchandra@broadcom.com>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/4216/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      cf9bfe55
    • F
      MIPS: BCM63xx: Fix SPI message control register handling for BCM6338/6348. · 5a670445
      Florian Fainelli 提交于
      BCM6338 and BCM6348 have a message control register width of 8 bits, instead
      of 16-bits like what the SPI driver assumes right now. Also the SPI message
      type shift value of 14 is actually 6 for these SoCs.
      This resulted in transmit FIFO corruption because we were writing 16-bits
      to an 8-bits wide register, thus spanning on the first byte of the transmit
      FIFO, which had already been filed in bcm63xx_spi_fill_txrx_fifo().
      
      Fix this by passing the message control register width and message type
      shift through platform data back to the SPI driver so that it can use
      it properly.
      Signed-off-by: NFlorian Fainelli <florian@openwrt.org>
      Cc: linux-mips@linux-mips.org
      Cc: grant.likely@secretlab.ca
      Cc: spi-devel-general@lists.sourceforge.net
      Cc: jonas.gorski@gmail.com
      Patchwork: https://patchwork.linux-mips.org/patch/3983/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      5a670445
    • R
      MIPS: Module: Deal with malformed HI16/LO16 relocation sequences. · c54de490
      Ralf Baechle 提交于
      In case a series of R_MIPS_HI16 relocations was not followed by an
      R_MIPS_LO16 relocation we were leaking the hi16 relocation chain.
      Handle that error and return an error.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      c54de490
    • R
      MIPS: Fix race condition in module relocation code. · 861667dc
      Ralf Baechle 提交于
      The relocation code was essentially taken from the 2.4 modutils which
      perform relocation in userspace.  In 2.6 relocation of multiple modules
      may be performed in parallel by the in-kernel loader so the global
      variable mips_hi16_list won't fly anymore.  Fix race by moving it into
      mod_arch_specific.
      
      [ralf@linux-mips.org: folded in Tony's followup fix.  Thanks Tony!]
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      Signed-off-by: NTony Wu <tung7970@gmail.com>
      Cc:  linux-mips@linux-mips.org
      Patchwork: http://patchwork.linux-mips.org/patch/4189/
      861667dc
    • R
      MIPS: Fix memory leak in error path of HI16/LO16 relocation handling. · d3cac35c
      Ralf Baechle 提交于
      Commit 6f5d2e970452b5c86906adcb8e7ad246f535ba39 (lmo) /
      477c4b07 (kernel.org) [[MIPS: VPE: Free
      relocation chain on error.] fixed the same issue in the vpe loader in 2009
      but back then the same bug in module.c went unfixed.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      Reported-by: NAkhilesh Kumar <akhilesh.lxr@gmail.com>
      d3cac35c
    • B
      MIPS: MTX-1: Add udelay to mtx1_pci_idsel · 143ec74e
      Bruno Randolf 提交于
      Without this udelay(1) PCI idsel does not work correctly on the
      "singleboard" (T-Mobile Surfbox) for the MiniPCI device. The result is
      that PCI configuration fails and the MiniPCI card is not detected
      correctly. Instead of
      
      PCI host bridge to bus 0000:00
      pci_bus 0000:00: root bus resource [mem 0x40000000-0x4fffffff]
      pci_bus 0000:00: root bus resource [io  0x1000-0xffff]
      pci 0000:00:03.0: BAR 0: assigned [mem 0x40000000-0x4000ffff]
      pci 0000:00:00.0: BAR 0: assigned [mem 0x40010000-0x40010fff]
      pci 0000:00:00.1: BAR 0: assigned [mem 0x40011000-0x40011fff]
      
      We see only the CardBus device:
      
      PCI host bridge to bus 0000:00
      pci_bus 0000:00: root bus resource [mem 0x40000000-0x4fffffff]
      pci_bus 0000:00: root bus resource [io  0x1000-0xffff]
      pci 0000:00:00.0: BAR 0: assigned [mem 0x40000000-0x40000fff]
      pci 0000:00:00.1: BAR 0: assigned [mem 0x40001000-0x40001fff]
      
      Later the device driver shows this error:
      
      ath5k 0000:00:03.0: cannot remap PCI memory region
      ath5k: probe of 0000:00:03.0 failed with error -5
      
      I assume that the logic chip which usually supresses the signal to the CardBus
      card has some settling time and without the delay it would still let the
      Cardbus interfere with the response from the MiniPCI card.
      
      What I cannot explain is why this behaviour shows up now and not in earlier
      kernel versions before. Maybe older PCI code was slower?
      Signed-off-by: NBruno Randolf <br1@einfach.org>
      Cc: linux-mips@linux-mips.org
      Cc: manuel.lauss@googlemail.com
      Cc: florian@openwrt.org
      Patchwork: https://patchwork.linux-mips.org/patch/4087/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      143ec74e
    • G
      MIPS: ath79: select HAVE_CLK · 94638067
      Gabor Juhos 提交于
      It is needed in order to get rid of the following errors:
      
      arch/mips/ath79/clock.c:353:13: error: redefinition of 'clk_get'
      include/linux/clk.h:281:27: note: previous definition of 'clk_get' was here
      arch/mips/ath79/clock.c:377:5: error: redefinition of 'clk_enable'
      include/linux/clk.h:295:19: note: previous definition of 'clk_enable' was here
      arch/mips/ath79/clock.c:383:6: error: redefinition of 'clk_disable'
      include/linux/clk.h:300:20: note: previous definition of 'clk_disable' was here
      arch/mips/ath79/clock.c:388:15: error: redefinition of 'clk_get_rate'
      include/linux/clk.h:302:29: note: previous definition of 'clk_get_rate' was here
      arch/mips/ath79/clock.c:394:6: error: redefinition of 'clk_put'
      include/linux/clk.h:291:20: note: previous definition of 'clk_put' was here
      Signed-off-by: NGabor Juhos <juhosg@openwrt.org>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/4170/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      94638067
    • G
      MIPS: ath79: Use correct IRQ number for the OHCI controller on AR7240 · 5fb23456
      Gabor Juhos 提交于
      The currently assigned IRQ number to the OHCI controller is incorrect for
      the AR7240 SoC, and that leads to the following error message from the
      OHCI driver:
      
      ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
      ath79-ohci ath79-ohci: Atheros built-in OHCI controller
      ath79-ohci ath79-ohci: new USB bus registered, assigned bus number 1
      ath79-ohci ath79-ohci: irq 14, io mem 0x1b000000
      hub 1-0:1.0: USB hub found
      hub 1-0:1.0: 1 port detected
      usb 1-1: new full-speed USB device number 2 using ath79-ohci
      ath79-ohci ath79-ohci: Unlink after no-IRQ?  Controller is probably using the wrong IRQ.
      
      Fix this by using the correct IRQ number.
      Signed-off-by: NGabor Juhos <juhosg@openwrt.org>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/4168/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      5fb23456
    • G
      MIPS: ath79: Fix number of GPIO lines for AR724[12] · b4da14ab
      Gabor Juhos 提交于
      The AR724[12] SoCs have more GPIO lines than the AR7240.
      Signed-off-by: NGabor Juhos <juhosg@openwrt.org>
      Cc: Cc: linux-mips@linux-mips.org
      Patchwork: https://http://patchwork.linux-mips.org/patch/4167/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      b4da14ab
    • D
      MIPS: Octeon: Fix broken interrupt controller code. · 87161ccd
      David Daney 提交于
      Since 3.6.0-rc1,  We are getting many messages like:
      
      WARNING: at kernel/irq/irqdomain.c:444 irq_domain_associate_many+0x23c/0x260()
      Modules linked in:
      Call Trace:
      [<ffffffff814cb698>] dump_stack+0x8/0x34
      [<ffffffff81133d00>] warn_slowpath_common+0x78/0xa8
      [<ffffffff81187e44>] irq_domain_associate_many+0x23c/0x260
      [<ffffffff81187f38>] irq_create_mapping+0xd0/0x220
      [<ffffffff81188104>] irq_create_of_mapping+0x7c/0x158
      [<ffffffff813e5f08>] irq_of_parse_and_map+0x28/0x40
      .
      .
      .
      
      Both the CIU and GPIO interrupt domains were somewhat screwed up.
      
      For the CIU domain, we need to call irq_domain_associate() for each of
      the preassigned irq numbers.  For the GPIO domain, we were applying
      the register bit offset in octeon_irq_gpio_xlat, but it should be done
      in octeon_irq_gpio_map instead.
      
      Also: Reserve all 8 'core' irqs for the 'core' irq_chip so that they
      don't get used by the other domains.  Remove unused OCTEON_IRQ_*
      symbols.
      Signed-off-by: NDavid Daney <david.daney@cavium.com>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/4190/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      87161ccd
  3. 02 8月, 2012 1 次提交
  4. 01 8月, 2012 8 次提交
  5. 31 7月, 2012 2 次提交
  6. 27 7月, 2012 1 次提交
    • J
      posix_types.h: Cleanup stale __NFDBITS and related definitions · 8ded2bbc
      Josh Boyer 提交于
      Recently, glibc made a change to suppress sign-conversion warnings in
      FD_SET (glibc commit ceb9e56b3d1).  This uncovered an issue with the
      kernel's definition of __NFDBITS if applications #include
      <linux/types.h> after including <sys/select.h>.  A build failure would
      be seen when passing the -Werror=sign-compare and -D_FORTIFY_SOURCE=2
      flags to gcc.
      
      It was suggested that the kernel should either match the glibc
      definition of __NFDBITS or remove that entirely.  The current in-kernel
      uses of __NFDBITS can be replaced with BITS_PER_LONG, and there are no
      uses of the related __FDELT and __FDMASK defines.  Given that, we'll
      continue the cleanup that was started with commit 8b3d1cda
      ("posix_types: Remove fd_set macros") and drop the remaining unused
      macros.
      
      Additionally, linux/time.h has similar macros defined that expand to
      nothing so we'll remove those at the same time.
      Reported-by: NJeff Law <law@redhat.com>
      Suggested-by: NLinus Torvalds <torvalds@linux-foundation.org>
      CC: <stable@vger.kernel.org>
      Signed-off-by: NJosh Boyer <jwboyer@redhat.com>
      [ .. and fix up whitespace as per akpm ]
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      8ded2bbc
  7. 25 7月, 2012 4 次提交
  8. 24 7月, 2012 11 次提交