Lines Matching refs:pm8001_ha
59 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_mpi_interface_rev_show() local
61 if (pm8001_ha->chip_id == chip_8001) { in pm8001_ctl_mpi_interface_rev_show()
63 pm8001_ha->main_cfg_tbl.pm8001_tbl.interface_rev); in pm8001_ctl_mpi_interface_rev_show()
66 pm8001_ha->main_cfg_tbl.pm80xx_tbl.interface_rev); in pm8001_ctl_mpi_interface_rev_show()
84 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_fw_version_show() local
86 if (pm8001_ha->chip_id == chip_8001) { in pm8001_ctl_fw_version_show()
88 (u8)(pm8001_ha->main_cfg_tbl.pm8001_tbl.firmware_rev >> 24), in pm8001_ctl_fw_version_show()
89 (u8)(pm8001_ha->main_cfg_tbl.pm8001_tbl.firmware_rev >> 16), in pm8001_ctl_fw_version_show()
90 (u8)(pm8001_ha->main_cfg_tbl.pm8001_tbl.firmware_rev >> 8), in pm8001_ctl_fw_version_show()
91 (u8)(pm8001_ha->main_cfg_tbl.pm8001_tbl.firmware_rev)); in pm8001_ctl_fw_version_show()
94 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.firmware_rev >> 24), in pm8001_ctl_fw_version_show()
95 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.firmware_rev >> 16), in pm8001_ctl_fw_version_show()
96 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.firmware_rev >> 8), in pm8001_ctl_fw_version_show()
97 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.firmware_rev)); in pm8001_ctl_fw_version_show()
114 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_ila_version_show() local
116 if (pm8001_ha->chip_id != chip_8001) { in pm8001_ctl_ila_version_show()
118 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.ila_version >> 24), in pm8001_ctl_ila_version_show()
119 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.ila_version >> 16), in pm8001_ctl_ila_version_show()
120 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.ila_version >> 8), in pm8001_ctl_ila_version_show()
121 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.ila_version)); in pm8001_ctl_ila_version_show()
139 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_inactive_fw_version_show() local
141 if (pm8001_ha->chip_id != chip_8001) { in pm8001_ctl_inactive_fw_version_show()
143 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.inc_fw_version >> 24), in pm8001_ctl_inactive_fw_version_show()
144 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.inc_fw_version >> 16), in pm8001_ctl_inactive_fw_version_show()
145 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.inc_fw_version >> 8), in pm8001_ctl_inactive_fw_version_show()
146 (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.inc_fw_version)); in pm8001_ctl_inactive_fw_version_show()
165 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_max_out_io_show() local
167 if (pm8001_ha->chip_id == chip_8001) { in pm8001_ctl_max_out_io_show()
169 pm8001_ha->main_cfg_tbl.pm8001_tbl.max_out_io); in pm8001_ctl_max_out_io_show()
172 pm8001_ha->main_cfg_tbl.pm80xx_tbl.max_out_io); in pm8001_ctl_max_out_io_show()
188 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_max_devices_show() local
190 if (pm8001_ha->chip_id == chip_8001) { in pm8001_ctl_max_devices_show()
192 (u16)(pm8001_ha->main_cfg_tbl.pm8001_tbl.max_sgl >> 16) in pm8001_ctl_max_devices_show()
196 (u16)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.max_sgl >> 16) in pm8001_ctl_max_devices_show()
214 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_max_sg_list_show() local
216 if (pm8001_ha->chip_id == chip_8001) { in pm8001_ctl_max_sg_list_show()
218 pm8001_ha->main_cfg_tbl.pm8001_tbl.max_sgl & 0x0000FFFF in pm8001_ctl_max_sg_list_show()
222 pm8001_ha->main_cfg_tbl.pm80xx_tbl.max_sgl & 0x0000FFFF in pm8001_ctl_max_sg_list_show()
259 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_sas_spec_support_show() local
261 if (pm8001_ha->chip_id == chip_8001) in pm8001_ctl_sas_spec_support_show()
262 mode = (pm8001_ha->main_cfg_tbl.pm8001_tbl.ctrl_cap_flag & in pm8001_ctl_sas_spec_support_show()
266 mode = (pm8001_ha->main_cfg_tbl.pm80xx_tbl.ctrl_cap_flag & in pm8001_ctl_sas_spec_support_show()
287 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_host_sas_address_show() local
289 be64_to_cpu(*(__be64 *)pm8001_ha->sas_addr)); in pm8001_ctl_host_sas_address_show()
306 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_logging_level_show() local
308 return snprintf(buf, PAGE_SIZE, "%08xh\n", pm8001_ha->logging_level); in pm8001_ctl_logging_level_show()
315 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_logging_level_store() local
321 pm8001_ha->logging_level = val; in pm8001_ctl_logging_level_store()
339 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_aap_log_show() local
342 (*(u32 *)((u8*)pm8001_ha->memoryMap.region[AAP1].virt_ptr + (r) * 32 \ in pm8001_ctl_aap_log_show()
374 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_ib_queue_log_show() local
379 (*(u32 *)((u8 *)pm8001_ha-> \ in pm8001_ctl_ib_queue_log_show()
381 pm8001_ha->evtlog_ib_offset + (c))) in pm8001_ctl_ib_queue_log_show()
387 pm8001_ha->evtlog_ib_offset += SYSFS_OFFSET; in pm8001_ctl_ib_queue_log_show()
388 if (((pm8001_ha->evtlog_ib_offset) % (PM80XX_IB_OB_QUEUE_SIZE)) == 0) in pm8001_ctl_ib_queue_log_show()
389 pm8001_ha->evtlog_ib_offset = 0; in pm8001_ctl_ib_queue_log_show()
407 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_ob_queue_log_show() local
412 (*(u32 *)((u8 *)pm8001_ha-> \ in pm8001_ctl_ob_queue_log_show()
414 pm8001_ha->evtlog_ob_offset + (c))) in pm8001_ctl_ob_queue_log_show()
420 pm8001_ha->evtlog_ob_offset += SYSFS_OFFSET; in pm8001_ctl_ob_queue_log_show()
421 if (((pm8001_ha->evtlog_ob_offset) % (PM80XX_IB_OB_QUEUE_SIZE)) == 0) in pm8001_ctl_ob_queue_log_show()
422 pm8001_ha->evtlog_ob_offset = 0; in pm8001_ctl_ob_queue_log_show()
438 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_bios_version_show() local
444 pm8001_ha->nvmd_completion = &completion; in pm8001_ctl_bios_version_show()
451 if (PM8001_CHIP_DISP->get_nvmd_req(pm8001_ha, &payload)) { in pm8001_ctl_bios_version_show()
476 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in event_log_size_show() local
479 pm8001_ha->main_cfg_tbl.pm80xx_tbl.event_log_size); in event_log_size_show()
494 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_iop_log_show() local
497 pm8001_ha->main_cfg_tbl.pm80xx_tbl.event_log_size / 1024; in pm8001_ctl_iop_log_show()
501 u32 *temp = (u32 *)pm8001_ha->memoryMap.region[IOP].virt_ptr; in pm8001_ctl_iop_log_show()
594 static int pm8001_set_nvmd(struct pm8001_hba_info *pm8001_ha) in pm8001_set_nvmd() argument
602 if (pm8001_ha->fw_image->size > 4096) { in pm8001_set_nvmd()
603 pm8001_ha->fw_status = FAIL_FILE_SIZE; in pm8001_set_nvmd()
609 pm8001_ha->fw_status = FAIL_OUT_MEMORY; in pm8001_set_nvmd()
613 memcpy((u8 *)&payload->func_specific, (u8 *)pm8001_ha->fw_image->data, in pm8001_set_nvmd()
614 pm8001_ha->fw_image->size); in pm8001_set_nvmd()
615 payload->length = pm8001_ha->fw_image->size; in pm8001_set_nvmd()
618 pm8001_ha->nvmd_completion = &completion; in pm8001_set_nvmd()
619 ret = PM8001_CHIP_DISP->set_nvmd_req(pm8001_ha, payload); in pm8001_set_nvmd()
621 pm8001_ha->fw_status = FAIL_OUT_MEMORY; in pm8001_set_nvmd()
630 static int pm8001_update_flash(struct pm8001_hba_info *pm8001_ha) in pm8001_update_flash() argument
643 if (pm8001_ha->fw_image->size < 28) { in pm8001_update_flash()
644 pm8001_ha->fw_status = FAIL_FILE_SIZE; in pm8001_update_flash()
649 pm8001_ha->fw_status = FAIL_OUT_MEMORY; in pm8001_update_flash()
652 image_hdr = (struct pm8001_fw_image_header *)pm8001_ha->fw_image->data; in pm8001_update_flash()
653 while (sizeRead < pm8001_ha->fw_image->size) { in pm8001_update_flash()
677 (u8 *)pm8001_ha->fw_image->data + sizeRead, in pm8001_update_flash()
683 (u8 *)pm8001_ha->fw_image->data + sizeRead, in pm8001_update_flash()
688 pm8001_ha->nvmd_completion = &completion; in pm8001_update_flash()
689 ret = PM8001_CHIP_DISP->fw_flash_update_req(pm8001_ha, payload); in pm8001_update_flash()
691 pm8001_ha->fw_status = FAIL_OUT_MEMORY; in pm8001_update_flash()
696 pm8001_ha->fw_status = fwControl->retcode; in pm8001_update_flash()
712 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_store_update_fw() local
723 if (pm8001_ha->fw_status == FLASH_IN_PROGRESS) in pm8001_store_update_fw()
725 pm8001_ha->fw_status = FLASH_IN_PROGRESS; in pm8001_store_update_fw()
729 pm8001_ha->fw_status = FAIL_OUT_MEMORY; in pm8001_store_update_fw()
736 pm8001_ha->fw_status = FAIL_PARAMETERS; in pm8001_store_update_fw()
749 pm8001_ha->fw_status = FAIL_PARAMETERS; in pm8001_store_update_fw()
754 ret = request_firmware(&pm8001_ha->fw_image, in pm8001_store_update_fw()
756 pm8001_ha->dev); in pm8001_store_update_fw()
759 PM8001_FAIL_DBG(pm8001_ha, in pm8001_store_update_fw()
763 pm8001_ha->fw_status = FAIL_OPEN_BIOS_FILE; in pm8001_store_update_fw()
768 ret = pm8001_update_flash(pm8001_ha); in pm8001_store_update_fw()
770 ret = pm8001_set_nvmd(pm8001_ha); in pm8001_store_update_fw()
772 release_firmware(pm8001_ha->fw_image); in pm8001_store_update_fw()
779 pm8001_ha->fw_status = FLASH_OK; in pm8001_store_update_fw()
789 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_show_update_fw() local
792 if (flash_error_table[i].err_code == pm8001_ha->fw_status) in pm8001_show_update_fw()
795 if (pm8001_ha->fw_status != FLASH_IN_PROGRESS) in pm8001_show_update_fw()
796 pm8001_ha->fw_status = FLASH_OK; in pm8001_show_update_fw()