Loading drivers/regulator/core.c +1 −0 Original line number Diff line number Diff line Loading @@ -656,6 +656,7 @@ static void print_constraints(struct regulator_dev *rdev) /** * set_machine_constraints - sets regulator constraints * @rdev: regulator source * @constraints: constraints to apply * * Allows platform initialisation code to define and constrain * regulator circuits e.g. valid voltage/current ranges, etc. NOTE: Loading include/linux/regulator/driver.h +39 −1 Original line number Diff line number Diff line Loading @@ -24,7 +24,37 @@ struct regulator_init_data; /** * struct regulator_ops - regulator operations. * * This struct describes regulator operations. * This struct describes regulator operations which can be implemented by * regulator chip drivers. * * @enable: Enable the regulator. * @disable: Disable the regulator. * @is_enabled: Return 1 if the reguator is enabled, 0 otherwise. * * @set_voltage: Set the voltage for the regulator within the range specified. * The driver should select the voltage closest to min_uV. * @get_voltage: Return the currently configured voltage for the regulator. * * @set_current: Set the current for the regulator within the range specified. * The driver should select the current closest to min_uA. * @get_current: Return the currently configured current for the regulator. * * @set_current_limit: Configure a limit for a current-limited regulator. * @get_current_limit: Get the limit for a current-limited regulator. * * @set_mode: Set the operating mode for the regulator. * @get_mode: Get the current operating mode for the regulator. * @get_optimum_mode: Get the most efficient operating mode for the regulator * when running with the specified parameters. * * @set_suspend_voltage: Set the voltage for the regulator when the system * is suspended. * @set_suspend_enable: Mark the regulator as enabled when the system is * suspended. * @set_suspend_disable: Mark the regulator as disabled when the system is * suspended. * @set_suspend_mode: Set the operating mode for the regulator when the * system is suspended. */ struct regulator_ops { Loading Loading @@ -75,6 +105,14 @@ enum regulator_type { /** * struct regulator_desc - Regulator descriptor * * Each regulator registered with the core is described with a structure of * this type. * * @name: Identifying name for the regulator. * @id: Numerical identifier for the regulator. * @ops: Regulator operations table. * @type: Indicates if the regulator is a voltage or current regulator. * @owner: Module providing the regulator, used for refcounting. */ struct regulator_desc { const char *name; Loading include/linux/regulator/machine.h +41 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,10 @@ struct regulator; * struct regulator_state - regulator state during low power syatem states * * This describes a regulators state during a system wide low power state. * * @uV: Operating voltage during suspend. * @mode: Operating mode during suspend. * @enabled: Enabled during suspend. */ struct regulator_state { int uV; /* suspend voltage */ Loading @@ -55,6 +59,30 @@ struct regulator_state { * struct regulation_constraints - regulator operating constraints. * * This struct describes regulator and board/machine specific constraints. * * @name: Descriptive name for the constraints, used for display purposes. * * @min_uV: Smallest voltage consumers may set. * @max_uV: Largest voltage consumers may set. * * @min_uA: Smallest consumers consumers may set. * @max_uA: Largest current consumers may set. * * @valid_modes_mask: Mask of modes which may be configured by consumers. * @valid_ops_mask: Operations which may be performed by consumers. * * @always_on: Set if the regulator should never be disabled. * @boot_on: Set if the regulator is enabled when the system is initially * started. * @apply_uV: Apply the voltage constraint when initialising. * * @input_uV: Input voltage for regulator when supplied by another regulator. * * @state_disk: State for regulator when system is suspended in disk mode. * @state_mem: State for regulator when system is suspended in mem mode. * @state_standby: State for regulator when system is suspended in standby * mode. * @initial_state: Suspend state to set by default. */ struct regulation_constraints { Loading Loading @@ -93,6 +121,9 @@ struct regulation_constraints { * struct regulator_consumer_supply - supply -> device mapping * * This maps a supply name to a device. * * @dev: Device structure for the consumer. * @supply: Name for the supply. */ struct regulator_consumer_supply { struct device *dev; /* consumer */ Loading @@ -103,6 +134,16 @@ struct regulator_consumer_supply { * struct regulator_init_data - regulator platform initialisation data. * * Initialisation constraints, our supply and consumers supplies. * * @supply_regulator_dev: Parent regulator (if any). * * @constraints: Constraints. These must be specified for the regulator to * be usable. * @num_consumer_supplies: Number of consumer device supplies. * @consumer_supplies: Consumer device supply configuration. * * @regulator_init: Callback invoked when the regulator has been registered. * @driver_data: Data passed to regulator_init. */ struct regulator_init_data { struct device *supply_regulator_dev; /* or NULL for LINE */ Loading Loading
drivers/regulator/core.c +1 −0 Original line number Diff line number Diff line Loading @@ -656,6 +656,7 @@ static void print_constraints(struct regulator_dev *rdev) /** * set_machine_constraints - sets regulator constraints * @rdev: regulator source * @constraints: constraints to apply * * Allows platform initialisation code to define and constrain * regulator circuits e.g. valid voltage/current ranges, etc. NOTE: Loading
include/linux/regulator/driver.h +39 −1 Original line number Diff line number Diff line Loading @@ -24,7 +24,37 @@ struct regulator_init_data; /** * struct regulator_ops - regulator operations. * * This struct describes regulator operations. * This struct describes regulator operations which can be implemented by * regulator chip drivers. * * @enable: Enable the regulator. * @disable: Disable the regulator. * @is_enabled: Return 1 if the reguator is enabled, 0 otherwise. * * @set_voltage: Set the voltage for the regulator within the range specified. * The driver should select the voltage closest to min_uV. * @get_voltage: Return the currently configured voltage for the regulator. * * @set_current: Set the current for the regulator within the range specified. * The driver should select the current closest to min_uA. * @get_current: Return the currently configured current for the regulator. * * @set_current_limit: Configure a limit for a current-limited regulator. * @get_current_limit: Get the limit for a current-limited regulator. * * @set_mode: Set the operating mode for the regulator. * @get_mode: Get the current operating mode for the regulator. * @get_optimum_mode: Get the most efficient operating mode for the regulator * when running with the specified parameters. * * @set_suspend_voltage: Set the voltage for the regulator when the system * is suspended. * @set_suspend_enable: Mark the regulator as enabled when the system is * suspended. * @set_suspend_disable: Mark the regulator as disabled when the system is * suspended. * @set_suspend_mode: Set the operating mode for the regulator when the * system is suspended. */ struct regulator_ops { Loading Loading @@ -75,6 +105,14 @@ enum regulator_type { /** * struct regulator_desc - Regulator descriptor * * Each regulator registered with the core is described with a structure of * this type. * * @name: Identifying name for the regulator. * @id: Numerical identifier for the regulator. * @ops: Regulator operations table. * @type: Indicates if the regulator is a voltage or current regulator. * @owner: Module providing the regulator, used for refcounting. */ struct regulator_desc { const char *name; Loading
include/linux/regulator/machine.h +41 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,10 @@ struct regulator; * struct regulator_state - regulator state during low power syatem states * * This describes a regulators state during a system wide low power state. * * @uV: Operating voltage during suspend. * @mode: Operating mode during suspend. * @enabled: Enabled during suspend. */ struct regulator_state { int uV; /* suspend voltage */ Loading @@ -55,6 +59,30 @@ struct regulator_state { * struct regulation_constraints - regulator operating constraints. * * This struct describes regulator and board/machine specific constraints. * * @name: Descriptive name for the constraints, used for display purposes. * * @min_uV: Smallest voltage consumers may set. * @max_uV: Largest voltage consumers may set. * * @min_uA: Smallest consumers consumers may set. * @max_uA: Largest current consumers may set. * * @valid_modes_mask: Mask of modes which may be configured by consumers. * @valid_ops_mask: Operations which may be performed by consumers. * * @always_on: Set if the regulator should never be disabled. * @boot_on: Set if the regulator is enabled when the system is initially * started. * @apply_uV: Apply the voltage constraint when initialising. * * @input_uV: Input voltage for regulator when supplied by another regulator. * * @state_disk: State for regulator when system is suspended in disk mode. * @state_mem: State for regulator when system is suspended in mem mode. * @state_standby: State for regulator when system is suspended in standby * mode. * @initial_state: Suspend state to set by default. */ struct regulation_constraints { Loading Loading @@ -93,6 +121,9 @@ struct regulation_constraints { * struct regulator_consumer_supply - supply -> device mapping * * This maps a supply name to a device. * * @dev: Device structure for the consumer. * @supply: Name for the supply. */ struct regulator_consumer_supply { struct device *dev; /* consumer */ Loading @@ -103,6 +134,16 @@ struct regulator_consumer_supply { * struct regulator_init_data - regulator platform initialisation data. * * Initialisation constraints, our supply and consumers supplies. * * @supply_regulator_dev: Parent regulator (if any). * * @constraints: Constraints. These must be specified for the regulator to * be usable. * @num_consumer_supplies: Number of consumer device supplies. * @consumer_supplies: Consumer device supply configuration. * * @regulator_init: Callback invoked when the regulator has been registered. * @driver_data: Data passed to regulator_init. */ struct regulator_init_data { struct device *supply_regulator_dev; /* or NULL for LINE */ Loading