| /linux/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_psp.h | 141 int (*init_microcode)(struct psp_context *psp); 142 int (*wait_for_bootloader)(struct psp_context *psp); 143 int (*bootloader_load_kdb)(struct psp_context *psp); 144 int (*bootloader_load_spl)(struct psp_context *psp); 145 int (*bootloader_load_sysdrv)(struct psp_context *psp); 146 int (*bootloader_load_soc_drv)(struct psp_context *psp); 147 int (*bootloader_load_intf_drv)(struct psp_context *psp); 148 int (*bootloader_load_dbg_drv)(struct psp_context *psp); 149 int (*bootloader_load_ras_drv)(struct psp_context *psp); 150 int (*bootloader_load_ipkeymgr_drv)(struct psp_context *psp); [all …]
|
| H A D | psp_v13_0_4.c | 35 static int psp_v13_0_4_init_microcode(struct psp_context *psp) in psp_v13_0_4_init_microcode() argument 37 struct amdgpu_device *adev = psp->adev; in psp_v13_0_4_init_microcode() 45 err = psp_init_toc_microcode(psp, ucode_prefix); in psp_v13_0_4_init_microcode() 48 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v13_0_4_init_microcode() 59 static bool psp_v13_0_4_is_sos_alive(struct psp_context *psp) in psp_v13_0_4_is_sos_alive() argument 61 struct amdgpu_device *adev = psp->adev; in psp_v13_0_4_is_sos_alive() 69 static int psp_v13_0_4_wait_for_bootloader(struct psp_context *psp) in psp_v13_0_4_wait_for_bootloader() argument 71 struct amdgpu_device *adev = psp->adev; in psp_v13_0_4_wait_for_bootloader() 80 psp, SOC15_REG_OFFSET(MP0, 0, regMP0_SMN_C2PMSG_35), in psp_v13_0_4_wait_for_bootloader() 90 static int psp_v13_0_4_bootloader_load_component(struct psp_context *psp, in psp_v13_0_4_bootloader_load_component() argument [all …]
|
| H A D | psp_v13_0.c | 83 static int psp_v13_0_init_microcode(struct psp_context *psp) in psp_v13_0_init_microcode() argument 85 struct amdgpu_device *adev = psp->adev; in psp_v13_0_init_microcode() 93 err = psp_init_sos_microcode(psp, ucode_prefix); in psp_v13_0_init_microcode() 98 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v13_0_init_microcode() 111 err = psp_init_toc_microcode(psp, ucode_prefix); in psp_v13_0_init_microcode() 114 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v13_0_init_microcode() 124 err = psp_init_sos_microcode(psp, ucode_prefix); in psp_v13_0_init_microcode() 128 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v13_0_init_microcode() 139 static bool psp_v13_0_is_sos_alive(struct psp_context *psp) in psp_v13_0_is_sos_alive() argument 141 struct amdgpu_device *adev = psp->adev; in psp_v13_0_is_sos_alive() [all …]
|
| H A D | psp_v14_0.c | 61 static int psp_v14_0_init_microcode(struct psp_context *psp) in psp_v14_0_init_microcode() argument 63 struct amdgpu_device *adev = psp->adev; in psp_v14_0_init_microcode() 72 err = psp_init_sos_microcode(psp, ucode_prefix); in psp_v14_0_init_microcode() 75 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v14_0_init_microcode() 80 err = psp_init_toc_microcode(psp, ucode_prefix); in psp_v14_0_init_microcode() 83 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v14_0_init_microcode() 94 static bool psp_v14_0_is_sos_alive(struct psp_context *psp) in psp_v14_0_is_sos_alive() argument 96 struct amdgpu_device *adev = psp->adev; in psp_v14_0_is_sos_alive() 104 static int psp_v14_0_wait_for_bootloader(struct psp_context *psp) in psp_v14_0_wait_for_bootloader() argument 106 struct amdgpu_device *adev = psp->adev; in psp_v14_0_wait_for_bootloader() [all …]
|
| H A D | psp_v11_0.c | 88 static int psp_v11_0_init_microcode(struct psp_context *psp) in psp_v11_0_init_microcode() argument 90 struct amdgpu_device *adev = psp->adev; in psp_v11_0_init_microcode() 101 err = psp_init_sos_microcode(psp, ucode_prefix); in psp_v11_0_init_microcode() 104 err = psp_init_asd_microcode(psp, ucode_prefix); in psp_v11_0_init_microcode() 107 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v11_0_init_microcode() 108 adev->psp.securedisplay_context.context.bin_desc.size_bytes = 0; in psp_v11_0_init_microcode() 113 err = psp_init_sos_microcode(psp, ucode_prefix); in psp_v11_0_init_microcode() 116 err = psp_init_asd_microcode(psp, ucode_prefix); in psp_v11_0_init_microcode() 119 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v11_0_init_microcode() 120 adev->psp.securedisplay_context.context.bin_desc.size_bytes = 0; in psp_v11_0_init_microcode() [all …]
|
| H A D | psp_v3_1.c | 54 static int psp_v3_1_ring_stop(struct psp_context *psp, 57 static int psp_v3_1_init_microcode(struct psp_context *psp) in psp_v3_1_init_microcode() argument 59 struct amdgpu_device *adev = psp->adev; in psp_v3_1_init_microcode() 67 err = psp_init_sos_microcode(psp, ucode_prefix); in psp_v3_1_init_microcode() 71 err = psp_init_asd_microcode(psp, ucode_prefix); in psp_v3_1_init_microcode() 78 static int psp_v3_1_bootloader_load_sysdrv(struct psp_context *psp) in psp_v3_1_bootloader_load_sysdrv() argument 82 struct amdgpu_device *adev = psp->adev; in psp_v3_1_bootloader_load_sysdrv() 93 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_35), in psp_v3_1_bootloader_load_sysdrv() 99 psp_copy_fw(psp, psp->sys.start_addr, psp->sys.size_bytes); in psp_v3_1_bootloader_load_sysdrv() 103 (uint32_t)(psp->fw_pri_mc_addr >> 20)); in psp_v3_1_bootloader_load_sysdrv() [all …]
|
| H A D | psp_v12_0.c | 45 static int psp_v12_0_init_microcode(struct psp_context *psp) in psp_v12_0_init_microcode() argument 47 struct amdgpu_device *adev = psp->adev; in psp_v12_0_init_microcode() 54 err = psp_init_asd_microcode(psp, ucode_prefix); in psp_v12_0_init_microcode() 58 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v12_0_init_microcode() 64 adev->psp.securedisplay_context.context.bin_desc.size_bytes = 0; in psp_v12_0_init_microcode() 69 static int psp_v12_0_bootloader_load_sysdrv(struct psp_context *psp) in psp_v12_0_bootloader_load_sysdrv() argument 73 struct amdgpu_device *adev = psp->adev; in psp_v12_0_bootloader_load_sysdrv() 84 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_35), in psp_v12_0_bootloader_load_sysdrv() 90 psp_copy_fw(psp, psp->sys.start_addr, psp->sys.size_bytes); in psp_v12_0_bootloader_load_sysdrv() 94 (uint32_t)(psp->fw_pri_mc_addr >> 20)); in psp_v12_0_bootloader_load_sysdrv() [all …]
|
| H A D | psp_v10_0.c | 47 static int psp_v10_0_init_microcode(struct psp_context *psp) in psp_v10_0_init_microcode() argument 49 struct amdgpu_device *adev = psp->adev; in psp_v10_0_init_microcode() 56 err = psp_init_asd_microcode(psp, ucode_prefix); in psp_v10_0_init_microcode() 60 err = psp_init_ta_microcode(psp, ucode_prefix); in psp_v10_0_init_microcode() 63 (psp->securedisplay_context.context.bin_desc.fw_version >= in psp_v10_0_init_microcode() 65 adev->psp.securedisplay_context.context.bin_desc.size_bytes = 0; in psp_v10_0_init_microcode() 70 static int psp_v10_0_ring_create(struct psp_context *psp, in psp_v10_0_ring_create() argument 75 struct psp_ring *ring = &psp->km_ring; in psp_v10_0_ring_create() 76 struct amdgpu_device *adev = psp->adev; in psp_v10_0_ring_create() 96 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64), in psp_v10_0_ring_create() [all …]
|
| H A D | psp_v11_0_8.c | 31 static int psp_v11_0_8_ring_stop(struct psp_context *psp, in psp_v11_0_8_ring_stop() argument 35 struct amdgpu_device *adev = psp->adev; in psp_v11_0_8_ring_stop() 45 psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_101), in psp_v11_0_8_ring_stop() 55 psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64), in psp_v11_0_8_ring_stop() 62 static int psp_v11_0_8_ring_create(struct psp_context *psp, in psp_v11_0_8_ring_create() argument 67 struct psp_ring *ring = &psp->km_ring; in psp_v11_0_8_ring_create() 68 struct amdgpu_device *adev = psp->adev; in psp_v11_0_8_ring_create() 71 ret = psp_v11_0_8_ring_stop(psp, ring_type); in psp_v11_0_8_ring_create() 93 psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_101), in psp_v11_0_8_ring_create() 99 psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64), in psp_v11_0_8_ring_create() [all …]
|
| H A D | amdgpu_psp_ta.h | 28 #define psp_fn_ta_initialize(psp) ((psp)->ta_funcs->fn_ta_initialize((psp))) argument 29 #define psp_fn_ta_invoke(psp, ta_cmd_id) ((psp)->ta_funcs->fn_ta_invoke((psp), (ta_cmd_id))) argument 30 #define psp_fn_ta_terminate(psp) ((psp)->ta_funcs->fn_ta_terminate((psp))) argument
|
| H A D | amdgpu_dev_coredump.c | 122 adev->psp.sos.feature_version, adev->psp.sos.fw_version); in amdgpu_devcoredump_fw_info() 124 adev->psp.asd_context.bin_desc.feature_version, in amdgpu_devcoredump_fw_info() 125 adev->psp.asd_context.bin_desc.fw_version); in amdgpu_devcoredump_fw_info() 128 adev->psp.xgmi_context.context.bin_desc.feature_version, in amdgpu_devcoredump_fw_info() 129 adev->psp.xgmi_context.context.bin_desc.fw_version); in amdgpu_devcoredump_fw_info() 131 adev->psp.ras_context.context.bin_desc.feature_version, in amdgpu_devcoredump_fw_info() 132 adev->psp.ras_context.context.bin_desc.fw_version); in amdgpu_devcoredump_fw_info() 134 adev->psp.hdcp_context.context.bin_desc.feature_version, in amdgpu_devcoredump_fw_info() 135 adev->psp.hdcp_context.context.bin_desc.fw_version); in amdgpu_devcoredump_fw_info() 137 adev->psp.dtm_context.context.bin_desc.feature_version, in amdgpu_devcoredump_fw_info() [all …]
|
| /linux/drivers/crypto/ccp/ |
| H A D | psp-dev.c | 46 int psp_mailbox_command(struct psp_device *psp, enum psp_cmd cmd, void *cmdbuff, in psp_mailbox_command() argument 52 if (!psp || !psp->vdata || !psp->vdata->cmdresp_reg || in psp_mailbox_command() 53 !psp->vdata->cmdbuff_addr_lo_reg || !psp->vdata->cmdbuff_addr_hi_reg) in psp_mailbox_command() 56 cmdresp_reg = psp->io_regs + psp->vdata->cmdresp_reg; in psp_mailbox_command() 57 cmdbuff_lo_reg = psp->io_regs + psp->vdata->cmdbuff_addr_lo_reg; in psp_mailbox_command() 58 cmdbuff_hi_reg = psp->io_regs + psp->vdata->cmdbuff_addr_hi_reg; in psp_mailbox_command() 60 mutex_lock(&psp->mailbox_mutex); in psp_mailbox_command() 78 mutex_unlock(&psp->mailbox_mutex); in psp_mailbox_command() 83 int psp_extended_mailbox_cmd(struct psp_device *psp, unsigned int timeout_msecs, in psp_extended_mailbox_cmd() argument 92 ret = psp_mailbox_command(psp, PSP_CMD_TEE_EXTENDED_CMD, (void *)req, in psp_extended_mailbox_cmd() [all …]
|
| H A D | platform-access.c | 47 struct psp_device *psp = psp_get_master_device(); in psp_check_platform_access_status() local 49 if (!psp || !psp->platform_access_data) in psp_check_platform_access_status() 59 struct psp_device *psp = psp_get_master_device(); in psp_send_platform_access_msg() local 66 if (!psp || !psp->platform_access_data) in psp_send_platform_access_msg() 69 pa_dev = psp->platform_access_data; in psp_send_platform_access_msg() 75 cmd = psp->io_regs + pa_dev->vdata->cmdresp_reg; in psp_send_platform_access_msg() 76 lo = psp->io_regs + pa_dev->vdata->cmdbuff_addr_lo_reg; in psp_send_platform_access_msg() 77 hi = psp->io_regs + pa_dev->vdata->cmdbuff_addr_hi_reg; in psp_send_platform_access_msg() 82 dev_dbg(psp->dev, "platform mailbox is in recovery\n"); in psp_send_platform_access_msg() 88 dev_dbg(psp->dev, "platform mailbox is not done processing command\n"); in psp_send_platform_access_msg() [all …]
|
| H A D | tee-dev.c | 115 ret = psp_mailbox_command(tee->psp, PSP_CMD_TEE_RING_INIT, cmd, in tee_init_ring() 148 ret = psp_mailbox_command(tee->psp, PSP_CMD_TEE_RING_DESTROY, NULL, in tee_destroy_ring() 162 int tee_dev_init(struct psp_device *psp) in tee_dev_init() argument 164 struct device *dev = psp->dev; in tee_dev_init() 173 psp->tee_data = tee; in tee_dev_init() 176 tee->psp = psp; in tee_dev_init() 178 tee->io_regs = psp->io_regs; in tee_dev_init() 180 tee->vdata = (struct tee_vdata *)psp->vdata->tee; in tee_dev_init() 198 psp->tee_data = NULL; in tee_dev_init() 205 void tee_dev_destroy(struct psp_device *psp) in tee_dev_destroy() argument [all …]
|
| H A D | sfs.c | 31 ret = psp_extended_mailbox_cmd(sfs_dev->psp, in send_sfs_cmd() 192 void sfs_dev_destroy(struct psp_device *psp) in sfs_dev_destroy() argument 194 struct sfs_device *sfs_dev = psp->sfs_data; in sfs_dev_destroy() 209 psp->sfs_data = NULL; in sfs_dev_destroy() 251 int sfs_dev_init(struct psp_device *psp) in sfs_dev_init() argument 253 struct device *dev = psp->dev; in sfs_dev_init() 288 psp->sfs_data = sfs_dev; in sfs_dev_init() 290 sfs_dev->psp = psp; in sfs_dev_init() 307 psp->sfs_data = NULL; in sfs_dev_init()
|
| H A D | sp-pci.c | 48 struct psp_device *psp = sp->psp_data; \ 49 unsigned int val = ioread32(psp->io_regs + _offset); \ 57 version_attribute_show(bootloader_version, psp->vdata->bootloader_info_reg) 59 version_attribute_show(tee_version, psp->vdata->tee->info_reg) 72 struct psp_device *psp = sp->psp_data; in psp_firmware_is_visible() local 75 if (!psp) in psp_firmware_is_visible() 79 psp->vdata->bootloader_info_reg) in psp_firmware_is_visible() 80 val = ioread32(psp->io_regs + psp->vdata->bootloader_info_reg); in psp_firmware_is_visible() 82 if (attr == &dev_attr_tee_version.attr && psp->capability.tee && in psp_firmware_is_visible() 83 psp->vdata->tee->info_reg) in psp_firmware_is_visible() [all …]
|
| /linux/drivers/accel/amdxdna/ |
| H A D | aie2_psp.c | 47 static int psp_exec(struct psp_device *psp, u32 *reg_vals) in psp_exec() argument 55 writel(reg_vals[i], PSP_REG(psp, i)); in psp_exec() 58 writel(0, PSP_REG(psp, PSP_INTR_REG)); in psp_exec() 59 writel(1, PSP_REG(psp, PSP_INTR_REG)); in psp_exec() 62 ret = readx_poll_timeout(readl, PSP_REG(psp, PSP_STATUS_REG), ready, in psp_exec() 66 drm_err(psp->ddev, "PSP is not ready, ret 0x%x", ret); in psp_exec() 70 resp_code = readl(PSP_REG(psp, PSP_RESP_REG)); in psp_exec() 72 drm_err(psp->ddev, "fw return error 0x%x", resp_code); in psp_exec() 79 void aie2_psp_stop(struct psp_device *psp) in aie2_psp_stop() argument 84 ret = psp_exec(psp, reg_vals); in aie2_psp_stop() [all …]
|
| /linux/drivers/gpu/drm/amd/display/modules/hdcp/ |
| H A D | hdcp_psp.c | 51 struct psp_context *psp = hdcp->config.psp.handle; in remove_display_from_topology_v2() local 57 dtm_cmd = (struct ta_dtm_shared_memory *)psp->dtm_context.context.mem_context.shared_buf; in remove_display_from_topology_v2() 62 mutex_lock(&psp->dtm_context.mutex); in remove_display_from_topology_v2() 71 psp_dtm_invoke(psp, dtm_cmd->cmd_id); in remove_display_from_topology_v2() 80 mutex_unlock(&psp->dtm_context.mutex); in remove_display_from_topology_v2() 87 struct psp_context *psp = hdcp->config.psp.handle; in remove_display_from_topology_v3() local 93 dtm_cmd = (struct ta_dtm_shared_memory *)psp->dtm_context.context.mem_context.shared_buf; in remove_display_from_topology_v3() 98 mutex_lock(&psp->dtm_context.mutex); in remove_display_from_topology_v3() 107 psp_dtm_invoke(psp, dtm_cmd->cmd_id); in remove_display_from_topology_v3() 108 mutex_unlock(&psp->dtm_context.mutex); in remove_display_from_topology_v3() [all …]
|
| /linux/drivers/staging/greybus/ |
| H A D | power_supply.c | 106 static int get_psp_from_gb_prop(int gb_prop, enum power_supply_property *psp) in get_psp_from_gb_prop() argument 305 *psp = (enum power_supply_property)prop; in get_psp_from_gb_prop() 316 enum power_supply_property psp) in get_psy_prop() argument 321 if (gbpsy->props[i].prop == psp) in get_psy_prop() 327 enum power_supply_property psp) in is_psy_prop_writeable() argument 331 prop = get_psy_prop(gbpsy, psp); in is_psy_prop_writeable() 337 static int is_prop_valint(enum power_supply_property psp) in is_prop_valint() argument 339 return ((psp < POWER_SUPPLY_PROP_MODEL_NAME) ? 1 : 0); in is_prop_valint() 513 enum power_supply_property psp; in gb_power_supply_prop_descriptors_get() local 539 ret = get_psp_from_gb_prop(resp->props[i].property, &psp); in gb_power_supply_prop_descriptors_get() [all …]
|
| /linux/drivers/power/supply/ |
| H A D | power_supply_core.c | 411 enum power_supply_property psp; member 420 if (!power_supply_get_property(epsy, data->psp, data->val)) in __power_supply_get_supplier_property() 427 enum power_supply_property psp, in power_supply_get_property_from_supplier() argument 432 .psp = psp, in power_supply_get_property_from_supplier() 879 enum power_supply_property psp) in power_supply_battery_info_has_prop() argument 884 switch (psp) { in power_supply_battery_info_has_prop() 922 enum power_supply_property psp, in power_supply_battery_info_get_prop() argument 928 if (!power_supply_battery_info_has_prop(info, psp)) in power_supply_battery_info_get_prop() 931 switch (psp) { in power_supply_battery_info_get_prop() 1198 enum power_supply_property psp) in psy_desc_has_property() argument [all …]
|
| H A D | rn5t618_power.c | 352 enum power_supply_property psp, in rn5t618_battery_get_property() argument 358 switch (psp) { in rn5t618_battery_get_property() 403 enum power_supply_property psp, in rn5t618_battery_set_property() argument 408 switch (psp) { in rn5t618_battery_set_property() 417 enum power_supply_property psp) in rn5t618_battery_property_is_writeable() argument 419 switch (psp) { in rn5t618_battery_property_is_writeable() 428 enum power_supply_property psp, in rn5t618_adp_get_property() argument 443 switch (psp) { in rn5t618_adp_get_property() 482 enum power_supply_property psp, in rn5t618_adp_set_property() argument 488 switch (psp) { in rn5t618_adp_set_property() [all …]
|
| H A D | mp2629_charger.c | 213 enum power_supply_property psp, in mp2629_charger_battery_get_prop() argument 220 switch (psp) { in mp2629_charger_battery_get_prop() 316 enum power_supply_property psp, in mp2629_charger_battery_set_prop() argument 321 switch (psp) { in mp2629_charger_battery_set_prop() 340 enum power_supply_property psp, in mp2629_charger_usb_get_prop() argument 347 switch (psp) { in mp2629_charger_usb_get_prop() 405 enum power_supply_property psp, in mp2629_charger_usb_set_prop() argument 410 switch (psp) { in mp2629_charger_usb_set_prop() 423 enum power_supply_property psp) in mp2629_charger_battery_prop_writeable() argument 425 return (psp == POWER_SUPPLY_PROP_PRECHARGE_CURRENT) || in mp2629_charger_battery_prop_writeable() [all …]
|
| H A D | test_power.c | 47 enum power_supply_property psp, in test_power_get_ac_property() argument 50 switch (psp) { in test_power_get_ac_property() 61 enum power_supply_property psp, in test_power_get_usb_property() argument 64 switch (psp) { in test_power_get_usb_property() 75 enum power_supply_property psp, in test_power_get_battery_property() argument 78 switch (psp) { in test_power_get_battery_property() 146 enum power_supply_property psp) in test_power_battery_property_is_writeable() argument 148 return psp == POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR || psp == POWER_SUPPLY_PROP_CHARGE_TYPES; in test_power_battery_property_is_writeable() 152 enum power_supply_property psp, in test_power_set_battery_property() argument 155 switch (psp) { in test_power_set_battery_property() [all …]
|
| H A D | axp20x_battery.c | 277 enum power_supply_property psp, in axp20x_battery_get_prop() argument 283 switch (psp) { in axp20x_battery_get_prop() 429 enum power_supply_property psp, in axp717_battery_get_prop() argument 435 switch (psp) { in axp717_battery_get_prop() 770 enum power_supply_property psp, in axp20x_battery_set_prop() argument 775 switch (psp) { in axp20x_battery_set_prop() 806 enum power_supply_property psp, in axp717_battery_set_prop() argument 811 switch (psp) { in axp717_battery_set_prop() 870 enum power_supply_property psp) in axp20x_battery_prop_writeable() argument 872 return psp == POWER_SUPPLY_PROP_STATUS || in axp20x_battery_prop_writeable() [all …]
|
| /linux/drivers/usb/misc/ |
| H A D | apple-mfi-fastcharge.c | 93 enum power_supply_property psp, in apple_mfi_fc_get_property() argument 98 dev_dbg(&mfi->udev->dev, "prop: %d\n", psp); in apple_mfi_fc_get_property() 100 switch (psp) { in apple_mfi_fc_get_property() 115 enum power_supply_property psp, in apple_mfi_fc_set_property() argument 121 dev_dbg(&mfi->udev->dev, "prop: %d\n", psp); in apple_mfi_fc_set_property() 129 switch (psp) { in apple_mfi_fc_set_property() 143 enum power_supply_property psp) in apple_mfi_fc_property_is_writeable() argument 145 switch (psp) { in apple_mfi_fc_property_is_writeable()
|