Lines Matching refs:ppid
117 u16 ppid;
168 * @ppid_to_apid: finds the apid for a given ppid.
172 * on v2 offset of per-ee and per-ppid channel.
186 int (*ppid_to_apid)(struct spmi_pmic_arb *pmic_arb, u16 ppid);
487 u16 ppid = pmic_arb->apid_data[apid].ppid;
488 u8 sid = ppid >> 8;
489 u8 per = ppid & 0xFF;
496 dev_err_ratelimited(&pmic_arb->spmic->dev, "failed to ack irq_mask = 0x%x for ppid = %x\n",
497 irq_mask, ppid);
501 dev_err_ratelimited(&pmic_arb->spmic->dev, "failed to ack irq_mask = 0x%x for ppid = %x\n",
502 irq_mask, ppid);
509 u8 sid = (pmic_arb->apid_data[apid].ppid >> 8) & 0xF;
510 u8 per = pmic_arb->apid_data[apid].ppid & 0xFF;
697 u16 apid, ppid;
710 ppid = intspec[0] << 8 | intspec[1];
711 rc = pmic_arb->ver_ops->ppid_to_apid(pmic_arb, ppid);
777 static int pmic_arb_ppid_to_apid_v1(struct spmi_pmic_arb *pmic_arb, u16 ppid)
785 apid_valid = pmic_arb->ppid_to_apid[ppid];
798 if (ppid & BIT(SPMI_MAPPING_BIT_INDEX(data))) {
803 pmic_arb->ppid_to_apid[ppid]
805 pmic_arb->apid_data[apid].ppid = ppid;
813 pmic_arb->ppid_to_apid[ppid]
815 pmic_arb->apid_data[apid].ppid = ppid;
831 static u16 pmic_arb_find_apid(struct spmi_pmic_arb *pmic_arb, u16 ppid)
853 apidd->ppid = id;
854 if (id == ppid) {
864 static int pmic_arb_ppid_to_apid_v2(struct spmi_pmic_arb *pmic_arb, u16 ppid)
868 apid_valid = pmic_arb->ppid_to_apid[ppid];
870 apid_valid = pmic_arb_find_apid(pmic_arb, ppid);
881 u16 i, apid, ppid;
901 ppid = (regval >> 8) & PMIC_ARB_PPID_MASK;
910 valid = pmic_arb->ppid_to_apid[ppid] & PMIC_ARB_APID_VALID;
911 apid = pmic_arb->ppid_to_apid[ppid] & ~PMIC_ARB_APID_VALID;
916 pmic_arb->ppid_to_apid[ppid] = i | PMIC_ARB_APID_VALID;
926 apidd->ppid = ppid;
932 for (ppid = 0; ppid < PMIC_ARB_MAX_PPID; ppid++) {
933 apid = pmic_arb->ppid_to_apid[ppid];
938 ppid, apid, apidd->write_ee, apidd->irq_ee);
945 static int pmic_arb_ppid_to_apid_v5(struct spmi_pmic_arb *pmic_arb, u16 ppid)
947 if (!(pmic_arb->ppid_to_apid[ppid] & PMIC_ARB_APID_VALID))
950 return pmic_arb->ppid_to_apid[ppid] & ~PMIC_ARB_APID_VALID;
953 /* v2 offset per ppid and per ee */
958 u16 ppid;
961 ppid = sid << 8 | ((addr >> 8) & 0xFF);
962 rc = pmic_arb_ppid_to_apid_v2(pmic_arb, ppid);
980 u16 ppid = (sid << 8) | (addr >> 8);
982 rc = pmic_arb_ppid_to_apid_v5(pmic_arb, ppid);