Lines Matching refs:pslot

503 int ibmphp_hpc_readslot(struct slot *pslot, u8 cmd, u8 *pstatus)  in ibmphp_hpc_readslot()  argument
511 debug_polling("%s - Entry pslot[%p] cmd[%x] pstatus[%p]\n", __func__, pslot, cmd, pstatus); in ibmphp_hpc_readslot()
513 if ((pslot == NULL) in ibmphp_hpc_readslot()
521 busindex = ibmphp_get_bus_index(pslot->bus); in ibmphp_hpc_readslot()
529 index = pslot->ctlr_index; in ibmphp_hpc_readslot()
539 ctlr_ptr = pslot->ctrl; in ibmphp_hpc_readslot()
557 pslot->ctrl->status = status; in ibmphp_hpc_readslot()
558 pslot->status = ctrl_read(ctlr_ptr, wpg_bbar, index); in ibmphp_hpc_readslot()
562 pslot->ext_status = ctrl_read(ctlr_ptr, wpg_bbar, index + WPG_1ST_EXTSLOT_INDEX); in ibmphp_hpc_readslot()
582 pslot->busstatus = ctrl_read(ctlr_ptr, wpg_bbar, index); in ibmphp_hpc_readslot()
597 list_for_each_entry(pslot, &ibmphp_slot_head, in ibmphp_hpc_readslot()
599 index = pslot->ctlr_index; in ibmphp_hpc_readslot()
603 pslot->status = ctrl_read(ctlr_ptr, wpg_bbar, index); in ibmphp_hpc_readslot()
607 pslot->ext_status = in ibmphp_hpc_readslot()
641 int ibmphp_hpc_writeslot(struct slot *pslot, u8 cmd) in ibmphp_hpc_writeslot() argument
651 debug_polling("%s - Entry pslot[%p] cmd[%x]\n", __func__, pslot, cmd); in ibmphp_hpc_writeslot()
652 if (pslot == NULL) { in ibmphp_hpc_writeslot()
661 busindex = ibmphp_get_bus_index(pslot->bus); in ibmphp_hpc_writeslot()
669 index = pslot->ctlr_index; in ibmphp_hpc_writeslot()
679 ctlr_ptr = pslot->ctrl; in ibmphp_hpc_writeslot()
788 struct slot *pslot = NULL; in poll_hpc() local
806 list_for_each_entry(pslot, &ibmphp_slot_head, in poll_hpc()
810 if (pslot->ctrl->ctlr_relative_id == ctrl_count) { in poll_hpc()
812 if (READ_SLOT_LATCH(pslot->ctrl)) { in poll_hpc()
813 rc = ibmphp_hpc_readslot(pslot, in poll_hpc()
819 pslot->ctrl); in poll_hpc()
827 list_for_each_entry(pslot, &ibmphp_slot_head, in poll_hpc()
830 memcpy((void *) &myslot, (void *) pslot, in poll_hpc()
832 rc = ibmphp_hpc_readslot(pslot, READ_ALLSTAT, NULL); in poll_hpc()
833 if ((myslot.status != pslot->status) in poll_hpc()
834 || (myslot.ext_status != pslot->ext_status)) in poll_hpc()
835 process_changeinstatus(pslot, &myslot); in poll_hpc()
838 list_for_each_entry(pslot, &ibmphp_slot_head, in poll_hpc()
842 if (pslot->ctrl->ctlr_relative_id == ctrl_count) { in poll_hpc()
844 if (READ_SLOT_LATCH(pslot->ctrl)) in poll_hpc()
845 rc = ibmphp_hpc_readslot(pslot, in poll_hpc()
897 static int process_changeinstatus(struct slot *pslot, struct slot *poldslot) in process_changeinstatus() argument
904 debug("process_changeinstatus - Entry pslot[%p], poldslot[%p]\n", pslot, poldslot); in process_changeinstatus()
907 if ((pslot->status & 0x01) != (poldslot->status & 0x01)) in process_changeinstatus()
914 if ((pslot->status & 0x04) != (poldslot->status & 0x04)) in process_changeinstatus()
919 if (((pslot->status & 0x08) != (poldslot->status & 0x08)) in process_changeinstatus()
920 || ((pslot->status & 0x10) != (poldslot->status & 0x10))) in process_changeinstatus()
924 if ((pslot->status & 0x20) != (poldslot->status & 0x20)) in process_changeinstatus()
933 if ((pslot->status & 0x80) != (poldslot->status & 0x80)) { in process_changeinstatus()
936 if (pslot->status & 0x80) { in process_changeinstatus()
937 if (SLOT_PWRGD(pslot->status)) { in process_changeinstatus()
941 rc = ibmphp_hpc_readslot(pslot, READ_SLOTSTATUS, &status); in process_changeinstatus()
945 pslot->status &= ~HPC_SLOT_POWER; in process_changeinstatus()
956 if ((pslot->ext_status & 0x08) != (poldslot->ext_status & 0x08)) in process_changeinstatus()
961 pslot->flag = 0; in process_changeinstatus()
962 rc = ibmphp_do_disable_slot(pslot); in process_changeinstatus()
966 ibmphp_update_slot_info(pslot); in process_changeinstatus()
985 struct slot myslot, *pslot; in process_changeinlatch() local
996 pslot = ibmphp_get_slot_from_physical_num(i); in process_changeinlatch()
997 if (pslot) { in process_changeinlatch()
998 memcpy((void *) &myslot, (void *) pslot, sizeof(struct slot)); in process_changeinlatch()
999 rc = ibmphp_hpc_readslot(pslot, READ_ALLSTAT, NULL); in process_changeinlatch()
1001 process_changeinstatus(pslot, &myslot); in process_changeinlatch()