1. 24 8月, 2022 19 次提交
  2. 23 8月, 2022 1 次提交
  3. 22 8月, 2022 1 次提交
  4. 18 8月, 2022 3 次提交
    • C
      regulator: core: Resolve supply name earlier to prevent double-init · 8a866d52
      Christian Kohlschütter 提交于
      Previously, an unresolved regulator supply reference upon calling
      regulator_register on an always-on or boot-on regulator caused
      set_machine_constraints to be called twice.
      
      This in turn may initialize the regulator twice, leading to voltage
      glitches that are timing-dependent. A simple, unrelated configuration
      change may be enough to hide this problem, only to be surfaced by
      chance.
      
      One such example is the SD-Card voltage regulator in a NanoPI R4S that
      would not initialize reliably unless the registration flow was just
      complex enough to allow the regulator to properly reset between calls.
      
      Fix this by re-arranging regulator_register, trying resolve the
      regulator's supply early enough that set_machine_constraints does not
      need to be called twice.
      Signed-off-by: NChristian Kohlschütter <christian@kohlschutter.com>
      Link: https://lore.kernel.org/r/20220818124646.6005-1-christian@kohlschutter.comSigned-off-by: NMark Brown <broonie@kernel.org>
      8a866d52
    • M
      Devm helpers for regulator get and enable · ee94aff2
      Mark Brown 提交于
      Merge series from Matti Vaittinen <mazziesaccount@gmail.com>:
      
      A few* drivers seem to use pattern demonstrated by pseudocode:
      
      - devm_regulator_get()
      - regulator_enable()
      - devm_add_action_or_reset(regulator_disable())
      
      Introducing devm helpers for this pattern would remove bunch of code from
      drivers. Typically following:
      
      - replace 3 calls (devm_regulator_get[_optional](), regulator_enable(),
        devm_add_action_or_reset()) with just one
        (devm_regulator_get_enable[_optional]()).
      - drop disable callback.
      - remove stored pointer to struct regulator - which can lead to problem
        when an devm action for regulator_disable is used.
      
      I believe this simplifies things by removing some dublicated code.
      
      The suggested managed 'get_enable' APIs do not return the pointer to
      regulators for user because any call to regulator_disable()
      (or regulator_enable()) may easily lead to regulator enable count imbalance
      upon device detach. (Eg, if someone calls regulator_disable() and the
      device is then detached before user has re-enabled the regulator). Not
      returning the pointer to obtained regulator to caller is a good hint that
      the enable/disable should not be manually handled when these APIs are used.
      
      OTOH, not returning the pointer reduces the use-cases by not allowing
      the consumers to perform other regulator actions. For example request the
      voltages. A few drivers which used the "get, enable,
      devm_action_to_disable" did also query the voltages. The API does not suit
      needs of such users.
      ee94aff2
    • M
      regulator: Add devm helpers for get and enable · da279e69
      Matti Vaittinen 提交于
      A few regulator consumer drivers seem to be just getting a regulator,
      enabling it and registering a devm-action to disable the regulator at
      the driver detach and then forget about it.
      
      We can simplify this a bit by adding a devm-helper for this pattern.
      Add devm_regulator_get_enable() and devm_regulator_get_enable_optional()
      Signed-off-by: NMatti Vaittinen <mazziesaccount@gmail.com>
      Link: https://lore.kernel.org/r/ed7b8841193bb9749d426f3cb3b199c9460794cd.1660292316.git.mazziesaccount@gmail.comSigned-off-by: NMark Brown <broonie@kernel.org>
      da279e69
  5. 15 8月, 2022 9 次提交
    • M
      regulator: Add missing devm_* functions to devres.rst · 9b6744f6
      Matti Vaittinen 提交于
      A few managed regulator functions were missing from the API list.
      
      Add missing functions.
      Signed-off-by: NMatti Vaittinen <mazziesaccount@gmail.com>
      Link: https://lore.kernel.org/r/5efc0c90342b0a0ef3322b8fc1472b84cfc0eb45.1660292316.git.mazziesaccount@gmail.comSigned-off-by: NMark Brown <broonie@kernel.org>
      9b6744f6
    • D
      regulator: qcom-rpmh: Implement get_optimum_mode(), not set_load() · efb0cb50
      Douglas Anderson 提交于
      Since we don't actually pass the load to the firmware, switch to using
      get_optimum_mode() instead of open-coding it.
      
      This is intended to have no effect other than cleanup.
      Signed-off-by: NDouglas Anderson <dianders@chromium.org>
      Link: https://lore.kernel.org/r/20220726102024.1.Icc838fe7bf0ef54a014ab2fee8af311654f5342a@changeidSigned-off-by: NMark Brown <broonie@kernel.org>
      efb0cb50
    • M
      ac5d2f04
    • L
      Linux 6.0-rc1 · 568035b0
      Linus Torvalds 提交于
      568035b0
    • Y
      radix-tree: replace gfp.h inclusion with gfp_types.h · 9f162193
      Yury Norov 提交于
      Radix tree header includes gfp.h for __GFP_BITS_SHIFT only. Now we
      have gfp_types.h for this.
      
      Fixes powerpc allmodconfig build:
      
         In file included from include/linux/nodemask.h:97,
                          from include/linux/mmzone.h:17,
                          from include/linux/gfp.h:7,
                          from include/linux/radix-tree.h:12,
                          from include/linux/idr.h:15,
                          from include/linux/kernfs.h:12,
                          from include/linux/sysfs.h:16,
                          from include/linux/kobject.h:20,
                          from include/linux/pci.h:35,
                          from arch/powerpc/kernel/prom_init.c:24:
         include/linux/random.h: In function 'add_latent_entropy':
      >> include/linux/random.h:25:46: error: 'latent_entropy' undeclared (first use in this function); did you mean 'add_latent_entropy'?
            25 |         add_device_randomness((const void *)&latent_entropy, sizeof(latent_entropy));
               |                                              ^~~~~~~~~~~~~~
               |                                              add_latent_entropy
         include/linux/random.h:25:46: note: each undeclared identifier is reported only once for each function it appears in
      Reported-by: Nkernel test robot <lkp@intel.com>
      CC: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
      CC: Andrew Morton <akpm@linux-foundation.org>
      CC: Jason A. Donenfeld <Jason@zx2c4.com>
      Signed-off-by: NYury Norov <yury.norov@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      9f162193
    • L
      Merge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 74cbb480
      Linus Torvalds 提交于
      Pull vfs lseek fix from Al Viro:
       "Fix proc_reg_llseek() breakage. Always had been possible if somebody
        left NULL ->proc_lseek, became a practical issue now"
      
      * tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        take care to handle NULL ->proc_lseek()
      74cbb480
    • A
      take care to handle NULL ->proc_lseek() · 3f61631d
      Al Viro 提交于
      Easily done now, just by clearing FMODE_LSEEK in ->f_mode
      during proc_reg_open() for such entries.
      
      Fixes: 868941b1 "fs: remove no_llseek"
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      3f61631d
    • L
      Merge tag 'for-linus-6.0-rc1b-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 5d6a0f4d
      Linus Torvalds 提交于
      Pull more xen updates from Juergen Gross:
      
       - fix the handling of the "persistent grants" feature negotiation
         between Xen blkfront and Xen blkback drivers
      
       - a cleanup of xen.config and adding xen.config to Xen section in
         MAINTAINERS
      
       - support HVMOP_set_evtchn_upcall_vector, which is more compliant to
         "normal" interrupt handling than the global callback used up to now
      
       - further small cleanups
      
      * tag 'for-linus-6.0-rc1b-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        MAINTAINERS: add xen config fragments to XEN HYPERVISOR sections
        xen: remove XEN_SCRUB_PAGES in xen.config
        xen/pciback: Fix comment typo
        xen/xenbus: fix return type in xenbus_file_read()
        xen-blkfront: Apply 'feature_persistent' parameter when connect
        xen-blkback: Apply 'feature_persistent' parameter when connect
        xen-blkback: fix persistent grants negotiation
        x86/xen: Add support for HVMOP_set_evtchn_upcall_vector
      5d6a0f4d
    • L
      Merge tag 'perf-tools-fixes-for-v6.0-2022-08-13' of... · 96f86ff0
      Linus Torvalds 提交于
      Merge tag 'perf-tools-fixes-for-v6.0-2022-08-13' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux
      
      Pull more perf tool updates from Arnaldo Carvalho de Melo:
      
       - 'perf c2c' now supports ARM64, adjust its output to cope with
         differences with what is in x86_64. Now go find false sharing on
         ARM64 (at least Neoverse) as well!
      
       - Refactor the JSON processing, making the output more compact and thus
         reducing the size of the resulting perf binary
      
       - Improvements for 'perf offcpu' profiling, including tracking child
         processes
      
       - Update Intel JSON metrics and events files for broadwellde,
         broadwellx, cascadelakex, haswellx, icelakex, ivytown, jaketown,
         knightslanding, sapphirerapids, skylakex and snowridgex
      
       - Add 'perf stat' JSON output and a 'perf test' entry for it
      
       - Ignore memfd and anonymous mmap events if jitdump present
      
       - Refactor 'perf test' shell tests allowing subdirs
      
       - Fix an error handling path in 'parse_perf_probe_command()'
      
       - Fixes for the guest Intel PT tracing patchkit in the 1st batch of
         this merge window
      
       - Print debuginfod queries if -v option is used, to explain delays in
         processing when debuginfo servers are enabled to fetch DSOs with
         richer symbol tables
      
       - Improve error message for 'perf record -p not_existing_pid'
      
       - Fix openssl and libbpf feature detection
      
       - Add PMU pai_crypto event description for IBM z16 on 'perf list'
      
       - Fix typos and duplicated words on comments in various places
      
      * tag 'perf-tools-fixes-for-v6.0-2022-08-13' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux: (81 commits)
        perf test: Refactor shell tests allowing subdirs
        perf vendor events: Update events for snowridgex
        perf vendor events: Update events and metrics for skylakex
        perf vendor events: Update metrics for sapphirerapids
        perf vendor events: Update events for knightslanding
        perf vendor events: Update metrics for jaketown
        perf vendor events: Update metrics for ivytown
        perf vendor events: Update events and metrics for icelakex
        perf vendor events: Update events and metrics for haswellx
        perf vendor events: Update events and metrics for cascadelakex
        perf vendor events: Update events and metrics for broadwellx
        perf vendor events: Update metrics for broadwellde
        perf jevents: Fold strings optimization
        perf jevents: Compress the pmu_events_table
        perf metrics: Copy entire pmu_event in find metric
        perf pmu-events: Hide the pmu_events
        perf pmu-events: Don't assume pmu_event is an array
        perf pmu-events: Move test events/metrics to JSON
        perf test: Use full metric resolution
        perf pmu-events: Hide pmu_events_map
        ...
      96f86ff0
  6. 14 8月, 2022 7 次提交