···2525 * @read_hpd: read the HPD pin. Return true if high, false if low or2626 * an error if negative. If NULL or -ENOTTY is returned,2727 * then this is not supported.2828+ * @read_5v: read the 5V pin. Return true if high, false if low or2929+ * an error if negative. If NULL or -ENOTTY is returned,3030+ * then this is not supported.2831 *2932 * These operations are used by the cec pin framework to manipulate3033 * the CEC pin.···4138 void (*free)(struct cec_adapter *adap);4239 void (*status)(struct cec_adapter *adap, struct seq_file *file);4340 int (*read_hpd)(struct cec_adapter *adap);4141+ int (*read_5v)(struct cec_adapter *adap);4442};45434644/**
+11-1
include/media/cec.h
···7979};80808181#define CEC_NUM_CORE_EVENTS 28282-#define CEC_NUM_EVENTS CEC_EVENT_PIN_HPD_HIGH8282+#define CEC_NUM_EVENTS CEC_EVENT_PIN_5V_HIGH83838484struct cec_fh {8585 struct list_head list;···307307 *308308 */309309void cec_queue_pin_hpd_event(struct cec_adapter *adap, bool is_high, ktime_t ts);310310+311311+/**312312+ * cec_queue_pin_5v_event() - queue a pin event with a given timestamp.313313+ *314314+ * @adap: pointer to the cec adapter315315+ * @is_high: when true the 5V pin is high, otherwise it is low316316+ * @ts: the timestamp for this event317317+ *318318+ */319319+void cec_queue_pin_5v_event(struct cec_adapter *adap, bool is_high, ktime_t ts);310320311321/**312322 * cec_get_edid_phys_addr() - find and return the physical address