Lines Matching refs:dmub_hpd_wrk
775 struct dmub_hpd_work *dmub_hpd_wrk; in dm_handle_hpd_work() local
777 dmub_hpd_wrk = container_of(work, struct dmub_hpd_work, handle_hpd_work); in dm_handle_hpd_work()
779 if (!dmub_hpd_wrk->dmub_notify) { in dm_handle_hpd_work()
784 if (dmub_hpd_wrk->dmub_notify->type < ARRAY_SIZE(dmub_hpd_wrk->adev->dm.dmub_callback)) { in dm_handle_hpd_work()
785 dmub_hpd_wrk->adev->dm.dmub_callback[dmub_hpd_wrk->dmub_notify->type](dmub_hpd_wrk->adev, in dm_handle_hpd_work()
786 dmub_hpd_wrk->dmub_notify); in dm_handle_hpd_work()
789 kfree(dmub_hpd_wrk->dmub_notify); in dm_handle_hpd_work()
790 kfree(dmub_hpd_wrk); in dm_handle_hpd_work()
810 struct dmub_hpd_work *dmub_hpd_wrk; in dm_dmub_outbox1_low_irq() local
827 dmub_hpd_wrk = kzalloc(sizeof(*dmub_hpd_wrk), GFP_ATOMIC); in dm_dmub_outbox1_low_irq()
828 if (!dmub_hpd_wrk) { in dm_dmub_outbox1_low_irq()
832 dmub_hpd_wrk->dmub_notify = kmemdup(¬ify, sizeof(struct dmub_notification), in dm_dmub_outbox1_low_irq()
834 if (!dmub_hpd_wrk->dmub_notify) { in dm_dmub_outbox1_low_irq()
835 kfree(dmub_hpd_wrk); in dm_dmub_outbox1_low_irq()
839 INIT_WORK(&dmub_hpd_wrk->handle_hpd_work, dm_handle_hpd_work); in dm_dmub_outbox1_low_irq()
840 dmub_hpd_wrk->adev = adev; in dm_dmub_outbox1_low_irq()
848 queue_work(adev->dm.delayed_hpd_wq, &dmub_hpd_wrk->handle_hpd_work); in dm_dmub_outbox1_low_irq()