Lines Matching defs:cb

367 		struct udl_cmd_buf *cb = &sc->sc_cmd_buf_temp[i];
369 TAILQ_INSERT_TAIL(&sc->sc_cmd_buf_free, cb, entry);
508 struct udl_cmd_buf *cb;
510 while ((cb = TAILQ_FIRST(&sc->sc_cmd_buf_free)) == NULL) {
515 if (cb != NULL) {
516 TAILQ_REMOVE(&sc->sc_cmd_buf_free, cb, entry);
517 cb->off = 0;
519 return (cb);
525 struct udl_cmd_buf *cb;
528 cb = udl_cmd_buf_alloc_locked(sc, flags);
530 return (cb);
534 udl_cmd_buf_send(struct udl_softc *sc, struct udl_cmd_buf *cb)
538 TAILQ_INSERT_TAIL(&sc->sc_cmd_buf_free, cb, entry);
541 udl_cmd_insert_int_1(cb, UDL_BULK_SOC);
542 udl_cmd_insert_int_1(cb, UDL_BULK_CMD_EOC);
544 TAILQ_INSERT_TAIL(&sc->sc_cmd_buf_pending, cb, entry);
567 struct udl_cmd_buf *cb;
569 cb = udl_cmd_buf_alloc_locked(sc, M_NOWAIT);
570 if (cb == NULL)
574 udl_cmd_insert_int_1(cb, UDL_BULK_SOC);
575 udl_cmd_insert_int_1(cb, UDL_BULK_CMD_FB_WRITE | UDL_BULK_CMD_FB_WORD);
576 udl_cmd_insert_int_3(cb, sc->sc_sync_off);
577 udl_cmd_insert_int_1(cb, delta / 2);
578 udl_cmd_insert_buf_le16(cb, sc->sc_fb_copy + sc->sc_sync_off, delta);
580 return (cb);
594 struct udl_cmd_buf *cb;
603 cb = TAILQ_FIRST(&sc->sc_cmd_buf_pending);
604 if (cb == NULL) {
605 cb = udl_fb_synchronize_locked(sc);
606 if (cb == NULL)
609 TAILQ_REMOVE(&sc->sc_cmd_buf_pending, cb, entry);
611 TAILQ_INSERT_TAIL(phead, cb, entry);
612 usbd_xfer_set_frame_data(xfer, i, cb->buf, cb->off);
635 struct udl_cmd_buf *cb;
638 cb = udl_cmd_buf_alloc(sc, flags);
639 if (cb == NULL)
647 udl_cmd_write_reg_1(cb, UDL_REG_SCREEN, UDL_REG_SCREEN_ON);
649 udl_cmd_write_reg_1(cb, UDL_REG_SCREEN, UDL_REG_SCREEN_OFF);
651 udl_cmd_write_reg_1(cb, UDL_REG_SYNC, 0xff);
652 udl_cmd_buf_send(sc, cb);
853 udl_cmd_insert_int_1(struct udl_cmd_buf *cb, uint8_t value)
856 cb->buf[cb->off] = value;
857 cb->off += 1;
862 udl_cmd_insert_int_2(struct udl_cmd_buf *cb, uint16_t value)
867 bcopy(&lvalue, cb->buf + cb->off, 2);
869 cb->off += 2;
875 udl_cmd_insert_int_3(struct udl_cmd_buf *cb, uint32_t value)
884 bcopy(&lvalue, cb->buf + cb->off, 3);
886 cb->off += 3;
891 udl_cmd_insert_int_4(struct udl_cmd_buf *cb, uint32_t value)
896 bcopy(&lvalue, cb->buf + cb->off, 4);
898 cb->off += 4;
904 udl_cmd_insert_buf_le16(struct udl_cmd_buf *cb, const uint8_t *buf, uint32_t len)
910 cb->buf[cb->off + x + 0] = buf[x + 1];
911 cb->buf[cb->off + x + 1] = buf[x + 0];
913 cb->off += len;
917 udl_cmd_write_reg_1(struct udl_cmd_buf *cb, uint8_t reg, uint8_t val)
920 udl_cmd_insert_int_1(cb, UDL_BULK_SOC);
921 udl_cmd_insert_int_1(cb, UDL_BULK_CMD_REG_WRITE_1);
922 udl_cmd_insert_int_1(cb, reg);
923 udl_cmd_insert_int_1(cb, val);
927 udl_cmd_write_reg_3(struct udl_cmd_buf *cb, uint8_t reg, uint32_t val)
930 udl_cmd_write_reg_1(cb, reg + 0, (val >> 16) & 0xff);
931 udl_cmd_write_reg_1(cb, reg + 1, (val >> 8) & 0xff);
932 udl_cmd_write_reg_1(cb, reg + 2, (val >> 0) & 0xff);
992 udl_init_fb_offsets(struct udl_cmd_buf *cb, uint32_t start16, uint32_t stride16,
995 udl_cmd_write_reg_1(cb, UDL_REG_SYNC, 0x00);
996 udl_cmd_write_reg_3(cb, UDL_REG_ADDR_START16, start16);
997 udl_cmd_write_reg_3(cb, UDL_REG_ADDR_STRIDE16, stride16);
998 udl_cmd_write_reg_3(cb, UDL_REG_ADDR_START8, start8);
999 udl_cmd_write_reg_3(cb, UDL_REG_ADDR_STRIDE8, stride8);
1000 udl_cmd_write_reg_1(cb, UDL_REG_SYNC, 0xff);
1008 struct udl_cmd_buf *cb;
1014 cb = udl_cmd_buf_alloc(sc, M_WAITOK);
1015 if (cb == NULL)
1019 udl_cmd_write_reg_1(cb, UDL_REG_SYNC, 0x00);
1021 udl_cmd_write_reg_1(cb, i, buf[i]);
1022 udl_cmd_write_reg_1(cb, UDL_REG_SYNC, 0xff);
1024 udl_init_fb_offsets(cb, 0x000000, 0x000a00, 0x555555, 0x000500);
1025 udl_cmd_buf_send(sc, cb);
1043 cb = udl_cmd_buf_alloc(sc, M_WAITOK);
1044 if (cb == NULL)
1048 udl_cmd_write_reg_1(cb, UDL_REG_SCREEN, UDL_REG_SCREEN_ON);
1049 udl_cmd_write_reg_1(cb, UDL_REG_SYNC, 0xff);
1050 udl_cmd_buf_send(sc, cb);
1119 struct udl_cmd_buf *cb;
1121 cb = udl_cmd_buf_alloc(sc, flags);
1122 if (cb == NULL)
1125 udl_cmd_insert_int_1(cb, UDL_BULK_SOC);
1126 udl_cmd_insert_int_1(cb, UDL_BULK_CMD_FB_WRITE | UDL_BULK_CMD_FB_WORD);
1127 udl_cmd_insert_int_3(cb, off);
1128 udl_cmd_insert_int_1(cb, pixels);
1129 udl_cmd_insert_buf_le16(cb, buf, 2 * pixels);
1130 udl_cmd_buf_send(sc, cb);
1139 struct udl_cmd_buf *cb;
1141 cb = udl_cmd_buf_alloc(sc, flags);
1142 if (cb == NULL)
1145 udl_cmd_insert_int_1(cb, UDL_BULK_SOC);
1146 udl_cmd_insert_int_1(cb, UDL_BULK_CMD_FB_COPY | UDL_BULK_CMD_FB_WORD);
1147 udl_cmd_insert_int_3(cb, dst);
1148 udl_cmd_insert_int_1(cb, pixels);
1149 udl_cmd_insert_int_3(cb, src);
1150 udl_cmd_buf_send(sc, cb);