1. 27 5月, 2014 1 次提交
  2. 24 5月, 2014 1 次提交
    • A
      Merge tag 'for-3.16/bcm-cleanup' of git://github.com/broadcom/mach-bcm into next/cleanup · c40f0128
      Arnd Bergmann 提交于
      * Clean up mach-bcm config and build targets
      * Clean up bcm281xx/21664 SMC code
      * Clean up bcm281xx/21664 L2C code
      
      * tag 'for-3.16/bcm-cleanup' of git://github.com/broadcom/mach-bcm:
        ARM: bcm: rename "kona.h" and "kona.c"
        ARM: bcm: rewrite commentary for bcm_kona_do_smc()
        ARM: bcm: use inline assembly for "smc" request
        ARM: bcm: tidy up a few includes
        ARM: bcm: config option for l2 cache support
        ARM: bcm: don't special-case CPU 0 in bcm_kona_smc()
        ARM: bcm: have bcm_kona_smc() return request result
        ARM: bcm: clean up SMC code
        ARM: bcm: err, don't BUG() on SMC init failures
        ARM: bcm: use memory accessors for ioremapped area
        ARM: bcm: clean up config and build targets
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      
      Conflicts:
      	arch/arm/mach-bcm/Kconfig
      c40f0128
  3. 22 5月, 2014 2 次提交
    • O
      Merge tag 's3c24xx-clk' of... · 28d1079c
      Olof Johansson 提交于
      Merge tag 's3c24xx-clk' of http://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/cleanup
      
      Merge "Samsung S3C24XX updates for 3.16" from Kukjin Kim:
      
      Samsung S3C24XX to use the common clock framework
      - S3C2412, S3C2413, S3C2416 and S3C2443 to use CCF
      - S3C2410, S3C2440, S3C2442 to use CCF
      - Remove legacy samsung clock from mach-s3c24xx/
      
      - Some of them are missed from previous pull-request
      - Clock related sutff got ack from Mike and Tomasz
      - Created the last commit due to missing changes
        during re-sorting because this branch is provided
        as a base to samsung clk tree.
      
      * tag 's3c24xx-clk' of http://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: (23 commits)
        ARM: S3C24XX: fix merge conflict
        ARM: S3C24XX: remove SAMSUNG_CLOCK remnants after ccf conversion
        ARM: S3C24XX: remove legacy clock code
        ARM: S3C24XX: convert s3c2410 to common clock framework
        ARM: S3C24XX: convert s3c2440 and s3c2442 to common clock framework
        ARM: S3C24XX: add platform code for conversion to the common clock framework
        clk: samsung: add clock controller driver for s3c2410, s3c2440 and s3c2442
        dt-bindings: add documentation for s3c2410 clock controller
        ARM: S3C24XX: enable usage of common dclk if common clock framework is enabled
        clk: samsung: add clock driver for external clock outputs
        ARM: S3C24XX: cpufreq-utils: don't write raw values to MPLLCON when using ccf
        ARM: S3C24XX: convert s3c2412 to common clock framework
        clk: samsung: add clock controller driver for s3c2412
        dt-bindings: add documentation for s3c2412 clock controller
        clk: samsung: add plls used by the early s3c24xx cpus
        ARM: S3C24XX: only store clock registers when old clock code is active
        ARM: S3C24XX: Convert s3c2416 and s3c2443 to common clock framework
        ARM: dts: add clock data for s3c2416
        ARM: S3C24XX: prevent conflicts between ccf and non-ccf s3c24xx-socs
        clk: samsung: add clock-driver for s3c2416, s3c2443 and s3c2450
        ...
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      28d1079c
    • O
      Merge tag 'vexpress/updates-for-3.16' of... · 486ad2ed
      Olof Johansson 提交于
      Merge tag 'vexpress/updates-for-3.16' of git://git.linaro.org/people/pawel.moll/linux into next/cleanup
      
      Merge "ARM Versatile Express updates for 3.16" from Pawel Moll:
      
      This series reworks VE's platform configuration infrastructure by:
      
      - making it possible to instantiate selected devices from the
        Device Tree, prior to massive population,
      - converting custom "func" API into standard "regmap",
      - splitting the existing MFD driver into smaller ones and placing
        them into relevant directories.
      
      The common clock framework driver can now be selected individually
      (mostly for arm64 sake, where some of them are not used at all).
      
      It also simplifies the machine code, by:
      
      - moving the shed clock info clocksource driver,
      - simplifying SMP operations to base them entirely of the DT data,
      - moving platform ID checks into relevant driver.
      
      * tag 'vexpress/updates-for-3.16' of git://git.linaro.org/people/pawel.moll/linux:
        ARM: vexpress: move HBI check to sysreg driver
        ARM: vexpress: Simplify SMP operations for DT-powered system
        ARM: vexpress: remove redundant vexpress_dt_cpus_num to get cpu count
        clocksource: Sched clock source for Versatile Express
        clk: versatile: Split config options for sp810 and vexpress_osc
        mfd: vexpress: Define the device as MFD cells
        mfd: syscon: Add platform data with a regmap config name
        mfd: vexpress: Convert custom func API to regmap
        of: Keep track of populated platform devices
        + Linux 3.15-rc5
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      486ad2ed
  4. 20 5月, 2014 1 次提交
  5. 16 5月, 2014 9 次提交
    • P
      ARM: vexpress: move HBI check to sysreg driver · 6b2c31c7
      Pawel Moll 提交于
      The last reason for static memory mapping is the HBI (board
      identification number) check early in the machine code.
      
      Moving the check to the sysreg driver makes it possible to
      completely remove the early mapping and init functions.
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      6b2c31c7
    • P
      ARM: vexpress: Simplify SMP operations for DT-powered system · d2606f81
      Pawel Moll 提交于
      As all cores must be properly described in the Device Tree,
      there is no point in getting their numbers from SCU on
      A5/A9 platforms. This significantly simplifies the code,
      removing the need for flat-tree scanning and early static
      mapping.
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      d2606f81
    • S
      ARM: vexpress: remove redundant vexpress_dt_cpus_num to get cpu count · dcdea629
      Sudeep KarkadaNagesha 提交于
      arm_dt_init_cpu_maps parses the device tree, validates and sets the
      cpu_possible_mask appropriately. It is unnecessary to do another DT
      parse to get the number of cpus, use num_possible_cpus instead.
      
      This patch also removes setting cpu_present_mask as platforms should
      only re-initialize it in smp_prepare_cpus() if present != possible.
      Signed-off-by: NSudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      dcdea629
    • P
      clocksource: Sched clock source for Versatile Express · 220e2a8d
      Pawel Moll 提交于
      This patch adds a trival sched clock source using free
      running, 24MHz clocked counter present in the ARM Ltd.
      reference platforms (Versatile, RealView, Versatile
      Express) System Registers block.
      
      This code replaces the call in the VE machine code.
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      Reviewed-by: NLinus Walleij <linus.walleij@linaro.org>
      220e2a8d
    • P
      clk: versatile: Split config options for sp810 and vexpress_osc · 5ee2b877
      Pawel Moll 提交于
      Move the Kconfig entry for Versatile (& Express) clock drivers
      into a separate file and add individual options for sp810
      and vexpress_osc drivers, as they are optional in some
      configurations and may have separate dependencies.
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      Acked-by: NMike Turquette <mturquette@linaro.org>
      5ee2b877
    • P
      mfd: vexpress: Define the device as MFD cells · 974cc7b9
      Pawel Moll 提交于
      This patch - finally, after over 6 months! :-( - addresses
      Samuel's request to split the vexpress-sysreg driver into
      smaller portions and define the device in a form of MFD
      cells:
      
      * LEDs code has been completely removed and replaced with
        "gpio-leds" nodes in the tree (referencing dedicated
        GPIO subnodes in sysreg - bindings documentation updated);
        this also better fits the reality as some variants of the
        motherboard don't have all the LEDs populated
      
      * syscfg bridge code has been extracted into a separate
        driver (placed in drivers/misc for no better place)
      
      * all the ID & MISC registers are defined as sysconf
        making them available for other drivers should they need
        to use them (and also to the user via /sys/kernel/debug/regmap
        which can be helpful in platform debugging)
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      974cc7b9
    • P
      mfd: syscon: Add platform data with a regmap config name · 29f9b6cf
      Pawel Moll 提交于
      Define syscon platform data structure that can be used
      to define a regmap config name. This is particularly useful
      in the regmap debugfs when there is more than one syscon
      device registered, to distinguish the register blocks.
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      29f9b6cf
    • P
      mfd: vexpress: Convert custom func API to regmap · 3b9334ac
      Pawel Moll 提交于
      Components of the Versatile Express platform (configuration
      microcontrollers on motherboard and daughterboards in particular)
      talk to each other over a custom configuration bus. They
      provide miscellaneous functions (from clock generator control
      to energy sensors) which are represented as platform devices
      (and Device Tree nodes). The transactions on the bus can
      be generated by different "bridges" in the system, some
      of which are universal for the whole platform (for the price
      of high transfer latencies), others restricted to a subsystem
      (but much faster).
      
      Until now drivers for such functions were using custom "func"
      API, which is being replaced in this patch by regmap calls.
      This required:
      
      * a rework (and move to drivers/bus directory, as suggested
        by Samuel and Arnd) of the config bus core, which is much
        simpler now and uses device model infrastructure (class)
        to keep track of the bridges; non-DT case (soon to be
        retired anyway) is simply covered by a special device
        registration function
      
      * the new config-bus driver also takes over device population,
        so there is no need for special matching table for
        of_platform_populate nor "simple-bus" hack in the arm64
        model dtsi file (relevant bindings documentation has
        been updated); this allows all the vexpress devices
        fit into normal device model, making it possible
        to remove plenty of early inits and other hacks in
        the near future
      
      * adaptation of the syscfg bridge implementation in the
        sysreg driver, again making it much simpler; there is
        a special case of the "energy" function spanning two
        registers, where they should be both defined in the tree
        now, but backward compatibility is maintained in the code
      
      * modification of the relevant drivers:
      
        * hwmon - just a straight-forward API change
        * power/reset driver - API change
        * regulator - API change plus error handling
          simplification
        * osc clock driver - this one required larger rework
          in order to turn in into a standard platform driver
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      Acked-by: NMark Brown <broonie@linaro.org>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      Acked-by: NGuenter Roeck <linux@roeck-us.net>
      Acked-by: NMike Turquette <mturquette@linaro.org>
      3b9334ac
    • P
      of: Keep track of populated platform devices · c6e126de
      Pawel Moll 提交于
      In "Device Tree powered" systems, platform devices are usually massively
      populated with of_platform_populate() call, executed at some level of
      initcalls, either by generic architecture or by platform-specific code.
      
      There are situations though where certain devices must be created (and
      bound with drivers) before all the others. This presents a challenge,
      as devices created explicitly would be created again by
      of_platform_populate().
      
      This patch tries to solve that issue in a generic way, adding a
      "populated" flag for a DT node description. Subsequent
      of_platform_populate() will skip such nodes (and its children) in
      a similar way to the non-available ones.
      
      This patch also adds of_platform_depopulate() as an operation
      complementary to the _populate() one. It removes a platform or an amba
      device populated from the Device Tree, together with its all children
      (leaving, however, devices without associated of_node untouched)
      clearing the "populated" flag on the way.
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      Reviewed-by: NRob Herring <robh@kernel.org>
      Acked-by: NGrant Likely <grant.likely@linaro.org>
      c6e126de
  6. 15 5月, 2014 1 次提交
  7. 13 5月, 2014 8 次提交
  8. 12 5月, 2014 4 次提交
    • Z
      clocksource:sirf: remove the hardcode for the clk of timers · c7cff54d
      Zhiwu Song 提交于
      Nobody want to know the connection between io clk and timer clk,
      so exposing this information to timer module is not reasonable.
      this patch moves to define the timers' clk in dt.
      Signed-off-by: NZhiwu Song <Zhiwu.Song@csr.com>
      Signed-off-by: NBarry Song <Baohua.Song@csr.com>
      c7cff54d
    • B
      irqchip: sirf: fix one minor checkpatch issue · 7caf6852
      Bin Shi 提交于
      fix "line line over 80 characters" for the below:
      static int __init sirfsoc_irq_init(struct device_node *np, struct device_node *parent)
      
      the users of the codes - key customers really care about that.
      Signed-off-by: NBin Shi <Bin.Shi@csr.com>
      Signed-off-by: NBarry Song <Baohua.Song@csr.com>
      7caf6852
    • B
      clocksource: prima2: fix some minor checkpatch issues · 4c1ad709
      Bin Shi 提交于
      Fix the "line over 80 characters". users of the codes - key customers
      really care about that.
      
      WARNING: line over 80 characters
      64: FILE: timer-prima2.c:64:
      +       WARN_ON(!(readl_relaxed(sirfsoc_timer_base + SIRFSOC_TIMER_STATUS) & BIT(0)));
      
      WARNING: line over 80 characters
      80: FILE: timer-prima2.c:80:
      +       writel_relaxed(SIRFSOC_TIMER_LATCH_BIT, sirfsoc_timer_base + SIRFSOC_TIMER_LATCH);
      
      WARNING: line over 80 characters
      82: FILE: timer-prima2.c:82:
      +       cycles = (cycles << 32) | readl_relaxed(sirfsoc_timer_base + SIRFSOC_TIMER_LATCHED_LO);
      
      WARNING: line over 80 characters
      92: FILE: timer-prima2.c:92:
      +       writel_relaxed(SIRFSOC_TIMER_LATCH_BIT, sirfsoc_timer_base + SIRFSOC_TIMER_LATCH);
      
      WARNING: line over 80 characters
      96: FILE: timer-prima2.c:96:
      +       writel_relaxed(SIRFSOC_TIMER_LATCH_BIT, sirfsoc_timer_base + SIRFSOC_TIMER_LATCH);
      
      WARNING: line over 80 characters
      111: FILE: timer-prima2.c:111:
      +               writel_relaxed(val | BIT(0), sirfsoc_timer_base + SIRFSOC_TIMER_INT_EN);
      
      WARNING: line over 80 characters
      114: FILE: timer-prima2.c:114:
      +               writel_relaxed(val & ~BIT(0), sirfsoc_timer_base + SIRFSOC_TIMER_INT_EN);
      
      WARNING: line over 80 characters
      126: FILE: timer-prima2.c:126:
      +       writel_relaxed(SIRFSOC_TIMER_LATCH_BIT, sirfsoc_timer_base + SIRFSOC_TIMER_LATCH);
      
      WARNING: line over 80 characters
      129: FILE: timer-prima2.c:129:
      +               sirfsoc_timer_reg_val[i] = readl_relaxed(sirfsoc_timer_base + sirfsoc_timer_reg_list[i]);
      
      WARNING: line over 80 characters
      137: FILE: timer-prima2.c:137:
      +               writel_relaxed(sirfsoc_timer_reg_val[i], sirfsoc_timer_base + sirfsoc_timer_reg_list[i]);
      
      WARNING: line over 80 characters
      139: FILE: timer-prima2.c:139:
      +       writel_relaxed(sirfsoc_timer_reg_val[SIRFSOC_TIMER_REG_CNT - 2], sirfsoc_timer_base + SIRFSOC_TIMER_COUNTER_LO);
      
      WARNING: line over 80 characters
      140: FILE: timer-prima2.c:140:
      +       writel_relaxed(sirfsoc_timer_reg_val[SIRFSOC_TIMER_REG_CNT - 1], sirfsoc_timer_base + SIRFSOC_TIMER_COUNTER_HI);
      
      WARNING: line over 80 characters
      216: FILE: timer-prima2.c:216:
      +CLOCKSOURCE_OF_DECLARE(sirfsoc_prima2_timer, "sirf,prima2-tick", sirfsoc_prima2_timer_init);
      
      total: 0 errors, 13 warnings, 216 lines checked
      
      timer-prima2.c has style problems, please review.
      
      If any of these errors are false positives, please report
      them to the maintainer, see CHECKPATCH in MAINTAINERS.
      Signed-off-by: NBin Shi <Bin.Shi@csr.com>
      Signed-off-by: NBarry Song <Baohua.Song@csr.com>
      4c1ad709
    • X
      ARM: prima2: rstc: fix some minor checkpatch issues · a2a25683
      Xianglong Du 提交于
      this patch fixes the below minor issues:
      
      WARNING: line over 80 characters
      39: FILE: arch/arm/mach-prima2/rstc.c:39:
      +                * Writing 1 to this bit resets corresponding block. Writing 0 to this
      
      WARNING: line over 80 characters
      41: FILE: arch/arm/mach-prima2/rstc.c:41:
      +                * datasheet doesn't require explicit delay between the set and clear
      
      WARNING: line over 80 characters
      44: FILE: arch/arm/mach-prima2/rstc.c:44:
      +               writel(readl(sirfsoc_rstc_base + (reset_bit / 32) * 4) | (1 << reset_bit),
      
      WARNING: msleep < 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt
      46: FILE: arch/arm/mach-prima2/rstc.c:46:
      +               msleep(10);
      
      WARNING: line over 80 characters
      47: FILE: arch/arm/mach-prima2/rstc.c:47:
      +               writel(readl(sirfsoc_rstc_base + (reset_bit / 32) * 4) & ~(1 << reset_bit),
      
      WARNING: line over 80 characters
      52: FILE: arch/arm/mach-prima2/rstc.c:52:
      +                * Writing 1 to SET register resets corresponding block. Writing 1 to CLEAR
      
      WARNING: line over 80 characters
      54: FILE: arch/arm/mach-prima2/rstc.c:54:
      +                * datasheet doesn't require explicit delay between the set and clear
      
      WARNING: line over 80 characters
      57: FILE: arch/arm/mach-prima2/rstc.c:57:
      +               writel(1 << reset_bit, sirfsoc_rstc_base + (reset_bit / 32) * 8);
      
      WARNING: msleep < 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt
      58: FILE: arch/arm/mach-prima2/rstc.c:58:
      +               msleep(10);
      
      WARNING: line over 80 characters
      59: FILE: arch/arm/mach-prima2/rstc.c:59:
      +               writel(1 << reset_bit, sirfsoc_rstc_base + (reset_bit / 32) * 8 + 4);
      
      total: 0 errors, 10 warnings, 120 lines checked
      Signed-off-by: NXianglong Du <Xianglong.Du@csr.com>
      Signed-off-by: NBarry Song <Baohua.Song@csr.com>
      a2a25683
  9. 11 5月, 2014 1 次提交
  10. 10 5月, 2014 2 次提交
    • L
      Linux 3.15-rc5 · d6d211db
      Linus Torvalds 提交于
      d6d211db
    • L
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 181da3c3
      Linus Torvalds 提交于
      Pull x86 fixes from Peter Anvin:
       "A somewhat unpleasantly large collection of small fixes.  The big ones
        are the __visible tree sweep and a fix for 'earlyprintk=efi,keep'.  It
        was using __init functions with predictably suboptimal results.
      
        Another key fix is a build fix which would produce output that simply
        would not decompress correctly in some configuration, due to the
        existing Makefiles picking up an unfortunate local label and mistaking
        it for the global symbol _end.
      
        Additional fixes include the handling of 64-bit numbers when setting
        the vdso data page (a latent bug which became manifest when i386
        started exporting a vdso with time functions), a fix to the new MSR
        manipulation accessors which would cause features to not get properly
        unblocked, a build fix for 32-bit userland, and a few new platform
        quirks"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, vdso, time: Cast tv_nsec to u64 for proper shifting in update_vsyscall()
        x86: Fix typo in MSR_IA32_MISC_ENABLE_LIMIT_CPUID macro
        x86: Fix typo preventing msr_set/clear_bit from having an effect
        x86/intel: Add quirk to disable HPET for the Baytrail platform
        x86/hpet: Make boot_hpet_disable extern
        x86-64, build: Fix stack protector Makefile breakage with 32-bit userland
        x86/reboot: Add reboot quirk for Certec BPC600
        asmlinkage: Add explicit __visible to drivers/*, lib/*, kernel/*
        asmlinkage, x86: Add explicit __visible to arch/x86/*
        asmlinkage: Revert "lto: Make asmlinkage __visible"
        x86, build: Don't get confused by local symbols
        x86/efi: earlyprintk=efi,keep fix
      181da3c3
  11. 09 5月, 2014 10 次提交