12 Mar, 2016

2 commits


22 Sep, 2015

1 commit

  • Implement the ->enable(), ->disable() and ->is_enabled methods and remove
    the PWM call in ->set_voltage_sel().
    This is particularly important for critical regulators tagged as always-on,
    because not claiming the PWM (and its dependencies) might lead to
    unpredictable behavior (like a system hang because the PWM clk is only
    claimed when the PWM device is enabled).

    Signed-off-by: Boris Brezillon
    Signed-off-by: Mark Brown

    Boris Brezillon
     

11 Jul, 2015

3 commits


10 Jul, 2015

2 commits

  • Remove over-bracketing, use framework API to fetch PWM period and
    be more forthcoming that pwm_voltage_to_duty_cycle() actually returns
    duty cycle as a percentage, rather than a register value.

    Signed-off-by: Lee Jones
    Signed-off-by: Mark Brown

    Lee Jones
     
  • In "[3d7ef30] regulator: pwm-regulator: Simplify voltage to duty-cycle
    call" we stopped using max_duty_cycle, so we can retire it from device
    data and DT.

    There is no need to deprecate this property, as it hasn't hit Mainline
    yet.

    Signed-off-by: Lee Jones
    Signed-off-by: Mark Brown

    Lee Jones
     

08 Jul, 2015

3 commits

  • Perhaps this is just personal preference, but ...

    This patch introduces a new local variable to receive and test regulator
    initialisation data. It simplifies and cleans up the code making it
    that little bit easier to read and maintain. The local value is assigned
    to the structure attribute when all the others are. This is the way we
    usually do things.

    Prevents this kind of nonsense:

    this->is->just.silly = fetch_silly_value(&pointer);
    if (!this->is->just.silly) {
    printk("Silly value failed: %d\n", this->is->just.silly);
    return this->is->just.silly;
    }

    Signed-off-by: Lee Jones
    Signed-off-by: Mark Brown

    Lee Jones
     
  • If we reverse some of the logic and change the formula used,
    we can simplify the function greatly.

    It is intentional that this function is supplied and then re-worked
    within the same patch-set. The submission in the previous patch is
    the tried and tested (i.e. in real releases) method written by ST.
    This patch contains a simplification provided later. It looks and
    performs better, but doesn't have the same time-under-test that the
    original method does. The idea is that we keep some history in
    order to provide an easy way back i.e. revert.

    Signed-off-by: Lee Jones
    Signed-off-by: Mark Brown

    Lee Jones
     
  • The current version of PWM regulator only supports a static table
    approach, where pre-calculated values are supplied by the vendor and
    obtained via DT. The continuous-voltage method takes min_uV and
    max_uV, and divides the difference between them up into a number of
    slices. The number of slices depend on how large the duty cycle
    register is. This information is provided by a DT property.

    As the name alludes, this provides values for a continuous voltage
    range between min_uV and max_uV, which has obvious benefits over
    either limited voltage possibilities, or the requirement to provide
    a large voltage-table.

    Signed-off-by: Lee Jones
    Signed-off-by: Mark Brown

    Lee Jones
     

07 Jul, 2015

1 commit


09 Jun, 2015

3 commits


15 Dec, 2014

1 commit

  • Pull driver core update from Greg KH:
    "Here's the set of driver core patches for 3.19-rc1.

    They are dominated by the removal of the .owner field in platform
    drivers. They touch a lot of files, but they are "simple" changes,
    just removing a line in a structure.

    Other than that, a few minor driver core and debugfs changes. There
    are some ath9k patches coming in through this tree that have been
    acked by the wireless maintainers as they relied on the debugfs
    changes.

    Everything has been in linux-next for a while"

    * tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (324 commits)
    Revert "ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries"
    fs: debugfs: add forward declaration for struct device type
    firmware class: Deletion of an unnecessary check before the function call "vunmap"
    firmware loader: fix hung task warning dump
    devcoredump: provide a one-way disable function
    device: Add dev__once variants
    ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries
    ath: use seq_file api for ath9k debugfs files
    debugfs: add helper function to create device related seq_file
    drivers/base: cacheinfo: remove noisy error boot message
    Revert "core: platform: add warning if driver has no owner"
    drivers: base: support cpu cache information interface to userspace via sysfs
    drivers: base: add cpu_device_create to support per-cpu devices
    topology: replace custom attribute macros with standard DEVICE_ATTR*
    cpumask: factor out show_cpumap into separate helper function
    driver core: Fix unbalanced device reference in drivers_probe
    driver core: fix race with userland in device_add()
    sysfs/kernfs: make read requests on pre-alloc files use the buffer.
    sysfs/kernfs: allow attributes to request write buffer be pre-allocated.
    fs: sysfs: return EGBIG on write if offset is larger than file size
    ...

    Linus Torvalds
     

27 Nov, 2014

1 commit

  • The of_get_regulator_init_data() function is used to extract the regulator
    init_data but information on how to extract certain data is defined in the
    static regulator descriptor (e.g: how to map the hardware operating modes).

    Add a const struct regulator_desc * parameter to the function signature so
    the parsing logic could use the information in the struct regulator_desc.

    of_get_regulator_init_data() relies on of_get_regulation_constraints() to
    actually extract the init_data so it has to pass the struct regulator_desc
    but that is modified on a later patch.

    Signed-off-by: Javier Martinez Canillas
    Signed-off-by: Mark Brown

    Javier Martinez Canillas
     

20 Oct, 2014

1 commit


28 Sep, 2014

1 commit