hvcsd             304 drivers/tty/hvc/hvcs.c static int hvcs_has_pi(struct hvcs_struct *hvcsd);
hvcsd             306 drivers/tty/hvc/hvcs.c 		struct hvcs_struct *hvcsd);
hvcsd             307 drivers/tty/hvc/hvcs.c static int hvcs_get_pi(struct hvcs_struct *hvcsd);
hvcsd             310 drivers/tty/hvc/hvcs.c static int hvcs_partner_connect(struct hvcs_struct *hvcsd);
hvcsd             311 drivers/tty/hvc/hvcs.c static void hvcs_partner_free(struct hvcs_struct *hvcsd);
hvcsd             313 drivers/tty/hvc/hvcs.c static int hvcs_enable_device(struct hvcs_struct *hvcsd,
hvcsd             341 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = from_vio_dev(viod);
hvcsd             345 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             346 drivers/tty/hvc/hvcs.c 	retval = sprintf(buf, "%X\n", hvcsd->p_unit_address);
hvcsd             347 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             355 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = from_vio_dev(viod);
hvcsd             359 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             360 drivers/tty/hvc/hvcs.c 	retval = sprintf(buf, "%s\n", &hvcsd->p_location_code[0]);
hvcsd             361 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             380 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = from_vio_dev(viod);
hvcsd             384 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             385 drivers/tty/hvc/hvcs.c 	retval = sprintf(buf, "%s\n", &hvcsd->p_location_code[0]);
hvcsd             386 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             397 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = from_vio_dev(viod);
hvcsd             404 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             406 drivers/tty/hvc/hvcs.c 	if (hvcsd->port.count > 0) {
hvcsd             407 drivers/tty/hvc/hvcs.c 		spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             413 drivers/tty/hvc/hvcs.c 	if (hvcsd->connected == 0) {
hvcsd             414 drivers/tty/hvc/hvcs.c 		spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             420 drivers/tty/hvc/hvcs.c 	hvcs_partner_free(hvcsd);
hvcsd             423 drivers/tty/hvc/hvcs.c 			hvcsd->vdev->unit_address,
hvcsd             424 drivers/tty/hvc/hvcs.c 			hvcsd->p_unit_address,
hvcsd             425 drivers/tty/hvc/hvcs.c 			(uint32_t)hvcsd->p_partition_ID);
hvcsd             427 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             434 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = from_vio_dev(viod);
hvcsd             438 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             439 drivers/tty/hvc/hvcs.c 	retval = sprintf(buf, "%d\n", hvcsd->connected);
hvcsd             440 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             449 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = from_vio_dev(viod);
hvcsd             453 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             454 drivers/tty/hvc/hvcs.c 	retval = sprintf(buf, "%d\n", hvcsd->index);
hvcsd             455 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             506 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = tty->driver_data;
hvcsd             509 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             510 drivers/tty/hvc/hvcs.c 	hvcsd->todo_mask |= HVCS_SCHED_READ;
hvcsd             511 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             517 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = tty->driver_data;
hvcsd             520 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             521 drivers/tty/hvc/hvcs.c 	vio_disable_interrupts(hvcsd->vdev);
hvcsd             522 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             532 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = dev_instance;
hvcsd             534 drivers/tty/hvc/hvcs.c 	spin_lock(&hvcsd->lock);
hvcsd             535 drivers/tty/hvc/hvcs.c 	vio_disable_interrupts(hvcsd->vdev);
hvcsd             536 drivers/tty/hvc/hvcs.c 	hvcsd->todo_mask |= HVCS_SCHED_READ;
hvcsd             537 drivers/tty/hvc/hvcs.c 	spin_unlock(&hvcsd->lock);
hvcsd             544 drivers/tty/hvc/hvcs.c static void hvcs_try_write(struct hvcs_struct *hvcsd)
hvcsd             546 drivers/tty/hvc/hvcs.c 	uint32_t unit_address = hvcsd->vdev->unit_address;
hvcsd             547 drivers/tty/hvc/hvcs.c 	struct tty_struct *tty = hvcsd->port.tty;
hvcsd             550 drivers/tty/hvc/hvcs.c 	if (hvcsd->todo_mask & HVCS_TRY_WRITE) {
hvcsd             553 drivers/tty/hvc/hvcs.c 				&hvcsd->buffer[0],
hvcsd             554 drivers/tty/hvc/hvcs.c 				hvcsd->chars_in_buffer );
hvcsd             556 drivers/tty/hvc/hvcs.c 			hvcsd->chars_in_buffer = 0;
hvcsd             558 drivers/tty/hvc/hvcs.c 			hvcsd->todo_mask &= ~(HVCS_TRY_WRITE);
hvcsd             574 drivers/tty/hvc/hvcs.c static int hvcs_io(struct hvcs_struct *hvcsd)
hvcsd             582 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             584 drivers/tty/hvc/hvcs.c 	unit_address = hvcsd->vdev->unit_address;
hvcsd             585 drivers/tty/hvc/hvcs.c 	tty = hvcsd->port.tty;
hvcsd             587 drivers/tty/hvc/hvcs.c 	hvcs_try_write(hvcsd);
hvcsd             590 drivers/tty/hvc/hvcs.c 		hvcsd->todo_mask &= ~(HVCS_READ_MASK);
hvcsd             592 drivers/tty/hvc/hvcs.c 	} else if (!(hvcsd->todo_mask & (HVCS_READ_MASK)))
hvcsd             596 drivers/tty/hvc/hvcs.c 	hvcsd->todo_mask &= ~(HVCS_READ_MASK);
hvcsd             598 drivers/tty/hvc/hvcs.c 	if (tty_buffer_request_room(&hvcsd->port, HVCS_BUFF_LEN) >= HVCS_BUFF_LEN) {
hvcsd             602 drivers/tty/hvc/hvcs.c 		tty_insert_flip_string(&hvcsd->port, buf, got);
hvcsd             607 drivers/tty/hvc/hvcs.c 		hvcsd->todo_mask |= HVCS_QUICK_READ;
hvcsd             609 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             612 drivers/tty/hvc/hvcs.c 		tty_flip_buffer_push(&hvcsd->port);
hvcsd             616 drivers/tty/hvc/hvcs.c 		spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             617 drivers/tty/hvc/hvcs.c 		vio_enable_interrupts(hvcsd->vdev);
hvcsd             618 drivers/tty/hvc/hvcs.c 		spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             621 drivers/tty/hvc/hvcs.c 	return hvcsd->todo_mask;
hvcsd             624 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             625 drivers/tty/hvc/hvcs.c 	return hvcsd->todo_mask;
hvcsd             630 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd;
hvcsd             641 drivers/tty/hvc/hvcs.c 		list_for_each_entry(hvcsd, &hvcs_structs, next) {
hvcsd             642 drivers/tty/hvc/hvcs.c 			hvcs_todo_mask |= hvcs_io(hvcsd);
hvcsd             686 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = container_of(p, struct hvcs_struct, port);
hvcsd             691 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             694 drivers/tty/hvc/hvcs.c 	list_del(&(hvcsd->next));
hvcsd             696 drivers/tty/hvc/hvcs.c 	if (hvcsd->connected == 1) {
hvcsd             697 drivers/tty/hvc/hvcs.c 		hvcs_partner_free(hvcsd);
hvcsd             700 drivers/tty/hvc/hvcs.c 				hvcsd->vdev->unit_address,
hvcsd             701 drivers/tty/hvc/hvcs.c 				hvcsd->p_unit_address,
hvcsd             702 drivers/tty/hvc/hvcs.c 				(uint32_t)hvcsd->p_partition_ID);
hvcsd             705 drivers/tty/hvc/hvcs.c 			hvcsd->vdev->unit_address);
hvcsd             707 drivers/tty/hvc/hvcs.c 	vdev = hvcsd->vdev;
hvcsd             708 drivers/tty/hvc/hvcs.c 	hvcsd->vdev = NULL;
hvcsd             710 drivers/tty/hvc/hvcs.c 	hvcsd->p_unit_address = 0;
hvcsd             711 drivers/tty/hvc/hvcs.c 	hvcsd->p_partition_ID = 0;
hvcsd             712 drivers/tty/hvc/hvcs.c 	hvcs_return_index(hvcsd->index);
hvcsd             713 drivers/tty/hvc/hvcs.c 	memset(&hvcsd->p_location_code[0], 0x00, HVCS_CLC_LENGTH + 1);
hvcsd             715 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             720 drivers/tty/hvc/hvcs.c 	kfree(hvcsd);
hvcsd             749 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd;
hvcsd             771 drivers/tty/hvc/hvcs.c 	hvcsd = kzalloc(sizeof(*hvcsd), GFP_KERNEL);
hvcsd             772 drivers/tty/hvc/hvcs.c 	if (!hvcsd)
hvcsd             775 drivers/tty/hvc/hvcs.c 	tty_port_init(&hvcsd->port);
hvcsd             776 drivers/tty/hvc/hvcs.c 	hvcsd->port.ops = &hvcs_port_ops;
hvcsd             777 drivers/tty/hvc/hvcs.c 	spin_lock_init(&hvcsd->lock);
hvcsd             779 drivers/tty/hvc/hvcs.c 	hvcsd->vdev = dev;
hvcsd             780 drivers/tty/hvc/hvcs.c 	dev_set_drvdata(&dev->dev, hvcsd);
hvcsd             782 drivers/tty/hvc/hvcs.c 	hvcsd->index = index;
hvcsd             785 drivers/tty/hvc/hvcs.c 	hvcsd->chars_in_buffer = 0;
hvcsd             786 drivers/tty/hvc/hvcs.c 	hvcsd->todo_mask = 0;
hvcsd             787 drivers/tty/hvc/hvcs.c 	hvcsd->connected = 0;
hvcsd             793 drivers/tty/hvc/hvcs.c 	if (hvcs_get_pi(hvcsd)) {
hvcsd             796 drivers/tty/hvc/hvcs.c 			hvcsd->vdev->unit_address);
hvcsd             805 drivers/tty/hvc/hvcs.c 	list_add_tail(&(hvcsd->next), &hvcs_structs);
hvcsd             811 drivers/tty/hvc/hvcs.c 		       hvcsd->vdev->unit_address);
hvcsd             826 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = dev_get_drvdata(&dev->dev);
hvcsd             830 drivers/tty/hvc/hvcs.c 	if (!hvcsd)
hvcsd             835 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             837 drivers/tty/hvc/hvcs.c 	tty = hvcsd->port.tty;
hvcsd             839 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             845 drivers/tty/hvc/hvcs.c 	tty_port_put(&hvcsd->port);
hvcsd             868 drivers/tty/hvc/hvcs.c static void hvcs_set_pi(struct hvcs_partner_info *pi, struct hvcs_struct *hvcsd)
hvcsd             870 drivers/tty/hvc/hvcs.c 	hvcsd->p_unit_address = pi->unit_address;
hvcsd             871 drivers/tty/hvc/hvcs.c 	hvcsd->p_partition_ID  = pi->partition_ID;
hvcsd             874 drivers/tty/hvc/hvcs.c 	strlcpy(hvcsd->p_location_code, pi->location_code,
hvcsd             875 drivers/tty/hvc/hvcs.c 		sizeof(hvcsd->p_location_code));
hvcsd             891 drivers/tty/hvc/hvcs.c static int hvcs_get_pi(struct hvcs_struct *hvcsd)
hvcsd             894 drivers/tty/hvc/hvcs.c 	uint32_t unit_address = hvcsd->vdev->unit_address;
hvcsd             912 drivers/tty/hvc/hvcs.c 	hvcsd->p_unit_address = 0;
hvcsd             913 drivers/tty/hvc/hvcs.c 	hvcsd->p_partition_ID = 0;
hvcsd             916 drivers/tty/hvc/hvcs.c 		hvcs_set_pi(pi, hvcsd);
hvcsd             928 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd;
hvcsd             933 drivers/tty/hvc/hvcs.c 	list_for_each_entry(hvcsd, &hvcs_structs, next) {
hvcsd             934 drivers/tty/hvc/hvcs.c 		spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd             935 drivers/tty/hvc/hvcs.c 		hvcs_get_pi(hvcsd);
hvcsd             936 drivers/tty/hvc/hvcs.c 		spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd             949 drivers/tty/hvc/hvcs.c static int hvcs_has_pi(struct hvcs_struct *hvcsd)
hvcsd             951 drivers/tty/hvc/hvcs.c 	if ((!hvcsd->p_unit_address) || (!hvcsd->p_partition_ID))
hvcsd             962 drivers/tty/hvc/hvcs.c static int hvcs_partner_connect(struct hvcs_struct *hvcsd)
hvcsd             965 drivers/tty/hvc/hvcs.c 	unsigned int unit_address = hvcsd->vdev->unit_address;
hvcsd             975 drivers/tty/hvc/hvcs.c 			hvcsd->p_partition_ID,
hvcsd             976 drivers/tty/hvc/hvcs.c 			hvcsd->p_unit_address);
hvcsd             978 drivers/tty/hvc/hvcs.c 		hvcsd->connected = 1;
hvcsd             987 drivers/tty/hvc/hvcs.c 	if (hvcs_get_pi(hvcsd))
hvcsd             990 drivers/tty/hvc/hvcs.c 	if (!hvcs_has_pi(hvcsd))
hvcsd             994 drivers/tty/hvc/hvcs.c 			hvcsd->p_partition_ID,
hvcsd             995 drivers/tty/hvc/hvcs.c 			hvcsd->p_unit_address);
hvcsd             997 drivers/tty/hvc/hvcs.c 		hvcsd->connected = 1;
hvcsd            1013 drivers/tty/hvc/hvcs.c static void hvcs_partner_free(struct hvcs_struct *hvcsd)
hvcsd            1017 drivers/tty/hvc/hvcs.c 		retval = hvcs_free_connection(hvcsd->vdev->unit_address);
hvcsd            1019 drivers/tty/hvc/hvcs.c 	hvcsd->connected = 0;
hvcsd            1023 drivers/tty/hvc/hvcs.c static int hvcs_enable_device(struct hvcs_struct *hvcsd, uint32_t unit_address,
hvcsd            1033 drivers/tty/hvc/hvcs.c 	rc = request_irq(irq, &hvcs_handle_interrupt, 0, "ibmhvcs", hvcsd);
hvcsd            1044 drivers/tty/hvc/hvcs.c 			free_irq(irq, hvcsd);
hvcsd            1050 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd            1051 drivers/tty/hvc/hvcs.c 	hvcs_partner_free(hvcsd);
hvcsd            1052 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1067 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd;
hvcsd            1071 drivers/tty/hvc/hvcs.c 	list_for_each_entry(hvcsd, &hvcs_structs, next) {
hvcsd            1072 drivers/tty/hvc/hvcs.c 		spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd            1073 drivers/tty/hvc/hvcs.c 		if (hvcsd->index == index) {
hvcsd            1074 drivers/tty/hvc/hvcs.c 			tty_port_get(&hvcsd->port);
hvcsd            1075 drivers/tty/hvc/hvcs.c 			spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1077 drivers/tty/hvc/hvcs.c 			return hvcsd;
hvcsd            1079 drivers/tty/hvc/hvcs.c 		spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1088 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd;
hvcsd            1098 drivers/tty/hvc/hvcs.c 	hvcsd = hvcs_get_by_index(tty->index);
hvcsd            1099 drivers/tty/hvc/hvcs.c 	if (!hvcsd) {
hvcsd            1105 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd            1107 drivers/tty/hvc/hvcs.c 	if (hvcsd->connected == 0) {
hvcsd            1108 drivers/tty/hvc/hvcs.c 		retval = hvcs_partner_connect(hvcsd);
hvcsd            1110 drivers/tty/hvc/hvcs.c 			spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1116 drivers/tty/hvc/hvcs.c 	hvcsd->port.count = 0;
hvcsd            1117 drivers/tty/hvc/hvcs.c 	hvcsd->port.tty = tty;
hvcsd            1118 drivers/tty/hvc/hvcs.c 	tty->driver_data = hvcsd;
hvcsd            1120 drivers/tty/hvc/hvcs.c 	memset(&hvcsd->buffer[0], 0x00, HVCS_BUFF_LEN);
hvcsd            1126 drivers/tty/hvc/hvcs.c 	irq = hvcsd->vdev->irq;
hvcsd            1127 drivers/tty/hvc/hvcs.c 	vdev = hvcsd->vdev;
hvcsd            1128 drivers/tty/hvc/hvcs.c 	unit_address = hvcsd->vdev->unit_address;
hvcsd            1130 drivers/tty/hvc/hvcs.c 	hvcsd->todo_mask |= HVCS_SCHED_READ;
hvcsd            1131 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1137 drivers/tty/hvc/hvcs.c 	retval = hvcs_enable_device(hvcsd, unit_address, irq, vdev);
hvcsd            1143 drivers/tty/hvc/hvcs.c 	retval = tty_port_install(&hvcsd->port, driver, tty);
hvcsd            1149 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd            1150 drivers/tty/hvc/hvcs.c 	vio_disable_interrupts(hvcsd->vdev);
hvcsd            1151 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1152 drivers/tty/hvc/hvcs.c 	free_irq(irq, hvcsd);
hvcsd            1154 drivers/tty/hvc/hvcs.c 	tty_port_put(&hvcsd->port);
hvcsd            1165 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = tty->driver_data;
hvcsd            1168 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd            1169 drivers/tty/hvc/hvcs.c 	hvcsd->port.count++;
hvcsd            1170 drivers/tty/hvc/hvcs.c 	hvcsd->todo_mask |= HVCS_SCHED_READ;
hvcsd            1171 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1176 drivers/tty/hvc/hvcs.c 		hvcsd->vdev->unit_address );
hvcsd            1183 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd;
hvcsd            1202 drivers/tty/hvc/hvcs.c 	hvcsd = tty->driver_data;
hvcsd            1204 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd            1205 drivers/tty/hvc/hvcs.c 	if (--hvcsd->port.count == 0) {
hvcsd            1207 drivers/tty/hvc/hvcs.c 		vio_disable_interrupts(hvcsd->vdev);
hvcsd            1214 drivers/tty/hvc/hvcs.c 		hvcsd->port.tty = NULL;
hvcsd            1216 drivers/tty/hvc/hvcs.c 		irq = hvcsd->vdev->irq;
hvcsd            1217 drivers/tty/hvc/hvcs.c 		spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1228 drivers/tty/hvc/hvcs.c 		free_irq(irq, hvcsd);
hvcsd            1230 drivers/tty/hvc/hvcs.c 	} else if (hvcsd->port.count < 0) {
hvcsd            1232 drivers/tty/hvc/hvcs.c 		hvcsd->vdev->unit_address, hvcsd->port.count);
hvcsd            1235 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1240 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = tty->driver_data;
hvcsd            1242 drivers/tty/hvc/hvcs.c 	tty_port_put(&hvcsd->port);
hvcsd            1247 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = tty->driver_data;
hvcsd            1252 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd            1254 drivers/tty/hvc/hvcs.c 	temp_open_count = hvcsd->port.count;
hvcsd            1261 drivers/tty/hvc/hvcs.c 	vio_disable_interrupts(hvcsd->vdev);
hvcsd            1263 drivers/tty/hvc/hvcs.c 	hvcsd->todo_mask = 0;
hvcsd            1267 drivers/tty/hvc/hvcs.c 	hvcsd->port.tty = NULL;
hvcsd            1269 drivers/tty/hvc/hvcs.c 	hvcsd->port.count = 0;
hvcsd            1273 drivers/tty/hvc/hvcs.c 	memset(&hvcsd->buffer[0], 0x00, HVCS_BUFF_LEN);
hvcsd            1274 drivers/tty/hvc/hvcs.c 	hvcsd->chars_in_buffer = 0;
hvcsd            1276 drivers/tty/hvc/hvcs.c 	irq = hvcsd->vdev->irq;
hvcsd            1278 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1280 drivers/tty/hvc/hvcs.c 	free_irq(irq, hvcsd);
hvcsd            1294 drivers/tty/hvc/hvcs.c 		tty_port_put(&hvcsd->port);
hvcsd            1308 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = tty->driver_data;
hvcsd            1320 drivers/tty/hvc/hvcs.c 	if (!hvcsd)
hvcsd            1332 drivers/tty/hvc/hvcs.c 	spin_lock_irqsave(&hvcsd->lock, flags);
hvcsd            1340 drivers/tty/hvc/hvcs.c 	if (hvcsd->port.count <= 0) {
hvcsd            1341 drivers/tty/hvc/hvcs.c 		spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1345 drivers/tty/hvc/hvcs.c 	unit_address = hvcsd->vdev->unit_address;
hvcsd            1348 drivers/tty/hvc/hvcs.c 		tosend = min(count, (HVCS_BUFF_LEN - hvcsd->chars_in_buffer));
hvcsd            1356 drivers/tty/hvc/hvcs.c 		memcpy(&hvcsd->buffer[hvcsd->chars_in_buffer],
hvcsd            1360 drivers/tty/hvc/hvcs.c 		hvcsd->chars_in_buffer += tosend;
hvcsd            1369 drivers/tty/hvc/hvcs.c 		if (!(hvcsd->todo_mask & HVCS_TRY_WRITE))
hvcsd            1372 drivers/tty/hvc/hvcs.c 					&hvcsd->buffer[0],
hvcsd            1373 drivers/tty/hvc/hvcs.c 					hvcsd->chars_in_buffer);
hvcsd            1383 drivers/tty/hvc/hvcs.c 			hvcsd->todo_mask |= HVCS_TRY_WRITE;
hvcsd            1388 drivers/tty/hvc/hvcs.c 		hvcsd->chars_in_buffer = 0;
hvcsd            1397 drivers/tty/hvc/hvcs.c 	spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd            1412 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = tty->driver_data;
hvcsd            1414 drivers/tty/hvc/hvcs.c 	if (!hvcsd || hvcsd->port.count <= 0)
hvcsd            1417 drivers/tty/hvc/hvcs.c 	return HVCS_BUFF_LEN - hvcsd->chars_in_buffer;
hvcsd            1422 drivers/tty/hvc/hvcs.c 	struct hvcs_struct *hvcsd = tty->driver_data;
hvcsd            1424 drivers/tty/hvc/hvcs.c 	return hvcsd->chars_in_buffer;