sisusb 75 drivers/usb/misc/sisusbvga/sisusb.c static void sisusb_free_buffers(struct sisusb_usb_data *sisusb) sisusb 80 drivers/usb/misc/sisusbvga/sisusb.c kfree(sisusb->obuf[i]); sisusb 81 drivers/usb/misc/sisusbvga/sisusb.c sisusb->obuf[i] = NULL; sisusb 83 drivers/usb/misc/sisusbvga/sisusb.c kfree(sisusb->ibuf); sisusb 84 drivers/usb/misc/sisusbvga/sisusb.c sisusb->ibuf = NULL; sisusb 87 drivers/usb/misc/sisusbvga/sisusb.c static void sisusb_free_urbs(struct sisusb_usb_data *sisusb) sisusb 92 drivers/usb/misc/sisusbvga/sisusb.c usb_free_urb(sisusb->sisurbout[i]); sisusb 93 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisurbout[i] = NULL; sisusb 95 drivers/usb/misc/sisusbvga/sisusb.c usb_free_urb(sisusb->sisurbin); sisusb 96 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisurbin = NULL; sisusb 106 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_all_free(struct sisusb_usb_data *sisusb) sisusb 110 drivers/usb/misc/sisusbvga/sisusb.c for (i = 0; i < sisusb->numobufs; i++) { sisusb 112 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->urbstatus[i] & SU_URB_BUSY) sisusb 121 drivers/usb/misc/sisusbvga/sisusb.c static void sisusb_kill_all_busy(struct sisusb_usb_data *sisusb) sisusb 125 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb_all_free(sisusb)) sisusb 128 drivers/usb/misc/sisusbvga/sisusb.c for (i = 0; i < sisusb->numobufs; i++) { sisusb 130 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->urbstatus[i] & SU_URB_BUSY) sisusb 131 drivers/usb/misc/sisusbvga/sisusb.c usb_kill_urb(sisusb->sisurbout[i]); sisusb 137 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_wait_all_out_complete(struct sisusb_usb_data *sisusb) sisusb 141 drivers/usb/misc/sisusbvga/sisusb.c wait_event_timeout(sisusb->wait_q, (i = sisusb_all_free(sisusb)), sisusb 147 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_outurb_available(struct sisusb_usb_data *sisusb) sisusb 151 drivers/usb/misc/sisusbvga/sisusb.c for (i = 0; i < sisusb->numobufs; i++) { sisusb 153 drivers/usb/misc/sisusbvga/sisusb.c if ((sisusb->urbstatus[i] & (SU_URB_BUSY|SU_URB_ALLOC)) == 0) sisusb 161 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_get_free_outbuf(struct sisusb_usb_data *sisusb) sisusb 165 drivers/usb/misc/sisusbvga/sisusb.c wait_event_timeout(sisusb->wait_q, sisusb 166 drivers/usb/misc/sisusbvga/sisusb.c ((i = sisusb_outurb_available(sisusb)) >= 0), timeout); sisusb 171 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_alloc_outbuf(struct sisusb_usb_data *sisusb) sisusb 175 drivers/usb/misc/sisusbvga/sisusb.c i = sisusb_outurb_available(sisusb); sisusb 178 drivers/usb/misc/sisusbvga/sisusb.c sisusb->urbstatus[i] |= SU_URB_ALLOC; sisusb 183 drivers/usb/misc/sisusbvga/sisusb.c static void sisusb_free_outbuf(struct sisusb_usb_data *sisusb, int index) sisusb 185 drivers/usb/misc/sisusbvga/sisusb.c if ((index >= 0) && (index < sisusb->numobufs)) sisusb 186 drivers/usb/misc/sisusbvga/sisusb.c sisusb->urbstatus[index] &= ~SU_URB_ALLOC; sisusb 194 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb; sisusb 199 drivers/usb/misc/sisusbvga/sisusb.c sisusb = context->sisusb; sisusb 201 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb || !sisusb->sisusb_dev || !sisusb->present) sisusb 209 drivers/usb/misc/sisusbvga/sisusb.c sisusb->urbstatus[context->urbindex] &= ~SU_URB_BUSY; sisusb 210 drivers/usb/misc/sisusbvga/sisusb.c wake_up(&sisusb->wait_q); sisusb 213 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_bulkout_msg(struct sisusb_usb_data *sisusb, int index, sisusb 217 drivers/usb/misc/sisusbvga/sisusb.c struct urb *urb = sisusb->sisurbout[index]; sisusb 223 drivers/usb/misc/sisusbvga/sisusb.c usb_fill_bulk_urb(urb, sisusb->sisusb_dev, pipe, data, len, sisusb 225 drivers/usb/misc/sisusbvga/sisusb.c &sisusb->urbout_context[index]); sisusb 231 drivers/usb/misc/sisusbvga/sisusb.c sisusb->urbout_context[index].actual_length = (timeout) ? sisusb 235 drivers/usb/misc/sisusbvga/sisusb.c sisusb->urbstatus[index] |= SU_URB_BUSY; sisusb 242 drivers/usb/misc/sisusbvga/sisusb.c wait_event_timeout(sisusb->wait_q, sisusb 243 drivers/usb/misc/sisusbvga/sisusb.c (!(sisusb->urbstatus[index] & SU_URB_BUSY)), sisusb 245 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->urbstatus[index] & SU_URB_BUSY) { sisusb 268 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb = urb->context; sisusb 270 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb || !sisusb->sisusb_dev || !sisusb->present) sisusb 273 drivers/usb/misc/sisusbvga/sisusb.c sisusb->completein = 1; sisusb 274 drivers/usb/misc/sisusbvga/sisusb.c wake_up(&sisusb->wait_q); sisusb 277 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_bulkin_msg(struct sisusb_usb_data *sisusb, sisusb 281 drivers/usb/misc/sisusbvga/sisusb.c struct urb *urb = sisusb->sisurbin; sisusb 286 drivers/usb/misc/sisusbvga/sisusb.c usb_fill_bulk_urb(urb, sisusb->sisusb_dev, pipe, data, len, sisusb 287 drivers/usb/misc/sisusbvga/sisusb.c sisusb_bulk_completein, sisusb); sisusb 292 drivers/usb/misc/sisusbvga/sisusb.c sisusb->completein = 0; sisusb 295 drivers/usb/misc/sisusbvga/sisusb.c wait_event_timeout(sisusb->wait_q, sisusb->completein, timeout); sisusb 296 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->completein) { sisusb 329 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_send_bulk_msg(struct sisusb_usb_data *sisusb, int ep, int len, sisusb 343 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb || !sisusb->present || !sisusb->sisusb_dev) sisusb 356 drivers/usb/misc/sisusbvga/sisusb.c else if (len > sisusb->obufsize) sisusb 359 drivers/usb/misc/sisusbvga/sisusb.c pipe = usb_sndbulkpipe(sisusb->sisusb_dev, ep); sisusb 362 drivers/usb/misc/sisusbvga/sisusb.c passsize = thispass = (sisusb->obufsize < count) ? sisusb 363 drivers/usb/misc/sisusbvga/sisusb.c sisusb->obufsize : count; sisusb 366 drivers/usb/misc/sisusbvga/sisusb.c index = sisusb_get_free_outbuf(sisusb); sisusb 371 drivers/usb/misc/sisusbvga/sisusb.c buffer = sisusb->obuf[index]; sisusb 390 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->sisusb_dev) sisusb 393 drivers/usb/misc/sisusbvga/sisusb.c result = sisusb_bulkout_msg(sisusb, index, pipe, sisusb 432 drivers/usb/misc/sisusbvga/sisusb.c sisusb_wait_all_out_complete(sisusb); sisusb 450 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_recv_bulk_msg(struct sisusb_usb_data *sisusb, int ep, int len, sisusb 462 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb || !sisusb->present || !sisusb->sisusb_dev) sisusb 465 drivers/usb/misc/sisusbvga/sisusb.c pipe = usb_rcvbulkpipe(sisusb->sisusb_dev, ep); sisusb 466 drivers/usb/misc/sisusbvga/sisusb.c buffer = sisusb->ibuf; sisusb 467 drivers/usb/misc/sisusbvga/sisusb.c bufsize = sisusb->ibufsize; sisusb 472 drivers/usb/misc/sisusbvga/sisusb.c if (!(sisusb_wait_all_out_complete(sisusb))) sisusb 478 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->sisusb_dev) sisusb 483 drivers/usb/misc/sisusbvga/sisusb.c result = sisusb_bulkin_msg(sisusb, pipe, buffer, thispass, sisusb 526 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_send_packet(struct sisusb_usb_data *sisusb, int len, sisusb 537 drivers/usb/misc/sisusbvga/sisusb.c if (!(sisusb_wait_all_out_complete(sisusb))) sisusb 545 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_bulk_msg(sisusb, SISUSB_EP_GFX_OUT, len, sisusb 553 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_recv_bulk_msg(sisusb, SISUSB_EP_GFX_IN, 4, sisusb 562 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_send_bridge_packet(struct sisusb_usb_data *sisusb, int len, sisusb 573 drivers/usb/misc/sisusbvga/sisusb.c if (!(sisusb_wait_all_out_complete(sisusb))) sisusb 581 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_bulk_msg(sisusb, SISUSB_EP_BRIDGE_OUT, len, sisusb 589 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_recv_bulk_msg(sisusb, SISUSB_EP_BRIDGE_IN, 4, sisusb 610 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_write_memio_byte(struct sisusb_usb_data *sisusb, int type, sisusb 618 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_send_packet(sisusb, 10, &packet); sisusb 621 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_write_memio_word(struct sisusb_usb_data *sisusb, int type, sisusb 633 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 638 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 643 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 648 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 652 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 10, &packet); sisusb 658 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_write_memio_24bit(struct sisusb_usb_data *sisusb, int type, sisusb 670 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 675 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 680 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 684 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 10, &packet); sisusb 689 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 693 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 10, &packet); sisusb 699 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_write_memio_long(struct sisusb_usb_data *sisusb, int type, sisusb 711 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 716 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 720 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 10, &packet); sisusb 725 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 729 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 10, &packet); sisusb 734 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 10, &packet); sisusb 738 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 10, &packet); sisusb 754 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_write_mem_bulk(struct sisusb_usb_data *sisusb, u32 addr, sisusb 770 drivers/usb/misc/sisusbvga/sisusb.c kernbuffer = sisusb->obuf[index]; sisusb 785 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_write_memio_byte(sisusb, SISUSB_TYPE_MEM, sisusb 800 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_write_memio_word(sisusb, SISUSB_TYPE_MEM, sisusb 832 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_write_memio_24bit(sisusb, SISUSB_TYPE_MEM, sisusb 847 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_write_memio_long(sisusb, SISUSB_TYPE_MEM, sisusb 860 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_bridge_packet(sisusb, 10, sisusb 865 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, 10, sisusb 870 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, 10, sisusb 873 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bulk_msg(sisusb, sisusb 880 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bulk_msg(sisusb, sisusb 887 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bulk_msg(sisusb, sisusb 893 drivers/usb/misc/sisusbvga/sisusb.c (sisusb->obufsize-1)); sisusb 901 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_bridge_packet(sisusb, 10, sisusb 906 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, 10, sisusb 908 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->flagb0 != 0x16) { sisusb 912 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, sisusb 914 drivers/usb/misc/sisusbvga/sisusb.c sisusb->flagb0 = 0x16; sisusb 917 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bulk_msg(sisusb, sisusb 924 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bulk_msg(sisusb, sisusb 931 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bulk_msg(sisusb, sisusb 937 drivers/usb/misc/sisusbvga/sisusb.c (sisusb->obufsize-1)); sisusb 943 drivers/usb/misc/sisusbvga/sisusb.c dev_err(&sisusb->sisusb_dev->dev, sisusb 948 drivers/usb/misc/sisusbvga/sisusb.c dev_err(&sisusb->sisusb_dev->dev, sisusb 967 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_read_memio_byte(struct sisusb_usb_data *sisusb, int type, sisusb 976 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 981 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_read_memio_word(struct sisusb_usb_data *sisusb, int type, sisusb 994 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 999 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1004 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1009 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1013 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 6, &packet); sisusb 1020 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_read_memio_24bit(struct sisusb_usb_data *sisusb, int type, sisusb 1031 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1036 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1041 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1045 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 6, &packet); sisusb 1050 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1054 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 6, &packet); sisusb 1061 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_read_memio_long(struct sisusb_usb_data *sisusb, int type, sisusb 1072 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1077 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1081 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 6, &packet); sisusb 1086 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1090 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 6, &packet); sisusb 1095 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1099 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_packet(sisusb, 6, &packet); sisusb 1106 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_read_mem_bulk(struct sisusb_usb_data *sisusb, u32 addr, sisusb 1122 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_memio_byte(sisusb, SISUSB_TYPE_MEM, sisusb 1135 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_memio_word(sisusb, SISUSB_TYPE_MEM, sisusb 1149 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_memio_24bit(sisusb, SISUSB_TYPE_MEM, sisusb 1175 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_memio_long(sisusb, SISUSB_TYPE_MEM, sisusb 1202 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_setreg(struct sisusb_usb_data *sisusb, u32 port, u8 data) sisusb 1204 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, port, data); sisusb 1207 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_getreg(struct sisusb_usb_data *sisusb, u32 port, u8 *data) sisusb 1209 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_read_memio_byte(sisusb, SISUSB_TYPE_IO, port, data); sisusb 1213 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_setidxreg(struct sisusb_usb_data *sisusb, u32 port, sisusb 1218 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, port, index); sisusb 1219 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, port + 1, data); sisusb 1223 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_getidxreg(struct sisusb_usb_data *sisusb, u32 port, sisusb 1228 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, port, index); sisusb 1229 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_memio_byte(sisusb, SISUSB_TYPE_IO, port + 1, data); sisusb 1233 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_setidxregandor(struct sisusb_usb_data *sisusb, u32 port, u8 idx, sisusb 1239 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, port, idx); sisusb 1240 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_memio_byte(sisusb, SISUSB_TYPE_IO, port + 1, &tmp); sisusb 1243 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, port + 1, tmp); sisusb 1247 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_setidxregmask(struct sisusb_usb_data *sisusb, sisusb 1253 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, port, idx); sisusb 1254 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_memio_byte(sisusb, SISUSB_TYPE_IO, port + 1, &tmp); sisusb 1257 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, port + 1, tmp); sisusb 1261 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_setidxregor(struct sisusb_usb_data *sisusb, u32 port, sisusb 1264 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_setidxregandor(sisusb, port, index, 0xff, myor); sisusb 1267 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_setidxregand(struct sisusb_usb_data *sisusb, u32 port, sisusb 1270 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_setidxregandor(sisusb, port, idx, myand, 0x00); sisusb 1276 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_writeb(struct sisusb_usb_data *sisusb, u32 adr, u8 data) sisusb 1278 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_write_memio_byte(sisusb, SISUSB_TYPE_MEM, adr, data); sisusb 1281 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_readb(struct sisusb_usb_data *sisusb, u32 adr, u8 *data) sisusb 1283 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_read_memio_byte(sisusb, SISUSB_TYPE_MEM, adr, data); sisusb 1286 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_copy_memory(struct sisusb_usb_data *sisusb, char *src, sisusb 1291 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_write_mem_bulk(sisusb, dest, src, length, sisusb 1296 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_read_memory(struct sisusb_usb_data *sisusb, char *dest, sisusb 1301 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_read_mem_bulk(sisusb, src, dest, length, sisusb 1308 drivers/usb/misc/sisusbvga/sisusb.c static void sisusb_testreadwrite(struct sisusb_usb_data *sisusb) sisusb 1314 drivers/usb/misc/sisusbvga/sisusb.c sisusb_copy_memory(sisusb, srcbuffer, sisusb->vrambase, 7); sisusb 1317 drivers/usb/misc/sisusbvga/sisusb.c dev_dbg(&sisusb->sisusb_dev->dev, sisusb 1319 drivers/usb/misc/sisusbvga/sisusb.c sisusb_read_memory(sisusb, destbuffer, sisusb->vrambase, i); sisusb 1321 drivers/usb/misc/sisusbvga/sisusb.c dev_dbg(&sisusb->sisusb_dev->dev, sisusb 1331 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_write_pci_config(struct sisusb_usb_data *sisusb, sisusb 1339 drivers/usb/misc/sisusbvga/sisusb.c return sisusb_send_packet(sisusb, 10, &packet); sisusb 1342 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_read_pci_config(struct sisusb_usb_data *sisusb, sisusb 1350 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_packet(sisusb, 6, &packet); sisusb 1357 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_clear_vram(struct sisusb_usb_data *sisusb, sisusb 1363 drivers/usb/misc/sisusbvga/sisusb.c if (address < sisusb->vrambase) sisusb 1366 drivers/usb/misc/sisusbvga/sisusb.c if (address >= sisusb->vrambase + sisusb->vramsize) sisusb 1369 drivers/usb/misc/sisusbvga/sisusb.c if (address + length > sisusb->vrambase + sisusb->vramsize) sisusb 1370 drivers/usb/misc/sisusbvga/sisusb.c length = sisusb->vrambase + sisusb->vramsize - address; sisusb 1376 drivers/usb/misc/sisusbvga/sisusb.c i = sisusb_alloc_outbuf(sisusb); sisusb 1380 drivers/usb/misc/sisusbvga/sisusb.c memset(sisusb->obuf[i], 0, sisusb->obufsize); sisusb 1385 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_write_mem_bulk(sisusb, address, NULL, length, NULL, i, &j); sisusb 1388 drivers/usb/misc/sisusbvga/sisusb.c sisusb_free_outbuf(sisusb, i); sisusb 1398 drivers/usb/misc/sisusbvga/sisusb.c #define GETREG(r, d) sisusb_read_memio_byte(sisusb, SISUSB_TYPE_IO, r, d) sisusb 1399 drivers/usb/misc/sisusbvga/sisusb.c #define SETREG(r, d) sisusb_write_memio_byte(sisusb, SISUSB_TYPE_IO, r, d) sisusb 1400 drivers/usb/misc/sisusbvga/sisusb.c #define SETIREG(r, i, d) sisusb_setidxreg(sisusb, r, i, d) sisusb 1401 drivers/usb/misc/sisusbvga/sisusb.c #define GETIREG(r, i, d) sisusb_getidxreg(sisusb, r, i, d) sisusb 1402 drivers/usb/misc/sisusbvga/sisusb.c #define SETIREGOR(r, i, o) sisusb_setidxregor(sisusb, r, i, o) sisusb 1403 drivers/usb/misc/sisusbvga/sisusb.c #define SETIREGAND(r, i, a) sisusb_setidxregand(sisusb, r, i, a) sisusb 1404 drivers/usb/misc/sisusbvga/sisusb.c #define SETIREGANDOR(r, i, a, o) sisusb_setidxregandor(sisusb, r, i, a, o) sisusb 1405 drivers/usb/misc/sisusbvga/sisusb.c #define READL(a, d) sisusb_read_memio_long(sisusb, SISUSB_TYPE_MEM, a, d) sisusb 1406 drivers/usb/misc/sisusbvga/sisusb.c #define WRITEL(a, d) sisusb_write_memio_long(sisusb, SISUSB_TYPE_MEM, a, d) sisusb 1407 drivers/usb/misc/sisusbvga/sisusb.c #define READB(a, d) sisusb_read_memio_byte(sisusb, SISUSB_TYPE_MEM, a, d) sisusb 1408 drivers/usb/misc/sisusbvga/sisusb.c #define WRITEB(a, d) sisusb_write_memio_byte(sisusb, SISUSB_TYPE_MEM, a, d) sisusb 1410 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_triggersr16(struct sisusb_usb_data *sisusb, u8 ramtype) sisusb 1440 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_getbuswidth(struct sisusb_usb_data *sisusb, sisusb 1460 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_triggersr16(sisusb, ramtype); sisusb 1488 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_triggersr16(sisusb, ramtype); sisusb 1524 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_triggersr16(sisusb, ramtype); sisusb 1553 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_verify_mclk(struct sisusb_usb_data *sisusb) sisusb 1581 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_set_rank(struct sisusb_usb_data *sisusb, int *iret, sisusb 1606 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_triggersr16(sisusb, 0); /* sic! */ sisusb 1613 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_check_rbc(struct sisusb_usb_data *sisusb, int *iret, sisusb 1622 drivers/usb/misc/sisusbvga/sisusb.c ret |= WRITEL(sisusb->vrambase + j, j); sisusb 1627 drivers/usb/misc/sisusbvga/sisusb.c ret |= READL(sisusb->vrambase + j, &tmp); sisusb 1638 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_check_ranks(struct sisusb_usb_data *sisusb, sisusb 1649 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_check_rbc(sisusb, &i2ret, inc, 2); sisusb 1655 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_check_rbc(sisusb, &i2ret, inc, 4); sisusb 1660 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_check_rbc(sisusb, &i2ret, inc, 2); sisusb 1668 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_get_sdram_size(struct sisusb_usb_data *sisusb, int *iret, sisusb 1693 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_set_rank(sisusb, &i2ret, i, j, chab, sisusb 1698 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_check_ranks(sisusb, &i2ret, j, i, bw, sisusb 1710 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_setup_screen(struct sisusb_usb_data *sisusb, sisusb 1719 drivers/usb/misc/sisusbvga/sisusb.c address = sisusb->vrambase; /* Clear video ram */ sisusb 1722 drivers/usb/misc/sisusbvga/sisusb.c length = sisusb->vramsize; sisusb 1726 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_clear_vram(sisusb, address, length); sisusb 1730 drivers/usb/misc/sisusbvga/sisusb.c address = sisusb->vrambase + (i * bpp); sisusb 1731 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_memio_word(sisusb, SISUSB_TYPE_MEM, sisusb 1734 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_memio_word(sisusb, SISUSB_TYPE_MEM, sisusb 1738 drivers/usb/misc/sisusbvga/sisusb.c address = sisusb->vrambase + ((i * modex) * bpp); sisusb 1739 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_memio_word(sisusb, SISUSB_TYPE_MEM, sisusb 1742 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_memio_word(sisusb, SISUSB_TYPE_MEM, sisusb 1750 drivers/usb/misc/sisusbvga/sisusb.c static void sisusb_set_default_mode(struct sisusb_usb_data *sisusb, sisusb 1878 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_init_gfxcore(struct sisusb_usb_data *sisusb) sisusb 2003 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x50, &tmp32); sisusb 2020 drivers/usb/misc/sisusbvga/sisusb.c sisusb_set_default_mode(sisusb, 0); sisusb 2026 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_triggersr16(sisusb, ramtype); sisusb 2032 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_getbuswidth(sisusb, &bw, &chab); sisusb 2033 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_verify_mclk(sisusb); sisusb 2036 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_get_sdram_size(sisusb, &iret, bw, chab); sisusb 2038 drivers/usb/misc/sisusbvga/sisusb.c dev_err(&sisusb->sisusb_dev->dev, sisusb 2044 drivers/usb/misc/sisusbvga/sisusb.c dev_err(&sisusb->sisusb_dev->dev, sisusb 2077 drivers/usb/misc/sisusbvga/sisusb.c static void sisusb_get_ramconfig(struct sisusb_usb_data *sisusb) sisusb 2088 drivers/usb/misc/sisusbvga/sisusb.c sisusb_getidxreg(sisusb, SISSR, 0x14, &tmp8); sisusb 2089 drivers/usb/misc/sisusbvga/sisusb.c sisusb_getidxreg(sisusb, SISSR, 0x15, &tmp82); sisusb 2090 drivers/usb/misc/sisusbvga/sisusb.c sisusb_getidxreg(sisusb, SISSR, 0x3a, &ramtype); sisusb 2091 drivers/usb/misc/sisusbvga/sisusb.c sisusb->vramsize = (1 << ((tmp8 & 0xf0) >> 4)) * 1024 * 1024; sisusb 2104 drivers/usb/misc/sisusbvga/sisusb.c sisusb->vramsize <<= 1; sisusb 2109 drivers/usb/misc/sisusbvga/sisusb.c sisusb->vramsize += sisusb->vramsize/2; sisusb 2114 drivers/usb/misc/sisusbvga/sisusb.c sisusb->vramsize <<= 1; sisusb 2119 drivers/usb/misc/sisusbvga/sisusb.c dev_info(&sisusb->sisusb_dev->dev, sisusb 2121 drivers/usb/misc/sisusbvga/sisusb.c sisusb->vramsize >> 20, ramtypetext1, sisusb 2125 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_do_init_gfxdevice(struct sisusb_usb_data *sisusb) sisusb 2135 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusb_send_bridge_packet(sisusb, 10, &packet, 0); sisusb 2140 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, 10, &packet, 0); sisusb 2145 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, 10, &packet, 0); sisusb 2150 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, 10, &packet, 0); sisusb 2154 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, 6, &packet, 0); sisusb 2156 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, 10, &packet, 0); sisusb 2159 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x10, &tmp32); sisusb 2160 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_pci_config(sisusb, 0x10, 0xfffffff0); sisusb 2161 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x10, &tmp32); sisusb 2164 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_pci_config(sisusb, 0x10, tmp32); sisusb 2167 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x14, &tmp32); sisusb 2168 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_pci_config(sisusb, 0x14, 0xfffffff0); sisusb 2169 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x14, &tmp32); sisusb 2172 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_pci_config(sisusb, 0x14, tmp32); sisusb 2175 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x18, &tmp32); sisusb 2176 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_pci_config(sisusb, 0x18, 0xfffffff0); sisusb 2177 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x18, &tmp32); sisusb 2180 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_pci_config(sisusb, 0x18, tmp32); sisusb 2183 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x04, &tmp32); sisusb 2185 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_write_pci_config(sisusb, 0x04, tmp32); sisusb 2192 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_send_bridge_packet(sisusb, 10, &packet, 0); sisusb 2203 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_init_gfxdevice(struct sisusb_usb_data *sisusb, int initscreen) sisusb 2208 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->devinit == 1) { sisusb 2210 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x10, &tmp32); sisusb 2217 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x14, &tmp32); sisusb 2224 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_read_pci_config(sisusb, 0x18, &tmp32); sisusb 2233 drivers/usb/misc/sisusbvga/sisusb.c if ((sisusb->devinit == 0) || (test != 3)) { sisusb 2235 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_do_init_gfxdevice(sisusb); sisusb 2238 drivers/usb/misc/sisusbvga/sisusb.c sisusb->devinit = 1; sisusb 2242 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->devinit) { sisusb 2244 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb_init_gfxcore(sisusb) == 0) { sisusb 2245 drivers/usb/misc/sisusbvga/sisusb.c sisusb->gfxinit = 1; sisusb 2246 drivers/usb/misc/sisusbvga/sisusb.c sisusb_get_ramconfig(sisusb); sisusb 2247 drivers/usb/misc/sisusbvga/sisusb.c sisusb_set_default_mode(sisusb, 1); sisusb 2248 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_setup_screen(sisusb, 1, initscreen); sisusb 2264 drivers/usb/misc/sisusbvga/sisusb.c int sisusb_reset_text_mode(struct sisusb_usb_data *sisusb, int init) sisusb 2266 drivers/usb/misc/sisusbvga/sisusb.c int ret = 0, slot = sisusb->font_slot, i; sisusb 2276 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->SiS_Pr) sisusb 2279 drivers/usb/misc/sisusbvga/sisusb.c sisusb->SiS_Pr->IOAddress = SISUSB_PCI_IOPORTBASE + 0x30; sisusb 2280 drivers/usb/misc/sisusbvga/sisusb.c sisusb->SiS_Pr->sisusb = (void *)sisusb; sisusb 2283 drivers/usb/misc/sisusbvga/sisusb.c SiSUSBSetMode(sisusb->SiS_Pr, 0x03); sisusb 2297 drivers/usb/misc/sisusbvga/sisusb.c ret = sisusbcon_do_font_op(sisusb, 1, 0, tempbuf, 8192, sisusb 2303 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->font_backup) { sisusb 2304 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusbcon_do_font_op(sisusb, 1, 2, sisusb->font_backup, sisusb 2305 drivers/usb/misc/sisusbvga/sisusb.c 8192, sisusb->font_backup_512, 1, NULL, sisusb 2306 drivers/usb/misc/sisusbvga/sisusb.c sisusb->font_backup_height, 0); sisusb 2308 drivers/usb/misc/sisusbvga/sisusb.c sisusbcon_do_font_op(sisusb, 1, 0, NULL, 0, 0, 1, sisusb 2312 drivers/usb/misc/sisusbvga/sisusb.c if (init && !sisusb->scrbuf) { sisusb 2335 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_copy_memory(sisusb, tempbuf, sisusb 2336 drivers/usb/misc/sisusbvga/sisusb.c sisusb->vrambase, 8192); sisusb 2342 drivers/usb/misc/sisusbvga/sisusb.c } else if (sisusb->scrbuf) { sisusb 2343 drivers/usb/misc/sisusbvga/sisusb.c ret |= sisusb_copy_memory(sisusb, (char *)sisusb->scrbuf, sisusb 2344 drivers/usb/misc/sisusbvga/sisusb.c sisusb->vrambase, sisusb->scrbuf_size); sisusb 2347 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->sisusb_cursor_size_from >= 0 && sisusb 2348 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisusb_cursor_size_to >= 0) { sisusb 2349 drivers/usb/misc/sisusbvga/sisusb.c sisusb_setidxreg(sisusb, SISCR, 0x0a, sisusb 2350 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisusb_cursor_size_from); sisusb 2351 drivers/usb/misc/sisusbvga/sisusb.c sisusb_setidxregandor(sisusb, SISCR, 0x0b, 0xe0, sisusb 2352 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisusb_cursor_size_to); sisusb 2354 drivers/usb/misc/sisusbvga/sisusb.c sisusb_setidxreg(sisusb, SISCR, 0x0a, 0x2d); sisusb 2355 drivers/usb/misc/sisusbvga/sisusb.c sisusb_setidxreg(sisusb, SISCR, 0x0b, 0x0e); sisusb 2356 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisusb_cursor_size_to = -1; sisusb 2359 drivers/usb/misc/sisusbvga/sisusb.c slot = sisusb->sisusb_cursor_loc; sisusb 2363 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisusb_cursor_loc = -1; sisusb 2364 drivers/usb/misc/sisusbvga/sisusb.c sisusb->bad_cursor_pos = 1; sisusb 2366 drivers/usb/misc/sisusbvga/sisusb.c sisusb_set_cursor(sisusb, slot); sisusb 2368 drivers/usb/misc/sisusbvga/sisusb.c sisusb_setidxreg(sisusb, SISCR, 0x0c, (sisusb->cur_start_addr >> 8)); sisusb 2369 drivers/usb/misc/sisusbvga/sisusb.c sisusb_setidxreg(sisusb, SISCR, 0x0d, (sisusb->cur_start_addr & 0xff)); sisusb 2371 drivers/usb/misc/sisusbvga/sisusb.c sisusb->textmodedestroyed = 0; sisusb 2384 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb; sisusb 2392 drivers/usb/misc/sisusbvga/sisusb.c sisusb = usb_get_intfdata(interface); sisusb 2393 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb) sisusb 2396 drivers/usb/misc/sisusbvga/sisusb.c mutex_lock(&sisusb->lock); sisusb 2398 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->present || !sisusb->ready) { sisusb 2399 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2403 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->isopen) { sisusb 2404 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2408 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->devinit) { sisusb 2409 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->sisusb_dev->speed == USB_SPEED_HIGH || sisusb 2410 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisusb_dev->speed >= USB_SPEED_SUPER) { sisusb 2411 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb_init_gfxdevice(sisusb, 0)) { sisusb 2412 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2413 drivers/usb/misc/sisusbvga/sisusb.c dev_err(&sisusb->sisusb_dev->dev, sisusb 2418 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2419 drivers/usb/misc/sisusbvga/sisusb.c dev_err(&sisusb->sisusb_dev->dev, sisusb 2426 drivers/usb/misc/sisusbvga/sisusb.c kref_get(&sisusb->kref); sisusb 2428 drivers/usb/misc/sisusbvga/sisusb.c sisusb->isopen = 1; sisusb 2430 drivers/usb/misc/sisusbvga/sisusb.c file->private_data = sisusb; sisusb 2432 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2439 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb = to_sisusb_dev(kref); sisusb 2441 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb) sisusb 2444 drivers/usb/misc/sisusbvga/sisusb.c usb_put_dev(sisusb->sisusb_dev); sisusb 2446 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisusb_dev = NULL; sisusb 2447 drivers/usb/misc/sisusbvga/sisusb.c sisusb_free_buffers(sisusb); sisusb 2448 drivers/usb/misc/sisusbvga/sisusb.c sisusb_free_urbs(sisusb); sisusb 2450 drivers/usb/misc/sisusbvga/sisusb.c kfree(sisusb->SiS_Pr); sisusb 2452 drivers/usb/misc/sisusbvga/sisusb.c kfree(sisusb); sisusb 2457 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb; sisusb 2459 drivers/usb/misc/sisusbvga/sisusb.c sisusb = file->private_data; sisusb 2460 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb) sisusb 2463 drivers/usb/misc/sisusbvga/sisusb.c mutex_lock(&sisusb->lock); sisusb 2465 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb->present) { sisusb 2467 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb_wait_all_out_complete(sisusb)) sisusb 2468 drivers/usb/misc/sisusbvga/sisusb.c sisusb_kill_all_busy(sisusb); sisusb 2471 drivers/usb/misc/sisusbvga/sisusb.c sisusb->isopen = 0; sisusb 2474 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2477 drivers/usb/misc/sisusbvga/sisusb.c kref_put(&sisusb->kref, sisusb_delete); sisusb 2485 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb; sisusb 2492 drivers/usb/misc/sisusbvga/sisusb.c sisusb = file->private_data; sisusb 2493 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb) sisusb 2496 drivers/usb/misc/sisusbvga/sisusb.c mutex_lock(&sisusb->lock); sisusb 2499 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->present || !sisusb->ready || !sisusb->sisusb_dev) { sisusb 2500 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2517 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb_read_memio_byte(sisusb, SISUSB_TYPE_IO, sisusb 2528 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb_read_memio_word(sisusb, SISUSB_TYPE_IO, sisusb 2539 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb_read_memio_long(sisusb, SISUSB_TYPE_IO, sisusb 2555 drivers/usb/misc/sisusbvga/sisusb.c SISUSB_PCI_PSEUDO_MEMBASE + sisusb->vramsize) { sisusb 2563 drivers/usb/misc/sisusbvga/sisusb.c errno = sisusb_read_mem_bulk(sisusb, address, sisusb 2579 drivers/usb/misc/sisusbvga/sisusb.c errno = sisusb_read_mem_bulk(sisusb, address, sisusb 2589 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2598 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb_read_pci_config(sisusb, address, &buf32)) sisusb 2613 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2621 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb; sisusb 2628 drivers/usb/misc/sisusbvga/sisusb.c sisusb = file->private_data; sisusb 2629 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb) sisusb 2632 drivers/usb/misc/sisusbvga/sisusb.c mutex_lock(&sisusb->lock); sisusb 2635 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->present || !sisusb->ready || !sisusb->sisusb_dev) { sisusb 2636 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2655 drivers/usb/misc/sisusbvga/sisusb.c else if (sisusb_write_memio_byte(sisusb, sisusb 2666 drivers/usb/misc/sisusbvga/sisusb.c else if (sisusb_write_memio_word(sisusb, sisusb 2677 drivers/usb/misc/sisusbvga/sisusb.c else if (sisusb_write_memio_long(sisusb, sisusb 2691 drivers/usb/misc/sisusbvga/sisusb.c sisusb->vramsize) { sisusb 2702 drivers/usb/misc/sisusbvga/sisusb.c errno = sisusb_write_mem_bulk(sisusb, address, NULL, sisusb 2720 drivers/usb/misc/sisusbvga/sisusb.c errno = sisusb_write_mem_bulk(sisusb, address, NULL, sisusb 2731 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2742 drivers/usb/misc/sisusbvga/sisusb.c else if (sisusb_write_pci_config(sisusb, address, buf32)) sisusb 2757 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2764 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb; sisusb 2767 drivers/usb/misc/sisusbvga/sisusb.c sisusb = file->private_data; sisusb 2768 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb) sisusb 2771 drivers/usb/misc/sisusbvga/sisusb.c mutex_lock(&sisusb->lock); sisusb 2774 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->present || !sisusb->ready || !sisusb->sisusb_dev) { sisusb 2775 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2781 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 2785 drivers/usb/misc/sisusbvga/sisusb.c static int sisusb_handle_command(struct sisusb_usb_data *sisusb, sisusb 2794 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->devinit) sisusb 2803 drivers/usb/misc/sisusbvga/sisusb.c retval = sisusb_getidxreg(sisusb, port, y->data0, &y->data1); sisusb 2811 drivers/usb/misc/sisusbvga/sisusb.c retval = sisusb_setidxreg(sisusb, port, y->data0, y->data1); sisusb 2815 drivers/usb/misc/sisusbvga/sisusb.c retval = sisusb_setidxregor(sisusb, port, y->data0, y->data1); sisusb 2819 drivers/usb/misc/sisusbvga/sisusb.c retval = sisusb_setidxregand(sisusb, port, y->data0, y->data1); sisusb 2823 drivers/usb/misc/sisusbvga/sisusb.c retval = sisusb_setidxregandor(sisusb, port, y->data0, sisusb 2828 drivers/usb/misc/sisusbvga/sisusb.c retval = sisusb_setidxregmask(sisusb, port, y->data0, sisusb 2834 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->gfxinit) sisusb 2840 drivers/usb/misc/sisusbvga/sisusb.c retval = sisusb_clear_vram(sisusb, address, length); sisusb 2847 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->gfxinit || !sisusb->SiS_Pr) sisusb 2852 drivers/usb/misc/sisusbvga/sisusb.c retval = sisusb_reset_text_mode(sisusb, 0); sisusb 2855 drivers/usb/misc/sisusbvga/sisusb.c sisusb->textmodedestroyed = 1; sisusb 2864 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->gfxinit || !sisusb->SiS_Pr) sisusb 2869 drivers/usb/misc/sisusbvga/sisusb.c sisusb->SiS_Pr->IOAddress = SISUSB_PCI_IOPORTBASE + 0x30; sisusb 2870 drivers/usb/misc/sisusbvga/sisusb.c sisusb->SiS_Pr->sisusb = (void *)sisusb; sisusb 2872 drivers/usb/misc/sisusbvga/sisusb.c if (SiSUSBSetMode(sisusb->SiS_Pr, y->data3)) sisusb 2879 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->gfxinit || !sisusb->SiS_Pr) sisusb 2884 drivers/usb/misc/sisusbvga/sisusb.c sisusb->SiS_Pr->IOAddress = SISUSB_PCI_IOPORTBASE + 0x30; sisusb 2885 drivers/usb/misc/sisusbvga/sisusb.c sisusb->SiS_Pr->sisusb = (void *)sisusb; sisusb 2887 drivers/usb/misc/sisusbvga/sisusb.c if (SiSUSBSetVESAMode(sisusb->SiS_Pr, y->data3)) sisusb 2905 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb; sisusb 2911 drivers/usb/misc/sisusbvga/sisusb.c sisusb = file->private_data; sisusb 2912 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb) sisusb 2915 drivers/usb/misc/sisusbvga/sisusb.c mutex_lock(&sisusb->lock); sisusb 2918 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->present || !sisusb->ready || !sisusb->sisusb_dev) { sisusb 2937 drivers/usb/misc/sisusbvga/sisusb.c x.sisusb_gfxinit = sisusb->gfxinit; sisusb 2942 drivers/usb/misc/sisusbvga/sisusb.c x.sisusb_vramsize = sisusb->vramsize; sisusb 2943 drivers/usb/misc/sisusbvga/sisusb.c x.sisusb_minor = sisusb->minor; sisusb 2946 drivers/usb/misc/sisusbvga/sisusb.c x.sisusb_conactive = sisusb->haveconsole ? 1 : 0; sisusb 2962 drivers/usb/misc/sisusbvga/sisusb.c retval = sisusb_handle_command(sisusb, &y, arg); sisusb 2972 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 3015 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb; sisusb 3022 drivers/usb/misc/sisusbvga/sisusb.c sisusb = kzalloc(sizeof(*sisusb), GFP_KERNEL); sisusb 3023 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb) sisusb 3026 drivers/usb/misc/sisusbvga/sisusb.c kref_init(&sisusb->kref); sisusb 3028 drivers/usb/misc/sisusbvga/sisusb.c mutex_init(&(sisusb->lock)); sisusb 3030 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisusb_dev = dev; sisusb 3031 drivers/usb/misc/sisusbvga/sisusb.c sisusb->vrambase = SISUSB_PCI_MEMBASE; sisusb 3032 drivers/usb/misc/sisusbvga/sisusb.c sisusb->mmiobase = SISUSB_PCI_MMIOBASE; sisusb 3033 drivers/usb/misc/sisusbvga/sisusb.c sisusb->mmiosize = SISUSB_PCI_MMIOSIZE; sisusb 3034 drivers/usb/misc/sisusbvga/sisusb.c sisusb->ioportbase = SISUSB_PCI_IOPORTBASE; sisusb 3040 drivers/usb/misc/sisusbvga/sisusb.c dev_err(&sisusb->sisusb_dev->dev, sisusb 3047 drivers/usb/misc/sisusbvga/sisusb.c sisusb->minor = intf->minor; sisusb 3050 drivers/usb/misc/sisusbvga/sisusb.c sisusb->ibufsize = SISUSB_IBUF_SIZE; sisusb 3051 drivers/usb/misc/sisusbvga/sisusb.c sisusb->ibuf = kmalloc(SISUSB_IBUF_SIZE, GFP_KERNEL); sisusb 3052 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->ibuf) { sisusb 3057 drivers/usb/misc/sisusbvga/sisusb.c sisusb->numobufs = 0; sisusb 3058 drivers/usb/misc/sisusbvga/sisusb.c sisusb->obufsize = SISUSB_OBUF_SIZE; sisusb 3060 drivers/usb/misc/sisusbvga/sisusb.c sisusb->obuf[i] = kmalloc(SISUSB_OBUF_SIZE, GFP_KERNEL); sisusb 3061 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->obuf[i]) { sisusb 3068 drivers/usb/misc/sisusbvga/sisusb.c sisusb->numobufs++; sisusb 3072 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisurbin = usb_alloc_urb(0, GFP_KERNEL); sisusb 3073 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->sisurbin) { sisusb 3077 drivers/usb/misc/sisusbvga/sisusb.c sisusb->completein = 1; sisusb 3079 drivers/usb/misc/sisusbvga/sisusb.c for (i = 0; i < sisusb->numobufs; i++) { sisusb 3080 drivers/usb/misc/sisusbvga/sisusb.c sisusb->sisurbout[i] = usb_alloc_urb(0, GFP_KERNEL); sisusb 3081 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->sisurbout[i]) { sisusb 3085 drivers/usb/misc/sisusbvga/sisusb.c sisusb->urbout_context[i].sisusb = (void *)sisusb; sisusb 3086 drivers/usb/misc/sisusbvga/sisusb.c sisusb->urbout_context[i].urbindex = i; sisusb 3087 drivers/usb/misc/sisusbvga/sisusb.c sisusb->urbstatus[i] = 0; sisusb 3090 drivers/usb/misc/sisusbvga/sisusb.c dev_info(&sisusb->sisusb_dev->dev, "Allocated %d output buffers\n", sisusb 3091 drivers/usb/misc/sisusbvga/sisusb.c sisusb->numobufs); sisusb 3095 drivers/usb/misc/sisusbvga/sisusb.c sisusb->SiS_Pr = kmalloc(sizeof(struct SiS_Private), GFP_KERNEL); sisusb 3096 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb->SiS_Pr) { sisusb 3104 drivers/usb/misc/sisusbvga/sisusb.c init_waitqueue_head(&sisusb->wait_q); sisusb 3106 drivers/usb/misc/sisusbvga/sisusb.c usb_set_intfdata(intf, sisusb); sisusb 3108 drivers/usb/misc/sisusbvga/sisusb.c usb_get_dev(sisusb->sisusb_dev); sisusb 3110 drivers/usb/misc/sisusbvga/sisusb.c sisusb->present = 1; sisusb 3120 drivers/usb/misc/sisusbvga/sisusb.c if (sisusb_init_gfxdevice(sisusb, initscreen)) sisusb 3121 drivers/usb/misc/sisusbvga/sisusb.c dev_err(&sisusb->sisusb_dev->dev, sisusb 3125 drivers/usb/misc/sisusbvga/sisusb.c dev_info(&sisusb->sisusb_dev->dev, sisusb 3128 drivers/usb/misc/sisusbvga/sisusb.c sisusb->ready = 1; sisusb 3131 drivers/usb/misc/sisusbvga/sisusb.c dev_dbg(&sisusb->sisusb_dev->dev, "*** RWTEST ***\n"); sisusb 3132 drivers/usb/misc/sisusbvga/sisusb.c sisusb_testreadwrite(sisusb); sisusb 3133 drivers/usb/misc/sisusbvga/sisusb.c dev_dbg(&sisusb->sisusb_dev->dev, "*** RWTEST END ***\n"); sisusb 3137 drivers/usb/misc/sisusbvga/sisusb.c sisusb_console_init(sisusb, sisusb_first_vc, sisusb_last_vc); sisusb 3143 drivers/usb/misc/sisusbvga/sisusb.c sisusb_free_urbs(sisusb); sisusb 3145 drivers/usb/misc/sisusbvga/sisusb.c sisusb_free_buffers(sisusb); sisusb 3149 drivers/usb/misc/sisusbvga/sisusb.c kfree(sisusb); sisusb 3155 drivers/usb/misc/sisusbvga/sisusb.c struct sisusb_usb_data *sisusb; sisusb 3158 drivers/usb/misc/sisusbvga/sisusb.c sisusb = usb_get_intfdata(intf); sisusb 3159 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb) sisusb 3163 drivers/usb/misc/sisusbvga/sisusb.c sisusb_console_exit(sisusb); sisusb 3168 drivers/usb/misc/sisusbvga/sisusb.c mutex_lock(&sisusb->lock); sisusb 3171 drivers/usb/misc/sisusbvga/sisusb.c if (!sisusb_wait_all_out_complete(sisusb)) sisusb 3172 drivers/usb/misc/sisusbvga/sisusb.c sisusb_kill_all_busy(sisusb); sisusb 3176 drivers/usb/misc/sisusbvga/sisusb.c sisusb->present = 0; sisusb 3177 drivers/usb/misc/sisusbvga/sisusb.c sisusb->ready = 0; sisusb 3179 drivers/usb/misc/sisusbvga/sisusb.c mutex_unlock(&sisusb->lock); sisusb 3182 drivers/usb/misc/sisusbvga/sisusb.c kref_put(&sisusb->kref, sisusb_delete); sisusb 95 drivers/usb/misc/sisusbvga/sisusb.h struct sisusb_usb_data *sisusb; sisusb 86 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_initialize(struct sisusb_usb_data *sisusb) sisusb 89 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setidxreg(sisusb, SISCR, 0x0c, 0x00)) sisusb 91 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setidxreg(sisusb, SISCR, 0x0d, 0x00)) sisusb 93 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setidxreg(sisusb, SISCR, 0x0e, 0x00)) sisusb 95 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxreg(sisusb, SISCR, 0x0f, 0x00); sisusb 99 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_set_start_address(struct sisusb_usb_data *sisusb, struct vc_data *c) sisusb 101 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->cur_start_addr = (c->vc_visible_origin - sisusb->scrbuf) / 2; sisusb 103 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxreg(sisusb, SISCR, 0x0c, (sisusb->cur_start_addr >> 8)); sisusb 104 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxreg(sisusb, SISCR, 0x0d, (sisusb->cur_start_addr & 0xff)); sisusb 108 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_set_cursor(struct sisusb_usb_data *sisusb, unsigned int location) sisusb 110 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->sisusb_cursor_loc == location) sisusb 113 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_loc = location; sisusb 121 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->bad_cursor_pos = 1; sisusb 123 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setidxregandor(sisusb, SISCR, 0x0b, 0x1f, 0x20)) sisusb 125 drivers/usb/misc/sisusbvga/sisusb_con.c } else if (sisusb->bad_cursor_pos) { sisusb 126 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setidxregand(sisusb, SISCR, 0x0b, 0x1f)) sisusb 128 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->bad_cursor_pos = 0; sisusb 131 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setidxreg(sisusb, SISCR, 0x0e, (location >> 8))) sisusb 133 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxreg(sisusb, SISCR, 0x0f, (location & 0xff)); sisusb 143 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_sisusb_valid(struct sisusb_usb_data *sisusb) sisusb 145 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb->present || !sisusb->ready || !sisusb->sisusb_dev) sisusb 154 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 164 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb(console); sisusb 165 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 168 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_lock(&sisusb->lock); sisusb 170 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb_sisusb_valid(sisusb) || sisusb 171 drivers/usb/misc/sisusbvga/sisusb_con.c !sisusb->havethisconsole[console]) { sisusb 172 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 176 drivers/usb/misc/sisusbvga/sisusb_con.c return sisusb; sisusb 180 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_is_inactive(struct vc_data *c, struct sisusb_usb_data *sisusb) sisusb 182 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->is_gfx || sisusb 183 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->textmodedestroyed || sisusb 201 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 210 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb(c->vc_num); sisusb 211 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 214 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_lock(&sisusb->lock); sisusb 216 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb_sisusb_valid(sisusb)) { sisusb 217 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 225 drivers/usb/misc/sisusbvga/sisusb_con.c c->vc_hi_font_mask = sisusb->current_font_512 ? 0x0800 : 0; sisusb 227 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->haveconsole = 1; sisusb 229 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->havethisconsole[c->vc_num] = 1; sisusb 234 drivers/usb/misc/sisusbvga/sisusb_con.c c->vc_font.height = sisusb->current_font_height; sisusb 249 drivers/usb/misc/sisusbvga/sisusb_con.c kref_get(&sisusb->kref); sisusb 254 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 267 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 274 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb(c->vc_num); sisusb 275 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 278 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_lock(&sisusb->lock); sisusb 283 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->havethisconsole[c->vc_num] = 0; sisusb 286 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->font_backup) { sisusb 288 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->havethisconsole[c->vc_num]) sisusb 292 drivers/usb/misc/sisusbvga/sisusb_con.c vfree(sisusb->font_backup); sisusb 293 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->font_backup = NULL; sisusb 297 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 300 drivers/usb/misc/sisusbvga/sisusb_con.c kref_put(&sisusb->kref, sisusb_delete); sisusb 348 drivers/usb/misc/sisusbvga/sisusb_con.c static inline void *sisusb_vaddr(const struct sisusb_usb_data *sisusb, sisusb 351 drivers/usb/misc/sisusbvga/sisusb_con.c return (u16 *)c->vc_origin + y * sisusb->sisusb_num_columns + x; sisusb 354 drivers/usb/misc/sisusbvga/sisusb_con.c static inline unsigned long sisusb_haddr(const struct sisusb_usb_data *sisusb, sisusb 357 drivers/usb/misc/sisusbvga/sisusb_con.c unsigned long offset = c->vc_origin - sisusb->scrbuf; sisusb 360 drivers/usb/misc/sisusbvga/sisusb_con.c offset += 2 * (y * sisusb->sisusb_num_columns + x); sisusb 362 drivers/usb/misc/sisusbvga/sisusb_con.c return sisusb->vrambase + offset; sisusb 369 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 371 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 372 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 376 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 377 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 381 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_copy_memory(sisusb, sisusb_vaddr(sisusb, c, x, y), sisusb 382 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_haddr(sisusb, c, x, y), 2); sisusb 384 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 392 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 394 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 395 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 404 drivers/usb/misc/sisusbvga/sisusb_con.c memcpy(sisusb_vaddr(sisusb, c, x, y), s, count * 2); sisusb 406 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 407 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 411 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_copy_memory(sisusb, sisusb_vaddr(sisusb, c, x, y), sisusb 412 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_haddr(sisusb, c, x, y), count * 2); sisusb 414 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 421 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 429 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 430 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 439 drivers/usb/misc/sisusbvga/sisusb_con.c dest = sisusb_vaddr(sisusb, c, x, y); sisusb 441 drivers/usb/misc/sisusbvga/sisusb_con.c cols = sisusb->sisusb_num_columns; sisusb 457 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 458 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 465 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_copy_memory(sisusb, sisusb_vaddr(sisusb, c, x, y), sisusb 466 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_haddr(sisusb, c, x, y), length); sisusb 468 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 475 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 483 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 484 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 490 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 491 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 500 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 501 drivers/usb/misc/sisusbvga/sisusb_con.c dev_dbg(&sisusb->sisusb_dev->dev, "ASSERT ORIGIN != SCREENBUF!\n"); sisusb 507 drivers/usb/misc/sisusbvga/sisusb_con.c (int)(sisusb->scrbuf + sisusb->scrbuf_size - c->vc_origin)); sisusb 512 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_copy_memory(sisusb, (char *)c->vc_origin, sisusb 513 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_haddr(sisusb, c, 0, 0), length); sisusb 515 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 524 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 531 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 532 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 537 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 538 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 544 drivers/usb/misc/sisusbvga/sisusb_con.c (int)(sisusb->scrbuf + sisusb->scrbuf_size - c->vc_origin)); sisusb 549 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 556 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 564 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 565 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 570 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 571 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 576 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setreg(sisusb, SISCOLIDX, table[i])) sisusb 578 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setreg(sisusb, SISCOLDATA, c->vc_palette[j++] >> 2)) sisusb 580 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setreg(sisusb, SISCOLDATA, c->vc_palette[j++] >> 2)) sisusb 582 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_setreg(sisusb, SISCOLDATA, c->vc_palette[j++] >> 2)) sisusb 586 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 593 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 597 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 598 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 604 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->is_gfx = blank ? 1 : 0; sisusb 606 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 607 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 618 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_copy_memory(sisusb, (char *)c->vc_origin, sisusb 619 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_haddr(sisusb, c, 0, 0), sisusb 621 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->con_blanked = 1; sisusb 633 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->con_blanked = 0; sisusb 654 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 658 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxregandor(sisusb, SISSR, 0x01, ~0x20, sr1); sisusb 659 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxregandor(sisusb, SISCR, 0x17, 0x7f, cr17); sisusb 660 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxregandor(sisusb, SISSR, 0x1f, 0x3f, pmreg); sisusb 661 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxregandor(sisusb, SISCR, 0x63, 0xbf, cr63); sisusb 665 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 674 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 676 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 677 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 682 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 683 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 687 drivers/usb/misc/sisusbvga/sisusb_con.c vc_scrolldelta_helper(c, lines, sisusb->con_rolled_over, sisusb 688 drivers/usb/misc/sisusbvga/sisusb_con.c (void *)sisusb->scrbuf, sisusb->scrbuf_size); sisusb 690 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_set_start_address(sisusb, c); sisusb 692 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 699 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 702 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 703 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 708 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 709 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 715 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_set_start_address(sisusb, c); sisusb 719 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxregor(sisusb, SISCR, 0x0a, 0x20); sisusb 720 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_size_to = -1; sisusb 721 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 725 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_set_cursor(sisusb, (c->vc_pos - sisusb->scrbuf) / 2); sisusb 751 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->sisusb_cursor_size_from != from || sisusb 752 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_size_to != to) { sisusb 754 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxreg(sisusb, SISCR, 0x0a, from); sisusb 755 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxregandor(sisusb, SISCR, 0x0b, 0xe0, to); sisusb 757 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_size_from = from; sisusb 758 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_size_to = to; sisusb 761 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 765 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_scroll_area(struct vc_data *c, struct sisusb_usb_data *sisusb, sisusb 769 drivers/usb/misc/sisusbvga/sisusb_con.c int cols = sisusb->sisusb_num_columns; sisusb 784 drivers/usb/misc/sisusbvga/sisusb_con.c memmove(sisusb_vaddr(sisusb, c, 0, t), sisusb 785 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_vaddr(sisusb, c, 0, t + lines), sisusb 787 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_memsetw(sisusb_vaddr(sisusb, c, 0, b - lines), sisusb 792 drivers/usb/misc/sisusbvga/sisusb_con.c memmove(sisusb_vaddr(sisusb, c, 0, t + lines), sisusb 793 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_vaddr(sisusb, c, 0, t), sisusb 795 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_memsetw(sisusb_vaddr(sisusb, c, 0, t), eattr, sisusb 800 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_copy_memory(sisusb, sisusb_vaddr(sisusb, c, 0, t), sisusb 801 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_haddr(sisusb, c, 0, t), length); sisusb 803 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 813 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 829 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 830 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 835 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb)) { sisusb 836 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 842 drivers/usb/misc/sisusbvga/sisusb_con.c return sisusbcon_scroll_area(c, sisusb, t, b, dir, lines); sisusb 846 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_set_start_address(sisusb, c); sisusb 860 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->scrbuf + sisusb->scrbuf_size) { sisusb 861 drivers/usb/misc/sisusbvga/sisusb_con.c memcpy((u16 *)sisusb->scrbuf, sisusb 864 drivers/usb/misc/sisusbvga/sisusb_con.c c->vc_origin = sisusb->scrbuf; sisusb 865 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->con_rolled_over = oldorigin - sisusb->scrbuf; sisusb 878 drivers/usb/misc/sisusbvga/sisusb_con.c if (oldorigin - delta < sisusb->scrbuf) { sisusb 879 drivers/usb/misc/sisusbvga/sisusb_con.c memmove((void *)sisusb->scrbuf + sisusb->scrbuf_size - sisusb 883 drivers/usb/misc/sisusbvga/sisusb_con.c c->vc_origin = sisusb->scrbuf + sisusb 884 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->scrbuf_size - sisusb 886 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->con_rolled_over = 0; sisusb 899 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_copy_memory(sisusb, sisusb 901 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_haddr(sisusb, c, 0, 0), sisusb 904 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_copy_memory(sisusb, sisusb 906 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_haddr(sisusb, c, 0, 0) + sisusb 910 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_copy_memory(sisusb, sisusb 912 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_haddr(sisusb, c, 0, 0), sisusb 918 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_set_start_address(sisusb, c); sisusb 922 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 931 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 938 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 939 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 944 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_is_inactive(c, sisusb) || sisusb->con_blanked) { sisusb 945 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 949 drivers/usb/misc/sisusbvga/sisusb_con.c c->vc_origin = c->vc_visible_origin = sisusb->scrbuf; sisusb 951 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_set_start_address(sisusb, c); sisusb 953 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->con_rolled_over = 0; sisusb 955 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 965 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 968 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 969 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 972 drivers/usb/misc/sisusbvga/sisusb_con.c fh = sisusb->current_font_height; sisusb 974 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 990 drivers/usb/misc/sisusbvga/sisusb_con.c sisusbcon_do_font_op(struct sisusb_usb_data *sisusb, int set, int slot, sisusb 1008 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1013 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->font_slot = slot; sisusb 1023 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISSR, 0x00, 0x01); /* Reset */ sisusb 1024 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISSR, 0x02, 0x04); /* Write to plane 2 */ sisusb 1025 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISSR, 0x04, 0x07); /* Memory mode a0-bf */ sisusb 1026 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISSR, 0x00, 0x03); /* Reset */ sisusb 1031 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISGR, 0x04, 0x03); /* Select plane read 2 */ sisusb 1032 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISGR, 0x05, 0x00); /* Disable odd/even */ sisusb 1033 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISGR, 0x06, 0x00); /* Address range a0-bf */ sisusb 1041 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_writeb(sisusb, sisusb 1042 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->vrambase + offset + i, sisusb 1049 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_readb(sisusb, sisusb 1050 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->vrambase + offset + i, sisusb 1064 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_writeb(sisusb, sisusb 1065 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->vrambase + offset + sisusb 1073 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_readb(sisusb, sisusb 1074 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->vrambase + offset + sisusb 1086 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISSR, 0x00, 0x01); /* Reset */ sisusb 1087 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISSR, 0x02, 0x03); /* Write to planes 0+1 */ sisusb 1088 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISSR, 0x04, 0x03); /* Memory mode a0-bf */ sisusb 1090 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxreg(sisusb, SISSR, 0x03, font_select); sisusb 1091 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISSR, 0x00, 0x03); /* Reset end */ sisusb 1096 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISGR, 0x04, 0x00); /* Select plane read 0 */ sisusb 1097 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISGR, 0x05, 0x10); /* Enable odd/even */ sisusb 1098 drivers/usb/misc/sisusbvga/sisusb_con.c err |= sisusb_setidxreg(sisusb, SISGR, 0x06, 0x06); /* Address range b8-bf */ sisusb 1103 drivers/usb/misc/sisusbvga/sisusb_con.c if ((set) && (ch512 != sisusb->current_font_512)) { sisusb 1114 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->current_font_512 = ch512; sisusb 1119 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_getreg(sisusb, SISINPSTAT, &dummy); sisusb 1120 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setreg(sisusb, SISAR, 0x12); sisusb 1121 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setreg(sisusb, SISAR, ch512 ? 0x07 : 0x0f); sisusb 1123 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_getreg(sisusb, SISINPSTAT, &dummy); sisusb 1124 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setreg(sisusb, SISAR, 0x20); sisusb 1125 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_getreg(sisusb, SISINPSTAT, &dummy); sisusb 1147 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_getidxreg(sisusb, SISCR, 0x07, &ovr); sisusb 1152 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxreg(sisusb, SISCR, 0x07, ovr); sisusb 1153 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxreg(sisusb, SISCR, 0x12, vde); sisusb 1157 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_getidxreg(sisusb, SISCR, 0x09, &fsr); sisusb 1159 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_setidxreg(sisusb, SISCR, 0x09, fsr); sisusb 1160 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->current_font_height = fh; sisusb 1162 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_size_from = -1; sisusb 1163 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_size_to = -1; sisusb 1168 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1192 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1202 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 1208 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 1209 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 1218 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->font_backup) { sisusb 1219 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->font_backup_size < charcount) { sisusb 1220 drivers/usb/misc/sisusbvga/sisusb_con.c vfree(sisusb->font_backup); sisusb 1221 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->font_backup = NULL; sisusb 1225 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb->font_backup) sisusb 1226 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->font_backup = vmalloc(array_size(charcount, 32)); sisusb 1228 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->font_backup) { sisusb 1229 drivers/usb/misc/sisusbvga/sisusb_con.c memcpy(sisusb->font_backup, font->data, charcount * 32); sisusb 1230 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->font_backup_size = charcount; sisusb 1231 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->font_backup_height = font->height; sisusb 1232 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->font_backup_512 = (charcount == 512) ? 1 : 0; sisusb 1237 drivers/usb/misc/sisusbvga/sisusb_con.c return sisusbcon_do_font_op(sisusb, 1, 2, font->data, sisusb 1247 drivers/usb/misc/sisusbvga/sisusb_con.c struct sisusb_usb_data *sisusb; sisusb 1249 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num); sisusb 1250 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb) sisusb 1260 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1264 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb->font_backup) { sisusb 1265 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1270 drivers/usb/misc/sisusbvga/sisusb_con.c memcpy(font->data, sisusb->font_backup, 256 * 32); sisusb 1272 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1383 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_console_init(struct sisusb_usb_data *sisusb, int first, int last) sisusb 1387 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_lock(&sisusb->lock); sisusb 1390 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->haveconsole || !sisusb->SiS_Pr) { sisusb 1391 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1395 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->con_first = first; sisusb 1396 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->con_last = last; sisusb 1401 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1406 drivers/usb/misc/sisusbvga/sisusb_con.c if (!sisusb->gfxinit || first < 1 || last < 1) { sisusb 1407 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1411 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_loc = -1; sisusb 1412 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_size_from = -1; sisusb 1413 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_cursor_size_to = -1; sisusb 1416 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb_reset_text_mode(sisusb, 1)) { sisusb 1417 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1418 drivers/usb/misc/sisusbvga/sisusb_con.c dev_err(&sisusb->sisusb_dev->dev, "Failed to set up text mode\n"); sisusb 1423 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_initialize(sisusb); sisusb 1427 drivers/usb/misc/sisusbvga/sisusb_con.c mysisusbs[i] = sisusb; sisusb 1431 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->sisusb_num_columns = 80; sisusb 1434 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->scrbuf_size = 32 * 1024; sisusb 1437 drivers/usb/misc/sisusbvga/sisusb_con.c if (!(sisusb->scrbuf = (unsigned long)vmalloc(sisusb->scrbuf_size))) { sisusb 1438 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1439 drivers/usb/misc/sisusbvga/sisusb_con.c dev_err(&sisusb->sisusb_dev->dev, "Failed to allocate screen buffer\n"); sisusb 1443 drivers/usb/misc/sisusbvga/sisusb_con.c mutex_unlock(&sisusb->lock); sisusb 1450 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->haveconsole = 1; sisusb 1460 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb_console_exit(struct sisusb_usb_data *sisusb) sisusb 1490 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->haveconsole) { sisusb 1492 drivers/usb/misc/sisusbvga/sisusb_con.c if (sisusb->havethisconsole[i]) { sisusb 1500 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->haveconsole = 0; sisusb 1503 drivers/usb/misc/sisusbvga/sisusb_con.c vfree((void *)sisusb->scrbuf); sisusb 1504 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->scrbuf = 0; sisusb 1506 drivers/usb/misc/sisusbvga/sisusb_con.c vfree(sisusb->font_backup); sisusb 1507 drivers/usb/misc/sisusbvga/sisusb_con.c sisusb->font_backup = NULL; sisusb 74 drivers/usb/misc/sisusbvga/sisusb_init.c sisusb_setidxreg(SiS_Pr->sisusb, port, index, data); sisusb 81 drivers/usb/misc/sisusbvga/sisusb_init.c sisusb_setreg(SiS_Pr->sisusb, port, data); sisusb 89 drivers/usb/misc/sisusbvga/sisusb_init.c sisusb_getidxreg(SiS_Pr->sisusb, port, index, &data); sisusb 99 drivers/usb/misc/sisusbvga/sisusb_init.c sisusb_getreg(SiS_Pr->sisusb, port, &data); sisusb 109 drivers/usb/misc/sisusbvga/sisusb_init.c sisusb_setidxregandor(SiS_Pr->sisusb, port, index, DataAND, DataOR); sisusb 116 drivers/usb/misc/sisusbvga/sisusb_init.c sisusb_setidxregand(SiS_Pr->sisusb, port, index, DataAND); sisusb 123 drivers/usb/misc/sisusbvga/sisusb_init.c sisusb_setidxregor(SiS_Pr->sisusb, port, index, DataOR); sisusb 815 drivers/usb/misc/sisusbvga/sisusb_init.h extern int sisusb_setreg(struct sisusb_usb_data *sisusb, u32 port, u8 data); sisusb 816 drivers/usb/misc/sisusbvga/sisusb_init.h extern int sisusb_getreg(struct sisusb_usb_data *sisusb, u32 port, u8 * data); sisusb 817 drivers/usb/misc/sisusbvga/sisusb_init.h extern int sisusb_setidxreg(struct sisusb_usb_data *sisusb, u32 port, sisusb 819 drivers/usb/misc/sisusbvga/sisusb_init.h extern int sisusb_getidxreg(struct sisusb_usb_data *sisusb, u32 port, sisusb 821 drivers/usb/misc/sisusbvga/sisusb_init.h extern int sisusb_setidxregandor(struct sisusb_usb_data *sisusb, u32 port, sisusb 823 drivers/usb/misc/sisusbvga/sisusb_init.h extern int sisusb_setidxregor(struct sisusb_usb_data *sisusb, u32 port, sisusb 825 drivers/usb/misc/sisusbvga/sisusb_init.h extern int sisusb_setidxregand(struct sisusb_usb_data *sisusb, u32 port, sisusb 829 drivers/usb/misc/sisusbvga/sisusb_init.h int sisusb_writeb(struct sisusb_usb_data *sisusb, u32 adr, u8 data); sisusb 830 drivers/usb/misc/sisusbvga/sisusb_init.h int sisusb_readb(struct sisusb_usb_data *sisusb, u32 adr, u8 * data); sisusb 831 drivers/usb/misc/sisusbvga/sisusb_init.h int sisusb_copy_memory(struct sisusb_usb_data *sisusb, char *src, sisusb 833 drivers/usb/misc/sisusbvga/sisusb_init.h int sisusb_reset_text_mode(struct sisusb_usb_data *sisusb, int init); sisusb 834 drivers/usb/misc/sisusbvga/sisusb_init.h int sisusbcon_do_font_op(struct sisusb_usb_data *sisusb, int set, int slot, sisusb 837 drivers/usb/misc/sisusbvga/sisusb_init.h void sisusb_set_cursor(struct sisusb_usb_data *sisusb, unsigned int location); sisusb 838 drivers/usb/misc/sisusbvga/sisusb_init.h int sisusb_console_init(struct sisusb_usb_data *sisusb, int first, int last); sisusb 839 drivers/usb/misc/sisusbvga/sisusb_init.h void sisusb_console_exit(struct sisusb_usb_data *sisusb); sisusb 128 drivers/usb/misc/sisusbvga/sisusb_struct.h void *sisusb;