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;