mlc                87 drivers/input/serio/hil_mlc.c static void hil_mlc_clear_di_map(hil_mlc *mlc, int val)
mlc                92 drivers/input/serio/hil_mlc.c 		mlc->di_map[j] = -1;
mlc                95 drivers/input/serio/hil_mlc.c static void hil_mlc_clear_di_scratch(hil_mlc *mlc)
mlc                97 drivers/input/serio/hil_mlc.c 	memset(&mlc->di_scratch, 0, sizeof(mlc->di_scratch));
mlc               100 drivers/input/serio/hil_mlc.c static void hil_mlc_copy_di_scratch(hil_mlc *mlc, int idx)
mlc               102 drivers/input/serio/hil_mlc.c 	memcpy(&mlc->di[idx], &mlc->di_scratch, sizeof(mlc->di_scratch));
mlc               105 drivers/input/serio/hil_mlc.c static int hil_mlc_match_di_scratch(hil_mlc *mlc)
mlc               114 drivers/input/serio/hil_mlc.c 			if (mlc->di_map[j] == idx)
mlc               120 drivers/input/serio/hil_mlc.c 		if (!memcmp(mlc->di + idx, &mlc->di_scratch,
mlc               121 drivers/input/serio/hil_mlc.c 				sizeof(mlc->di_scratch)))
mlc               127 drivers/input/serio/hil_mlc.c static int hil_mlc_find_free_di(hil_mlc *mlc)
mlc               138 drivers/input/serio/hil_mlc.c 			if (mlc->di_map[j] == idx)
mlc               148 drivers/input/serio/hil_mlc.c static inline void hil_mlc_clean_serio_map(hil_mlc *mlc)
mlc               156 drivers/input/serio/hil_mlc.c 			if (mlc->di_map[j] == idx)
mlc               160 drivers/input/serio/hil_mlc.c 			mlc->serio_map[idx].di_revmap = -1;
mlc               164 drivers/input/serio/hil_mlc.c static void hil_mlc_send_polls(hil_mlc *mlc)
mlc               171 drivers/input/serio/hil_mlc.c 	did = (mlc->ipacket[0] & HIL_PKT_ADDR_MASK) >> 8;
mlc               172 drivers/input/serio/hil_mlc.c 	serio = did ? mlc->serio[mlc->di_map[did - 1]] : NULL;
mlc               175 drivers/input/serio/hil_mlc.c 	while (mlc->icount < 15 - i) {
mlc               178 drivers/input/serio/hil_mlc.c 		p = mlc->ipacket[i];
mlc               188 drivers/input/serio/hil_mlc.c 			serio = did ? mlc->serio[mlc->di_map[did-1]] : NULL;
mlc               240 drivers/input/serio/hil_mlc.c static int hilse_match(hil_mlc *mlc, int unused)
mlc               244 drivers/input/serio/hil_mlc.c 	rc = hil_mlc_match_di_scratch(mlc);
mlc               246 drivers/input/serio/hil_mlc.c 		rc = hil_mlc_find_free_di(mlc);
mlc               253 drivers/input/serio/hil_mlc.c 		hil_mlc_copy_di_scratch(mlc, rc);
mlc               254 drivers/input/serio/hil_mlc.c 		mlc->di_map[mlc->ddi] = rc;
mlc               255 drivers/input/serio/hil_mlc.c 		mlc->serio_map[rc].di_revmap = mlc->ddi;
mlc               256 drivers/input/serio/hil_mlc.c 		hil_mlc_clean_serio_map(mlc);
mlc               257 drivers/input/serio/hil_mlc.c 		serio_rescan(mlc->serio[rc]);
mlc               261 drivers/input/serio/hil_mlc.c 	mlc->di_map[mlc->ddi] = rc;
mlc               265 drivers/input/serio/hil_mlc.c 	mlc->serio_map[rc].di_revmap = mlc->ddi;
mlc               266 drivers/input/serio/hil_mlc.c 	hil_mlc_clean_serio_map(mlc);
mlc               275 drivers/input/serio/hil_mlc.c static int hilse_init_lcv(hil_mlc *mlc, int unused)
mlc               279 drivers/input/serio/hil_mlc.c 	if (mlc->lcv && (now - mlc->lcv_time) < 5)
mlc               282 drivers/input/serio/hil_mlc.c 	mlc->lcv_time = now;
mlc               283 drivers/input/serio/hil_mlc.c 	mlc->lcv = 0;
mlc               288 drivers/input/serio/hil_mlc.c static int hilse_inc_lcv(hil_mlc *mlc, int lim)
mlc               290 drivers/input/serio/hil_mlc.c 	return mlc->lcv++ >= lim ? -1 : 0;
mlc               294 drivers/input/serio/hil_mlc.c static int hilse_set_lcv(hil_mlc *mlc, int val)
mlc               296 drivers/input/serio/hil_mlc.c 	mlc->lcv = val;
mlc               303 drivers/input/serio/hil_mlc.c static int hilse_set_ddi(hil_mlc *mlc, int val)
mlc               305 drivers/input/serio/hil_mlc.c 	mlc->ddi = val;
mlc               306 drivers/input/serio/hil_mlc.c 	hil_mlc_clear_di_map(mlc, val + 1);
mlc               311 drivers/input/serio/hil_mlc.c static int hilse_dec_ddi(hil_mlc *mlc, int unused)
mlc               313 drivers/input/serio/hil_mlc.c 	mlc->ddi--;
mlc               314 drivers/input/serio/hil_mlc.c 	if (mlc->ddi <= -1) {
mlc               315 drivers/input/serio/hil_mlc.c 		mlc->ddi = -1;
mlc               316 drivers/input/serio/hil_mlc.c 		hil_mlc_clear_di_map(mlc, 0);
mlc               319 drivers/input/serio/hil_mlc.c 	hil_mlc_clear_di_map(mlc, mlc->ddi + 1);
mlc               324 drivers/input/serio/hil_mlc.c static int hilse_inc_ddi(hil_mlc *mlc, int unused)
mlc               326 drivers/input/serio/hil_mlc.c 	BUG_ON(mlc->ddi >= 6);
mlc               327 drivers/input/serio/hil_mlc.c 	mlc->ddi++;
mlc               332 drivers/input/serio/hil_mlc.c static int hilse_take_idd(hil_mlc *mlc, int unused)
mlc               341 drivers/input/serio/hil_mlc.c 	if (mlc->ipacket[0] & HIL_PKT_CMD)
mlc               346 drivers/input/serio/hil_mlc.c 		if (((mlc->ipacket[i] & HIL_PKT_ADDR_MASK) ==
mlc               347 drivers/input/serio/hil_mlc.c 		     (mlc->ipacket[0] & HIL_PKT_ADDR_MASK)) &&
mlc               348 drivers/input/serio/hil_mlc.c 		    (mlc->ipacket[i] & HIL_PKT_CMD) &&
mlc               349 drivers/input/serio/hil_mlc.c 		    ((mlc->ipacket[i] & HIL_PKT_DATA_MASK) == HIL_CMD_IDD))
mlc               357 drivers/input/serio/hil_mlc.c 		if (mlc->ipacket[i])
mlc               364 drivers/input/serio/hil_mlc.c 		mlc->di_scratch.idd[i] =
mlc               365 drivers/input/serio/hil_mlc.c 			mlc->ipacket[i] & HIL_PKT_DATA_MASK;
mlc               368 drivers/input/serio/hil_mlc.c 	if (mlc->di_scratch.idd[1] & HIL_IDD_HEADER_RSC)
mlc               371 drivers/input/serio/hil_mlc.c 	if (mlc->di_scratch.idd[1] & HIL_IDD_HEADER_EXD)
mlc               377 drivers/input/serio/hil_mlc.c 	mlc->ddi--;
mlc               382 drivers/input/serio/hil_mlc.c static int hilse_take_rsc(hil_mlc *mlc, int unused)
mlc               387 drivers/input/serio/hil_mlc.c 		mlc->di_scratch.rsc[i] =
mlc               388 drivers/input/serio/hil_mlc.c 			mlc->ipacket[i] & HIL_PKT_DATA_MASK;
mlc               391 drivers/input/serio/hil_mlc.c 	if (mlc->di_scratch.idd[1] & HIL_IDD_HEADER_EXD)
mlc               397 drivers/input/serio/hil_mlc.c static int hilse_take_exd(hil_mlc *mlc, int unused)
mlc               402 drivers/input/serio/hil_mlc.c 		mlc->di_scratch.exd[i] =
mlc               403 drivers/input/serio/hil_mlc.c 			mlc->ipacket[i] & HIL_PKT_DATA_MASK;
mlc               406 drivers/input/serio/hil_mlc.c 	if (mlc->di_scratch.exd[0] & HIL_EXD_HEADER_RNM)
mlc               412 drivers/input/serio/hil_mlc.c static int hilse_take_rnm(hil_mlc *mlc, int unused)
mlc               417 drivers/input/serio/hil_mlc.c 		mlc->di_scratch.rnm[i] =
mlc               418 drivers/input/serio/hil_mlc.c 			mlc->ipacket[i] & HIL_PKT_DATA_MASK;
mlc               421 drivers/input/serio/hil_mlc.c 			mlc->di_scratch.rnm);
mlc               426 drivers/input/serio/hil_mlc.c static int hilse_operate(hil_mlc *mlc, int repoll)
mlc               429 drivers/input/serio/hil_mlc.c 	if (mlc->opercnt == 0)
mlc               431 drivers/input/serio/hil_mlc.c 	mlc->opercnt = 1;
mlc               433 drivers/input/serio/hil_mlc.c 	hil_mlc_send_polls(mlc);
mlc               438 drivers/input/serio/hil_mlc.c 	mlc->opercnt = 0;
mlc               583 drivers/input/serio/hil_mlc.c static inline void hilse_setup_input(hil_mlc *mlc, const struct hilse_node *node)
mlc               588 drivers/input/serio/hil_mlc.c 		mlc->imatch = node->object.packet;
mlc               589 drivers/input/serio/hil_mlc.c 		mlc->imatch |= ((mlc->ddi + 2) << HIL_PKT_ADDR_SHIFT);
mlc               592 drivers/input/serio/hil_mlc.c 		mlc->imatch = node->object.packet;
mlc               593 drivers/input/serio/hil_mlc.c 		mlc->imatch |= ((mlc->ddi + 1) << HIL_PKT_ADDR_SHIFT);
mlc               596 drivers/input/serio/hil_mlc.c 		mlc->imatch = node->object.packet;
mlc               599 drivers/input/serio/hil_mlc.c 		mlc->imatch = 0;
mlc               604 drivers/input/serio/hil_mlc.c 	mlc->istarted = 1;
mlc               605 drivers/input/serio/hil_mlc.c 	mlc->intimeout = usecs_to_jiffies(node->arg);
mlc               606 drivers/input/serio/hil_mlc.c 	mlc->instart = jiffies;
mlc               607 drivers/input/serio/hil_mlc.c 	mlc->icount = 15;
mlc               608 drivers/input/serio/hil_mlc.c 	memset(mlc->ipacket, 0, 16 * sizeof(hil_packet));
mlc               609 drivers/input/serio/hil_mlc.c 	BUG_ON(down_trylock(&mlc->isem));
mlc               617 drivers/input/serio/hil_mlc.c static int hilse_donode(hil_mlc *mlc)
mlc               625 drivers/input/serio/hil_mlc.c 	if (mlc->seidx && mlc->seidx != seidx &&
mlc               626 drivers/input/serio/hil_mlc.c 	    mlc->seidx != 41 && mlc->seidx != 42 && mlc->seidx != 43) {
mlc               627 drivers/input/serio/hil_mlc.c 		printk(KERN_DEBUG PREFIX "z%i \n {%i}", doze, mlc->seidx);
mlc               631 drivers/input/serio/hil_mlc.c 	seidx = mlc->seidx;
mlc               633 drivers/input/serio/hil_mlc.c 	node = hil_mlc_se + mlc->seidx;
mlc               641 drivers/input/serio/hil_mlc.c 		rc = node->object.func(mlc, node->arg);
mlc               653 drivers/input/serio/hil_mlc.c 		write_lock_irqsave(&mlc->lock, flags);
mlc               654 drivers/input/serio/hil_mlc.c 		rc = mlc->in(mlc, node->arg);
mlc               658 drivers/input/serio/hil_mlc.c 			write_unlock_irqrestore(&mlc->lock, flags);
mlc               667 drivers/input/serio/hil_mlc.c 		mlc->istarted = 0;
mlc               668 drivers/input/serio/hil_mlc.c 		write_unlock_irqrestore(&mlc->lock, flags);
mlc               672 drivers/input/serio/hil_mlc.c 		write_lock_irqsave(&mlc->lock, flags);
mlc               674 drivers/input/serio/hil_mlc.c 		pack |= ((mlc->ddi + 1) << HIL_PKT_ADDR_SHIFT);
mlc               678 drivers/input/serio/hil_mlc.c 		write_lock_irqsave(&mlc->lock, flags);
mlc               680 drivers/input/serio/hil_mlc.c 		pack |= ((mlc->ddi + 2) << HIL_PKT_ADDR_SHIFT);
mlc               684 drivers/input/serio/hil_mlc.c 		write_lock_irqsave(&mlc->lock, flags);
mlc               687 drivers/input/serio/hil_mlc.c 		if (!mlc->istarted) {
mlc               690 drivers/input/serio/hil_mlc.c 				hilse_setup_input(mlc, node + 1);
mlc               693 drivers/input/serio/hil_mlc.c 		write_unlock_irqrestore(&mlc->lock, flags);
mlc               695 drivers/input/serio/hil_mlc.c 		if (down_trylock(&mlc->osem)) {
mlc               699 drivers/input/serio/hil_mlc.c 		up(&mlc->osem);
mlc               701 drivers/input/serio/hil_mlc.c 		write_lock_irqsave(&mlc->lock, flags);
mlc               702 drivers/input/serio/hil_mlc.c 		if (!mlc->ostarted) {
mlc               703 drivers/input/serio/hil_mlc.c 			mlc->ostarted = 1;
mlc               704 drivers/input/serio/hil_mlc.c 			mlc->opacket = pack;
mlc               705 drivers/input/serio/hil_mlc.c 			mlc->out(mlc);
mlc               707 drivers/input/serio/hil_mlc.c 			write_unlock_irqrestore(&mlc->lock, flags);
mlc               710 drivers/input/serio/hil_mlc.c 		mlc->ostarted = 0;
mlc               711 drivers/input/serio/hil_mlc.c 		mlc->instart = jiffies;
mlc               712 drivers/input/serio/hil_mlc.c 		write_unlock_irqrestore(&mlc->lock, flags);
mlc               717 drivers/input/serio/hil_mlc.c 		write_lock_irqsave(&mlc->lock, flags);
mlc               718 drivers/input/serio/hil_mlc.c 		nextidx = mlc->cts(mlc) ? node->bad : node->good;
mlc               719 drivers/input/serio/hil_mlc.c 		write_unlock_irqrestore(&mlc->lock, flags);
mlc               737 drivers/input/serio/hil_mlc.c 		if (time_after(now, mlc->instart + mlc->intimeout))
mlc               739 drivers/input/serio/hil_mlc.c 		mod_timer(&hil_mlcs_kicker, mlc->instart + mlc->intimeout);
mlc               747 drivers/input/serio/hil_mlc.c 		mlc->seidx += nextidx & HILSEN_MASK;
mlc               749 drivers/input/serio/hil_mlc.c 		mlc->seidx -= nextidx & HILSEN_MASK;
mlc               751 drivers/input/serio/hil_mlc.c 		mlc->seidx = nextidx & HILSEN_MASK;
mlc               766 drivers/input/serio/hil_mlc.c 		struct hil_mlc *mlc = list_entry(tmp, hil_mlc, list);
mlc               767 drivers/input/serio/hil_mlc.c 		while (hilse_donode(mlc) == 0) {
mlc               769 drivers/input/serio/hil_mlc.c 			if (mlc->seidx != 41 &&
mlc               770 drivers/input/serio/hil_mlc.c 			    mlc->seidx != 42 &&
mlc               771 drivers/input/serio/hil_mlc.c 			    mlc->seidx != 43)
mlc               795 drivers/input/serio/hil_mlc.c 	struct hil_mlc *mlc;
mlc               802 drivers/input/serio/hil_mlc.c 	mlc = map->mlc;
mlc               803 drivers/input/serio/hil_mlc.c 	BUG_ON(mlc == NULL);
mlc               805 drivers/input/serio/hil_mlc.c 	mlc->serio_opacket[map->didx] |=
mlc               806 drivers/input/serio/hil_mlc.c 		((hil_packet)c) << (8 * (3 - mlc->serio_oidx[map->didx]));
mlc               808 drivers/input/serio/hil_mlc.c 	if (mlc->serio_oidx[map->didx] >= 3) {
mlc               810 drivers/input/serio/hil_mlc.c 		if (!(mlc->serio_opacket[map->didx] & HIL_PKT_CMD))
mlc               812 drivers/input/serio/hil_mlc.c 		switch (mlc->serio_opacket[map->didx] & HIL_PKT_DATA_MASK) {
mlc               814 drivers/input/serio/hil_mlc.c 			idx = mlc->di[map->didx].idd;
mlc               817 drivers/input/serio/hil_mlc.c 			idx = mlc->di[map->didx].rsc;
mlc               820 drivers/input/serio/hil_mlc.c 			idx = mlc->di[map->didx].exd;
mlc               823 drivers/input/serio/hil_mlc.c 			idx = mlc->di[map->didx].rnm;
mlc               828 drivers/input/serio/hil_mlc.c 		mlc->serio_oidx[map->didx] = 0;
mlc               829 drivers/input/serio/hil_mlc.c 		mlc->serio_opacket[map->didx] = 0;
mlc               832 drivers/input/serio/hil_mlc.c 	mlc->serio_oidx[map->didx]++;
mlc               854 drivers/input/serio/hil_mlc.c 	mlc->serio_oidx[map->didx] = 0;
mlc               855 drivers/input/serio/hil_mlc.c 	mlc->serio_opacket[map->didx] = 0;
mlc               863 drivers/input/serio/hil_mlc.c 	struct hil_mlc *mlc;
mlc               871 drivers/input/serio/hil_mlc.c 	mlc = map->mlc;
mlc               872 drivers/input/serio/hil_mlc.c 	BUG_ON(mlc == NULL);
mlc               880 drivers/input/serio/hil_mlc.c 	struct hil_mlc *mlc;
mlc               885 drivers/input/serio/hil_mlc.c 	mlc = map->mlc;
mlc               886 drivers/input/serio/hil_mlc.c 	BUG_ON(mlc == NULL);
mlc               900 drivers/input/serio/hil_mlc.c int hil_mlc_register(hil_mlc *mlc)
mlc               905 drivers/input/serio/hil_mlc.c 	BUG_ON(mlc == NULL);
mlc               907 drivers/input/serio/hil_mlc.c 	mlc->istarted = 0;
mlc               908 drivers/input/serio/hil_mlc.c 	mlc->ostarted = 0;
mlc               910 drivers/input/serio/hil_mlc.c 	rwlock_init(&mlc->lock);
mlc               911 drivers/input/serio/hil_mlc.c 	sema_init(&mlc->osem, 1);
mlc               913 drivers/input/serio/hil_mlc.c 	sema_init(&mlc->isem, 1);
mlc               914 drivers/input/serio/hil_mlc.c 	mlc->icount = -1;
mlc               915 drivers/input/serio/hil_mlc.c 	mlc->imatch = 0;
mlc               917 drivers/input/serio/hil_mlc.c 	mlc->opercnt = 0;
mlc               919 drivers/input/serio/hil_mlc.c 	sema_init(&(mlc->csem), 0);
mlc               921 drivers/input/serio/hil_mlc.c 	hil_mlc_clear_di_scratch(mlc);
mlc               922 drivers/input/serio/hil_mlc.c 	hil_mlc_clear_di_map(mlc, 0);
mlc               925 drivers/input/serio/hil_mlc.c 		hil_mlc_copy_di_scratch(mlc, i);
mlc               927 drivers/input/serio/hil_mlc.c 		mlc->serio[i] = mlc_serio;
mlc               928 drivers/input/serio/hil_mlc.c 		if (!mlc->serio[i]) {
mlc               930 drivers/input/serio/hil_mlc.c 				kfree(mlc->serio[i]);
mlc               940 drivers/input/serio/hil_mlc.c 		mlc_serio->port_data		= &(mlc->serio_map[i]);
mlc               941 drivers/input/serio/hil_mlc.c 		mlc->serio_map[i].mlc		= mlc;
mlc               942 drivers/input/serio/hil_mlc.c 		mlc->serio_map[i].didx		= i;
mlc               943 drivers/input/serio/hil_mlc.c 		mlc->serio_map[i].di_revmap	= -1;
mlc               944 drivers/input/serio/hil_mlc.c 		mlc->serio_opacket[i]		= 0;
mlc               945 drivers/input/serio/hil_mlc.c 		mlc->serio_oidx[i]		= 0;
mlc               949 drivers/input/serio/hil_mlc.c 	mlc->tasklet = &hil_mlcs_tasklet;
mlc               952 drivers/input/serio/hil_mlc.c 	list_add_tail(&mlc->list, &hil_mlcs);
mlc               953 drivers/input/serio/hil_mlc.c 	mlc->seidx = HILSEN_START;
mlc               960 drivers/input/serio/hil_mlc.c int hil_mlc_unregister(hil_mlc *mlc)
mlc               966 drivers/input/serio/hil_mlc.c 	BUG_ON(mlc == NULL);
mlc               970 drivers/input/serio/hil_mlc.c 		if (list_entry(tmp, hil_mlc, list) == mlc)
mlc               983 drivers/input/serio/hil_mlc.c 		serio_unregister_port(mlc->serio[i]);
mlc               984 drivers/input/serio/hil_mlc.c 		mlc->serio[i] = NULL;
mlc                65 drivers/input/serio/hp_sdc_mlc.c 	hil_mlc *mlc = &hp_sdc_mlc;
mlc                67 drivers/input/serio/hp_sdc_mlc.c 	write_lock(&mlc->lock);
mlc                68 drivers/input/serio/hp_sdc_mlc.c 	if (mlc->icount < 0) {
mlc                70 drivers/input/serio/hp_sdc_mlc.c 		up(&mlc->isem);
mlc                73 drivers/input/serio/hp_sdc_mlc.c 	idx = 15 - mlc->icount;
mlc                75 drivers/input/serio/hp_sdc_mlc.c 		mlc->ipacket[idx] |= data | HIL_ERR_INT;
mlc                76 drivers/input/serio/hp_sdc_mlc.c 		mlc->icount--;
mlc                79 drivers/input/serio/hp_sdc_mlc.c 		if ((mlc->ipacket[idx - 1] & HIL_PKT_ADDR_MASK) !=
mlc                80 drivers/input/serio/hp_sdc_mlc.c 		    (mlc->ipacket[idx] & HIL_PKT_ADDR_MASK)) {
mlc                81 drivers/input/serio/hp_sdc_mlc.c 			mlc->ipacket[idx] &= ~HIL_PKT_ADDR_MASK;
mlc                82 drivers/input/serio/hp_sdc_mlc.c 			mlc->ipacket[idx] |= (mlc->ipacket[idx - 1]
mlc                90 drivers/input/serio/hp_sdc_mlc.c 	mlc->ipacket[idx] =
mlc                97 drivers/input/serio/hp_sdc_mlc.c 	if (mlc->imatch == 0)
mlc                99 drivers/input/serio/hp_sdc_mlc.c 	if ((mlc->imatch == (HIL_ERR_INT | HIL_PKT_CMD | HIL_CMD_POL))
mlc               100 drivers/input/serio/hp_sdc_mlc.c 	    && (mlc->ipacket[idx] == (mlc->imatch | idx)))
mlc               102 drivers/input/serio/hp_sdc_mlc.c 	if (mlc->ipacket[idx] == mlc->imatch)
mlc               115 drivers/input/serio/hp_sdc_mlc.c 		mlc->ipacket[idx] |= HIL_ERR_INT | HIL_ERR_PERR |
mlc               120 drivers/input/serio/hp_sdc_mlc.c 		mlc->ipacket[idx] |= HIL_ERR_INT | HIL_ERR_LERR;
mlc               134 drivers/input/serio/hp_sdc_mlc.c 	tasklet_schedule(mlc->tasklet);
mlc               135 drivers/input/serio/hp_sdc_mlc.c 	up(&mlc->isem);
mlc               137 drivers/input/serio/hp_sdc_mlc.c 	write_unlock(&mlc->lock);
mlc               143 drivers/input/serio/hp_sdc_mlc.c static int hp_sdc_mlc_in(hil_mlc *mlc, suseconds_t timeout)
mlc               148 drivers/input/serio/hp_sdc_mlc.c 	priv = mlc->priv;
mlc               151 drivers/input/serio/hp_sdc_mlc.c 	if (down_trylock(&mlc->isem)) {
mlc               153 drivers/input/serio/hp_sdc_mlc.c 			mlc->ipacket[0] =
mlc               154 drivers/input/serio/hp_sdc_mlc.c 				HIL_ERR_INT | (mlc->opacket &
mlc               158 drivers/input/serio/hp_sdc_mlc.c 			mlc->icount = 14;
mlc               162 drivers/input/serio/hp_sdc_mlc.c 		if (time_after(jiffies, mlc->instart + mlc->intimeout)) {
mlc               168 drivers/input/serio/hp_sdc_mlc.c 			up(&mlc->isem);
mlc               173 drivers/input/serio/hp_sdc_mlc.c 	up(&mlc->isem);
mlc               179 drivers/input/serio/hp_sdc_mlc.c static int hp_sdc_mlc_cts(hil_mlc *mlc)
mlc               183 drivers/input/serio/hp_sdc_mlc.c 	priv = mlc->priv;
mlc               186 drivers/input/serio/hp_sdc_mlc.c 	BUG_ON(down_trylock(&mlc->isem));
mlc               187 drivers/input/serio/hp_sdc_mlc.c 	BUG_ON(down_trylock(&mlc->osem));
mlc               189 drivers/input/serio/hp_sdc_mlc.c 	up(&mlc->isem);
mlc               190 drivers/input/serio/hp_sdc_mlc.c 	up(&mlc->osem);
mlc               192 drivers/input/serio/hp_sdc_mlc.c 	if (down_trylock(&mlc->csem)) {
mlc               193 drivers/input/serio/hp_sdc_mlc.c 		if (priv->trans.act.semaphore != &mlc->csem)
mlc               203 drivers/input/serio/hp_sdc_mlc.c 	priv->trans.act.semaphore = &mlc->csem;
mlc               217 drivers/input/serio/hp_sdc_mlc.c 	priv->trans.act.semaphore = &mlc->osem;
mlc               218 drivers/input/serio/hp_sdc_mlc.c 	up(&mlc->csem);
mlc               222 drivers/input/serio/hp_sdc_mlc.c static void hp_sdc_mlc_out(hil_mlc *mlc)
mlc               226 drivers/input/serio/hp_sdc_mlc.c 	priv = mlc->priv;
mlc               229 drivers/input/serio/hp_sdc_mlc.c 	BUG_ON(down_trylock(&mlc->osem));
mlc               231 drivers/input/serio/hp_sdc_mlc.c 	if (mlc->opacket & HIL_DO_ALTER_CTRL)
mlc               236 drivers/input/serio/hp_sdc_mlc.c 		up(&mlc->osem);
mlc               240 drivers/input/serio/hp_sdc_mlc.c 	BUG_ON(down_trylock(&mlc->csem));
mlc               241 drivers/input/serio/hp_sdc_mlc.c 	up(&mlc->csem);
mlc               245 drivers/input/serio/hp_sdc_mlc.c 	priv->trans.act.semaphore = &mlc->osem;
mlc               251 drivers/input/serio/hp_sdc_mlc.c 		(mlc->opacket &
mlc               255 drivers/input/serio/hp_sdc_mlc.c 		(mlc->opacket & HIL_PKT_DATA_MASK)
mlc               264 drivers/input/serio/hp_sdc_mlc.c 	priv->emtestmode = mlc->opacket & HIL_CTRL_TEST;
mlc               267 drivers/input/serio/hp_sdc_mlc.c 	BUG_ON((mlc->opacket & (HIL_CTRL_APE | HIL_CTRL_IPF)) == HIL_CTRL_APE);
mlc               269 drivers/input/serio/hp_sdc_mlc.c 	if ((mlc->opacket & HIL_CTRL_ONLY) == HIL_CTRL_ONLY)
mlc               273 drivers/input/serio/hp_sdc_mlc.c 	BUG_ON(mlc->opacket & HIL_CTRL_APE);
mlc               286 drivers/input/serio/hp_sdc_mlc.c 	priv->trans.act.semaphore = &mlc->osem;
mlc               294 drivers/input/serio/hp_sdc_mlc.c 	if (mlc->opacket & HIL_CTRL_APE) {
mlc               296 drivers/input/serio/hp_sdc_mlc.c 		BUG_ON(down_trylock(&mlc->csem));
mlc               304 drivers/input/serio/hp_sdc_mlc.c 	hil_mlc *mlc = &hp_sdc_mlc;
mlc               316 drivers/input/serio/hp_sdc_mlc.c 	hp_sdc_mlc_priv.trans.act.semaphore = &mlc->osem;
mlc               319 drivers/input/serio/hp_sdc_mlc.c 	mlc->cts = &hp_sdc_mlc_cts;
mlc               320 drivers/input/serio/hp_sdc_mlc.c 	mlc->in	= &hp_sdc_mlc_in;
mlc               321 drivers/input/serio/hp_sdc_mlc.c 	mlc->out = &hp_sdc_mlc_out;
mlc               322 drivers/input/serio/hp_sdc_mlc.c 	mlc->priv = &hp_sdc_mlc_priv;
mlc               324 drivers/input/serio/hp_sdc_mlc.c 	err = hil_mlc_register(mlc);
mlc               332 drivers/input/serio/hp_sdc_mlc.c 		if (hil_mlc_unregister(mlc))
mlc               343 drivers/input/serio/hp_sdc_mlc.c 	hil_mlc *mlc = &hp_sdc_mlc;
mlc               349 drivers/input/serio/hp_sdc_mlc.c 	if (hil_mlc_unregister(mlc))
mlc               311 drivers/video/fbdev/imsttfb.c 	__u8 mlc[3];	/* Memory Loop Config 0x39 */
mlc               585 drivers/video/fbdev/imsttfb.c 	__u8 mlc, lckl_p;
mlc               593 drivers/video/fbdev/imsttfb.c 			mlc = init->mlc[0];
mlc               600 drivers/video/fbdev/imsttfb.c 			mlc = init->mlc[1];
mlc               607 drivers/video/fbdev/imsttfb.c 			mlc = init->mlc[2];
mlc               614 drivers/video/fbdev/imsttfb.c 			mlc = init->mlc[2];
mlc               644 drivers/video/fbdev/imsttfb.c 	par->cmap_regs[TVPIDATA] = mlc;			eieio();
mlc                91 include/linux/hil_mlc.h typedef int	(hilse_func) (hil_mlc *mlc, int arg);
mlc               105 include/linux/hil_mlc.h typedef int	(hil_mlc_cts) (hil_mlc *mlc);
mlc               106 include/linux/hil_mlc.h typedef void	(hil_mlc_out) (hil_mlc *mlc);
mlc               107 include/linux/hil_mlc.h typedef int	(hil_mlc_in)  (hil_mlc *mlc, suseconds_t timeout);
mlc               117 include/linux/hil_mlc.h 	hil_mlc *mlc;
mlc               167 include/linux/hil_mlc.h int hil_mlc_register(hil_mlc *mlc);
mlc               168 include/linux/hil_mlc.h int hil_mlc_unregister(hil_mlc *mlc);
mlc               187 include/linux/lightnvm.h 	struct nvm_id_lp_mlc mlc;