17 Jun, 2021

1 commit

  • …/linux/kernel/git/krzk/linux-mem-ctrl into arm/drivers

    Memory controller drivers for v5.14 - Tegra SoC, part two

    Second set of changes for Tegra SoC memory controller drivers,
    containing patchset from Thierry Reding:

    "The goal here is to avoid early identity mappings altogether and instead
    postpone the need for the identity mappings to when devices are attached
    to the SMMU. This works by making the SMMU driver coordinate with the
    memory controller driver on when to start enforcing SMMU translations.
    This makes Tegra behave in a more standard way and pushes the code to
    deal with the Tegra-specific programming into the NVIDIA SMMU
    implementation."

    This pulls a dependency from Will Deacon (ARM SMMU driver) and contains
    further ARM SMMU driver patches to resolve complex dependencies between
    different patchsets. The pull from Will contains only one patch
    ("Implement ->probe_finalize()"). Further work in Will's tree might
    depend on this patch, therefore patch was applied there.

    On the other hand, this ("Implement ->probe_finalize()") patch is also a
    dependency for ARM SMMU driver changes for Tegra. These changes,
    bringing seamless transition from the firmware framebuffer to the OS
    framebuffer, depend on earlier Tegra memory controller driver patches.

    * tag 'memory-controller-drv-tegra-5.14-2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl: (37 commits)
    iommu/arm-smmu: Use Tegra implementation on Tegra186
    iommu/arm-smmu: tegra: Implement SID override programming
    iommu/arm-smmu: tegra: Detect number of instances at runtime
    dt-bindings: arm-smmu: Add Tegra186 compatible string
    memory: tegra: Delete dead debugfs checking code
    iommu/arm-smmu: Implement ->probe_finalize()
    memory: tegra: Implement SID override programming
    memory: tegra: Split Tegra194 data into separate file
    memory: tegra: Add memory client IDs to tables
    memory: tegra: Unify drivers
    memory: tegra: Only initialize reset controller if available
    memory: tegra: Make IRQ support opitonal
    memory: tegra: Parameterize interrupt handler
    memory: tegra: Extract setup code into callback
    memory: tegra: Make per-SoC setup more generic
    memory: tegra: Push suspend/resume into SoC drivers
    memory: tegra: Introduce struct tegra_mc_ops
    memory: tegra: Unify struct tegra_mc across SoC generations
    memory: tegra: Consolidate register fields
    memory: tegra30-emc: Use devm_tegra_core_dev_init_opp_table()
    ...

    Link: https://lore.kernel.org/r/20210614195200.21657-1-krzysztof.kozlowski@canonical.com
    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     

12 Jun, 2021

1 commit

  • …inux/kernel/git/krzk/linux-mem-ctrl into arm/drivers

    Memory controller drivers for v5.14 - PL353

    Bigger work around ARM Primecell PL35x SMC memory controller driver by
    Miquel Raynal built on previous series from Naga Sureshkumar Relli.

    This includes bindings cleanup and correction, converting these to
    dtschema and several cleanyps in pl353-smc driver.

    * tag 'memory-controller-drv-pl353-5.14' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl:
    dt-binding: memory: pl353-smc: Convert to yaml
    MAINTAINERS: Add PL353 SMC entry
    memory: pl353-smc: Declare variables following a reverse christmas tree order
    memory: pl353-smc: Avoid useless acronyms in descriptions
    memory: pl353-smc: Let lower level controller drivers handle inits
    memory: pl353-smc: Rename goto labels
    memory: pl353-smc: Fix style
    dt-binding: memory: pl353-smc: Fix the NAND controller node in the example
    dt-binding: memory: pl353-smc: Drop unsupported nodes from the example
    dt-binding: memory: pl353-smc: Fix the example syntax and style
    dt-binding: memory: pl353-smc: Describe the child reg property
    dt-binding: memory: pl353-smc: Drop the partitioning section
    dt-binding: memory: pl353-smc: Document the range property
    dt-binding: memory: pl353-smc: Rephrase the binding

    Link: https://lore.kernel.org/r/20210611140659.61980-2-krzysztof.kozlowski@canonical.com
    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     

10 Jun, 2021

9 commits

  • This is a purely cosmetic change.

    Signed-off-by: Miquel Raynal
    Link: https://lore.kernel.org/r/20210610082040.2075611-15-miquel.raynal@bootlin.com
    Signed-off-by: Krzysztof Kozlowski

    Miquel Raynal
     
  • APER does not mean anything, while it seems legitimate to call this
    clock the AXI peripheral clock.

    Signed-off-by: Miquel Raynal
    Link: https://lore.kernel.org/r/20210610082040.2075611-14-miquel.raynal@bootlin.com
    Signed-off-by: Krzysztof Kozlowski

    Miquel Raynal
     
  • There is no point in having all these definitions at the SMC bus level,
    these are extremely tight to the NAND controller driver implementation,
    are not particularly generic, imply more boilerplate than needed, do
    not really follow the device model by receiving no argument and some of
    them are actually buggy.

    Let's get rid of these right now as there is no current user and keep
    this driver at a simple level: only the SMC bare initializations.

    The NAND controller driver which I am going to introduce will take care
    of redefining properly all these helpers and using them directly.

    Signed-off-by: Miquel Raynal
    Link: https://lore.kernel.org/r/20210610082040.2075611-13-miquel.raynal@bootlin.com
    Signed-off-by: Krzysztof Kozlowski

    Miquel Raynal
     
  • A goto label is better named

    do_something:

    than

    out_something_to_do:

    Use the former wording and really describe what the jump involves.

    Signed-off-by: Miquel Raynal
    Link: https://lore.kernel.org/r/20210610082040.2075611-12-miquel.raynal@bootlin.com
    Signed-off-by: Krzysztof Kozlowski

    Miquel Raynal
     
  • Use proper spacing.

    Signed-off-by: Miquel Raynal
    Link: https://lore.kernel.org/r/20210610082040.2075611-11-miquel.raynal@bootlin.com
    Signed-off-by: Krzysztof Kozlowski

    Miquel Raynal
     
  • The driver defined several functions related to handling of frequency
    and voltage changes:
    - freq_post_notify_handling
    - freq_pre_notify_handling
    - volt_notify_handling

    All these are static, not used inside or outside of driver, and marked
    as unused with comment: "TODO: voltage notify handling should be hooked
    up to regulator framework as soon as the necessary support is available
    in mainline kernel. This function is un-used right now.".

    These have been added with commit a93de288aad3 ("memory: emif: handle
    frequency and voltage change events") in 2012 and are unused since then.
    Additionally mentioned regulator and clock hooking did not happen since
    then. If it did not happen for nine years, let's assume it will not
    happen suddenly now.

    Remove all unused functions which also allows removal of "t_ck" static
    variable "t_ck" and "addressing" member of private structure.

    No functionality is lost.

    Signed-off-by: Krzysztof Kozlowski
    Link: https://lore.kernel.org/r/20210527154101.80556-1-krzysztof.kozlowski@canonical.com

    Krzysztof Kozlowski
     
  • On probe error the driver should free the memory allocated for private
    structure. Fix this by using resource-managed allocation.

    Fixes: a20cbdeffce2 ("powerpc/fsl: Add support for Integrated Flash Controller")
    Signed-off-by: Krzysztof Kozlowski
    Link: https://lore.kernel.org/r/20210527154322.81253-2-krzysztof.kozlowski@canonical.com

    Krzysztof Kozlowski
     
  • On probe error the driver should unmap the IO memory. Smatch reports:

    drivers/memory/fsl_ifc.c:298 fsl_ifc_ctrl_probe() warn: 'fsl_ifc_ctrl_dev->gregs' not released on lines: 298.

    Fixes: a20cbdeffce2 ("powerpc/fsl: Add support for Integrated Flash Controller")
    Reported-by: kernel test robot
    Reported-by: Dan Carpenter
    Signed-off-by: Krzysztof Kozlowski
    Link: https://lore.kernel.org/r/20210527154322.81253-1-krzysztof.kozlowski@canonical.com

    Krzysztof Kozlowski
     
  • The debugfs_create_dir() function does not return NULL, it returns error
    pointers. But in normal situations like this where the caller is not
    dereferencing "emc->debugfs.root" then we are not supposed to check the
    return. So instead of fixing these checks, we should delete them.

    Signed-off-by: Dan Carpenter
    Link: https://lore.kernel.org/r/YMCQDTSyG8UuQoh0@mwanda
    Signed-off-by: Krzysztof Kozlowski

    Dan Carpenter
     

04 Jun, 2021

13 commits

  • Instead of programming all SID overrides during early boot, perform the
    operation on-demand after the SMMU translations have been set up for a
    device. This reuses data from device tree to match memory clients for a
    device and programs the SID specified in device tree, which corresponds
    to the SID used for the SMMU context banks for the device.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210603164632.1000458-2-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • Keep the directory structure consistent by splitting the Tegra194 data
    into a separate file.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-13-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • The memory client IDs will subsequently be used to program override SIDs
    for the given clients depending on the device tree configuration.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-12-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • The Tegra210 (and earlier) driver now supports all the functionality
    that the Tegra186 (and later) driver does, so they can be unified.

    Note that previously the Tegra186 (and later) driver could be unloaded,
    even if that was perhaps not very useful. Older chips don't support that
    yet, but once they do this code can be reenabled.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-11-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • The memory controller hot resets are implemented in the BPMP on Tegra186
    and later, so there's no need to provide an implementation via the
    memory controller driver. Conditionally register the reset controller
    only if needed.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-10-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • Make IRQ support optional to help unify the Tegra186 memory controller
    driver with this one.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-9-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • Tegra20 requires a slightly different interrupt handler than Tegra30 and
    later, so parameterize the handler, so that each SoC implementation can
    provide its own.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-8-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • Separate the setup code for Tegra30 and later into a ->setup() callback
    and set it for all applicable chips.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-7-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • The current per-SoC setup code runs at a fairly arbitrary point during
    probe, thereby making it less flexible for other SoC generations. Move
    the call around slightly (after only the very basic, common setup that
    applies to all SoC generations has been performed), which will allow
    it to be used for other implementations.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-6-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • Continuing the scheme of unification, push suspend/resume callbacks into
    per-SoC driver so that they can be properly parameterized.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-5-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • Subsequent patches will introduce further callbacks, so create a new
    struct tegra_mc_ops to collect all of them in a single place. Move the
    existing ->init() callback into the new structure.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-4-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • As another step towards unifying both the Tegra210 (and earlier) and
    Tegra186 (and later) memory controller drivers, unify the structures
    that are used to represent them.

    Note that this comes at a slight space penalty since some fields are
    not used on all generations, but the benefits of unifying the driver
    outweigh the downsides.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-3-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     
  • Subsequent patches will add more register fields to the tegra_mc_client
    structure, so consolidate all register field definitions into a common
    sub-structure for coherency.

    Signed-off-by: Thierry Reding
    Link: https://lore.kernel.org/r/20210602163302.120041-2-thierry.reding@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    Thierry Reding
     

03 Jun, 2021

3 commits


01 Jun, 2021

1 commit

  • Fix compilation warning on 64bit platforms caused by implicit promotion
    of 32bit signed integer to a 64bit unsigned value which happens after
    enabling compile-testing of the EMC drivers.

    Reported-by: kernel test robot
    Reviewed-by: Nathan Chancellor
    Reviewed-by: Krzysztof Kozlowski
    Signed-off-by: Dmitry Osipenko
    Signed-off-by: Thierry Reding

    Dmitry Osipenko
     

17 May, 2021

1 commit

  • When no child nodes are matched, an appropriate error code -ENODEV should
    be returned. However, we currently do not explicitly assign this error
    code to 'err'. As a result, 0 was incorrectly returned.

    Fixes: fee10bd22678 ("memory: pl353: Add driver for arm pl353 static memory controller")
    Reported-by: Hulk Robot
    Signed-off-by: Zhen Lei
    Link: https://lore.kernel.org/r/20210515040004.6983-1-thunder.leizhen@huawei.com
    Signed-off-by: Krzysztof Kozlowski

    Zhen Lei
     

11 May, 2021

2 commits

  • Early exits from for_each_available_child_of_node() should decrement the
    node reference counter. Reported by Coccinelle:

    drivers/memory/atmel-ebi.c:593:1-33: WARNING:
    Function "for_each_available_child_of_node" should have of_node_put() before return around line 604.

    Fixes: 6a4ec4cd0888 ("memory: add Atmel EBI (External Bus Interface) driver")
    Signed-off-by: Krzysztof Kozlowski
    Link: https://lore.kernel.org/r/20210423101815.119341-2-krzysztof.kozlowski@canonical.com

    Krzysztof Kozlowski
     
  • Early exits from for_each_available_child_of_node() should decrement the
    node reference counter. Reported by Coccinelle:

    drivers/memory/stm32-fmc2-ebi.c:1046:1-33: WARNING:
    Function "for_each_available_child_of_node" should have of_node_put() before return around line 1051.

    Fixes: 66b8173a197f ("memory: stm32-fmc2-ebi: add STM32 FMC2 EBI controller driver")
    Signed-off-by: Krzysztof Kozlowski
    Reviewed-by: Christophe Kerello
    Link: https://lore.kernel.org/r/20210423101815.119341-1-krzysztof.kozlowski@canonical.com

    Krzysztof Kozlowski
     

01 May, 2021

1 commit


27 Apr, 2021

1 commit

  • Pull power management updates from Rafael Wysocki:
    "These add some new hardware support (for example, IceLake-D idle
    states in intel_idle), fix some issues (for example, the handling of
    negative "sleep length" values in cpuidle governors), add new
    functionality to the existing drivers (for example, scale-invariance
    support in the ACPI CPPC cpufreq driver) and clean up code all over.

    Specifics:

    - Add idle states table for IceLake-D to the intel_idle driver and
    update IceLake-X C6 data in it (Artem Bityutskiy).

    - Fix the C7 idle state on Tegra114 in the tegra cpuidle driver and
    drop the unused do_idle() firmware call from it (Dmitry Osipenko).

    - Fix cpuidle-qcom-spm Kconfig entry (He Ying).

    - Fix handling of possible negative tick_nohz_get_next_hrtimer()
    return values of in cpuidle governors (Rafael Wysocki).

    - Add support for frequency-invariance to the ACPI CPPC cpufreq
    driver and update the frequency-invariance engine (FIE) to use it
    as needed (Viresh Kumar).

    - Simplify the default delay_us setting in the ACPI CPPC cpufreq
    driver (Tom Saeger).

    - Clean up frequency-related computations in the intel_pstate cpufreq
    driver (Rafael Wysocki).

    - Fix TBG parent setting for load levels in the armada-37xx cpufreq
    driver and drop the CPU PM clock .set_parent method for armada-37xx
    (Marek Behún).

    - Fix multiple issues in the armada-37xx cpufreq driver (Pali Rohár).

    - Fix handling of dev_pm_opp_of_cpumask_add_table() return values in
    cpufreq-dt to take the -EPROBE_DEFER one into acconut as
    appropriate (Quanyang Wang).

    - Fix format string in ia64-acpi-cpufreq (Sergei Trofimovich).

    - Drop the unused for_each_policy() macro from cpufreq (Shaokun
    Zhang).

    - Simplify computations in the schedutil cpufreq governor to avoid
    unnecessary overhead (Yue Hu).

    - Fix typos in the s5pv210 cpufreq driver (Bhaskar Chowdhury).

    - Fix cpufreq documentation links in Kconfig (Alexander Monakov).

    - Fix PCI device power state handling in pci_enable_device_flags() to
    avoid issuse in some cases when the device depends on an ACPI power
    resource (Rafael Wysocki).

    - Add missing documentation of pm_runtime_resume_and_get() (Alan
    Stern).

    - Add missing static inline stub for pm_runtime_has_no_callbacks() to
    pm_runtime.h and drop the unused try_to_freeze_nowarn() definition
    (YueHaibing).

    - Drop duplicate struct device declaration from pm.h and fix a
    structure type declaration in intel_rapl.h (Wan Jiabing).

    - Use dev_set_name() instead of an open-coded equivalent of it in the
    wakeup sources code and drop a redundant local variable
    initialization from it (Andy Shevchenko, Colin Ian King).

    - Use crc32 instead of md5 for e820 memory map integrity check during
    resume from hibernation on x86 (Chris von Recklinghausen).

    - Fix typos in comments in the system-wide and hibernation support
    code (Lu Jialin).

    - Modify the generic power domains (genpd) code to avoid resuming
    devices in the "prepare" phase of system-wide suspend and
    hibernation (Ulf Hansson).

    - Add Hygon Fam18h RAPL support to the intel_rapl power capping
    driver (Pu Wen).

    - Add MAINTAINERS entry for the dynamic thermal power management
    (DTPM) code (Daniel Lezcano).

    - Add devm variants of operating performance points (OPP) API
    functions and switch over some users of the OPP framework to the
    new resource-managed API (Yangtao Li and Dmitry Osipenko).

    - Update devfreq core:

    * Register devfreq devices as cooling devices on demand (Daniel
    Lezcano).

    * Add missing unlock opeation in devfreq_add_device() (Lukasz
    Luba).

    * Use the next frequency as resume_freq instead of the previous
    frequency when using the opp-suspend property (Dong Aisheng).

    * Check get_dev_status in devfreq_update_stats() (Dong Aisheng).

    * Fix set_freq path for the userspace governor in Kconfig (Dong
    Aisheng).

    * Remove invalid description of get_target_freq() (Dong Aisheng).

    - Update devfreq drivers:

    * imx8m-ddrc: Remove imx8m_ddrc_get_dev_status() and unneeded
    of_match_ptr() (Dong Aisheng, Fabio Estevam).

    * rk3399_dmc: dt-bindings: Add rockchip,pmu phandle and drop
    references to undefined symbols (Enric Balletbo i Serra, Gaël
    PORTAY).

    * rk3399_dmc: Use dev_err_probe() to simplify the code (Krzysztof
    Kozlowski).

    * imx-bus: Remove unneeded of_match_ptr() (Fabio Estevam).

    - Fix kernel-doc warnings in three places (Pierre-Louis Bossart).

    - Fix typo in the pm-graph utility code (Ricardo Ribalda)"

    * tag 'pm-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (74 commits)
    PM: wakeup: remove redundant assignment to variable retval
    PM: hibernate: x86: Use crc32 instead of md5 for hibernation e820 integrity check
    cpufreq: Kconfig: fix documentation links
    PM: wakeup: use dev_set_name() directly
    PM: runtime: Add documentation for pm_runtime_resume_and_get()
    cpufreq: intel_pstate: Simplify intel_pstate_update_perf_limits()
    cpufreq: armada-37xx: Fix module unloading
    cpufreq: armada-37xx: Remove cur_frequency variable
    cpufreq: armada-37xx: Fix determining base CPU frequency
    cpufreq: armada-37xx: Fix driver cleanup when registration failed
    clk: mvebu: armada-37xx-periph: Fix workaround for switching from L1 to L0
    clk: mvebu: armada-37xx-periph: Fix switching CPU freq from 250 Mhz to 1 GHz
    cpufreq: armada-37xx: Fix the AVS value for load L1
    clk: mvebu: armada-37xx-periph: remove .set_parent method for CPU PM clock
    cpufreq: armada-37xx: Fix setting TBG parent for load levels
    cpuidle: Fix ARM_QCOM_SPM_CPUIDLE configuration
    cpuidle: tegra: Remove do_idle firmware call
    cpuidle: tegra: Fix C7 idling state on Tegra114
    PM: sleep: fix typos in comments
    cpufreq: Remove unused for_each_policy macro
    ...

    Linus Torvalds
     

19 Apr, 2021

1 commit

  • …ernel/git/krzk/linux-mem-ctrl into arm/drivers

    Memory controller drivers for v5.13, part two

    1. Renesas RPC: fix possible NULL pointer.
    2. Exynos5422 DMC: add proper error checking for clk_prepare.
    3. Mediatek SMI: use device-links instead of explicit PM runtime calls.

    * tag 'memory-controller-drv-5.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl:
    memory: mtk-smi: Add device-link between smi-larb and smi-common
    memory: samsung: exynos5422-dmc: handle clk_set_parent() failure
    memory: renesas-rpc-if: fix possible NULL pointer dereference of resource

    Link: https://lore.kernel.org/r/20210415065514.7385-1-krzysztof.kozlowski@canonical.com
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     

13 Apr, 2021

3 commits

  • Normally, If the smi-larb HW need work, we should enable the smi-common
    HW power and clock firstly.
    This patch adds device-link between the smi-larb dev and the smi-common
    dev. then If pm_runtime_get_sync(smi-larb-dev), the pm_runtime_get_sync
    (smi-common-dev) will be called automatically.

    Also, Add DL_FLAG_STATELESS to avoid the smi-common clocks be gated when
    probe.

    CC: Matthias Brugger
    Suggested-by: Tomasz Figa
    Signed-off-by: Yong Wu
    Signed-off-by: Krzysztof Kozlowski
    Link: https://lore.kernel.org/r/20210410091128.31823-5-yong.wu@mediatek.com

    Yong Wu
     
  • clk_set_parent() can fail and ignoring such case could lead to invalid
    clock setup for given frequency.

    Addresses-Coverity: Unchecked return value
    Fixes: 6e7674c3c6df ("memory: Add DMC driver for Exynos5422")
    Signed-off-by: Krzysztof Kozlowski
    Reviewed-by: Lukasz Luba
    Link: https://lore.kernel.org/r/20210407154535.70756-1-krzysztof.kozlowski@canonical.com

    Krzysztof Kozlowski
     
  • The platform_get_resource_byname() can return NULL which would be
    immediately dereferenced by resource_size(). Instead dereference it
    after validating the resource.

    Addresses-Coverity: Dereference null return value
    Fixes: ca7d8b980b67 ("memory: add Renesas RPC-IF driver")
    Signed-off-by: Krzysztof Kozlowski
    Link: https://lore.kernel.org/r/20210407154357.70200-1-krzysztof.kozlowski@canonical.com

    Krzysztof Kozlowski
     

08 Apr, 2021

1 commit

  • …ux/kernel/git/krzk/linux-mem-ctrl into arm/drivers

    Memory controller drivers for v5.13 - Tegra SoC

    1. Few cleanups.
    2. Add debug statistics to Tegra20 memory controller.
    3. Update bindings and convert to dtschema. This update is not
    backwards compatible (ABI break) however the broken part was added
    recently (v5.11) and there are no users of it yet.

    * tag 'memory-controller-drv-tegra-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl:
    dt-bindings: memory: tegra20: mc: Convert to schema
    dt-bindings: memory: tegra124: emc: Replace core regulator with power domain
    dt-bindings: memory: tegra30: emc: Replace core regulator with power domain
    dt-bindings: memory: tegra20: emc: Replace core regulator with power domain
    memory: tegra: Print out info-level once per driver probe
    memory: tegra20: Protect debug code with a lock
    memory: tegra20: Correct comment to MC_STAT registers writes
    memory: tegra20: Add debug statistics
    memory: tegra: replace DEFINE_SIMPLE_ATTRIBUTE with DEFINE_DEBUGFS_ATTRIBUTE

    Link: https://lore.kernel.org/r/20210407161333.73013-2-krzysztof.kozlowski@canonical.com
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     

05 Apr, 2021

1 commit

  • The mask for page size of ECC Configuration Register should be 0x3,
    according to the datasheet of PL353 smc.

    Fixes: fee10bd22678 ("memory: pl353: Add driver for arm pl353 static memory controller")
    Signed-off-by: gexueyuan
    Link: https://lore.kernel.org/r/20210331031056.5326-1-gexueyuan@gmail.com
    Signed-off-by: Krzysztof Kozlowski

    gexueyuan
     

02 Apr, 2021

1 commit