If CONFIG_BLK_DEV_BSG is disabled on the vendor side, then struct
request_queue will have an ABI diff. Remove the #ifdef in the struct so
that vendors can choose whether or not to use the config.
'struct request_queue at blkdev.h:434:1' changed:¬
type size changed from 17600 to 17920 (in bits)¬
2 data member insertions:¬
'bsg_job_fn* request_queue::bsg_job_fn', at offset 13952 (in bits) at blkdev.h:650:1¬
'bsg_class_device request_queue::bsg_dev', at offset 14016 (in bits) at blkdev.h:651:1¬
Signed-off-by: Will McVicker <willmcvicker@google.com>
Bug: 152917514
Test: compile, verify ABI diff
Change-Id: Iec2e3460b717b667fcc0409cbc4ec985cfe0f69c
Add the function pointer elevator_registered_fn to the struct
elevator_mq_ops to allow vendors use of this function.
Bug: 152659776
Test: compile
Change-Id: I9e55eee03917a1ab07fbd3f04635ca1a6541b860
Signed-off-by: Pradeep P V K <ppvk@codeaurora.org>
(cherry picked from commit da1defc781fdbf66a12ff8dbb1926d5fc507521e)
[willmcvicker: only cherry-picked the ABI diff]
Signed-off-by: Will McVicker <willmcvicker@google.com>
For ABI compatibility, we are adding a vendor field to support the
config CONFIG_RWSEM_PRIO_AWARE.
Bug: 151792119
Bug: 148872640
Signed-off-by: Maria Yu <aiquny@codeaurora.org>
Signed-off-by: Biao long <blong@codeaurora.org>
[willmcvicker: Only cherry-picked the ABI diff]
(cherry picked from commit c4b6927bb644d57775c601bbd5d9ce3f346ee1b9)
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: I3f289e2992af340b56c2df532ffeb418abf3da79
This reduces the ABI diff for the module_layout symbol.
Bug: 148872640
Test: compile test
(cherry picked from commit ee7bdc62fd01050285a88be851e2d2df7ff2818e)
[willmcvicker: Only cherry-picked the ABI difference]
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: I1e7e110316d90d190cb4fa1dcd18b70d0d6045f5
Pull in the ABI diff changes for the CPU hotplug feature. The full
feature can be found in commit 3d3eb5fb85d97 ("perf: add hotplug
support").
Bug: 148872640
Test: compile test
(cherry picked from commit 3d3eb5fb85d97667525d08219eb03e42188ac897)
[willmcvicker: Only cherry-picked the ABI difference]
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: I41982f50bcda29e4659f3ec0ffd4517884a7b6d0
Adds the new struct variable "readable_on_cpus" to reduce the ABI
diff. The Full feature is under commit f994cb43aa705 ("perf/core:
Add support for PMUs that can be read from more than 1 CPU").
Bug: 148872640
Test: compile test
(cherry picked from commit f994cb43aa705bb5301c83dae36a1f12fe11c3cd)
[Only cherry-picked the ABI difference]
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: If46a71163efde2245e955b23da58550e21082e62
This updates the struct task_struct ABI to include a field for vendors
to support task affinity for cpusets.
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Bug: 148872640
Bug: 149816871
Change-Id: I6c2ec1d5e3d994e176926d94b9e0cc92418020cc
Signed-off-by: Will McVicker <willmcvicker@google.com>
(cherry picked from commit b4fee475f8d7a3327bc63e665ffbfdd63ab4bcc7)
[only cherry-picked the ABI difference]
Add an ioctl FS_IOC_GET_ENCRYPTION_NONCE which retrieves the nonce from
an encrypted file or directory. The nonce is the 16-byte random value
stored in the inode's encryption xattr. It is normally used together
with the master key to derive the inode's actual encryption key.
The nonces are needed by automated tests that verify the correctness of
the ciphertext on-disk. Except for the IV_INO_LBLK_64 case, there's no
way to replicate a file's ciphertext without knowing that file's nonce.
The nonces aren't secret, and the existing ciphertext verification tests
in xfstests retrieve them from disk using debugfs or dump.f2fs. But in
environments that lack these debugging tools, getting the nonces by
manually parsing the filesystem structure would be very hard.
To make this important type of testing much easier, let's just add an
ioctl that retrieves the nonce.
Link: https://lore.kernel.org/r/20200314205052.93294-2-ebiggers@kernel.org
Reviewed-by: Theodore Ts'o <tytso@mit.edu>
(cherry picked from commit e98ad46475)
Bug: 151100202
Change-Id: Ieef2c57b9257ae38eb2e5c1a018ca6f325bb62dd
Signed-off-by: Eric Biggers <ebiggers@google.com>
Conflict: documentation/usb/index.rst is missing.
(Upstream commit f2c2e717642c66f7fe7e5dd69b2e8ff5849f4d10.)
USB Raw Gadget is a kernel module that provides a userspace interface for
the USB Gadget subsystem. Essentially it allows to emulate USB devices
from userspace. Enabled with CONFIG_USB_RAW_GADGET. Raw Gadget is
currently a strictly debugging feature and shouldn't be used in
production.
Raw Gadget is similar to GadgetFS, but provides a more low-level and
direct access to the USB Gadget layer for the userspace. The key
differences are:
1. Every USB request is passed to the userspace to get a response, while
GadgetFS responds to some USB requests internally based on the provided
descriptors. However note, that the UDC driver might respond to some
requests on its own and never forward them to the Gadget layer.
2. GadgetFS performs some sanity checks on the provided USB descriptors,
while Raw Gadget allows you to provide arbitrary data as responses to
USB requests.
3. Raw Gadget provides a way to select a UDC device/driver to bind to,
while GadgetFS currently binds to the first available UDC.
4. Raw Gadget uses predictable endpoint names (handles) across different
UDCs (as long as UDCs have enough endpoints of each required transfer
type).
5. Raw Gadget has ioctl-based interface instead of a filesystem-based one.
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: Felipe Balbi <balbi@kernel.org>
Bug: 147413187
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Ib48759bda0651e685160c532bed55b7335a39034
(Upstream commit 10e5e6c2496354f0afec82dba459339c421badbf.)
drivers/usb/gadget/Kconfig includes drivers/usb/gadget/legacy/Kconfig
inside the 'choice' block. The current Kconfig allows this, but I'd
like to discourage this usage.
People tend to mess up the structure without noticing that entire
drivers/usb/gadget/legacy/Kconfig is placed in the choice context.
In fact, legacy/Kconfig mixes up bool and tristate in the choice,
and creates nested choice, etc.
This commit does not change the behavior, but it will help people
notice how badly this Kconfig file is written.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Link: https://lore.kernel.org/r/20191211073857.16780-1-masahiroy@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Bug: 147413187
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Ib2b96fd9c2acb681b2186eb89ec1f0f2b18d0e89
This is trivial since we already have support for the entirely
identical (from the kernel's point of view) RDNSS, DNSSL, etc. that
also contain opaque data that needs to be passed down to userspace
for further processing.
As specified in draft-ietf-6man-ra-pref64-09 (while it is still a draft,
it is purely waiting on the RFC Editor for cleanups and publishing):
PREF64 option contains lifetime and a (up to) 96-bit IPv6 prefix.
The 8-bit identifier of the option type as assigned by the IANA is 38.
Since we lack DNS64/NAT64/CLAT support in kernel at the moment,
thus this option should also be passed on to userland.
See:
https://tools.ietf.org/html/draft-ietf-6man-ra-pref64-09https://www.iana.org/assignments/icmpv6-parameters/icmpv6-parameters.xhtml#icmpv6-parameters-5
Cc: Erik Kline <ek@google.com>
Cc: Jen Linkova <furry@google.com>
Cc: Lorenzo Colitti <lorenzo@google.com>
Cc: Michael Haro <mharo@google.com>
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Acked-By: Lorenzo Colitti <lorenzo@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit c24a77edc9)
Bug: 150648313
Change-Id: I02bff2103194a8171f907e82f811d7ab66962138
When running the kernel with init_on_alloc=1, calling the default
implementation of __alloc_zeroed_user_highpage() from include/linux/highmem.h
leads to double-initialization of the allocated page (first by the page
allocator, then by clear_user_page().
Calling alloc_page_vma() with __GFP_ZERO, similarly to e.g. x86, seems
to be enough to ensure the user page is zeroed only once.
Signed-off-by: Alexander Potapenko <glider@google.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Bug: 149975351
Link: https://lore.kernel.org/linux-arm-kernel/20200312155920.50067-1-glider@google.com/
Change-Id: I3ff7c3fb082b420491313e0fdd841ce340989d72
Signed-off-by: Alexander Potapenko <glider@google.com>
Leaf changes summary: 1 artifact changed
Changed leaf types summary: 1 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable
'enum power_supply_property at power_supply.h:170:1' changed:
type size hasn't changed
3 enumerator insertions:
'power_supply_property::POWER_SUPPLY_PROP_CUTOFF_SOC' value '189'
'power_supply_property::POWER_SUPPLY_PROP_SYS_SOC' value '190'
'power_supply_property::POWER_SUPPLY_PROP_BATT_SOC' value '191'
30 enumerator changes:
'power_supply_property::POWER_SUPPLY_PROP_BATT_CE_CTRL' from value '189' to '192' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_FULL_ESTIMATE' from value '190' to '193' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_RESISTANCE_AVG' from value '191' to '194' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_RES_FILTER_COUNT' from value '192' to '195' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_AICL_DONE' from value '193' to '196' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_VOLTAGE_STEP' from value '194' to '197' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_OTG_FASTROLESWAP' from value '195' to '198' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_APSD_RERUN' from value '196' to '199' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_APSD_TIMEOUT' from value '197' to '200' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_STATUS1' from value '198' to '201' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_STATUS2' from value '199' to '202' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_ENABLE' from value '200' to '203' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_SWITCHER_EN' from value '201' to '204' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_DIE_TEMP' from value '202' to '205' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_ISNS' from value '203' to '206' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_ISNS_SLAVE' from value '204' to '207' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_TOGGLE_SWITCHER' from value '205' to '208' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_IRQ_STATUS' from value '206' to '209' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CP_ILIM' from value '207' to '210' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_IRQ_STATUS' from value '208' to '211' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_PARALLEL_OUTPUT_MODE' from value '209' to '212' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_ALIGNMENT' from value '210' to '213' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_COUNTER_EXT' from value '211' to '214' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_CHARGER_STATE' from value '212' to '215' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_MODEL_NAME' from value '213' to '216' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_PTMC_ID' from value '214' to '217' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_MANUFACTURER' from value '215' to '218' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_BATTERY_TYPE' from value '216' to '219' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_CYCLE_COUNTS' from value '217' to '220' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_SERIAL_NUMBER' from value '218' to '221' at power_supply.h:170:1
7 impacted interfaces:
function power_supply* devm_power_supply_register(device*, const power_supply_desc*, const power_supply_config*)
function void power_supply_changed(power_supply*)
function power_supply* power_supply_get_by_name(const char*)
function void* power_supply_get_drvdata(power_supply*)
function int power_supply_get_property(power_supply*, power_supply_property, power_supply_propval*)
function void power_supply_put(power_supply*)
function int power_supply_set_property(power_supply*, power_supply_property, const power_supply_propval*)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: I93153b9c6bff1a14d2dfcd62b71e8c3f08cf03a2
Leaf changes summary: 1 artifact changed (2 filtered out)
Changed leaf types summary: 1 (2 filtered out) leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable
'enum power_supply_property at power_supply.h:87:1' changed:
type size hasn't changed
152 enumerator insertions:
'power_supply_property::POWER_SUPPLY_PROP_USB_HC' value '64'
'power_supply_property::POWER_SUPPLY_PROP_USB_OTG' value '65'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_ENABLED' value '66'
'power_supply_property::POWER_SUPPLY_PROP_SET_SHIP_MODE' value '67'
'power_supply_property::POWER_SUPPLY_PROP_REAL_TYPE' value '68'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_NOW_RAW' value '69'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_NOW_ERROR' value '70'
'power_supply_property::POWER_SUPPLY_PROP_CAPACITY_RAW' value '71'
'power_supply_property::POWER_SUPPLY_PROP_BATTERY_CHARGING_ENABLED' value '72'
'power_supply_property::POWER_SUPPLY_PROP_CHARGING_ENABLED' value '73'
'power_supply_property::POWER_SUPPLY_PROP_STEP_CHARGING_ENABLED' value '74'
'power_supply_property::POWER_SUPPLY_PROP_STEP_CHARGING_STEP' value '75'
'power_supply_property::POWER_SUPPLY_PROP_PIN_ENABLED' value '76'
'power_supply_property::POWER_SUPPLY_PROP_INPUT_SUSPEND' value '77'
'power_supply_property::POWER_SUPPLY_PROP_INPUT_VOLTAGE_REGULATION' value '78'
'power_supply_property::POWER_SUPPLY_PROP_INPUT_CURRENT_MAX' value '79'
'power_supply_property::POWER_SUPPLY_PROP_INPUT_CURRENT_TRIM' value '80'
'power_supply_property::POWER_SUPPLY_PROP_INPUT_CURRENT_SETTLED' value '81'
'power_supply_property::POWER_SUPPLY_PROP_INPUT_VOLTAGE_SETTLED' value '82'
'power_supply_property::POWER_SUPPLY_PROP_VCHG_LOOP_DBC_BYPASS' value '83'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_COUNTER_SHADOW' value '84'
'power_supply_property::POWER_SUPPLY_PROP_HI_POWER' value '85'
'power_supply_property::POWER_SUPPLY_PROP_LOW_POWER' value '86'
'power_supply_property::POWER_SUPPLY_PROP_COOL_TEMP' value '87'
'power_supply_property::POWER_SUPPLY_PROP_WARM_TEMP' value '88'
'power_supply_property::POWER_SUPPLY_PROP_COLD_TEMP' value '89'
'power_supply_property::POWER_SUPPLY_PROP_HOT_TEMP' value '90'
'power_supply_property::POWER_SUPPLY_PROP_SYSTEM_TEMP_LEVEL' value '91'
'power_supply_property::POWER_SUPPLY_PROP_RESISTANCE' value '92'
'power_supply_property::POWER_SUPPLY_PROP_RESISTANCE_CAPACITIVE' value '93'
'power_supply_property::POWER_SUPPLY_PROP_RESISTANCE_ID' value '94'
'power_supply_property::POWER_SUPPLY_PROP_RESISTANCE_NOW' value '95'
'power_supply_property::POWER_SUPPLY_PROP_FLASH_CURRENT_MAX' value '96'
'power_supply_property::POWER_SUPPLY_PROP_UPDATE_NOW' value '97'
'power_supply_property::POWER_SUPPLY_PROP_ESR_COUNT' value '98'
'power_supply_property::POWER_SUPPLY_PROP_BUCK_FREQ' value '99'
'power_supply_property::POWER_SUPPLY_PROP_BOOST_CURRENT' value '100'
'power_supply_property::POWER_SUPPLY_PROP_SAFETY_TIMER_ENABLE' value '101'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_DONE' value '102'
'power_supply_property::POWER_SUPPLY_PROP_FLASH_ACTIVE' value '103'
'power_supply_property::POWER_SUPPLY_PROP_FLASH_TRIGGER' value '104'
'power_supply_property::POWER_SUPPLY_PROP_FORCE_TLIM' value '105'
'power_supply_property::POWER_SUPPLY_PROP_DP_DM' value '106'
'power_supply_property::POWER_SUPPLY_PROP_INPUT_CURRENT_LIMITED' value '107'
'power_supply_property::POWER_SUPPLY_PROP_INPUT_CURRENT_NOW' value '108'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_QNOVO_ENABLE' value '109'
'power_supply_property::POWER_SUPPLY_PROP_CURRENT_QNOVO' value '110'
'power_supply_property::POWER_SUPPLY_PROP_VOLTAGE_QNOVO' value '111'
'power_supply_property::POWER_SUPPLY_PROP_RERUN_AICL' value '112'
'power_supply_property::POWER_SUPPLY_PROP_CYCLE_COUNT_ID' value '113'
'power_supply_property::POWER_SUPPLY_PROP_SAFETY_TIMER_EXPIRED' value '114'
'power_supply_property::POWER_SUPPLY_PROP_RESTRICTED_CHARGING' value '115'
'power_supply_property::POWER_SUPPLY_PROP_CURRENT_CAPABILITY' value '116'
'power_supply_property::POWER_SUPPLY_PROP_TYPEC_MODE' value '117'
'power_supply_property::POWER_SUPPLY_PROP_TYPEC_CC_ORIENTATION' value '118'
'power_supply_property::POWER_SUPPLY_PROP_TYPEC_POWER_ROLE' value '119'
'power_supply_property::POWER_SUPPLY_PROP_TYPEC_SRC_RP' value '120'
'power_supply_property::POWER_SUPPLY_PROP_PD_ALLOWED' value '121'
'power_supply_property::POWER_SUPPLY_PROP_PD_ACTIVE' value '122'
'power_supply_property::POWER_SUPPLY_PROP_PD_IN_HARD_RESET' value '123'
'power_supply_property::POWER_SUPPLY_PROP_PD_CURRENT_MAX' value '124'
'power_supply_property::POWER_SUPPLY_PROP_PD_USB_SUSPEND_SUPPORTED' value '125'
'power_supply_property::POWER_SUPPLY_PROP_CHARGER_TEMP' value '126'
'power_supply_property::POWER_SUPPLY_PROP_CHARGER_TEMP_MAX' value '127'
'power_supply_property::POWER_SUPPLY_PROP_PARALLEL_DISABLE' value '128'
'power_supply_property::POWER_SUPPLY_PROP_PE_START' value '129'
'power_supply_property::POWER_SUPPLY_PROP_SOC_REPORTING_READY' value '130'
'power_supply_property::POWER_SUPPLY_PROP_DEBUG_BATTERY' value '131'
'power_supply_property::POWER_SUPPLY_PROP_FCC_DELTA' value '132'
'power_supply_property::POWER_SUPPLY_PROP_ICL_REDUCTION' value '133'
'power_supply_property::POWER_SUPPLY_PROP_PARALLEL_MODE' value '134'
'power_supply_property::POWER_SUPPLY_PROP_DIE_HEALTH' value '135'
'power_supply_property::POWER_SUPPLY_PROP_CONNECTOR_HEALTH' value '136'
'power_supply_property::POWER_SUPPLY_PROP_CTM_CURRENT_MAX' value '137'
'power_supply_property::POWER_SUPPLY_PROP_HW_CURRENT_MAX' value '138'
'power_supply_property::POWER_SUPPLY_PROP_PR_SWAP' value '139'
'power_supply_property::POWER_SUPPLY_PROP_CC_STEP' value '140'
'power_supply_property::POWER_SUPPLY_PROP_CC_STEP_SEL' value '141'
'power_supply_property::POWER_SUPPLY_PROP_SW_JEITA_ENABLED' value '142'
'power_supply_property::POWER_SUPPLY_PROP_PD_VOLTAGE_MAX' value '143'
'power_supply_property::POWER_SUPPLY_PROP_PD_VOLTAGE_MIN' value '144'
'power_supply_property::POWER_SUPPLY_PROP_SDP_CURRENT_MAX' value '145'
'power_supply_property::POWER_SUPPLY_PROP_CONNECTOR_TYPE' value '146'
'power_supply_property::POWER_SUPPLY_PROP_PARALLEL_BATFET_MODE' value '147'
'power_supply_property::POWER_SUPPLY_PROP_PARALLEL_FCC_MAX' value '148'
'power_supply_property::POWER_SUPPLY_PROP_MIN_ICL' value '149'
'power_supply_property::POWER_SUPPLY_PROP_MOISTURE_DETECTED' value '150'
'power_supply_property::POWER_SUPPLY_PROP_BATT_PROFILE_VERSION' value '151'
'power_supply_property::POWER_SUPPLY_PROP_BATT_FULL_CURRENT' value '152'
'power_supply_property::POWER_SUPPLY_PROP_RECHARGE_SOC' value '153'
'power_supply_property::POWER_SUPPLY_PROP_HVDCP_OPTI_ALLOWED' value '154'
'power_supply_property::POWER_SUPPLY_PROP_SMB_EN_MODE' value '155'
'power_supply_property::POWER_SUPPLY_PROP_SMB_EN_REASON' value '156'
'power_supply_property::POWER_SUPPLY_PROP_ESR_ACTUAL' value '157'
'power_supply_property::POWER_SUPPLY_PROP_ESR_NOMINAL' value '158'
'power_supply_property::POWER_SUPPLY_PROP_SOH' value '159'
'power_supply_property::POWER_SUPPLY_PROP_CLEAR_SOH' value '160'
'power_supply_property::POWER_SUPPLY_PROP_FORCE_RECHARGE' value '161'
'power_supply_property::POWER_SUPPLY_PROP_FCC_STEPPER_ENABLE' value '162'
'power_supply_property::POWER_SUPPLY_PROP_TOGGLE_STAT' value '163'
'power_supply_property::POWER_SUPPLY_PROP_MAIN_FCC_MAX' value '164'
'power_supply_property::POWER_SUPPLY_PROP_FG_RESET' value '165'
'power_supply_property::POWER_SUPPLY_PROP_QC_OPTI_DISABLE' value '166'
'power_supply_property::POWER_SUPPLY_PROP_CC_SOC' value '167'
'power_supply_property::POWER_SUPPLY_PROP_BATT_AGE_LEVEL' value '168'
'power_supply_property::POWER_SUPPLY_PROP_SCALE_MODE_EN' value '169'
'power_supply_property::POWER_SUPPLY_PROP_VOLTAGE_VPH' value '170'
'power_supply_property::POWER_SUPPLY_PROP_CHIP_VERSION' value '171'
'power_supply_property::POWER_SUPPLY_PROP_THERM_ICL_LIMIT' value '172'
'power_supply_property::POWER_SUPPLY_PROP_DC_RESET' value '173'
'power_supply_property::POWER_SUPPLY_PROP_VOLTAGE_MAX_LIMIT' value '174'
'power_supply_property::POWER_SUPPLY_PROP_REAL_CAPACITY' value '175'
'power_supply_property::POWER_SUPPLY_PROP_FORCE_MAIN_ICL' value '176'
'power_supply_property::POWER_SUPPLY_PROP_FORCE_MAIN_FCC' value '177'
'power_supply_property::POWER_SUPPLY_PROP_COMP_CLAMP_LEVEL' value '178'
'power_supply_property::POWER_SUPPLY_PROP_ADAPTER_CC_MODE' value '179'
'power_supply_property::POWER_SUPPLY_PROP_SKIN_HEALTH' value '180'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_DISABLE' value '181'
'power_supply_property::POWER_SUPPLY_PROP_ADAPTER_DETAILS' value '182'
'power_supply_property::POWER_SUPPLY_PROP_DEAD_BATTERY' value '183'
'power_supply_property::POWER_SUPPLY_PROP_VOLTAGE_FIFO' value '184'
'power_supply_property::POWER_SUPPLY_PROP_CC_UAH' value '185'
'power_supply_property::POWER_SUPPLY_PROP_OPERATING_FREQ' value '186'
'power_supply_property::POWER_SUPPLY_PROP_AICL_DELAY' value '187'
'power_supply_property::POWER_SUPPLY_PROP_AICL_ICL' value '188'
'power_supply_property::POWER_SUPPLY_PROP_BATT_CE_CTRL' value '189'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_FULL_ESTIMATE' value '190'
'power_supply_property::POWER_SUPPLY_PROP_RESISTANCE_AVG' value '191'
'power_supply_property::POWER_SUPPLY_PROP_RES_FILTER_COUNT' value '192'
'power_supply_property::POWER_SUPPLY_PROP_AICL_DONE' value '193'
'power_supply_property::POWER_SUPPLY_PROP_VOLTAGE_STEP' value '194'
'power_supply_property::POWER_SUPPLY_PROP_OTG_FASTROLESWAP' value '195'
'power_supply_property::POWER_SUPPLY_PROP_APSD_RERUN' value '196'
'power_supply_property::POWER_SUPPLY_PROP_APSD_TIMEOUT' value '197'
'power_supply_property::POWER_SUPPLY_PROP_CP_STATUS1' value '198'
'power_supply_property::POWER_SUPPLY_PROP_CP_STATUS2' value '199'
'power_supply_property::POWER_SUPPLY_PROP_CP_ENABLE' value '200'
'power_supply_property::POWER_SUPPLY_PROP_CP_SWITCHER_EN' value '201'
'power_supply_property::POWER_SUPPLY_PROP_CP_DIE_TEMP' value '202'
'power_supply_property::POWER_SUPPLY_PROP_CP_ISNS' value '203'
'power_supply_property::POWER_SUPPLY_PROP_CP_ISNS_SLAVE' value '204'
'power_supply_property::POWER_SUPPLY_PROP_CP_TOGGLE_SWITCHER' value '205'
'power_supply_property::POWER_SUPPLY_PROP_CP_IRQ_STATUS' value '206'
'power_supply_property::POWER_SUPPLY_PROP_CP_ILIM' value '207'
'power_supply_property::POWER_SUPPLY_PROP_IRQ_STATUS' value '208'
'power_supply_property::POWER_SUPPLY_PROP_PARALLEL_OUTPUT_MODE' value '209'
'power_supply_property::POWER_SUPPLY_PROP_ALIGNMENT' value '210'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_COUNTER_EXT' value '211'
'power_supply_property::POWER_SUPPLY_PROP_CHARGE_CHARGER_STATE' value '212'
'power_supply_property::POWER_SUPPLY_PROP_PTMC_ID' value '214'
'power_supply_property::POWER_SUPPLY_PROP_BATTERY_TYPE' value '216'
'power_supply_property::POWER_SUPPLY_PROP_CYCLE_COUNTS' value '217'
3 enumerator changes:
'power_supply_property::POWER_SUPPLY_PROP_MODEL_NAME' from value '64' to '213' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_MANUFACTURER' from value '65' to '215' at power_supply.h:170:1
'power_supply_property::POWER_SUPPLY_PROP_SERIAL_NUMBER' from value '66' to '218' at power_supply.h:170:1
7 impacted interfaces:
function power_supply* devm_power_supply_register(device*, const power_supply_desc*, const power_supply_config*)
function void power_supply_changed(power_supply*)
function power_supply* power_supply_get_by_name(const char*)
function void* power_supply_get_drvdata(power_supply*)
function int power_supply_get_property(power_supply*, power_supply_property, power_supply_propval*)
function void power_supply_put(power_supply*)
function int power_supply_set_property(power_supply*, power_supply_property, const power_supply_propval*)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: I1deb4923b541cc654c0a3893ea16afb291c3f575
Remove "Wipower" PSY type as it is not used by any driver.
Change-Id: Ib198b38a22c275ff1c390f1e5eac12a4e914b66b
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
(cherry picked from commit 5573bd8e6fb4b03d105f32dc0a5dee3b8b8f60f9)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
PM8150B is able to detect Debug Accessory Modes and Non-Compliant cables
with CC pulled-up with the same Rp values. Define them in power_supply
framework for other drivers who need this information.
Bug: 139264914
Change-Id: I43c3e3ed64c9de73c70dde4663c4e89d9d241996
Signed-off-by: Kyle Tso <kyletso@google.com>
(cherry picked from commit 22dc877f78abd2f375e3d93003b966014b8f05b8)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Add power_supply properties to report and the connection topology
of parallel charger(input and output).
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
(cherry picked from commit ad45db3e1f38bc72949d57d4926e7d5ef7c58e56)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: Id4e9e3c23d83e58906e0cb3dd208b57089eed81a
Add "POWER_SUPPLY_PROP_IRQ_STATUS" property, this can be used
by drivers to report interrupt status.
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
(cherry picked from commit 74b1cb85b8eb3fd14b21d5625dc7a39a50e9377a)
Signed-off-by: Mark Salyzyn <salyyzn@google.com>
Bug: 150789066
Change-Id: I846f98647844754b71de8b1ecd90abe0c2058709
POWER_SUPPLY_PROP_CHARGE_CHARGER_STATE and charge_charger_state
property are used from charging code to trigger the calculation
of charging current and charging voltage
Signed-off-by: AleX Pelosi <apelosi@google.com>
Signed-off-by: Jack Wu <wjack@google.com>
Bug: 139264914
Test: recompile
(cherry picked from commit 67fd59eccfe2db28d9167d5aeef8f6dd001f3cb1)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: I5df44a650b10a078cd79842fff32e2ab92c0195d
This property exposes the step size (in uV) to be used while
incrementing or decrementing voltage of a PSY.
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
(cherry picked from commit 4cde627bd0b8a987bf4104ce07a33ee87c390a44)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: Ic70e933daf6b6f3bafc0f0fe77064c8395e611d1
This parameter is used to signify that the Automatic Input Current Limit
(AICL) setting process for a PSY has finished executing.
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
(cherry picked from commit e24a3925ac7b50afd247d657b1e924ae84bba9a6)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: I5609aaf64bf75ce446ce9a5f83ec1c2baadf81f3
Partially taken from commit d575e152ce0282819b8696e5a9fe0aac4f205b91
("qpnp-qg: get cc_uah from qg psy property")
Signed-off-by: Jack Wu <wjack@google.com>
Bug: 141451339
(cherry picked from commit d575e152ce0282819b8696e5a9fe0aac4f205b91)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: If3bb3c34cc2065cce0ac42889d1b5118e716a73f
Partially taken from commit 5b4457baf0e32ba6a6a8d0933328189ff7335e4
("qpnp-qg: add properities for google_battery requirement")
Signed-off-by: Jack Wu <wjack@google.com>
Bug: 139264914
(cherry picked from commit 5b4457baf0e32ba6a6a8d0933328189ff7335e44)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: I92678ec7228a46ceb870f41e3acf2f790633fc2a
Partially taken from commit 7c4bd0cdf4eff0dd6774183435fc8139743cd6e4
("power_supply: support for CHARGE_DISABLE")
Change-Id: Icd7574696ada4ea5c7d8811787461bc04c922b3c
Signed-off-by: AleX Pelosi <apelosi@google.com>
Signed-off-by: Jack Wu <wjack@google.com>
Bug: 139264914
Bug: 141347448
(cherry picked from commit 7c4bd0cdf4eff0dd6774183435fc8139743cd6e4)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: I178c16fe01fb262e7d9cca777c49e8ad586e8eba
Add power supply properties to support PPS CC mode charging for dual
charge pumps with MID-VBAT configuration, these properties are set from
user space.
Signed-off-by: Sahil Chandna <chandna@codeaurora.org>
(cherry picked from commit 04e367f45dbd8ecd4a67ce1cc7d5cd11bb8a49e9)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: Ia2d467255818dbaaf2d87f56aae39584368772ce
Add power supply property VOLTAGE_MAX_LIMIT in usb_psy to allow
external entities to impose limitation on the maximum USB adapter
output voltage.
Signed-off-by: Umang Agrawal <uagrawal@codeaurora.org>
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
(cherry picked from commit e0219228eed9c1a3a79dc10ec7257a375560c396)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: I3d05188f11ccd0c47cfca626e528bbe2e30582ae
Add property POWER_SUPPLY_PROP_DC_RESET to notify the removal
of wireless charger.
Signed-off-by: Sahil Chandna <chandna@codeaurora.org>
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
(cherry picked from commit eb8871a6939acf76c0cb68d04c046b72006579c9)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 150789066
Change-Id: I7964953ee558bc18392eec57e2d1f6a94bd866f5