15 Dec, 2012

1 commit

  • Pull MIPS updates from Ralf Baechle:
    "The MIPS bits for 3.8. This also includes a bunch fixes that were
    sitting in the linux-mips.org git tree for a long time. This pull
    request contains updates to several OCTEON drivers and the board
    support code for BCM47XX, BCM63XX, XLP, XLR, XLS, lantiq, Loongson1B,
    updates to the SSB bus support, MIPS kexec code and adds support for
    kdump.

    When pulling this, there are two expected merge conflicts in
    include/linux/bcma/bcma_driver_chipcommon.h which are trivial to
    resolve, just remove the conflict markers and keep both alternatives."

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (90 commits)
    MIPS: PMC-Sierra Yosemite: Remove support.
    VIDEO: Newport Fix console crashes
    MIPS: wrppmc: Fix build of PCI code.
    MIPS: IP22/IP28: Fix build of EISA code.
    MIPS: RB532: Fix build of prom code.
    MIPS: PowerTV: Fix build.
    MIPS: IP27: Correct fucked grammar in ops-bridge.c
    MIPS: Highmem: Fix build error if CONFIG_DEBUG_HIGHMEM is disabled
    MIPS: Fix potencial corruption
    MIPS: Fix for warning from FPU emulation code
    MIPS: Handle COP3 Unusable exception as COP1X for FP emulation
    MIPS: Fix poweroff failure when HOTPLUG_CPU configured.
    MIPS: MT: Fix build with CONFIG_UIDGID_STRICT_TYPE_CHECKS=y
    MIPS: Remove unused smvp.h
    MIPS/EDAC: Improve OCTEON EDAC support.
    MIPS: OCTEON: Add definitions for OCTEON memory contoller registers.
    MIPS: OCTEON: Add OCTEON family definitions to octeon-model.h
    ata: pata_octeon_cf: Use correct byte order for DMA in when built little-endian.
    MIPS/OCTEON/ata: Convert pata_octeon_cf.c to use device tree.
    MIPS: Remove usage of CEVT_R4K_LIB config option.
    ...

    Linus Torvalds
     

14 Dec, 2012

4 commits


12 Dec, 2012

5 commits

  • No 32-bit kernels supported on Octeon.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • Only supporting 64-bit kernels there is no point in depending on
    this symbol.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • On Cavium hardware only 64-bit kernels are supported so CONFIG_HIGHMEM
    is never set.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • Drivers for EDAC on Cavium. Supported subsystems are:

    o CPU primary caches. These are parity protected only, so only error
    reporting.
    o Second level cache - ECC protected, provides SECDED.
    o Memory: ECC / SECDEC if used with suitable DRAM modules. The driver will
    will only initialize if ECC is enabled on a system so is safe to run on
    non-ECC memory.
    o PCI: Parity error reporting

    Since it is very hard to test this sort of code the implementation is very
    conservative and uses polling where possible for now.

    Signed-off-by: Ralf Baechle
    Reviewed-by: Borislav Petkov

    Ralf Baechle
     
  • Pull device tree changes from Grant Likely:
    "Here are the DT changes I've got queued up for v3.8. As described
    below, there are a lot of bug fixes here and documentation updates but
    nothing major:

    Bug fixes, little cleanups, and documentation changes. The most
    invasive thing here touches a bunch of the arch directories to use a
    common build rule for .dtb files. There are no major changes to
    functionality here other than a few new helper functions."

    * tag 'devicetree-for-linus' of git://git.secretlab.ca/git/linux-2.6: (34 commits)
    arm64: Fix the dtbs target building
    mtd: nand: davinci: fix the binding documentation
    rtc: rtc-mv: Add the device tree binding documentation
    devicetree/bindings: Move gpio-leds binding into leds directory
    of/vendor-prefixes: add Imagination Technologies
    microblaze: use new common dtc rule
    c6x: use new common dtc rule
    openrisc: use new common dtc rule
    arm64: Add dtbs target for building all the enabled dtb files
    arm64: use new common dtc rule
    ARM: dt: change .dtb build rules to build in dts directory
    kbuild: centralize .dts->.dtb rule
    Fix build when CONFIG_W1_MASTER_GPIO=m b exporting "allnodes"
    of/spi: Honour "status=disabled" property of device
    of_mdio: Honour "status=disabled" property of device
    of_i2c: Honour "status=disabled" property of device
    powerpc: Fix fallout from device_node->name constification
    of: add 'const' for of_parse_phandle parameter *np
    Documentation: correct of_platform_populate() argument list
    script: dtc: clean generated files
    ...

    Linus Torvalds
     

01 Dec, 2012

1 commit

  • All architectures that use cmd_dtc do so in almost the same way. Create
    a central build rule to avoid duplication. The one difference is that
    most current uses of dtc build $(obj)/%.dtb from $(src)/dts/%.dts rather
    than building the .dtb in the same directory as the .dts file. This
    difference will be eliminated arch-by-arch in future patches.

    MIPS is the exception here; it already uses the exact same rule as the
    new common rule, so the duplicate is removed in this patch to avoid any
    conflict. arch/mips changes courtesy of Ralf Baechle.

    Update Documentation/kbuild to remove the explicit call to cmd_dtc from
    the example, now that the rule exists in a centralized location.

    Cc: Arnd Bergmann
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: Olof Johansson
    Cc: Russell King
    Acked-by: Catalin Marinas
    Cc: Jonas Bonn
    Cc: linux@lists.openrisc.net
    Cc: Aurelien Jacquiot
    Cc: linux-c6x-dev@linux-c6x.org
    Cc: Mark Salter
    Cc: Michal Simek
    Cc: microblaze-uclinux@itee.uq.edu.au
    Cc: Chris Zankel
    Cc: linux-xtensa@linux-xtensa.org
    Cc: Max Filippov
    Signed-off-by: Ralf Baechle
    Signed-off-by: Stephen Warren
    Signed-off-by: Rob Herring

    Stephen Warren
     

09 Nov, 2012

2 commits

  • The cavium code assumed that all NOR on the boot bus was
    an 8-bit NOR part and hardcoded the bankwidth. The simple
    solution was to add the code that queries the configuration
    register for the width of the bus that has been hardware strapped
    to the Cavium. This allows both 8-bit and 16-bit parts to be
    discovered during boot.

    Acked-by: David Daney
    Signed-off-by: Charles Hardin
    Patchwork: http://patchwork.linux-mips.org/patch/4323
    Signed-off-by: John Crispin

    Charles Hardin
     
  • The "else clause" of most functions in bitops.h invoked
    raw_local_irq_{save,restore}() and in doing so had a dependency on
    irqflags.h. This fix moves said code to bitops.c, removing the
    dependency.

    Signed-off-by: Jim Quinlan
    Cc: linux-mips@linux-mips.org
    Cc: David Daney
    Cc: Kevin Cernekee cernekee@gmail.com
    Cc: Jim Quinlan
    Patchwork: https://patchwork.linux-mips.org/patch/4320/
    Signed-off-by: Ralf Baechle

    Jim Quinlan
     

09 Oct, 2012

1 commit

  • Pull MIPS update from Ralf Baechle:
    "This is the MIPS update for 3.7.

    A fair chunk of them are platform updates to the Cavium Octeon SOC
    (which involves machine generated header files of considerable size),
    Atheros ATH79xx, RMI aka Netlogic aka Broadcom XLP, Broadcom BCM63xx
    platforms.

    Support for the commercial MIPS simulator MIPSsim has been removed as
    MIPS Technologies is shifting away from this product and Qemu is
    offering various more powerful platforms. The generic MIPS code can
    now also probe for no-execute / write-only TLB features implemented
    without the full SmartMIPS extension as permitted by the latest MIPS
    processor architecture. Lots of small changes to generic code."

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (78 commits)
    MIPS: ath79: Fix CPU/DDR frequency calculation for SRIF PLLs
    MIPS: ath79: use correct fractional dividers for {CPU,DDR}_PLL on AR934x
    MIPS: BCM63XX: Properly handle mac address octet overflow
    MIPS: Kconfig: Avoid build errors by hiding USE_OF from the user.
    MIPS: Replace `-' in defconfig filename wth `_' for consistency.
    MIPS: Wire kcmp syscall.
    MIPS: MIPSsim: Remove the MIPSsim platform.
    MIPS: NOTIFY_RESUME is not needed in TIF masks
    MIPS: Merge the identical "return from syscall" per-ABI code
    MIPS: Unobfuscate _TIF..._MASK
    MIPS: Prevent hitting do_notify_resume() with !user_mode(regs).
    MIPS: Replace 'kernel_uses_smartmips_rixi' with 'cpu_has_rixi'.
    MIPS: Add base architecture support for RI and XI.
    MIPS: Optimise TLB handlers for MIPS32/64 R2 cores.
    MIPS: uasm: Add INS and EXT instructions.
    MIPS: Avoid pipeline stalls on some MIPS32R2 cores.
    MIPS: Make VPE count to be one-based.
    MIPS: Add new end of interrupt functionality for GIC.
    MIPS: Add EIC support for GIC.
    MIPS: Code clean-ups for the GIC.
    ...

    Linus Torvalds
     

28 Sep, 2012

1 commit


17 Sep, 2012

1 commit


01 Sep, 2012

5 commits


17 Aug, 2012

1 commit

  • 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:
    [] dump_stack+0x8/0x34
    [] warn_slowpath_common+0x78/0xa8
    [] irq_domain_associate_many+0x23c/0x260
    [] irq_create_mapping+0xd0/0x220
    [] irq_create_of_mapping+0x7c/0x158
    [] 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: David Daney
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/4190/
    Signed-off-by: Ralf Baechle

    David Daney
     

15 Aug, 2012

1 commit


25 Jul, 2012

1 commit


24 Jul, 2012

1 commit


23 Jul, 2012

12 commits

  • The generic version seems to prefetch past the end of memory.

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/3929/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • Switch to using the device tree to register serial ports.

    Add all the ports with compatible = "cavium,octeon-3860-uart". Octeon serial
    ports have their own device type, required port flags, and I/O
    functions, so using of_serial.c is not indicated.

    We need to do this as late_initcall, as the 8250 driver must be
    initialized before we add any ports. 8250 initialization is done at
    device_initcall time.

    The OCTEON_IRQ_UART{0,1,2} symbols are removed as they are now unused
    and interfere with irq_domain used by the device tree code.

    Signed-off-by: David Daney
    Acked-by: Grant Likely
    Cc: linux-mips@linux-mips.org
    Cc: devicetree-discuss@lists.ozlabs.org
    Cc: Rob Herring
    Cc: linux-kernel@vger.kernel.org
    Cc: David Daney
    Patchwork: https://patchwork.linux-mips.org/patch/3942/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • The device tree will supply the register bank base addresses, make
    register addressing relative to those. PHY connection is now
    described by the device tree.

    The OCTEON_IRQ_MII{0,1} symbols are also removed as they are now
    unused and interfere with the irq_domain used for device tree irq
    mapping.

    Signed-off-by: David Daney
    Acked-by: David S. Miller
    Cc: linux-mips@linux-mips.org
    Cc: devicetree-discuss@lists.ozlabs.org
    Cc: Grant Likely
    Cc: Rob Herring
    Cc: linux-kernel@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/3941/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • Get the MDIO bus controller addresses from the device tree, small
    clean up in use of devm_*

    Remove, now unused, platform device setup code.

    Signed-off-by: David Daney
    Acked-by: David S. Miller
    Cc: linux-mips@linux-mips.org
    Cc: devicetree-discuss@lists.ozlabs.org
    Cc: Grant Likely
    Cc: Rob Herring
    Cc: linux-kernel@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/3938/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • There are three parts to this:

    1) Remove the definitions of OCTEON_IRQ_TWSI and OCTEON_IRQ_TWSI2.
    The interrupts are specified by the device tree and these hard
    coded irq numbers block the used of the irq lines by the irq_domain
    code.

    2) Remove platform device setup code from octeon-platform.c, it is
    now unused.

    3) Convert i2c-octeon.c to use device tree. Part of this includes
    using the devm_* functions instead of the raw counterparts, thus
    simplifying error handling. No functionality is changed.

    Signed-off-by: David Daney
    Acked-by: Rob Herring
    Acked-by: Wolfram Sang
    Cc: linux-mips@linux-mips.org
    Cc: devicetree-discuss@lists.ozlabs.org
    Cc: Grant Likely
    Cc: linux-kernel@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/3939/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • Create two domains. One for the GPIO lines, and the other for on-chip
    sources.

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Cc: devicetree-discuss@lists.ozlabs.org
    Cc: Grant Likely
    Cc: Rob Herring
    Cc: linux-kernel@vger.kernel.org
    Cc: David Daney
    Patchwork: https://patchwork.linux-mips.org/patch/3936/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • If a compiled in device tree template is used, trim out unwanted parts
    based on legacy platform probing.

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Cc: devicetree-discuss@lists.ozlabs.org
    Cc: Grant Likely
    Cc: Rob Herring
    Cc: linux-kernel@vger.kernel.org
    Cc: David Daney
    Patchwork: https://patchwork.linux-mips.org/patch/3935/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • The two device tree files octeon_3xxx.dts and octeon_68xx.dts are
    trimmed by code in a subsequent patch to reflect the hardware actually
    present on the board. To this end several properties that are not
    part of the declared bindings are added to aid in trimming off
    unwanted nodes. Since the device tree and the code that trims it are
    bound into the kernel binary, these 'marker' properties never escape
    into the wild, and are purely an implementation detail of the kernel
    early boot process. This is done for backwards compatibility with
    existing boards (identified by a board type enumeration value by their
    bootloaders). New boards will always pass a device tree from the
    bootloader, the built-in trees are ignored in this case.

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Cc: devicetree-discuss@lists.ozlabs.org
    Cc: Grant Likely
    Cc: Rob Herring
    Cc: linux-kernel@vger.kernel.org
    Cc: David Daney
    Patchwork: https://patchwork.linux-mips.org/patch/3937/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • We can consolidate octeon_irq_chip_ciu_edge and octeon_irq_chip_ciu as
    they only differ in the .irq_ack element, and that is unused by the
    level handler. This gets rid of a bunch of duplicate definitions.

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/3931/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • The follow-on patch to add irq_domain support will be the supported
    method for using these irq lines, so get these defines out of the way
    in preperation for that.

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/3930/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • This is needed for follow-on on patches for Octeon to use the Device
    Tree to configure GPIO interrupts.

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/3932/
    Signed-off-by: Ralf Baechle

    David Daney
     
  • These FPA related files are not used anywhere in the kernel. Remove
    them.

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/3892/
    Signed-off-by: Ralf Baechle

    David Daney
     

19 Jul, 2012

2 commits


27 May, 2012

1 commit