|
@@ -564,34 +564,15 @@ static void nvt_cir_regs_init(struct nvt_dev *nvt)
|
|
|
|
|
|
static void nvt_cir_wake_regs_init(struct nvt_dev *nvt)
|
|
static void nvt_cir_wake_regs_init(struct nvt_dev *nvt)
|
|
{
|
|
{
|
|
- /* set number of bytes needed for wake from s3 (default 65) */
|
|
|
|
- nvt_cir_wake_reg_write(nvt, CIR_WAKE_FIFO_CMP_BYTES,
|
|
|
|
- CIR_WAKE_FIFO_CMP_DEEP);
|
|
|
|
-
|
|
|
|
- /* set tolerance/variance allowed per byte during wake compare */
|
|
|
|
- nvt_cir_wake_reg_write(nvt, CIR_WAKE_CMP_TOLERANCE,
|
|
|
|
- CIR_WAKE_FIFO_CMP_TOL);
|
|
|
|
-
|
|
|
|
- /* set sample limit count (PE interrupt raised when reached) */
|
|
|
|
- nvt_cir_wake_reg_write(nvt, CIR_RX_LIMIT_COUNT >> 8, CIR_WAKE_SLCH);
|
|
|
|
- nvt_cir_wake_reg_write(nvt, CIR_RX_LIMIT_COUNT & 0xff, CIR_WAKE_SLCL);
|
|
|
|
-
|
|
|
|
- /* set cir wake fifo rx trigger level (currently 67) */
|
|
|
|
- nvt_cir_wake_reg_write(nvt, CIR_WAKE_FIFOCON_RX_TRIGGER_LEV,
|
|
|
|
- CIR_WAKE_FIFOCON);
|
|
|
|
-
|
|
|
|
/*
|
|
/*
|
|
- * Enable TX and RX, specific carrier on = low, off = high, and set
|
|
|
|
- * sample period (currently 50us)
|
|
|
|
|
|
+ * Disable RX, set specific carrier on = low, off = high,
|
|
|
|
+ * and sample period (currently 50us)
|
|
*/
|
|
*/
|
|
- nvt_cir_wake_reg_write(nvt, CIR_WAKE_IRCON_MODE0 | CIR_WAKE_IRCON_RXEN |
|
|
|
|
|
|
+ nvt_cir_wake_reg_write(nvt, CIR_WAKE_IRCON_MODE0 |
|
|
CIR_WAKE_IRCON_R | CIR_WAKE_IRCON_RXINV |
|
|
CIR_WAKE_IRCON_R | CIR_WAKE_IRCON_RXINV |
|
|
CIR_WAKE_IRCON_SAMPLE_PERIOD_SEL,
|
|
CIR_WAKE_IRCON_SAMPLE_PERIOD_SEL,
|
|
CIR_WAKE_IRCON);
|
|
CIR_WAKE_IRCON);
|
|
|
|
|
|
- /* clear cir wake rx fifo */
|
|
|
|
- nvt_clear_cir_wake_fifo(nvt);
|
|
|
|
-
|
|
|
|
/* clear any and all stray interrupts */
|
|
/* clear any and all stray interrupts */
|
|
nvt_cir_wake_reg_write(nvt, 0xff, CIR_WAKE_IRSTS);
|
|
nvt_cir_wake_reg_write(nvt, 0xff, CIR_WAKE_IRSTS);
|
|
|
|
|