21 Aug, 2011

1 commit


19 Aug, 2011

1 commit

  • In commit 9aa3283595451ca093500ff0977b106e1f465586 (ehea/ibm*: Move the
    IBM drivers) the IBM_NEW_EMAC* were renames to IBM_EMAC*

    The conversion was incomplete so that even if the driver was added to
    the .config it wasn't built, but there were no errors). In this commit
    we also update the various defconfigs that use EMAC to use the new
    Kconfig symbol, and explicitly add the NET_VENDOR_IBM guard.

    We do not explicitly select the Kconfig dependencies, as this would force
    EMAC on. Doing it in the defconfig allows more flexibility.

    Tested on a canyondlands board.

    Signed-off-by: Tony Breeds
    Signed-off-by: David S. Miller

    Tony Breeds
     

05 Aug, 2011

6 commits


27 Jul, 2011

2 commits

  • …git/arm/linux-arm-soc

    * 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc:
    ARM: Consolidate the clkdev header files
    ARM: set vga memory base at run-time
    ARM: convert PCI defines to variables
    ARM: pci: make pcibios_assign_all_busses use pci_has_flag
    ARM: remove unnecessary mach/hardware.h includes
    pci: move microblaze and powerpc pci flag functions into asm-generic
    powerpc: rename ppc_pci_*_flags to pci_*_flags

    Fix up conflicts in arch/microblaze/include/asm/pci-bridge.h

    Linus Torvalds
     
  • This allows us to move duplicated code in
    (atomic_inc_not_zero() for now) to

    Signed-off-by: Arun Sharma
    Reviewed-by: Eric Dumazet
    Cc: Ingo Molnar
    Cc: David Miller
    Cc: Eric Dumazet
    Acked-by: Mike Frysinger
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arun Sharma
     

26 Jul, 2011

2 commits

  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (99 commits)
    drivers/virt: add missing linux/interrupt.h to fsl_hypervisor.c
    powerpc/85xx: fix mpic configuration in CAMP mode
    powerpc: Copy back TIF flags on return from softirq stack
    powerpc/64: Make server perfmon only built on ppc64 server devices
    powerpc/pseries: Fix hvc_vio.c build due to recent changes
    powerpc: Exporting boot_cpuid_phys
    powerpc: Add CFAR to oops output
    hvc_console: Add kdb support
    powerpc/pseries: Fix hvterm_raw_get_chars to accept < 16 chars, fixing xmon
    powerpc/irq: Quieten irq mapping printks
    powerpc: Enable lockup and hung task detectors in pseries and ppc64 defeconfigs
    powerpc: Add mpt2sas driver to pseries and ppc64 defconfig
    powerpc: Disable IRQs off tracer in ppc64 defconfig
    powerpc: Sync pseries and ppc64 defconfigs
    powerpc/pseries/hvconsole: Fix dropped console output
    hvc_console: Improve tty/console put_chars handling
    powerpc/kdump: Fix timeout in crash_kexec_wait_realmode
    powerpc/mm: Fix output of total_ram.
    powerpc/cpufreq: Add cpufreq driver for Momentum Maple boards
    powerpc: Correct annotations of pmu registration functions
    ...

    Fix up trivial Kconfig/Makefile conflicts in arch/powerpc, drivers, and
    drivers/cpufreq

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (43 commits)
    fs: Merge split strings
    treewide: fix potentially dangerous trailing ';' in #defined values/expressions
    uwb: Fix misspelling of neighbourhood in comment
    net, netfilter: Remove redundant goto in ebt_ulog_packet
    trivial: don't touch files that are removed in the staging tree
    lib/vsprintf: replace link to Draft by final RFC number
    doc: Kconfig: `to be' -> `be'
    doc: Kconfig: Typo: square -> squared
    doc: Konfig: Documentation/power/{pm => apm-acpi}.txt
    drivers/net: static should be at beginning of declaration
    drivers/media: static should be at beginning of declaration
    drivers/i2c: static should be at beginning of declaration
    XTENSA: static should be at beginning of declaration
    SH: static should be at beginning of declaration
    MIPS: static should be at beginning of declaration
    ARM: static should be at beginning of declaration
    rcu: treewide: Do not use rcu_read_lock_held when calling rcu_dereference_check
    Update my e-mail address
    PCIe ASPM: forcedly -> forcibly
    gma500: push through device driver tree
    ...

    Fix up trivial conflicts:
    - arch/arm/mach-ep93xx/dma-m2p.c (deleted)
    - drivers/gpio/gpio-ep93xx.c (renamed and context nearby)
    - drivers/net/r8169.c (just context changes)

    Linus Torvalds
     

25 Jul, 2011

1 commit

  • * 'kvm-updates/3.1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (143 commits)
    KVM: IOMMU: Disable device assignment without interrupt remapping
    KVM: MMU: trace mmio page fault
    KVM: MMU: mmio page fault support
    KVM: MMU: reorganize struct kvm_shadow_walk_iterator
    KVM: MMU: lockless walking shadow page table
    KVM: MMU: do not need atomicly to set/clear spte
    KVM: MMU: introduce the rules to modify shadow page table
    KVM: MMU: abstract some functions to handle fault pfn
    KVM: MMU: filter out the mmio pfn from the fault pfn
    KVM: MMU: remove bypass_guest_pf
    KVM: MMU: split kvm_mmu_free_page
    KVM: MMU: count used shadow pages on prepareing path
    KVM: MMU: rename 'pt_write' to 'emulate'
    KVM: MMU: cleanup for FNAME(fetch)
    KVM: MMU: optimize to handle dirty bit
    KVM: MMU: cache mmio info on page fault path
    KVM: x86: introduce vcpu_mmio_gva_to_gpa to cleanup the code
    KVM: MMU: do not update slot bitmap if spte is nonpresent
    KVM: MMU: fix walking shadow page table
    KVM guest: KVM Steal time registration
    ...

    Linus Torvalds
     

23 Jul, 2011

4 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (107 commits)
    vfs: use ERR_CAST for err-ptr tossing in lookup_instantiate_filp
    isofs: Remove global fs lock
    jffs2: fix IN_DELETE_SELF on overwriting rename() killing a directory
    fix IN_DELETE_SELF on overwriting rename() on ramfs et.al.
    mm/truncate.c: fix build for CONFIG_BLOCK not enabled
    fs:update the NOTE of the file_operations structure
    Remove dead code in dget_parent()
    AFS: Fix silly characters in a comment
    switch d_add_ci() to d_splice_alias() in "found negative" case as well
    simplify gfs2_lookup()
    jfs_lookup(): don't bother with . or ..
    get rid of useless dget_parent() in btrfs rename() and link()
    get rid of useless dget_parent() in fs/btrfs/ioctl.c
    fs: push i_mutex and filemap_write_and_wait down into ->fsync() handlers
    drivers: fix up various ->llseek() implementations
    fs: handle SEEK_HOLE/SEEK_DATA properly in all fs's that define their own llseek
    Ext4: handle SEEK_HOLE/SEEK_DATA generically
    Btrfs: implement our own ->llseek
    fs: add SEEK_HOLE and SEEK_DATA flags
    reiserfs: make reiserfs default to barrier=flush
    ...

    Fix up trivial conflicts in fs/xfs/linux-2.6/xfs_super.c due to the new
    shrinker callout for the inode cache, that clashed with the xfs code to
    start the periodic workers later.

    Linus Torvalds
     
  • …rnel/git/tip/linux-2.6-tip

    * 'timers-cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    mips: Fix i8253 clockevent fallout
    i8253: Cleanup outb/inb magic
    arm: Footbridge: Use common i8253 clockevent
    mips: Use common i8253 clockevent
    x86: Use common i8253 clockevent
    i8253: Create common clockevent implementation
    i8253: Export i8253_lock unconditionally
    pcpskr: MIPS: Make config dependencies finer grained
    pcspkr: Cleanup Kconfig dependencies
    i8253: Move remaining content and delete asm/i8253.h
    i8253: Consolidate definitions of PIT_LATCH
    x86: i8253: Consolidate definitions of global_clock_event
    i8253: Alpha, PowerPC: Remove unused asm/8253pit.h
    alpha: i8253: Cleanup remaining users of i8253pit.h
    i8253: Remove I8253_LOCK config
    i8253: Make pcsp sound driver use the shared i8253_lock
    i8253: Make pcspkr input driver use the shared i8253_lock
    i8253: Consolidate all kernel definitions of i8253_lock
    i8253: Unify all kernel declarations of i8253_lock
    i8253: Create linux/i8253.h and use it in all 8253 related files

    Linus Torvalds
     
  • * 'of-pci' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    pci/of: Consolidate pci_bus_to_OF_node()
    pci/of: Consolidate pci_device_to_OF_node()
    x86/devicetree: Use generic PCI OF matching
    microblaze/pci: Move the remains of pci_32.c to pci-common.c
    microblaze/pci: Remove powermac originated cruft
    pci/of: Match PCI devices to OF nodes dynamically

    Linus Torvalds
     
  • * 'gpio/next' of git://git.secretlab.ca/git/linux-2.6: (61 commits)
    gpio/mxc/mxs: fix build error introduced by the irq_gc_ack() renaming
    mcp23s08: add i2c support
    mcp23s08: isolate spi specific parts
    mcp23s08: get rid of setup/teardown callbacks
    gpio/tegra: dt: add binding for gpio polarity
    mcp23s08: remove unused work queue
    gpio/da9052: remove a redundant assignment for gpio->da9052
    gpio/mxc: add device tree probe support
    ARM: mxc: use ARCH_NR_GPIOS to define gpio number
    gpio/mxc: get rid of the uses of cpu_is_mx()
    gpio/mxc: add missing initialization of basic_mmio_gpio shadow variables
    gpio: Move mpc5200 gpio driver to drivers/gpio
    GPIO: DA9052 GPIO module v3
    gpio/tegra: Use engineering names in DT compatible property
    of/gpio: Add new method for getting gpios under different property names
    gpio/dt: Refine GPIO device tree binding
    gpio/ml-ioh: fix off-by-one for displaying variable i in dev_err
    gpio/pca953x: Deprecate meaningless device-tree bindings
    gpio/pca953x: Remove dynamic platform data pointer
    gpio/pca953x: Fix IRQ support.
    ...

    Linus Torvalds
     

22 Jul, 2011

2 commits

  • Change the string to check for CAMP mode boot on MPC85xx (eg. P2020) to match
    the one in the corresponding dts files (p2020rdb_camp_core{0,1}.dts).

    Without this fix the mpic is configured as in the SMP boot mode, which causes
    the first core to report a protected source interrupt error for devices
    of the other core and lock up.

    Also add MPIC_SINGLE_DEST_CPU on both P2020 based architectures in CAMP
    mode as suggested by Scott Wood. Thanks.

    Cc: Scott Wood
    Cc: Poonam Aggrwal
    Cc: Benjamin Herrenschmidt
    Signed-off-by: Fabio Baltieri
    Signed-off-by: Kumar Gala

    Fabio Baltieri
     
  • The 64-bit Book-E parts (to date) dont utilize the 'server' class
    perfmon. So building or depending on it makes no sense (and does break
    FSL Book-E 64-bit support). Move the selection of PPC_HAVE_PMU_SUPPORT
    to be based on PPC_BOOK3S_64.

    Based on a patch from Scott Wood.

    Signed-off-by: Kumar Gala
    Signed-off-by: Benjamin Herrenschmidt

    Kumar Gala
     

21 Jul, 2011

1 commit

  • Btrfs needs to be able to control how filemap_write_and_wait_range() is called
    in fsync to make it less of a painful operation, so push down taking i_mutex and
    the calling of filemap_write_and_wait() down into the ->fsync() handlers. Some
    file systems can drop taking the i_mutex altogether it seems, like ext3 and
    ocfs2. For correctness sake I just pushed everything down in all cases to make
    sure that we keep the current behavior the same for everybody, and then each
    individual fs maintainer can make up their mind about what to do from there.
    Thanks,

    Acked-by: Jan Kara
    Signed-off-by: Josef Bacik
    Signed-off-by: Al Viro

    Josef Bacik
     

20 Jul, 2011

1 commit


19 Jul, 2011

1 commit


12 Jul, 2011

3 commits

  • This renames pci flags functions and enums in preparation for creating
    generic version in asm-generic/pci-bridge.h. The following search and
    replace is done:

    s/ppc_pci_/pci_/
    s/PPC_PCI_/PCI_/

    Direct accesses to ppc_pci_flag variable are replaced with helper
    functions.

    Signed-off-by: Rob Herring
    Acked-by: Benjamin Herrenschmidt
    Cc: Paul Mackerras

    Rob Herring
     
  • Instead of branching out-of-line with the DO_KVM macro to check if we
    are in a KVM guest at the time of an interrupt, this moves the KVM
    check inline in the first-level interrupt handlers. This speeds up
    the non-KVM case and makes sure that none of the interrupt handlers
    are missing the check.

    Because the first-level interrupt handlers are now larger, some things
    had to be move out of line in exceptions-64s.S.

    This all necessitated some minor changes to the interrupt entry code
    in KVM. This also streamlines the book3s_32 KVM test.

    Signed-off-by: Paul Mackerras
    Signed-off-by: Alexander Graf

    Paul Mackerras
     
  • Just compiling pseries in the kernel causes it to override
    memory_block_size_bytes() regardless of what is the runtime
    platform.

    This cleans up the implementation of that function, fixing
    a bug or two while at it, so that it's harmless (and potentially
    useful) for other platforms. Without this, bugs in that code
    would trigger a WARN_ON() in drivers/base/memory.c when
    booting some different platforms.

    If/when we have another platform supporting memory hotplug we
    might want to either move that out to a generic place or
    make it a ppc_md. callback.

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     

08 Jul, 2011

2 commits

  • Under the FSL Hypervisor we triggered a BUG_ON in mpc85xx_smp_init that
    expected smp_ops.message_pass to be explicity set. However recent
    changes allows smp_ops.message_pass to be NULL and handled by default
    code. Thus the BUG_ON isn't relevant anymore.

    Signed-off-by: Laurentiu TUDOR
    Signed-off-by: Kumar Gala

    Laurentiu TUDOR
     
  • P2040RDB Specification:
    -----------------------
    2Gbyte unbuffered DDR3 SDRAM SO-DIMM(64bit bus)
    128 Mbyte NOR flash single-chip memory
    256 Kbit M24256 I2C EEPROM
    16 Mbyte SPI memory
    SD connector to interface with the SD memory card
    dTSEC1: connected to the Vitesse SGMII PHY (VSC8221)
    dTSEC2: connected to the Vitesse SGMII PHY (VSC8221)
    dTSEC3: connected to the Vitesse SGMII PHY (VSC8221)
    dTSEC4: connected to the Vitesse RGMII PHY (VSC8641)
    dTSEC5: connected to the Vitesse RGMII PHY (VSC8641)
    I2C1: Real time clock, Temperature sensor
    I2C2: Vcore Regulator, 256Kbit I2C Bus EEPROM
    SATA: Lanes C and Land D of Bank2 are connected to two SATA connectors
    UART: supports two UARTs up to 115200 bps for console
    USB 2.0: connected via a internal UTMI PHY to two TYPE-A interfaces
    PCIe:
    - Lanes E, F, G and H of Bank1 are connected to one x4 PCIe SLOT1
    - Lanes C and Land D of Bank2 are connected to one x4 PCIe SLOT2

    Signed-off-by: Mingkai Hu
    Signed-off-by: Kumar Gala

    Mingkai Hu
     

07 Jul, 2011

1 commit


30 Jun, 2011

1 commit

  • The free_initmem function is basically duplicated in mm/init_32,
    and init_64, and is moved to the common 32/64-bit mm/mem.c.

    All other sections except init were removed in v2.6.15 by
    6c45ab992e4299c869fb26427944a8f8ea177024 (powerpc: Remove section
    free() and linker script bits), and therefore the bulk of the executed
    code is identical.

    This patch also removes updating ppc_md.progress to NULL in the powermac
    late_initcall.

    Suggested-by: Milton Miller
    Suggested-by: Benjamin Herrenschmidt
    Signed-off-by: Dave Carroll
    Signed-off-by: Benjamin Herrenschmidt

    Dave Carroll
     

29 Jun, 2011

5 commits

  • On pseries machines, consoles are provided by the hypervisor using
    a low level get_chars/put_chars type interface. However, this is
    really just a transport to the service processor which implements
    them either as "raw" console (networked consoles, HMC, ...) or as
    "hvsi" serial ports.

    The later is a simple packet protocol on top of the raw character
    interface that is supposed to convey additional "serial port" style
    semantics. In practice however, all it does is provide a way to
    read the CD line and set/clear our DTR line, that's it.

    We currently implement the "raw" protocol as an hvc console backend
    (/dev/hvcN) and the "hvsi" protocol using a separate tty driver
    (/dev/hvsi0).

    However this is quite impractical. The arbitrary difference between
    the two type of devices has been a major source of user (and distro)
    confusion. Additionally, there's an additional mini -hvsi implementation
    in the pseries platform code for our low level debug console and early
    boot kernel messages, which means code duplication, though that low
    level variant is impractical as it's incapable of doing the initial
    protocol negociation to establish the link to the FSP.

    This essentially replaces the dedicated hvsi driver and the platform
    udbg code completely by extending the existing hvc_vio backend used
    in "raw" mode so that:

    - It now supports HVSI as well
    - We add support for hvc backend providing tiocm{get,set}
    - It also provides a udbg interface for early debug and boot console

    This is overall less code, though this will only be obvious once we
    remove the old "hvsi" driver, which is still available for now. When
    the old driver is enabled, the new code still kicks in for the low
    level udbg console, replacing the old mini implementation in the platform
    code, it just doesn't provide the higher level "hvc" interface.

    In addition to producing generally simler code, this has several benefits
    over our current situation:

    - The user/distro only has to deal with /dev/hvcN for the hypervisor
    console, avoiding all sort of confusion that has plagued us in the past

    - The tty, kernel and low level debug console all use the same code
    base which supports the full protocol establishment process, thus the
    console is now available much earlier than it used to be with the
    old HVSI driver. The kernel console works much earlier and udbg is
    available much earlier too. Hackers can enable a hard coded very-early
    debug console as well that works with HVSI (previously that was only
    supported for the "raw" mode).

    I've tried to keep the same semantics as hvsi relative to how I react
    to things like CD changes, with some subtle differences though:

    - I clear DTR on close if HUPCL is set

    - Current hvsi triggers a hangup if it detects a up->down transition
    on CD (you can still open a console with CD down). My new implementation
    triggers a hangup if the link to the FSP is severed, and severs it upon
    detecting a up->down transition on CD.

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     
  • When CONFIG_PPC_EARLY_DEBUG is set, call register_early_udbg_console()
    early from generic code.

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     
  • Currently Maple setup code creates cpc925_edac device only on
    Motorola ATCA-6101 blade. Make setup code check bridge revision
    and enable EDAC on all U3H bridges.

    Verified on Momentum MapleD (ppc970fx kit) board.

    Signed-off-by: Dmitry Eremin-Solenikov
    Signed-off-by: Benjamin Herrenschmidt

    Dmitry Eremin-Solenikov
     
  • Reconfiguration notifier call for device node may fail by several reasons,
    but it always assumes kmalloc failures.

    This enables reconfiguration notifier call chain to get the actual error
    code rather than -ENOMEM by converting all reconfiguration notifier calls
    to return encapsulate error code with notifier_from_errno().

    Signed-off-by: Akinobu Mita
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: linuxppc-dev@lists.ozlabs.org
    Signed-off-by: Benjamin Herrenschmidt

    Akinobu Mita
     
  • This introduces pSeries_reconfig_notify() as a just wrapper of
    blocking_notifier_call_chain() for pSeries_reconfig_chain.

    This is a preparation to improvement of error code on reconfiguration
    notifier failure.

    Signed-off-by: Akinobu Mita
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: linuxppc-dev@lists.ozlabs.org
    Signed-off-by: Benjamin Herrenschmidt

    Akinobu Mita
     

27 Jun, 2011

6 commits

  • The Freescale hypervisor does not allow guests to write to the timebase
    registers (virtualizing the timebase register was deemed too complicated),
    so don't try to synchronize the timebase registers when we're running
    under the hypervisor.

    This typically happens when kexec support is enabled.

    Signed-off-by: Timur Tabi
    Signed-off-by: Kumar Gala

    Timur Tabi
     
  • P1010RDB Overview
    -----------------
    1Gbyte DDR3 (on board DDR)
    32Mbyte 16bit NOR flash
    32Mbyte SLC NAND Flash
    256 Kbit M24256 I2C EEPROM
    128 Mbit SPI Flash memory
    I2C Board 128x8 bit memory
    SD/MMC connector to interface with the SD memory card
    2 SATA interface
    1 internal SATA connect to 2.5. 160G SATA2 HDD
    1 eSATA connector to rear panel
    USB 2.0
    x1 USB 2.0 port: connected via a UTMI PHY to Mini-AB interface.
    x1 USB 2.0 port: directly connected to Mini-AB interface Ethernet
    eTSEC1: Connected to RGMII PHY VSC8641XKO
    eTSEC2: Connected to SGMII PHY VSC8221
    eTSEC3: Connected to SGMII PHY VSC8221 eCAN
    Two DB-9 female connectors for Field bus interface UART
    DUART interface: supports two UARTs up to 115200 bps for console display

    Signed-off-by: Poonam Aggrwal
    Signed-off-by: Prabhakar Kushwaha
    Signed-off-by: Kumar Gala

    Prabhakar Kushwaha
     
  • mpc8610hpcd_set_pixel_clock() calculates the correct value of the PXCLK
    bits in the CLKDVDR register for a given pixel clock rate. The code which
    performs this calculation is overly complicated and includes an error
    estimation routine that doesn't work most of the time anyway. Replace the
    code with the simpler routine that's currently used on the P1022DS.

    Signed-off-by: Timur Tabi
    Signed-off-by: Kumar Gala

    Timur Tabi
     
  • To ensure that the DIU pixel clock will not be set to an invalid value,
    clamp the PXCLK divider to the allowed range (2-255). This also acts as
    a limiter for the pixel clock.

    Signed-off-by: Timur Tabi
    Signed-off-by: Kumar Gala

    Timur Tabi
     
  • e500mc cannot doze or nap due to an erratum (as well as having a
    different mechanism than previous e500), but it has a "wait" instruction
    that is similar to doze.

    On 64-bit, due to the soft-irq-disable mechanism, the existing
    book3e_idle should be used instead.

    Signed-off-by: Vakul Garg
    Signed-off-by: Scott Wood
    Signed-off-by: Kumar Gala

    Scott Wood
     
  • The platform file for the Freecale P1022DS reference board is not freeing
    the ioremap() mapping of the PIXIS and global utilities nodes it creates.

    Signed-off-by: Timur Tabi
    Signed-off-by: Kumar Gala

    Timur Tabi