• Home
  • Raw
  • Download

Lines Matching refs:reg

319 snd_azf3328_io_reg_setb(unsigned reg, u8 mask, bool do_set)  in snd_azf3328_io_reg_setb()  argument
324 u8 prev = inb(reg), new; in snd_azf3328_io_reg_setb()
329 outb(new, reg); in snd_azf3328_io_reg_setb()
338 unsigned reg, in snd_azf3328_codec_outb() argument
342 outb(value, codec->io_base + reg); in snd_azf3328_codec_outb()
346 snd_azf3328_codec_inb(const struct snd_azf3328_codec_data *codec, unsigned reg) in snd_azf3328_codec_inb() argument
348 return inb(codec->io_base + reg); in snd_azf3328_codec_inb()
353 unsigned reg, in snd_azf3328_codec_outw() argument
357 outw(value, codec->io_base + reg); in snd_azf3328_codec_outw()
361 snd_azf3328_codec_inw(const struct snd_azf3328_codec_data *codec, unsigned reg) in snd_azf3328_codec_inw() argument
363 return inw(codec->io_base + reg); in snd_azf3328_codec_inw()
368 unsigned reg, in snd_azf3328_codec_outl() argument
372 outl(value, codec->io_base + reg); in snd_azf3328_codec_outl()
377 unsigned reg, const void *buffer, int count in snd_azf3328_codec_outl_multi() argument
380 unsigned long addr = codec->io_base + reg; in snd_azf3328_codec_outl_multi()
391 snd_azf3328_codec_inl(const struct snd_azf3328_codec_data *codec, unsigned reg) in snd_azf3328_codec_inl() argument
393 return inl(codec->io_base + reg); in snd_azf3328_codec_inl()
397 snd_azf3328_ctrl_outb(const struct snd_azf3328 *chip, unsigned reg, u8 value) in snd_azf3328_ctrl_outb() argument
399 outb(value, chip->ctrl_io + reg); in snd_azf3328_ctrl_outb()
403 snd_azf3328_ctrl_inb(const struct snd_azf3328 *chip, unsigned reg) in snd_azf3328_ctrl_inb() argument
405 return inb(chip->ctrl_io + reg); in snd_azf3328_ctrl_inb()
409 snd_azf3328_ctrl_inw(const struct snd_azf3328 *chip, unsigned reg) in snd_azf3328_ctrl_inw() argument
411 return inw(chip->ctrl_io + reg); in snd_azf3328_ctrl_inw()
415 snd_azf3328_ctrl_outw(const struct snd_azf3328 *chip, unsigned reg, u16 value) in snd_azf3328_ctrl_outw() argument
417 outw(value, chip->ctrl_io + reg); in snd_azf3328_ctrl_outw()
421 snd_azf3328_ctrl_outl(const struct snd_azf3328 *chip, unsigned reg, u32 value) in snd_azf3328_ctrl_outl() argument
423 outl(value, chip->ctrl_io + reg); in snd_azf3328_ctrl_outl()
427 snd_azf3328_game_outb(const struct snd_azf3328 *chip, unsigned reg, u8 value) in snd_azf3328_game_outb() argument
429 outb(value, chip->game_io + reg); in snd_azf3328_game_outb()
433 snd_azf3328_game_outw(const struct snd_azf3328 *chip, unsigned reg, u16 value) in snd_azf3328_game_outw() argument
435 outw(value, chip->game_io + reg); in snd_azf3328_game_outw()
439 snd_azf3328_game_inb(const struct snd_azf3328 *chip, unsigned reg) in snd_azf3328_game_inb() argument
441 return inb(chip->game_io + reg); in snd_azf3328_game_inb()
445 snd_azf3328_game_inw(const struct snd_azf3328 *chip, unsigned reg) in snd_azf3328_game_inw() argument
447 return inw(chip->game_io + reg); in snd_azf3328_game_inw()
451 snd_azf3328_mixer_outw(const struct snd_azf3328 *chip, unsigned reg, u16 value) in snd_azf3328_mixer_outw() argument
453 outw(value, chip->mixer_io + reg); in snd_azf3328_mixer_outw()
457 snd_azf3328_mixer_inw(const struct snd_azf3328 *chip, unsigned reg) in snd_azf3328_mixer_inw() argument
459 return inw(chip->mixer_io + reg); in snd_azf3328_mixer_inw()
466 unsigned reg, bool do_mute in snd_azf3328_mixer_mute_control() argument
469 unsigned long portbase = chip->mixer_io + reg + 1; in snd_azf3328_mixer_mute_control()
518 unsigned short reg, const char *mode) in snd_azf3328_mixer_ac97_map_unsupported() argument
523 mode, reg); in snd_azf3328_mixer_ac97_map_unsupported()
541 snd_azf3328_mixer_ac97_map_reg_idx(unsigned short reg) in snd_azf3328_mixer_ac97_map_reg_idx() argument
584 if (reg <= AC97_3D_CONTROL) { in snd_azf3328_mixer_ac97_map_reg_idx()
585 unsigned short reg_idx = reg / 2; in snd_azf3328_mixer_ac97_map_reg_idx()
591 switch (reg) { in snd_azf3328_mixer_ac97_map_reg_idx()
797 unsigned reg, in snd_azf3328_mixer_write_volume_gradually() argument
803 unsigned long portbase = chip->mixer_io + reg; in snd_azf3328_mixer_write_volume_gradually()
853 unsigned reg; member
861 #define COMPOSE_MIXER_REG(reg,lchan_shift,rchan_shift,mask,invert,stereo,enum_c) \ argument
862 ((reg) | (lchan_shift << 8) | (rchan_shift << 12) | \
870 r->reg = val & 0xff; in snd_azf3328_mixer_reg_decode()
883 #define AZF3328_MIXER_SWITCH(xname, reg, shift, invert) \ argument
887 .private_value = COMPOSE_MIXER_REG(reg, shift, 0, 0x1, invert, 0, 0), \
890 #define AZF3328_MIXER_VOL_STEREO(xname, reg, mask, invert) \ argument
894 .private_value = COMPOSE_MIXER_REG(reg, 8, 0, mask, invert, 1, 0), \
897 #define AZF3328_MIXER_VOL_MONO(xname, reg, mask, is_right_chan) \ argument
901 .private_value = COMPOSE_MIXER_REG(reg, is_right_chan ? 0 : 8, 0, mask, 1, 0, 0), \
904 #define AZF3328_MIXER_VOL_SPECIAL(xname, reg, mask, shift, invert) \ argument
908 .private_value = COMPOSE_MIXER_REG(reg, shift, 0, mask, invert, 0, 0), \
911 #define AZF3328_MIXER_ENUM(xname, reg, enum_c, shift) \ argument
915 .private_value = COMPOSE_MIXER_REG(reg, shift, 0, 0, 0, 0, enum_c), \
922 struct azf3328_mixer_reg reg; in snd_azf3328_info_mixer() local
924 snd_azf3328_mixer_reg_decode(&reg, kcontrol->private_value); in snd_azf3328_info_mixer()
925 uinfo->type = reg.mask == 1 ? in snd_azf3328_info_mixer()
927 uinfo->count = reg.stereo + 1; in snd_azf3328_info_mixer()
929 uinfo->value.integer.max = reg.mask; in snd_azf3328_info_mixer()
938 struct azf3328_mixer_reg reg; in snd_azf3328_get_mixer() local
941 snd_azf3328_mixer_reg_decode(&reg, kcontrol->private_value); in snd_azf3328_get_mixer()
943 oreg = snd_azf3328_mixer_inw(chip, reg.reg); in snd_azf3328_get_mixer()
944 val = (oreg >> reg.lchan_shift) & reg.mask; in snd_azf3328_get_mixer()
945 if (reg.invert) in snd_azf3328_get_mixer()
946 val = reg.mask - val; in snd_azf3328_get_mixer()
948 if (reg.stereo) { in snd_azf3328_get_mixer()
949 val = (oreg >> reg.rchan_shift) & reg.mask; in snd_azf3328_get_mixer()
950 if (reg.invert) in snd_azf3328_get_mixer()
951 val = reg.mask - val; in snd_azf3328_get_mixer()
956 reg.reg, oreg, in snd_azf3328_get_mixer()
958 reg.lchan_shift, reg.rchan_shift, reg.mask, reg.invert, reg.stereo); in snd_azf3328_get_mixer()
967 struct azf3328_mixer_reg reg; in snd_azf3328_put_mixer() local
970 snd_azf3328_mixer_reg_decode(&reg, kcontrol->private_value); in snd_azf3328_put_mixer()
971 oreg = snd_azf3328_mixer_inw(chip, reg.reg); in snd_azf3328_put_mixer()
972 val = ucontrol->value.integer.value[0] & reg.mask; in snd_azf3328_put_mixer()
973 if (reg.invert) in snd_azf3328_put_mixer()
974 val = reg.mask - val; in snd_azf3328_put_mixer()
975 nreg = oreg & ~(reg.mask << reg.lchan_shift); in snd_azf3328_put_mixer()
976 nreg |= (val << reg.lchan_shift); in snd_azf3328_put_mixer()
977 if (reg.stereo) { in snd_azf3328_put_mixer()
978 val = ucontrol->value.integer.value[1] & reg.mask; in snd_azf3328_put_mixer()
979 if (reg.invert) in snd_azf3328_put_mixer()
980 val = reg.mask - val; in snd_azf3328_put_mixer()
981 nreg &= ~(reg.mask << reg.rchan_shift); in snd_azf3328_put_mixer()
982 nreg |= (val << reg.rchan_shift); in snd_azf3328_put_mixer()
984 if (reg.mask >= 0x07) /* it's a volume control, so better take care */ in snd_azf3328_put_mixer()
986 chip, reg.reg, nreg >> 8, nreg & 0xff, in snd_azf3328_put_mixer()
991 snd_azf3328_mixer_outw(chip, reg.reg, nreg); in snd_azf3328_put_mixer()
995 reg.reg, ucontrol->value.integer.value[0], ucontrol->value.integer.value[1], in snd_azf3328_put_mixer()
996 oreg, reg.lchan_shift, reg.rchan_shift, in snd_azf3328_put_mixer()
997 nreg, snd_azf3328_mixer_inw(chip, reg.reg)); in snd_azf3328_put_mixer()
1018 struct azf3328_mixer_reg reg; in snd_azf3328_info_mixer_enum() local
1021 snd_azf3328_mixer_reg_decode(&reg, kcontrol->private_value); in snd_azf3328_info_mixer_enum()
1022 if (reg.reg == IDX_MIXER_ADVCTL2) { in snd_azf3328_info_mixer_enum()
1023 switch(reg.lchan_shift) { in snd_azf3328_info_mixer_enum()
1034 } else if (reg.reg == IDX_MIXER_REC_SELECT) in snd_azf3328_info_mixer_enum()
1038 (reg.reg == IDX_MIXER_REC_SELECT) ? 2 : 1, in snd_azf3328_info_mixer_enum()
1039 reg.enum_c, p); in snd_azf3328_info_mixer_enum()
1047 struct azf3328_mixer_reg reg; in snd_azf3328_get_mixer_enum() local
1050 snd_azf3328_mixer_reg_decode(&reg, kcontrol->private_value); in snd_azf3328_get_mixer_enum()
1051 val = snd_azf3328_mixer_inw(chip, reg.reg); in snd_azf3328_get_mixer_enum()
1052 if (reg.reg == IDX_MIXER_REC_SELECT) { in snd_azf3328_get_mixer_enum()
1053 ucontrol->value.enumerated.item[0] = (val >> 8) & (reg.enum_c - 1); in snd_azf3328_get_mixer_enum()
1054 ucontrol->value.enumerated.item[1] = (val >> 0) & (reg.enum_c - 1); in snd_azf3328_get_mixer_enum()
1056 ucontrol->value.enumerated.item[0] = (val >> reg.lchan_shift) & (reg.enum_c - 1); in snd_azf3328_get_mixer_enum()
1060 reg.reg, val, ucontrol->value.enumerated.item[0], ucontrol->value.enumerated.item[1], in snd_azf3328_get_mixer_enum()
1061 reg.lchan_shift, reg.enum_c); in snd_azf3328_get_mixer_enum()
1070 struct azf3328_mixer_reg reg; in snd_azf3328_put_mixer_enum() local
1073 snd_azf3328_mixer_reg_decode(&reg, kcontrol->private_value); in snd_azf3328_put_mixer_enum()
1074 oreg = snd_azf3328_mixer_inw(chip, reg.reg); in snd_azf3328_put_mixer_enum()
1076 if (reg.reg == IDX_MIXER_REC_SELECT) { in snd_azf3328_put_mixer_enum()
1077 if (ucontrol->value.enumerated.item[0] > reg.enum_c - 1U || in snd_azf3328_put_mixer_enum()
1078 ucontrol->value.enumerated.item[1] > reg.enum_c - 1U) in snd_azf3328_put_mixer_enum()
1083 if (ucontrol->value.enumerated.item[0] > reg.enum_c - 1U) in snd_azf3328_put_mixer_enum()
1085 val &= ~((reg.enum_c - 1) << reg.lchan_shift); in snd_azf3328_put_mixer_enum()
1086 val |= (ucontrol->value.enumerated.item[0] << reg.lchan_shift); in snd_azf3328_put_mixer_enum()
1088 snd_azf3328_mixer_outw(chip, reg.reg, val); in snd_azf3328_put_mixer_enum()
1092 "put_enum: %02x to %04x, oreg %04x\n", reg.reg, val, oreg); in snd_azf3328_put_mixer_enum()
2261 snd_azf3328_test_bit(unsigned unsigned reg, int bit)
2265 val = inb(reg);
2267 outb(val & ~(1 << bit), reg);
2268 valoff = inb(reg);
2270 outb(val|(1 << bit), reg);
2271 valon = inb(reg);
2273 outb(val, reg);
2276 reg, bit, val, valoff, valon
2534 unsigned reg; in snd_azf3328_suspend_regs() local
2536 for (reg = 0; reg < count; ++reg) { in snd_azf3328_suspend_regs()
2552 unsigned reg; in snd_azf3328_resume_regs() local
2554 for (reg = 0; reg < count; ++reg) { in snd_azf3328_resume_regs()