1. 03 Dec, 2018 9 commits
    • A.s. Dong's avatar
      clk: imx: add imx7ulp clk driver · b1260067
      A.s. Dong authored
      i.MX7ULP Clock functions are under joint control of the System
      Clock Generation (SCG) modules, Peripheral Clock Control (PCC)
      modules, and Core Mode Controller (CMC)1 blocks
      
      The clocking scheme provides clear separation between M4 domain
      and A7 domain. Except for a few clock sources shared between two
      domains, such as the System Oscillator clock, the Slow IRC (SIRC),
      and and the Fast IRC clock (FIRCLK), clock sources and clock
      management are separated and contained within each domain.
      
      M4 clock management consists of SCG0, PCC0, PCC1, and CMC0 modules.
      A7 clock management consists of SCG1, PCC2, PCC3, and CMC1 modules.
      
      This driver only adds clock support in A7 domain.
      
      Note that most clocks required to be operated when gated, e.g. pll,
      pfd, pcc. And more special cases that scs/ddr/nic mux selecting
      different clock source requires that clock to be enabled first,
      then we need set CLK_OPS_PARENT_ENABLE flag for them properly.
      
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Michael Turquette <mturquette@baylibre.com>
      Cc: Shawn Guo <shawnguo@kernel.org>
      Cc: Anson Huang <Anson.Huang@nxp.com>
      Cc: Bai Ping <ping.bai@nxp.com>
      Signed-off-by: default avatarDong Aisheng <aisheng.dong@nxp.com>
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      b1260067
    • A.s. Dong's avatar
      clk: imx: implement new clk_hw based APIs · 3b315214
      A.s. Dong authored
      Clock providers are recommended to use the new struct clk_hw based API,
      so implement IMX clk_hw based provider helpers functions to the new
      approach.
      Signed-off-by: default avatarDong Aisheng <aisheng.dong@nxp.com>
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      3b315214
    • A.s. Dong's avatar
      clk: imx: make mux parent strings const · 9e5ef7a5
      A.s. Dong authored
      As the commit 2893c379 ("clk: make strings in parent name arrays
      const"), let's make the parent strings const, otherwise we may meet
      the following warning when compiling:
      
      drivers/clk/imx/clk-imx7ulp.c: In function 'imx7ulp_clocks_init':
      drivers/clk/imx/clk-imx7ulp.c:73:35: warning: passing argument 5 of
      	'imx_clk_mux_flags' discards 'const' qualifier from pointer target type
      
        clks[IMX7ULP_CLK_APLL_PRE_SEL] = imx_clk_mux_flags("apll_pre_sel", base + 0x508, 0,
      	1, pll_pre_sels, ARRAY_SIZE(pll_pre_sels), CLK_SET_PARENT_GATE);
                                         ^
      In file included from drivers/clk/imx/clk-imx7ulp.c:23:0:
      drivers/clk/imx/clk.h:200:27: note: expected 'const char **' but argument is
       of type 'const char * const*'
      ...
      
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Michael Turquette <mturquette@baylibre.com>
      Cc: Shawn Guo <shawnguo@kernel.org>
      Signed-off-by: default avatarDong Aisheng <aisheng.dong@nxp.com>
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      9e5ef7a5
    • A.s. Dong's avatar
      dt-bindings: clock: add imx7ulp clock binding doc · eb299e4d
      A.s. Dong authored
      i.MX7ULP Clock functions are under joint control of the System
      Clock Generation (SCG) modules, Peripheral Clock Control (PCC)
      modules, and Core Mode Controller (CMC)1 blocks
      
      Note IMX7ULP has two clock domains: M4 and A7. This binding doc
      is only for A7 clock domain.
      
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Michael Turquette <mturquette@baylibre.com>
      Cc: Shawn Guo <shawnguo@kernel.org>
      Cc: Anson Huang <Anson.Huang@nxp.com>
      Cc: Bai Ping <ping.bai@nxp.com>
      Signed-off-by: default avatarDong Aisheng <aisheng.dong@nxp.com>
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      eb299e4d
    • A.s. Dong's avatar
      clk: imx: add imx7ulp composite clk support · 76a323c1
      A.s. Dong authored
      The imx composite clk is designed for Peripheral Clock Control (PCC)
      module observed in IMX ULP SoC series.
      
      NOTE pcc can only be operated when clk is gated.
      
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Michael Turquette <mturquette@baylibre.com>
      Cc: Shawn Guo <shawnguo@kernel.org>
      Cc: Anson Huang <Anson.Huang@nxp.com>
      Cc: Bai Ping <ping.bai@nxp.com>
      Signed-off-by: default avatarDong Aisheng <aisheng.dong@nxp.com>
      [sboyd@kernel.org: Include clk.h for sparse warnings]
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      76a323c1
    • A.s. Dong's avatar
      clk: imx: add pfdv2 support · 9fcb6be3
      A.s. Dong authored
      The pfdv2 is designed for PLL Fractional Divide (PFD) observed in System
      Clock Generation (SCG) module in IMX ULP SoC series. e.g. i.MX7ULP.
      
      NOTE pfdv2 can only be operated when clk is gated.
      
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Michael Turquette <mturquette@baylibre.com>
      Cc: Shawn Guo <shawnguo@kernel.org>
      Cc: Anson Huang <Anson.Huang@nxp.com>
      Cc: Bai Ping <ping.bai@nxp.com>
      Signed-off-by: default avatarDong Aisheng <aisheng.dong@nxp.com>
      [sboyd@kernel.org: Include clk.h for sparse warnings]
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      9fcb6be3
    • A.s. Dong's avatar
      clk: imx: add pllv4 support · d9a8f950
      A.s. Dong authored
      pllv4 is designed for System Clock Generation (SCG) module observed
      in IMX ULP SoC series. e.g. i.MX7ULP.
      
      The SCG modules generates clock used to derive processor, system,
      peripheral bus and external memory interface clocks while this patch
      intends to support the PLL part.
      
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Michael Turquette <mturquette@baylibre.com>
      Cc: Shawn Guo <shawnguo@kernel.org>
      Cc: Anson Huang <Anson.Huang@nxp.com>
      Cc: Bai Ping <ping.bai@nxp.com>
      Signed-off-by: default avatarDong Aisheng <aisheng.dong@nxp.com>
      [sboyd@kernel.org: Include clk.h for sparse warnings]
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      d9a8f950
    • A.s. Dong's avatar
      clk: fractional-divider: add CLK_FRAC_DIVIDER_ZERO_BASED flag support · e983da27
      A.s. Dong authored
      Adding CLK_FRAC_DIVIDER_ZERO_BASED flag to indicate the numerator and
      denominator value in register are start from 0.
      
      This can be used to support frac dividers like below:
      Divider output clock = Divider input clock x [(frac +1) / (div +1)]
      where frac/div in register is:
      000b - Divide by 1.
      001b - Divide by 2.
      010b - Divide by 3.
      
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Michael Turquette <mturquette@baylibre.com>
      Signed-off-by: default avatarDong Aisheng <aisheng.dong@nxp.com>
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      e983da27
    • A.s. Dong's avatar
      clk: imx: add gatable clock divider support · 40468079
      A.s. Dong authored
      For dividers with zero indicating clock is disabled, instead of giving a
      warning each time like "clkx: Zero divisor and CLK_DIVIDER_ALLOW_ZERO not
      set" in exist code, we'd like to introduce enable/disable function for it.
      e.g.
      000b - Clock disabled
      001b - Divide by 1
      010b - Divide by 2
      ...
      
      Set rate when the clk is disabled will cache the rate request and only
      when the clk is enabled will the driver actually program the hardware to
      have the requested divider value. Similarly, when the clk is disabled we'll
      write a 0 there, but when the clk is enabled we'll restore whatever rate
      (divider) was chosen last.
      
      It does mean that recalc rate will be sort of odd, because when the clk is
      off it will return 0, and when the clk is on it will return the right rate.
      So to make things work, we'll need to return the cached rate in recalc rate
      when the clk is off and read the hardware when the clk is on.
      
      NOTE for the default off divider, the recalc rate will still return 0 as
      there's still no proper preset rate. Enable such divider will give user
      a reminder error message.
      
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Michael Turquette <mturquette@baylibre.com>
      Cc: Shawn Guo <shawnguo@kernel.org>
      Signed-off-by: default avatarDong Aisheng <aisheng.dong@nxp.com>
      [sboyd@kernel.org: Include clk.h for sparse warnings]
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      40468079
  2. 04 Nov, 2018 9 commits
    • Linus Torvalds's avatar
      Linux 4.20-rc1 · 65102238
      Linus Torvalds authored
      65102238
    • Linus Torvalds's avatar
      Merge tag 'tags/upstream-4.20-rc1' of git://git.infradead.org/linux-ubifs · 42bd06e9
      Linus Torvalds authored
      Pull UBIFS updates from Richard Weinberger:
      
       - Full filesystem authentication feature, UBIFS is now able to have the
         whole filesystem structure authenticated plus user data encrypted and
         authenticated.
      
       - Minor cleanups
      
      * tag 'tags/upstream-4.20-rc1' of git://git.infradead.org/linux-ubifs: (26 commits)
        ubifs: Remove unneeded semicolon
        Documentation: ubifs: Add authentication whitepaper
        ubifs: Enable authentication support
        ubifs: Do not update inode size in-place in authenticated mode
        ubifs: Add hashes and HMACs to default filesystem
        ubifs: authentication: Authenticate super block node
        ubifs: Create hash for default LPT
        ubfis: authentication: Authenticate master node
        ubifs: authentication: Authenticate LPT
        ubifs: Authenticate replayed journal
        ubifs: Add auth nodes to garbage collector journal head
        ubifs: Add authentication nodes to journal
        ubifs: authentication: Add hashes to index nodes
        ubifs: Add hashes to the tree node cache
        ubifs: Create functions to embed a HMAC in a node
        ubifs: Add helper functions for authentication support
        ubifs: Add separate functions to init/crc a node
        ubifs: Format changes for authentication support
        ubifs: Store read superblock node
        ubifs: Drop write_node
        ...
      42bd06e9
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.20-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 4710e789
      Linus Torvalds authored
      Pull NFS client bugfixes from Trond Myklebust:
       "Highlights include:
      
        Bugfix:
         - Fix build issues on architectures that don't provide 64-bit cmpxchg
      
        Cleanups:
         - Fix a spelling mistake"
      
      * tag 'nfs-for-4.20-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        NFS: fix spelling mistake, EACCESS -> EACCES
        SUNRPC: Use atomic(64)_t for seq_send(64)
      4710e789
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 35e74524
      Linus Torvalds authored
      Pull more timer updates from Thomas Gleixner:
       "A set of commits for the new C-SKY architecture timers"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        dt-bindings: timer: gx6605s SOC timer
        clocksource/drivers/c-sky: Add gx6605s SOC system timer
        dt-bindings: timer: C-SKY Multi-processor timer
        clocksource/drivers/c-sky: Add C-SKY SMP timer
      35e74524
    • Linus Torvalds's avatar
      Merge tag 'ntb-4.20' of git://github.com/jonmason/ntb · 04578e84
      Linus Torvalds authored
      Pull NTB updates from Jon Mason:
       "Fairly minor changes and bug fixes:
      
        NTB IDT thermal changes and hook into hwmon, ntb_netdev clean-up of
        private struct, and a few bug fixes"
      
      * tag 'ntb-4.20' of git://github.com/jonmason/ntb:
        ntb: idt: Alter the driver info comments
        ntb: idt: Discard temperature sensor IRQ handler
        ntb: idt: Add basic hwmon sysfs interface
        ntb: idt: Alter temperature read method
        ntb_netdev: Simplify remove with client device drvdata
        NTB: transport: Try harder to alloc an aligned MW buffer
        ntb: ntb_transport: Mark expected switch fall-throughs
        ntb: idt: Set PCIe bus address to BARLIMITx
        NTB: ntb_hw_idt: replace IS_ERR_OR_NULL with regular NULL checks
        ntb: intel: fix return value for ndev_vec_mask()
        ntb_netdev: fix sleep time mismatch
      04578e84
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 71e56028
      Linus Torvalds authored
      Pull scheduler fixes from Ingo Molnar:
       "A memory (under-)allocation fix and a comment fix"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/topology: Fix off by one bug
        sched/rt: Update comment in pick_next_task_rt()
      71e56028
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 601a8807
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "A number of fixes and some late updates:
      
         - make in_compat_syscall() behavior on x86-32 similar to other
           platforms, this touches a number of generic files but is not
           intended to impact non-x86 platforms.
      
         - objtool fixes
      
         - PAT preemption fix
      
         - paravirt fixes/cleanups
      
         - cpufeatures updates for new instructions
      
         - earlyprintk quirk
      
         - make microcode version in sysfs world-readable (it is already
           world-readable in procfs)
      
         - minor cleanups and fixes"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        compat: Cleanup in_compat_syscall() callers
        x86/compat: Adjust in_compat_syscall() to generic code under !COMPAT
        objtool: Support GCC 9 cold subfunction naming scheme
        x86/numa_emulation: Fix uniform-split numa emulation
        x86/paravirt: Remove unused _paravirt_ident_32
        x86/mm/pat: Disable preemption around __flush_tlb_all()
        x86/paravirt: Remove GPL from pv_ops export
        x86/traps: Use format string with panic() call
        x86: Clean up 'sizeof x' => 'sizeof(x)'
        x86/cpufeatures: Enumerate MOVDIR64B instruction
        x86/cpufeatures: Enumerate MOVDIRI instruction
        x86/earlyprintk: Add a force option for pciserial device
        objtool: Support per-function rodata sections
        x86/microcode: Make revision and processor flags world-readable
      601a8807
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 01897f3e
      Linus Torvalds authored
      Pull perf updates and fixes from Ingo Molnar:
       "These are almost all tooling updates: 'perf top', 'perf trace' and
        'perf script' fixes and updates, an UAPI header sync with the merge
        window versions, license marker updates, much improved Sparc support
        from David Miller, and a number of fixes"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (66 commits)
        perf intel-pt/bts: Calculate cpumode for synthesized samples
        perf intel-pt: Insert callchain context into synthesized callchains
        perf tools: Don't clone maps from parent when synthesizing forks
        perf top: Start display thread earlier
        tools headers uapi: Update linux/if_link.h header copy
        tools headers uapi: Update linux/netlink.h header copy
        tools headers: Sync the various kvm.h header copies
        tools include uapi: Update linux/mmap.h copy
        perf trace beauty: Use the mmap flags table generated from headers
        perf beauty: Wire up the mmap flags table generator to the Makefile
        perf beauty: Add a generator for MAP_ mmap's flag constants
        tools include uapi: Update asound.h copy
        tools arch uapi: Update asm-generic/unistd.h and arm64 unistd.h copies
        tools include uapi: Update linux/fs.h copy
        perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc}
        perf cs-etm: Correct CPU mode for samples
        perf unwind: Take pgoff into account when reporting elf to libdwfl
        perf top: Do not use overwrite mode by default
        perf top: Allow disabling the overwrite mode
        perf trace: Beautify mount's first pathname arg
        ...
      01897f3e
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e9ebc215
      Linus Torvalds authored
      Pull irq fixes from Ingo Molnar:
       "An irqchip driver fix and a memory (over-)allocation fix"
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/irq-mvebu-sei: Fix a NULL vs IS_ERR() bug in probe function
        irq/matrix: Fix memory overallocation
      e9ebc215
  3. 03 Nov, 2018 22 commits