Subversion Repositories HelenOS

Rev

Rev 4626 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4626 Rev 4637
Line 95... Line 95...
95
};
95
};
96
 
96
 
97
enum cuda_xfer_state {
97
enum cuda_xfer_state {
98
    cx_listen,
98
    cx_listen,
99
    cx_receive,
99
    cx_receive,
100
    cx_rcv_end
100
    cx_rcv_end,
-
 
101
    cx_send_start,
-
 
102
    cx_send
101
};
103
};
102
 
104
 
103
typedef struct {
105
typedef struct {
104
    irq_t irq;
106
    irq_t irq;
105
    cuda_t *cuda;
107
    cuda_t *cuda;
106
    indev_t *kbrdin;
108
    indev_t *kbrdin;
107
    uint8_t rcv_buf[CUDA_RCV_BUF_SIZE];
109
    uint8_t rcv_buf[CUDA_RCV_BUF_SIZE];
-
 
110
    uint8_t snd_buf[CUDA_RCV_BUF_SIZE];
108
    size_t bidx;
111
    size_t bidx;
-
 
112
    size_t snd_bytes;
109
    enum cuda_xfer_state xstate;
113
    enum cuda_xfer_state xstate;
110
    SPINLOCK_DECLARE(dev_lock);
114
    SPINLOCK_DECLARE(dev_lock);
111
} cuda_instance_t;
115
} cuda_instance_t;
112
 
116
 
113
extern cuda_instance_t *cuda_init(cuda_t *, inr_t, cir_t, void *);
117
extern cuda_instance_t *cuda_init(cuda_t *, inr_t, cir_t, void *);