idev 367 arch/arm/mach-integrator/impd1.c struct impd1_device *idev = impd1_devs + i; idev 371 arch/arm/mach-integrator/impd1.c int irq1 = idev->irq[0]; idev 372 arch/arm/mach-integrator/impd1.c int irq2 = idev->irq[1]; idev 380 arch/arm/mach-integrator/impd1.c pc_base = dev->resource.start + idev->offset; idev 381 arch/arm/mach-integrator/impd1.c snprintf(devname, 32, "lm%x:%5.5lx", dev->id, idev->offset >> 12); idev 384 arch/arm/mach-integrator/impd1.c if (idev->offset == 0x00400000) { idev 425 arch/arm/mach-integrator/impd1.c idev->platform_data, idev->id, idev 252 arch/x86/platform/intel-mid/sfi.c struct i2c_board_info *idev) idev 261 arch/x86/platform/intel-mid/sfi.c new_dev = kzalloc(sizeof(*idev), GFP_KERNEL); idev 264 arch/x86/platform/intel-mid/sfi.c idev->type); idev 267 arch/x86/platform/intel-mid/sfi.c *new_dev = *idev; idev 108 arch/x86/platform/intel-quark/imr.c static int imr_read(struct imr_device *idev, u32 imr_id, struct imr_regs *imr) idev 110 arch/x86/platform/intel-quark/imr.c u32 reg = imr_id * IMR_NUM_REGS + idev->reg_base; idev 139 arch/x86/platform/intel-quark/imr.c static int imr_write(struct imr_device *idev, u32 imr_id, struct imr_regs *imr) idev 142 arch/x86/platform/intel-quark/imr.c u32 reg = imr_id * IMR_NUM_REGS + idev->reg_base; idev 190 arch/x86/platform/intel-quark/imr.c struct imr_device *idev = s->private; idev 195 arch/x86/platform/intel-quark/imr.c mutex_lock(&idev->lock); idev 197 arch/x86/platform/intel-quark/imr.c for (i = 0; i < idev->max_imr; i++) { idev 199 arch/x86/platform/intel-quark/imr.c ret = imr_read(idev, i, &imr); idev 224 arch/x86/platform/intel-quark/imr.c mutex_unlock(&idev->lock); idev 234 arch/x86/platform/intel-quark/imr.c static void imr_debugfs_register(struct imr_device *idev) idev 236 arch/x86/platform/intel-quark/imr.c debugfs_create_file("imr_state", 0444, NULL, idev, idev 301 arch/x86/platform/intel-quark/imr.c struct imr_device *idev = &imr_dev; idev 307 arch/x86/platform/intel-quark/imr.c if (WARN_ONCE(idev->init == false, "driver not initialized")) idev 329 arch/x86/platform/intel-quark/imr.c mutex_lock(&idev->lock); idev 338 arch/x86/platform/intel-quark/imr.c for (i = 0; i < idev->max_imr; i++) { idev 339 arch/x86/platform/intel-quark/imr.c ret = imr_read(idev, i, &imr); idev 370 arch/x86/platform/intel-quark/imr.c ret = imr_write(idev, reg, &imr); idev 381 arch/x86/platform/intel-quark/imr.c imr_write(idev, reg, &imr); idev 384 arch/x86/platform/intel-quark/imr.c mutex_unlock(&idev->lock); idev 410 arch/x86/platform/intel-quark/imr.c struct imr_device *idev = &imr_dev; idev 415 arch/x86/platform/intel-quark/imr.c if (WARN_ONCE(idev->init == false, "driver not initialized")) idev 432 arch/x86/platform/intel-quark/imr.c mutex_lock(&idev->lock); idev 436 arch/x86/platform/intel-quark/imr.c ret = imr_read(idev, reg, &imr); idev 447 arch/x86/platform/intel-quark/imr.c for (i = 0; i < idev->max_imr; i++) { idev 448 arch/x86/platform/intel-quark/imr.c ret = imr_read(idev, i, &imr); idev 477 arch/x86/platform/intel-quark/imr.c ret = imr_write(idev, reg, &imr); idev 480 arch/x86/platform/intel-quark/imr.c mutex_unlock(&idev->lock); idev 535 arch/x86/platform/intel-quark/imr.c static void __init imr_fixup_memmap(struct imr_device *idev) idev 544 arch/x86/platform/intel-quark/imr.c for (i = 0; i < idev->max_imr; i++) idev 581 arch/x86/platform/intel-quark/imr.c struct imr_device *idev = &imr_dev; idev 586 arch/x86/platform/intel-quark/imr.c idev->max_imr = QUARK_X1000_IMR_MAX; idev 587 arch/x86/platform/intel-quark/imr.c idev->reg_base = QUARK_X1000_IMR_REGBASE; idev 588 arch/x86/platform/intel-quark/imr.c idev->init = true; idev 590 arch/x86/platform/intel-quark/imr.c mutex_init(&idev->lock); idev 591 arch/x86/platform/intel-quark/imr.c imr_debugfs_register(idev); idev 592 arch/x86/platform/intel-quark/imr.c imr_fixup_memmap(idev); idev 48 drivers/ata/pata_isapnp.c static int isapnp_init_one(struct pnp_dev *idev, const struct pnp_device_id *dev_id) idev 56 drivers/ata/pata_isapnp.c if (pnp_port_valid(idev, 0) == 0) idev 59 drivers/ata/pata_isapnp.c if (pnp_irq_valid(idev, 0)) { idev 60 drivers/ata/pata_isapnp.c irq = pnp_irq(idev, 0); idev 65 drivers/ata/pata_isapnp.c host = ata_host_alloc(&idev->dev, 1); idev 70 drivers/ata/pata_isapnp.c cmd_addr = devm_ioport_map(&idev->dev, pnp_port_start(idev, 0), 8); idev 82 drivers/ata/pata_isapnp.c if (pnp_port_valid(idev, 1)) { idev 83 drivers/ata/pata_isapnp.c ctl_addr = devm_ioport_map(&idev->dev, idev 84 drivers/ata/pata_isapnp.c pnp_port_start(idev, 1), 1); idev 93 drivers/ata/pata_isapnp.c (unsigned long long)pnp_port_start(idev, 0), idev 94 drivers/ata/pata_isapnp.c (unsigned long long)pnp_port_start(idev, 1)); idev 109 drivers/ata/pata_isapnp.c static void isapnp_remove_one(struct pnp_dev *idev) idev 111 drivers/ata/pata_isapnp.c struct device *dev = &idev->dev; idev 272 drivers/bluetooth/hci_intel.c struct intel_device *idev = dev_id; idev 274 drivers/bluetooth/hci_intel.c dev_info(&idev->pdev->dev, "hci_intel irq\n"); idev 276 drivers/bluetooth/hci_intel.c mutex_lock(&idev->hu_lock); idev 277 drivers/bluetooth/hci_intel.c if (idev->hu) idev 278 drivers/bluetooth/hci_intel.c intel_lpm_host_wake(idev->hu); idev 279 drivers/bluetooth/hci_intel.c mutex_unlock(&idev->hu_lock); idev 282 drivers/bluetooth/hci_intel.c pm_runtime_get(&idev->pdev->dev); idev 283 drivers/bluetooth/hci_intel.c pm_runtime_mark_last_busy(&idev->pdev->dev); idev 284 drivers/bluetooth/hci_intel.c pm_runtime_put_autosuspend(&idev->pdev->dev); idev 300 drivers/bluetooth/hci_intel.c struct intel_device *idev = list_entry(p, struct intel_device, idev 306 drivers/bluetooth/hci_intel.c if (hu->tty->dev->parent != idev->pdev->dev.parent) idev 309 drivers/bluetooth/hci_intel.c if (!idev->reset) { idev 315 drivers/bluetooth/hci_intel.c hu, dev_name(&idev->pdev->dev), powered); idev 317 drivers/bluetooth/hci_intel.c gpiod_set_value(idev->reset, powered); idev 324 drivers/bluetooth/hci_intel.c mutex_lock(&idev->hu_lock); idev 325 drivers/bluetooth/hci_intel.c idev->hu = powered ? hu : NULL; idev 326 drivers/bluetooth/hci_intel.c mutex_unlock(&idev->hu_lock); idev 328 drivers/bluetooth/hci_intel.c if (idev->irq < 0) idev 331 drivers/bluetooth/hci_intel.c if (powered && device_can_wakeup(&idev->pdev->dev)) { idev 332 drivers/bluetooth/hci_intel.c err = devm_request_threaded_irq(&idev->pdev->dev, idev 333 drivers/bluetooth/hci_intel.c idev->irq, NULL, idev 336 drivers/bluetooth/hci_intel.c "bt-host-wake", idev); idev 339 drivers/bluetooth/hci_intel.c hu, idev->irq); idev 343 drivers/bluetooth/hci_intel.c device_wakeup_enable(&idev->pdev->dev); idev 345 drivers/bluetooth/hci_intel.c pm_runtime_set_active(&idev->pdev->dev); idev 346 drivers/bluetooth/hci_intel.c pm_runtime_use_autosuspend(&idev->pdev->dev); idev 347 drivers/bluetooth/hci_intel.c pm_runtime_set_autosuspend_delay(&idev->pdev->dev, idev 349 drivers/bluetooth/hci_intel.c pm_runtime_enable(&idev->pdev->dev); idev 350 drivers/bluetooth/hci_intel.c } else if (!powered && device_may_wakeup(&idev->pdev->dev)) { idev 351 drivers/bluetooth/hci_intel.c devm_free_irq(&idev->pdev->dev, idev->irq, idev); idev 352 drivers/bluetooth/hci_intel.c device_wakeup_disable(&idev->pdev->dev); idev 354 drivers/bluetooth/hci_intel.c pm_runtime_disable(&idev->pdev->dev); idev 375 drivers/bluetooth/hci_intel.c struct intel_device *idev = list_entry(p, struct intel_device, idev 378 drivers/bluetooth/hci_intel.c if (intel->hu->tty->dev->parent == idev->pdev->dev.parent) { idev 379 drivers/bluetooth/hci_intel.c pm_runtime_get(&idev->pdev->dev); idev 380 drivers/bluetooth/hci_intel.c pm_runtime_mark_last_busy(&idev->pdev->dev); idev 381 drivers/bluetooth/hci_intel.c pm_runtime_put_autosuspend(&idev->pdev->dev); idev 1014 drivers/bluetooth/hci_intel.c struct intel_device *idev = list_entry(p, struct intel_device, idev 1017 drivers/bluetooth/hci_intel.c if (hu->tty->dev->parent == idev->pdev->dev.parent) { idev 1018 drivers/bluetooth/hci_intel.c pm_runtime_get_sync(&idev->pdev->dev); idev 1019 drivers/bluetooth/hci_intel.c pm_runtime_mark_last_busy(&idev->pdev->dev); idev 1020 drivers/bluetooth/hci_intel.c pm_runtime_put_autosuspend(&idev->pdev->dev); idev 1087 drivers/bluetooth/hci_intel.c struct intel_device *idev = dev_get_drvdata(dev); idev 1089 drivers/bluetooth/hci_intel.c mutex_lock(&idev->hu_lock); idev 1090 drivers/bluetooth/hci_intel.c if (idev->hu) idev 1091 drivers/bluetooth/hci_intel.c intel_lpm_suspend(idev->hu); idev 1092 drivers/bluetooth/hci_intel.c mutex_unlock(&idev->hu_lock); idev 1099 drivers/bluetooth/hci_intel.c struct intel_device *idev = dev_get_drvdata(dev); idev 1101 drivers/bluetooth/hci_intel.c mutex_lock(&idev->hu_lock); idev 1102 drivers/bluetooth/hci_intel.c if (idev->hu) idev 1103 drivers/bluetooth/hci_intel.c intel_lpm_resume(idev->hu); idev 1104 drivers/bluetooth/hci_intel.c mutex_unlock(&idev->hu_lock); idev 1113 drivers/bluetooth/hci_intel.c struct intel_device *idev = dev_get_drvdata(dev); idev 1116 drivers/bluetooth/hci_intel.c enable_irq_wake(idev->irq); idev 1123 drivers/bluetooth/hci_intel.c struct intel_device *idev = dev_get_drvdata(dev); idev 1126 drivers/bluetooth/hci_intel.c disable_irq_wake(idev->irq); idev 1148 drivers/bluetooth/hci_intel.c struct intel_device *idev; idev 1151 drivers/bluetooth/hci_intel.c idev = devm_kzalloc(&pdev->dev, sizeof(*idev), GFP_KERNEL); idev 1152 drivers/bluetooth/hci_intel.c if (!idev) idev 1155 drivers/bluetooth/hci_intel.c mutex_init(&idev->hu_lock); idev 1157 drivers/bluetooth/hci_intel.c idev->pdev = pdev; idev 1163 drivers/bluetooth/hci_intel.c idev->reset = devm_gpiod_get(&pdev->dev, "reset", GPIOD_OUT_LOW); idev 1164 drivers/bluetooth/hci_intel.c if (IS_ERR(idev->reset)) { idev 1166 drivers/bluetooth/hci_intel.c return PTR_ERR(idev->reset); idev 1169 drivers/bluetooth/hci_intel.c idev->irq = platform_get_irq(pdev, 0); idev 1170 drivers/bluetooth/hci_intel.c if (idev->irq < 0) { idev 1181 drivers/bluetooth/hci_intel.c idev->irq = gpiod_to_irq(host_wake); idev 1182 drivers/bluetooth/hci_intel.c if (idev->irq < 0) { idev 1193 drivers/bluetooth/hci_intel.c platform_set_drvdata(pdev, idev); idev 1197 drivers/bluetooth/hci_intel.c list_add_tail(&idev->list, &intel_device_list); idev 1201 drivers/bluetooth/hci_intel.c desc_to_gpio(idev->reset), idev->irq); idev 1208 drivers/bluetooth/hci_intel.c struct intel_device *idev = platform_get_drvdata(pdev); idev 1213 drivers/bluetooth/hci_intel.c list_del(&idev->list); idev 2054 drivers/hid/hid-logitech-hidpp.c struct input_dev *idev = hidinput->input; idev 2055 drivers/hid/hid-logitech-hidpp.c struct hidpp_ff_private_data *data = idev->ff->private; idev 2064 drivers/hid/hid-logitech-hidpp.c struct input_dev *idev = hidinput->input; idev 2065 drivers/hid/hid-logitech-hidpp.c struct hidpp_ff_private_data *data = idev->ff->private; idev 412 drivers/hid/hid-picolcd_core.c struct input_dev *idev; idev 423 drivers/hid/hid-picolcd_core.c idev = input_allocate_device(); idev 424 drivers/hid/hid-picolcd_core.c if (idev == NULL) { idev 428 drivers/hid/hid-picolcd_core.c input_set_drvdata(idev, hdev); idev 430 drivers/hid/hid-picolcd_core.c idev->name = hdev->name; idev 431 drivers/hid/hid-picolcd_core.c idev->phys = hdev->phys; idev 432 drivers/hid/hid-picolcd_core.c idev->uniq = hdev->uniq; idev 433 drivers/hid/hid-picolcd_core.c idev->id.bustype = hdev->bus; idev 434 drivers/hid/hid-picolcd_core.c idev->id.vendor = hdev->vendor; idev 435 drivers/hid/hid-picolcd_core.c idev->id.product = hdev->product; idev 436 drivers/hid/hid-picolcd_core.c idev->id.version = hdev->version; idev 437 drivers/hid/hid-picolcd_core.c idev->dev.parent = &hdev->dev; idev 438 drivers/hid/hid-picolcd_core.c idev->keycode = &data->keycode; idev 439 drivers/hid/hid-picolcd_core.c idev->keycodemax = PICOLCD_KEYS; idev 440 drivers/hid/hid-picolcd_core.c idev->keycodesize = sizeof(data->keycode[0]); idev 441 drivers/hid/hid-picolcd_core.c input_set_capability(idev, EV_MSC, MSC_SCAN); idev 442 drivers/hid/hid-picolcd_core.c set_bit(EV_REP, idev->evbit); idev 444 drivers/hid/hid-picolcd_core.c input_set_capability(idev, EV_KEY, data->keycode[i]); idev 445 drivers/hid/hid-picolcd_core.c error = input_register_device(idev); idev 448 drivers/hid/hid-picolcd_core.c input_free_device(idev); idev 451 drivers/hid/hid-picolcd_core.c data->input_keys = idev; idev 457 drivers/hid/hid-picolcd_core.c struct input_dev *idev = data->input_keys; idev 460 drivers/hid/hid-picolcd_core.c if (idev) idev 461 drivers/hid/hid-picolcd_core.c input_unregister_device(idev); idev 686 drivers/hwmon/applesmc.c struct input_dev *idev = dev->input; idev 695 drivers/hwmon/applesmc.c input_report_abs(idev, ABS_X, x - rest_x); idev 696 drivers/hwmon/applesmc.c input_report_abs(idev, ABS_Y, y - rest_y); idev 697 drivers/hwmon/applesmc.c input_sync(idev); idev 1137 drivers/hwmon/applesmc.c struct input_dev *idev; idev 1160 drivers/hwmon/applesmc.c idev = applesmc_idev->input; idev 1161 drivers/hwmon/applesmc.c idev->name = "applesmc"; idev 1162 drivers/hwmon/applesmc.c idev->id.bustype = BUS_HOST; idev 1163 drivers/hwmon/applesmc.c idev->dev.parent = &pdev->dev; idev 1164 drivers/hwmon/applesmc.c idev->evbit[0] = BIT_MASK(EV_ABS); idev 1165 drivers/hwmon/applesmc.c input_set_abs_params(idev, ABS_X, idev 1167 drivers/hwmon/applesmc.c input_set_abs_params(idev, ABS_Y, idev 94 drivers/i2c/busses/i2c-altera.c altr_i2c_int_enable(struct altr_i2c_dev *idev, u32 mask, bool enable) idev 99 drivers/i2c/busses/i2c-altera.c spin_lock_irqsave(&idev->lock, flags); idev 101 drivers/i2c/busses/i2c-altera.c int_en = readl(idev->base + ALTR_I2C_ISER); idev 103 drivers/i2c/busses/i2c-altera.c idev->isr_mask = int_en | mask; idev 105 drivers/i2c/busses/i2c-altera.c idev->isr_mask = int_en & ~mask; idev 107 drivers/i2c/busses/i2c-altera.c writel(idev->isr_mask, idev->base + ALTR_I2C_ISER); idev 109 drivers/i2c/busses/i2c-altera.c spin_unlock_irqrestore(&idev->lock, flags); idev 112 drivers/i2c/busses/i2c-altera.c static void altr_i2c_int_clear(struct altr_i2c_dev *idev, u32 mask) idev 114 drivers/i2c/busses/i2c-altera.c u32 int_en = readl(idev->base + ALTR_I2C_ISR); idev 116 drivers/i2c/busses/i2c-altera.c writel(int_en | mask, idev->base + ALTR_I2C_ISR); idev 119 drivers/i2c/busses/i2c-altera.c static void altr_i2c_core_disable(struct altr_i2c_dev *idev) idev 121 drivers/i2c/busses/i2c-altera.c u32 tmp = readl(idev->base + ALTR_I2C_CTRL); idev 123 drivers/i2c/busses/i2c-altera.c writel(tmp & ~ALTR_I2C_CTRL_EN, idev->base + ALTR_I2C_CTRL); idev 126 drivers/i2c/busses/i2c-altera.c static void altr_i2c_core_enable(struct altr_i2c_dev *idev) idev 128 drivers/i2c/busses/i2c-altera.c u32 tmp = readl(idev->base + ALTR_I2C_CTRL); idev 130 drivers/i2c/busses/i2c-altera.c writel(tmp | ALTR_I2C_CTRL_EN, idev->base + ALTR_I2C_CTRL); idev 133 drivers/i2c/busses/i2c-altera.c static void altr_i2c_reset(struct altr_i2c_dev *idev) idev 135 drivers/i2c/busses/i2c-altera.c altr_i2c_core_disable(idev); idev 136 drivers/i2c/busses/i2c-altera.c altr_i2c_core_enable(idev); idev 139 drivers/i2c/busses/i2c-altera.c static inline void altr_i2c_stop(struct altr_i2c_dev *idev) idev 141 drivers/i2c/busses/i2c-altera.c writel(ALTR_I2C_TFR_CMD_STO, idev->base + ALTR_I2C_TFR_CMD); idev 144 drivers/i2c/busses/i2c-altera.c static void altr_i2c_init(struct altr_i2c_dev *idev) idev 146 drivers/i2c/busses/i2c-altera.c u32 divisor = clk_get_rate(idev->i2c_clk) / idev->bus_clk_rate; idev 147 drivers/i2c/busses/i2c-altera.c u32 clk_mhz = clk_get_rate(idev->i2c_clk) / 1000000; idev 152 drivers/i2c/busses/i2c-altera.c if (idev->bus_clk_rate <= 100000) { idev 163 drivers/i2c/busses/i2c-altera.c writel(tmp, idev->base + ALTR_I2C_CTRL); idev 165 drivers/i2c/busses/i2c-altera.c dev_dbg(idev->dev, "rate=%uHz per_clk=%uMHz -> ratio=1:%u\n", idev 166 drivers/i2c/busses/i2c-altera.c idev->bus_clk_rate, clk_mhz, divisor); idev 169 drivers/i2c/busses/i2c-altera.c altr_i2c_reset(idev); idev 172 drivers/i2c/busses/i2c-altera.c writel(t_high, idev->base + ALTR_I2C_SCL_HIGH); idev 174 drivers/i2c/busses/i2c-altera.c writel(t_low, idev->base + ALTR_I2C_SCL_LOW); idev 176 drivers/i2c/busses/i2c-altera.c writel(3 * clk_mhz / 10, idev->base + ALTR_I2C_SDA_HOLD); idev 179 drivers/i2c/busses/i2c-altera.c altr_i2c_int_enable(idev, ALTR_I2C_ALL_IRQ, false); idev 186 drivers/i2c/busses/i2c-altera.c static void altr_i2c_transfer(struct altr_i2c_dev *idev, u32 data) idev 189 drivers/i2c/busses/i2c-altera.c if (idev->msg_len == 1) idev 191 drivers/i2c/busses/i2c-altera.c if (idev->msg_len > 0) idev 192 drivers/i2c/busses/i2c-altera.c writel(data, idev->base + ALTR_I2C_TFR_CMD); idev 199 drivers/i2c/busses/i2c-altera.c static void altr_i2c_empty_rx_fifo(struct altr_i2c_dev *idev) idev 201 drivers/i2c/busses/i2c-altera.c size_t rx_fifo_avail = readl(idev->base + ALTR_I2C_RX_FIFO_LVL); idev 202 drivers/i2c/busses/i2c-altera.c int bytes_to_transfer = min(rx_fifo_avail, idev->msg_len); idev 205 drivers/i2c/busses/i2c-altera.c *idev->buf++ = readl(idev->base + ALTR_I2C_RX_DATA); idev 206 drivers/i2c/busses/i2c-altera.c idev->msg_len--; idev 207 drivers/i2c/busses/i2c-altera.c altr_i2c_transfer(idev, 0); idev 215 drivers/i2c/busses/i2c-altera.c static int altr_i2c_fill_tx_fifo(struct altr_i2c_dev *idev) idev 217 drivers/i2c/busses/i2c-altera.c size_t tx_fifo_avail = idev->fifo_size - readl(idev->base + idev 219 drivers/i2c/busses/i2c-altera.c int bytes_to_transfer = min(tx_fifo_avail, idev->msg_len); idev 220 drivers/i2c/busses/i2c-altera.c int ret = idev->msg_len - bytes_to_transfer; idev 223 drivers/i2c/busses/i2c-altera.c altr_i2c_transfer(idev, *idev->buf++); idev 224 drivers/i2c/busses/i2c-altera.c idev->msg_len--; idev 232 drivers/i2c/busses/i2c-altera.c struct altr_i2c_dev *idev = _dev; idev 236 drivers/i2c/busses/i2c-altera.c idev->isr_status = readl(idev->base + ALTR_I2C_ISR) & idev->isr_mask; idev 237 drivers/i2c/busses/i2c-altera.c if (idev->isr_status) idev 247 drivers/i2c/busses/i2c-altera.c struct altr_i2c_dev *idev = _dev; idev 248 drivers/i2c/busses/i2c-altera.c u32 status = idev->isr_status; idev 250 drivers/i2c/busses/i2c-altera.c mutex_lock(&idev->isr_mutex); idev 251 drivers/i2c/busses/i2c-altera.c if (!idev->msg) { idev 252 drivers/i2c/busses/i2c-altera.c dev_warn(idev->dev, "unexpected interrupt\n"); idev 253 drivers/i2c/busses/i2c-altera.c altr_i2c_int_clear(idev, ALTR_I2C_ALL_IRQ); idev 256 drivers/i2c/busses/i2c-altera.c read = (idev->msg->flags & I2C_M_RD) != 0; idev 260 drivers/i2c/busses/i2c-altera.c altr_i2c_int_clear(idev, ALTR_I2C_ISR_ARB); idev 261 drivers/i2c/busses/i2c-altera.c idev->msg_err = -EAGAIN; idev 264 drivers/i2c/busses/i2c-altera.c dev_dbg(idev->dev, "Could not get ACK\n"); idev 265 drivers/i2c/busses/i2c-altera.c idev->msg_err = -ENXIO; idev 266 drivers/i2c/busses/i2c-altera.c altr_i2c_int_clear(idev, ALTR_I2C_ISR_NACK); idev 267 drivers/i2c/busses/i2c-altera.c altr_i2c_stop(idev); idev 271 drivers/i2c/busses/i2c-altera.c altr_i2c_empty_rx_fifo(idev); idev 272 drivers/i2c/busses/i2c-altera.c altr_i2c_int_clear(idev, ALTR_I2C_ISR_RXRDY); idev 273 drivers/i2c/busses/i2c-altera.c altr_i2c_stop(idev); idev 274 drivers/i2c/busses/i2c-altera.c dev_err(idev->dev, "RX FIFO Overflow\n"); idev 278 drivers/i2c/busses/i2c-altera.c altr_i2c_empty_rx_fifo(idev); idev 279 drivers/i2c/busses/i2c-altera.c altr_i2c_int_clear(idev, ALTR_I2C_ISR_RXRDY); idev 280 drivers/i2c/busses/i2c-altera.c if (!idev->msg_len) idev 284 drivers/i2c/busses/i2c-altera.c altr_i2c_int_clear(idev, ALTR_I2C_ISR_TXRDY); idev 285 drivers/i2c/busses/i2c-altera.c if (idev->msg_len > 0) idev 286 drivers/i2c/busses/i2c-altera.c altr_i2c_fill_tx_fifo(idev); idev 290 drivers/i2c/busses/i2c-altera.c dev_warn(idev->dev, "Unexpected interrupt: 0x%x\n", status); idev 291 drivers/i2c/busses/i2c-altera.c altr_i2c_int_clear(idev, ALTR_I2C_ALL_IRQ); idev 296 drivers/i2c/busses/i2c-altera.c ret = readl_poll_timeout_atomic(idev->base + ALTR_I2C_STATUS, idev 301 drivers/i2c/busses/i2c-altera.c dev_err(idev->dev, "message timeout\n"); idev 302 drivers/i2c/busses/i2c-altera.c altr_i2c_int_enable(idev, ALTR_I2C_ALL_IRQ, false); idev 303 drivers/i2c/busses/i2c-altera.c altr_i2c_int_clear(idev, ALTR_I2C_ALL_IRQ); idev 304 drivers/i2c/busses/i2c-altera.c complete(&idev->msg_complete); idev 305 drivers/i2c/busses/i2c-altera.c dev_dbg(idev->dev, "Message Complete\n"); idev 308 drivers/i2c/busses/i2c-altera.c mutex_unlock(&idev->isr_mutex); idev 313 drivers/i2c/busses/i2c-altera.c static int altr_i2c_xfer_msg(struct altr_i2c_dev *idev, struct i2c_msg *msg) idev 320 drivers/i2c/busses/i2c-altera.c mutex_lock(&idev->isr_mutex); idev 321 drivers/i2c/busses/i2c-altera.c idev->msg = msg; idev 322 drivers/i2c/busses/i2c-altera.c idev->msg_len = msg->len; idev 323 drivers/i2c/busses/i2c-altera.c idev->buf = msg->buf; idev 324 drivers/i2c/busses/i2c-altera.c idev->msg_err = 0; idev 325 drivers/i2c/busses/i2c-altera.c reinit_completion(&idev->msg_complete); idev 326 drivers/i2c/busses/i2c-altera.c altr_i2c_core_enable(idev); idev 330 drivers/i2c/busses/i2c-altera.c readl(idev->base + ALTR_I2C_RX_DATA); idev 331 drivers/i2c/busses/i2c-altera.c } while (readl(idev->base + ALTR_I2C_RX_FIFO_LVL)); idev 333 drivers/i2c/busses/i2c-altera.c writel(ALTR_I2C_TFR_CMD_STA | addr, idev->base + ALTR_I2C_TFR_CMD); idev 337 drivers/i2c/busses/i2c-altera.c altr_i2c_int_enable(idev, imask, true); idev 339 drivers/i2c/busses/i2c-altera.c altr_i2c_transfer(idev, 0); idev 342 drivers/i2c/busses/i2c-altera.c altr_i2c_int_enable(idev, imask, true); idev 343 drivers/i2c/busses/i2c-altera.c altr_i2c_fill_tx_fifo(idev); idev 345 drivers/i2c/busses/i2c-altera.c mutex_unlock(&idev->isr_mutex); idev 347 drivers/i2c/busses/i2c-altera.c time_left = wait_for_completion_timeout(&idev->msg_complete, idev 349 drivers/i2c/busses/i2c-altera.c altr_i2c_int_enable(idev, imask, false); idev 351 drivers/i2c/busses/i2c-altera.c value = readl(idev->base + ALTR_I2C_STATUS) & ALTR_I2C_STAT_CORE; idev 353 drivers/i2c/busses/i2c-altera.c dev_err(idev->dev, "Core Status not IDLE...\n"); idev 356 drivers/i2c/busses/i2c-altera.c idev->msg_err = -ETIMEDOUT; idev 357 drivers/i2c/busses/i2c-altera.c dev_dbg(idev->dev, "Transaction timed out.\n"); idev 360 drivers/i2c/busses/i2c-altera.c altr_i2c_core_disable(idev); idev 362 drivers/i2c/busses/i2c-altera.c return idev->msg_err; idev 368 drivers/i2c/busses/i2c-altera.c struct altr_i2c_dev *idev = i2c_get_adapdata(adap); idev 372 drivers/i2c/busses/i2c-altera.c ret = altr_i2c_xfer_msg(idev, msgs++); idev 391 drivers/i2c/busses/i2c-altera.c struct altr_i2c_dev *idev = NULL; idev 395 drivers/i2c/busses/i2c-altera.c idev = devm_kzalloc(&pdev->dev, sizeof(*idev), GFP_KERNEL); idev 396 drivers/i2c/busses/i2c-altera.c if (!idev) idev 400 drivers/i2c/busses/i2c-altera.c idev->base = devm_ioremap_resource(&pdev->dev, res); idev 401 drivers/i2c/busses/i2c-altera.c if (IS_ERR(idev->base)) idev 402 drivers/i2c/busses/i2c-altera.c return PTR_ERR(idev->base); idev 410 drivers/i2c/busses/i2c-altera.c idev->i2c_clk = devm_clk_get(&pdev->dev, NULL); idev 411 drivers/i2c/busses/i2c-altera.c if (IS_ERR(idev->i2c_clk)) { idev 413 drivers/i2c/busses/i2c-altera.c return PTR_ERR(idev->i2c_clk); idev 416 drivers/i2c/busses/i2c-altera.c idev->dev = &pdev->dev; idev 417 drivers/i2c/busses/i2c-altera.c init_completion(&idev->msg_complete); idev 418 drivers/i2c/busses/i2c-altera.c spin_lock_init(&idev->lock); idev 419 drivers/i2c/busses/i2c-altera.c mutex_init(&idev->isr_mutex); idev 421 drivers/i2c/busses/i2c-altera.c ret = device_property_read_u32(idev->dev, "fifo-size", idev 422 drivers/i2c/busses/i2c-altera.c &idev->fifo_size); idev 426 drivers/i2c/busses/i2c-altera.c idev->fifo_size = ALTR_I2C_DFLT_FIFO_SZ; idev 429 drivers/i2c/busses/i2c-altera.c ret = device_property_read_u32(idev->dev, "clock-frequency", idev 430 drivers/i2c/busses/i2c-altera.c &idev->bus_clk_rate); idev 433 drivers/i2c/busses/i2c-altera.c idev->bus_clk_rate = 100000; /* default clock rate */ idev 436 drivers/i2c/busses/i2c-altera.c if (idev->bus_clk_rate > 400000) { idev 438 drivers/i2c/busses/i2c-altera.c idev->bus_clk_rate); idev 444 drivers/i2c/busses/i2c-altera.c pdev->name, idev); idev 450 drivers/i2c/busses/i2c-altera.c ret = clk_prepare_enable(idev->i2c_clk); idev 456 drivers/i2c/busses/i2c-altera.c altr_i2c_init(idev); idev 458 drivers/i2c/busses/i2c-altera.c i2c_set_adapdata(&idev->adapter, idev); idev 459 drivers/i2c/busses/i2c-altera.c strlcpy(idev->adapter.name, pdev->name, sizeof(idev->adapter.name)); idev 460 drivers/i2c/busses/i2c-altera.c idev->adapter.owner = THIS_MODULE; idev 461 drivers/i2c/busses/i2c-altera.c idev->adapter.algo = &altr_i2c_algo; idev 462 drivers/i2c/busses/i2c-altera.c idev->adapter.dev.parent = &pdev->dev; idev 463 drivers/i2c/busses/i2c-altera.c idev->adapter.dev.of_node = pdev->dev.of_node; idev 465 drivers/i2c/busses/i2c-altera.c platform_set_drvdata(pdev, idev); idev 467 drivers/i2c/busses/i2c-altera.c ret = i2c_add_adapter(&idev->adapter); idev 469 drivers/i2c/busses/i2c-altera.c clk_disable_unprepare(idev->i2c_clk); idev 479 drivers/i2c/busses/i2c-altera.c struct altr_i2c_dev *idev = platform_get_drvdata(pdev); idev 481 drivers/i2c/busses/i2c-altera.c clk_disable_unprepare(idev->i2c_clk); idev 482 drivers/i2c/busses/i2c-altera.c i2c_del_adapter(&idev->adapter); idev 152 drivers/i2c/busses/i2c-axxia.c static void i2c_int_disable(struct axxia_i2c_dev *idev, u32 mask) idev 156 drivers/i2c/busses/i2c-axxia.c int_en = readl(idev->base + MST_INT_ENABLE); idev 157 drivers/i2c/busses/i2c-axxia.c writel(int_en & ~mask, idev->base + MST_INT_ENABLE); idev 160 drivers/i2c/busses/i2c-axxia.c static void i2c_int_enable(struct axxia_i2c_dev *idev, u32 mask) idev 164 drivers/i2c/busses/i2c-axxia.c int_en = readl(idev->base + MST_INT_ENABLE); idev 165 drivers/i2c/busses/i2c-axxia.c writel(int_en | mask, idev->base + MST_INT_ENABLE); idev 176 drivers/i2c/busses/i2c-axxia.c static int axxia_i2c_init(struct axxia_i2c_dev *idev) idev 178 drivers/i2c/busses/i2c-axxia.c u32 divisor = clk_get_rate(idev->i2c_clk) / idev->bus_clk_rate; idev 179 drivers/i2c/busses/i2c-axxia.c u32 clk_mhz = clk_get_rate(idev->i2c_clk) / 1000000; idev 186 drivers/i2c/busses/i2c-axxia.c dev_dbg(idev->dev, "rate=%uHz per_clk=%uMHz -> ratio=1:%u\n", idev 187 drivers/i2c/busses/i2c-axxia.c idev->bus_clk_rate, clk_mhz, divisor); idev 190 drivers/i2c/busses/i2c-axxia.c writel(0x01, idev->base + SOFT_RESET); idev 192 drivers/i2c/busses/i2c-axxia.c while (readl(idev->base + SOFT_RESET) & 1) { idev 194 drivers/i2c/busses/i2c-axxia.c dev_warn(idev->dev, "Soft reset failed\n"); idev 200 drivers/i2c/busses/i2c-axxia.c writel(0x1, idev->base + GLOBAL_CONTROL); idev 202 drivers/i2c/busses/i2c-axxia.c if (idev->bus_clk_rate <= 100000) { idev 215 drivers/i2c/busses/i2c-axxia.c writel(t_high, idev->base + SCL_HIGH_PERIOD); idev 217 drivers/i2c/busses/i2c-axxia.c writel(t_low, idev->base + SCL_LOW_PERIOD); idev 219 drivers/i2c/busses/i2c-axxia.c writel(t_setup, idev->base + SDA_SETUP_TIME); idev 221 drivers/i2c/busses/i2c-axxia.c writel(ns_to_clk(300, clk_mhz), idev->base + SDA_HOLD_TIME); idev 223 drivers/i2c/busses/i2c-axxia.c writel(ns_to_clk(50, clk_mhz), idev->base + SPIKE_FLTR_LEN); idev 238 drivers/i2c/busses/i2c-axxia.c writel(prescale, idev->base + TIMER_CLOCK_DIV); idev 240 drivers/i2c/busses/i2c-axxia.c writel(WT_EN | WT_VALUE(tmo_clk), idev->base + WAIT_TIMER_CONTROL); idev 243 drivers/i2c/busses/i2c-axxia.c i2c_int_disable(idev, ~0); idev 246 drivers/i2c/busses/i2c-axxia.c writel(0x01, idev->base + INTERRUPT_ENABLE); idev 270 drivers/i2c/busses/i2c-axxia.c static int axxia_i2c_empty_rx_fifo(struct axxia_i2c_dev *idev) idev 272 drivers/i2c/busses/i2c-axxia.c struct i2c_msg *msg = idev->msg_r; idev 273 drivers/i2c/busses/i2c-axxia.c size_t rx_fifo_avail = readl(idev->base + MST_RX_FIFO); idev 274 drivers/i2c/busses/i2c-axxia.c int bytes_to_transfer = min(rx_fifo_avail, msg->len - idev->msg_xfrd_r); idev 277 drivers/i2c/busses/i2c-axxia.c int c = readl(idev->base + MST_DATA); idev 279 drivers/i2c/busses/i2c-axxia.c if (idev->msg_xfrd_r == 0 && i2c_m_recv_len(msg)) { idev 284 drivers/i2c/busses/i2c-axxia.c idev->msg_err = -EPROTO; idev 285 drivers/i2c/busses/i2c-axxia.c i2c_int_disable(idev, ~MST_STATUS_TSS); idev 286 drivers/i2c/busses/i2c-axxia.c complete(&idev->msg_complete); idev 290 drivers/i2c/busses/i2c-axxia.c writel(msg->len, idev->base + MST_RX_XFER); idev 292 drivers/i2c/busses/i2c-axxia.c msg->buf[idev->msg_xfrd_r++] = c; idev 302 drivers/i2c/busses/i2c-axxia.c static int axxia_i2c_fill_tx_fifo(struct axxia_i2c_dev *idev) idev 304 drivers/i2c/busses/i2c-axxia.c struct i2c_msg *msg = idev->msg; idev 305 drivers/i2c/busses/i2c-axxia.c size_t tx_fifo_avail = FIFO_SIZE - readl(idev->base + MST_TX_FIFO); idev 306 drivers/i2c/busses/i2c-axxia.c int bytes_to_transfer = min(tx_fifo_avail, msg->len - idev->msg_xfrd); idev 307 drivers/i2c/busses/i2c-axxia.c int ret = msg->len - idev->msg_xfrd - bytes_to_transfer; idev 310 drivers/i2c/busses/i2c-axxia.c writel(msg->buf[idev->msg_xfrd++], idev->base + MST_DATA); idev 315 drivers/i2c/busses/i2c-axxia.c static void axxia_i2c_slv_fifo_event(struct axxia_i2c_dev *idev) idev 317 drivers/i2c/busses/i2c-axxia.c u32 fifo_status = readl(idev->base + SLV_RX_FIFO); idev 320 drivers/i2c/busses/i2c-axxia.c dev_dbg(idev->dev, "slave irq fifo_status=0x%x\n", fifo_status); idev 324 drivers/i2c/busses/i2c-axxia.c i2c_slave_event(idev->slave, idev 327 drivers/i2c/busses/i2c-axxia.c val = readl(idev->base + SLV_DATA); idev 328 drivers/i2c/busses/i2c-axxia.c i2c_slave_event(idev->slave, I2C_SLAVE_WRITE_RECEIVED, &val); idev 331 drivers/i2c/busses/i2c-axxia.c readl(idev->base + SLV_DATA); /* dummy read */ idev 332 drivers/i2c/busses/i2c-axxia.c i2c_slave_event(idev->slave, I2C_SLAVE_STOP, &val); idev 335 drivers/i2c/busses/i2c-axxia.c readl(idev->base + SLV_DATA); /* dummy read */ idev 338 drivers/i2c/busses/i2c-axxia.c static irqreturn_t axxia_i2c_slv_isr(struct axxia_i2c_dev *idev) idev 340 drivers/i2c/busses/i2c-axxia.c u32 status = readl(idev->base + SLV_INT_STATUS); idev 343 drivers/i2c/busses/i2c-axxia.c dev_dbg(idev->dev, "slave irq status=0x%x\n", status); idev 346 drivers/i2c/busses/i2c-axxia.c axxia_i2c_slv_fifo_event(idev); idev 348 drivers/i2c/busses/i2c-axxia.c i2c_slave_event(idev->slave, I2C_SLAVE_READ_REQUESTED, &val); idev 349 drivers/i2c/busses/i2c-axxia.c writel(val, idev->base + SLV_DATA); idev 352 drivers/i2c/busses/i2c-axxia.c i2c_slave_event(idev->slave, I2C_SLAVE_READ_PROCESSED, &val); idev 353 drivers/i2c/busses/i2c-axxia.c writel(val, idev->base + SLV_DATA); idev 356 drivers/i2c/busses/i2c-axxia.c i2c_slave_event(idev->slave, I2C_SLAVE_STOP, &val); idev 358 drivers/i2c/busses/i2c-axxia.c writel(INT_SLV, idev->base + INTERRUPT_STATUS); idev 364 drivers/i2c/busses/i2c-axxia.c struct axxia_i2c_dev *idev = _dev; idev 368 drivers/i2c/busses/i2c-axxia.c status = readl(idev->base + INTERRUPT_STATUS); idev 371 drivers/i2c/busses/i2c-axxia.c ret = axxia_i2c_slv_isr(idev); idev 376 drivers/i2c/busses/i2c-axxia.c status = readl(idev->base + MST_INT_STATUS); idev 378 drivers/i2c/busses/i2c-axxia.c if (!idev->msg) { idev 379 drivers/i2c/busses/i2c-axxia.c dev_warn(idev->dev, "unexpected interrupt\n"); idev 384 drivers/i2c/busses/i2c-axxia.c if (i2c_m_rd(idev->msg_r) && (status & MST_STATUS_RFL)) idev 385 drivers/i2c/busses/i2c-axxia.c axxia_i2c_empty_rx_fifo(idev); idev 388 drivers/i2c/busses/i2c-axxia.c if (!i2c_m_rd(idev->msg) && (status & MST_STATUS_TFL)) { idev 389 drivers/i2c/busses/i2c-axxia.c if (axxia_i2c_fill_tx_fifo(idev) == 0) idev 390 drivers/i2c/busses/i2c-axxia.c i2c_int_disable(idev, MST_STATUS_TFL); idev 395 drivers/i2c/busses/i2c-axxia.c i2c_int_disable(idev, ~0); idev 397 drivers/i2c/busses/i2c-axxia.c idev->msg_err = -EAGAIN; idev 399 drivers/i2c/busses/i2c-axxia.c idev->msg_err = -ENXIO; idev 401 drivers/i2c/busses/i2c-axxia.c idev->msg_err = -EIO; idev 402 drivers/i2c/busses/i2c-axxia.c dev_dbg(idev->dev, "error %#x, addr=%#x rx=%u/%u tx=%u/%u\n", idev 404 drivers/i2c/busses/i2c-axxia.c idev->msg->addr, idev 405 drivers/i2c/busses/i2c-axxia.c readl(idev->base + MST_RX_BYTES_XFRD), idev 406 drivers/i2c/busses/i2c-axxia.c readl(idev->base + MST_RX_XFER), idev 407 drivers/i2c/busses/i2c-axxia.c readl(idev->base + MST_TX_BYTES_XFRD), idev 408 drivers/i2c/busses/i2c-axxia.c readl(idev->base + MST_TX_XFER)); idev 409 drivers/i2c/busses/i2c-axxia.c complete(&idev->msg_complete); idev 412 drivers/i2c/busses/i2c-axxia.c i2c_int_disable(idev, ~MST_STATUS_TSS); idev 413 drivers/i2c/busses/i2c-axxia.c complete(&idev->msg_complete); idev 416 drivers/i2c/busses/i2c-axxia.c int mask = idev->last ? ~0 : ~MST_STATUS_TSS; idev 418 drivers/i2c/busses/i2c-axxia.c i2c_int_disable(idev, mask); idev 419 drivers/i2c/busses/i2c-axxia.c if (i2c_m_rd(idev->msg_r) && idev->msg_xfrd_r < idev->msg_r->len) idev 420 drivers/i2c/busses/i2c-axxia.c axxia_i2c_empty_rx_fifo(idev); idev 421 drivers/i2c/busses/i2c-axxia.c complete(&idev->msg_complete); idev 424 drivers/i2c/busses/i2c-axxia.c idev->msg_err = -ETIMEDOUT; idev 425 drivers/i2c/busses/i2c-axxia.c i2c_int_disable(idev, ~MST_STATUS_TSS); idev 426 drivers/i2c/busses/i2c-axxia.c complete(&idev->msg_complete); idev 431 drivers/i2c/busses/i2c-axxia.c writel(INT_MST, idev->base + INTERRUPT_STATUS); idev 436 drivers/i2c/busses/i2c-axxia.c static void axxia_i2c_set_addr(struct axxia_i2c_dev *idev, struct i2c_msg *msg) idev 458 drivers/i2c/busses/i2c-axxia.c writel(addr_1, idev->base + MST_ADDR_1); idev 459 drivers/i2c/busses/i2c-axxia.c writel(addr_2, idev->base + MST_ADDR_2); idev 466 drivers/i2c/busses/i2c-axxia.c static int axxia_i2c_handle_seq_nak(struct axxia_i2c_dev *idev) idev 471 drivers/i2c/busses/i2c-axxia.c if ((readl(idev->base + MST_COMMAND) & CMD_BUSY) == 0) idev 479 drivers/i2c/busses/i2c-axxia.c static int axxia_i2c_xfer_seq(struct axxia_i2c_dev *idev, struct i2c_msg msgs[]) idev 485 drivers/i2c/busses/i2c-axxia.c axxia_i2c_set_addr(idev, &msgs[0]); idev 487 drivers/i2c/busses/i2c-axxia.c writel(msgs[0].len, idev->base + MST_TX_XFER); idev 488 drivers/i2c/busses/i2c-axxia.c writel(rlen, idev->base + MST_RX_XFER); idev 490 drivers/i2c/busses/i2c-axxia.c idev->msg = &msgs[0]; idev 491 drivers/i2c/busses/i2c-axxia.c idev->msg_r = &msgs[1]; idev 492 drivers/i2c/busses/i2c-axxia.c idev->msg_xfrd = 0; idev 493 drivers/i2c/busses/i2c-axxia.c idev->msg_xfrd_r = 0; idev 494 drivers/i2c/busses/i2c-axxia.c idev->last = true; idev 495 drivers/i2c/busses/i2c-axxia.c axxia_i2c_fill_tx_fifo(idev); idev 497 drivers/i2c/busses/i2c-axxia.c writel(CMD_SEQUENCE, idev->base + MST_COMMAND); idev 499 drivers/i2c/busses/i2c-axxia.c reinit_completion(&idev->msg_complete); idev 500 drivers/i2c/busses/i2c-axxia.c i2c_int_enable(idev, int_mask); idev 502 drivers/i2c/busses/i2c-axxia.c time_left = wait_for_completion_timeout(&idev->msg_complete, idev 505 drivers/i2c/busses/i2c-axxia.c if (idev->msg_err == -ENXIO) { idev 506 drivers/i2c/busses/i2c-axxia.c if (axxia_i2c_handle_seq_nak(idev)) idev 507 drivers/i2c/busses/i2c-axxia.c axxia_i2c_init(idev); idev 508 drivers/i2c/busses/i2c-axxia.c } else if (readl(idev->base + MST_COMMAND) & CMD_BUSY) { idev 509 drivers/i2c/busses/i2c-axxia.c dev_warn(idev->dev, "busy after xfer\n"); idev 513 drivers/i2c/busses/i2c-axxia.c idev->msg_err = -ETIMEDOUT; idev 514 drivers/i2c/busses/i2c-axxia.c i2c_recover_bus(&idev->adapter); idev 515 drivers/i2c/busses/i2c-axxia.c axxia_i2c_init(idev); idev 518 drivers/i2c/busses/i2c-axxia.c if (unlikely(idev->msg_err) && idev->msg_err != -ENXIO) idev 519 drivers/i2c/busses/i2c-axxia.c axxia_i2c_init(idev); idev 521 drivers/i2c/busses/i2c-axxia.c return idev->msg_err; idev 524 drivers/i2c/busses/i2c-axxia.c static int axxia_i2c_xfer_msg(struct axxia_i2c_dev *idev, struct i2c_msg *msg, idev 532 drivers/i2c/busses/i2c-axxia.c idev->msg = msg; idev 533 drivers/i2c/busses/i2c-axxia.c idev->msg_r = msg; idev 534 drivers/i2c/busses/i2c-axxia.c idev->msg_xfrd = 0; idev 535 drivers/i2c/busses/i2c-axxia.c idev->msg_xfrd_r = 0; idev 536 drivers/i2c/busses/i2c-axxia.c idev->last = last; idev 537 drivers/i2c/busses/i2c-axxia.c reinit_completion(&idev->msg_complete); idev 539 drivers/i2c/busses/i2c-axxia.c axxia_i2c_set_addr(idev, msg); idev 551 drivers/i2c/busses/i2c-axxia.c writel(rx_xfer, idev->base + MST_RX_XFER); idev 552 drivers/i2c/busses/i2c-axxia.c writel(tx_xfer, idev->base + MST_TX_XFER); idev 556 drivers/i2c/busses/i2c-axxia.c else if (axxia_i2c_fill_tx_fifo(idev) != 0) idev 559 drivers/i2c/busses/i2c-axxia.c wt_value = WT_VALUE(readl(idev->base + WAIT_TIMER_CONTROL)); idev 561 drivers/i2c/busses/i2c-axxia.c writel(wt_value, idev->base + WAIT_TIMER_CONTROL); idev 563 drivers/i2c/busses/i2c-axxia.c if (idev->msg_err) idev 567 drivers/i2c/busses/i2c-axxia.c writel(CMD_MANUAL, idev->base + MST_COMMAND); idev 570 drivers/i2c/busses/i2c-axxia.c writel(CMD_AUTO, idev->base + MST_COMMAND); idev 574 drivers/i2c/busses/i2c-axxia.c writel(WT_EN | wt_value, idev->base + WAIT_TIMER_CONTROL); idev 576 drivers/i2c/busses/i2c-axxia.c i2c_int_enable(idev, int_mask); idev 578 drivers/i2c/busses/i2c-axxia.c time_left = wait_for_completion_timeout(&idev->msg_complete, idev 581 drivers/i2c/busses/i2c-axxia.c i2c_int_disable(idev, int_mask); idev 583 drivers/i2c/busses/i2c-axxia.c if (readl(idev->base + MST_COMMAND) & CMD_BUSY) idev 584 drivers/i2c/busses/i2c-axxia.c dev_warn(idev->dev, "busy after xfer\n"); idev 587 drivers/i2c/busses/i2c-axxia.c idev->msg_err = -ETIMEDOUT; idev 588 drivers/i2c/busses/i2c-axxia.c i2c_recover_bus(&idev->adapter); idev 589 drivers/i2c/busses/i2c-axxia.c axxia_i2c_init(idev); idev 593 drivers/i2c/busses/i2c-axxia.c if (unlikely(idev->msg_err) && idev->msg_err != -ENXIO && idev 594 drivers/i2c/busses/i2c-axxia.c idev->msg_err != -ETIMEDOUT) idev 595 drivers/i2c/busses/i2c-axxia.c axxia_i2c_init(idev); idev 597 drivers/i2c/busses/i2c-axxia.c return idev->msg_err; idev 615 drivers/i2c/busses/i2c-axxia.c struct axxia_i2c_dev *idev = i2c_get_adapdata(adap); idev 619 drivers/i2c/busses/i2c-axxia.c idev->msg_err = 0; idev 622 drivers/i2c/busses/i2c-axxia.c ret = axxia_i2c_xfer_seq(idev, msgs); idev 626 drivers/i2c/busses/i2c-axxia.c i2c_int_enable(idev, MST_STATUS_TSS); idev 629 drivers/i2c/busses/i2c-axxia.c ret = axxia_i2c_xfer_msg(idev, &msgs[i], i == (num - 1)); idev 636 drivers/i2c/busses/i2c-axxia.c struct axxia_i2c_dev *idev = i2c_get_adapdata(adap); idev 638 drivers/i2c/busses/i2c-axxia.c return !!(readl(idev->base + I2C_BUS_MONITOR) & BM_SCLS); idev 643 drivers/i2c/busses/i2c-axxia.c struct axxia_i2c_dev *idev = i2c_get_adapdata(adap); idev 647 drivers/i2c/busses/i2c-axxia.c tmp = readl(idev->base + I2C_BUS_MONITOR) & BM_SDAC; idev 650 drivers/i2c/busses/i2c-axxia.c writel(tmp, idev->base + I2C_BUS_MONITOR); idev 655 drivers/i2c/busses/i2c-axxia.c struct axxia_i2c_dev *idev = i2c_get_adapdata(adap); idev 657 drivers/i2c/busses/i2c-axxia.c return !!(readl(idev->base + I2C_BUS_MONITOR) & BM_SDAS); idev 676 drivers/i2c/busses/i2c-axxia.c struct axxia_i2c_dev *idev = i2c_get_adapdata(slave->adapter); idev 680 drivers/i2c/busses/i2c-axxia.c if (idev->slave) idev 683 drivers/i2c/busses/i2c-axxia.c idev->slave = slave; idev 686 drivers/i2c/busses/i2c-axxia.c writel(GLOBAL_MST_EN | GLOBAL_SLV_EN, idev->base + GLOBAL_CONTROL); idev 687 drivers/i2c/busses/i2c-axxia.c writel(INT_MST | INT_SLV, idev->base + INTERRUPT_ENABLE); idev 694 drivers/i2c/busses/i2c-axxia.c writel(SLV_RX_ACSA1, idev->base + SLV_RX_CTL); idev 695 drivers/i2c/busses/i2c-axxia.c writel(dec_ctl, idev->base + SLV_ADDR_DEC_CTL); idev 696 drivers/i2c/busses/i2c-axxia.c writel(slave->addr, idev->base + SLV_ADDR_1); idev 701 drivers/i2c/busses/i2c-axxia.c writel(slv_int_mask, idev->base + SLV_INT_ENABLE); idev 708 drivers/i2c/busses/i2c-axxia.c struct axxia_i2c_dev *idev = i2c_get_adapdata(slave->adapter); idev 711 drivers/i2c/busses/i2c-axxia.c writel(GLOBAL_MST_EN, idev->base + GLOBAL_CONTROL); idev 712 drivers/i2c/busses/i2c-axxia.c writel(INT_MST, idev->base + INTERRUPT_ENABLE); idev 714 drivers/i2c/busses/i2c-axxia.c synchronize_irq(idev->irq); idev 716 drivers/i2c/busses/i2c-axxia.c idev->slave = NULL; idev 736 drivers/i2c/busses/i2c-axxia.c struct axxia_i2c_dev *idev = NULL; idev 741 drivers/i2c/busses/i2c-axxia.c idev = devm_kzalloc(&pdev->dev, sizeof(*idev), GFP_KERNEL); idev 742 drivers/i2c/busses/i2c-axxia.c if (!idev) idev 750 drivers/i2c/busses/i2c-axxia.c idev->irq = platform_get_irq(pdev, 0); idev 751 drivers/i2c/busses/i2c-axxia.c if (idev->irq < 0) { idev 753 drivers/i2c/busses/i2c-axxia.c return idev->irq; idev 756 drivers/i2c/busses/i2c-axxia.c idev->i2c_clk = devm_clk_get(&pdev->dev, "i2c"); idev 757 drivers/i2c/busses/i2c-axxia.c if (IS_ERR(idev->i2c_clk)) { idev 759 drivers/i2c/busses/i2c-axxia.c return PTR_ERR(idev->i2c_clk); idev 762 drivers/i2c/busses/i2c-axxia.c idev->base = base; idev 763 drivers/i2c/busses/i2c-axxia.c idev->dev = &pdev->dev; idev 764 drivers/i2c/busses/i2c-axxia.c init_completion(&idev->msg_complete); idev 766 drivers/i2c/busses/i2c-axxia.c of_property_read_u32(np, "clock-frequency", &idev->bus_clk_rate); idev 767 drivers/i2c/busses/i2c-axxia.c if (idev->bus_clk_rate == 0) idev 768 drivers/i2c/busses/i2c-axxia.c idev->bus_clk_rate = 100000; /* default clock rate */ idev 770 drivers/i2c/busses/i2c-axxia.c ret = clk_prepare_enable(idev->i2c_clk); idev 776 drivers/i2c/busses/i2c-axxia.c ret = axxia_i2c_init(idev); idev 782 drivers/i2c/busses/i2c-axxia.c ret = devm_request_irq(&pdev->dev, idev->irq, axxia_i2c_isr, 0, idev 783 drivers/i2c/busses/i2c-axxia.c pdev->name, idev); idev 785 drivers/i2c/busses/i2c-axxia.c dev_err(&pdev->dev, "failed to claim IRQ%d\n", idev->irq); idev 789 drivers/i2c/busses/i2c-axxia.c i2c_set_adapdata(&idev->adapter, idev); idev 790 drivers/i2c/busses/i2c-axxia.c strlcpy(idev->adapter.name, pdev->name, sizeof(idev->adapter.name)); idev 791 drivers/i2c/busses/i2c-axxia.c idev->adapter.owner = THIS_MODULE; idev 792 drivers/i2c/busses/i2c-axxia.c idev->adapter.algo = &axxia_i2c_algo; idev 793 drivers/i2c/busses/i2c-axxia.c idev->adapter.bus_recovery_info = &axxia_i2c_recovery_info; idev 794 drivers/i2c/busses/i2c-axxia.c idev->adapter.quirks = &axxia_i2c_quirks; idev 795 drivers/i2c/busses/i2c-axxia.c idev->adapter.dev.parent = &pdev->dev; idev 796 drivers/i2c/busses/i2c-axxia.c idev->adapter.dev.of_node = pdev->dev.of_node; idev 798 drivers/i2c/busses/i2c-axxia.c platform_set_drvdata(pdev, idev); idev 800 drivers/i2c/busses/i2c-axxia.c ret = i2c_add_adapter(&idev->adapter); idev 807 drivers/i2c/busses/i2c-axxia.c clk_disable_unprepare(idev->i2c_clk); idev 813 drivers/i2c/busses/i2c-axxia.c struct axxia_i2c_dev *idev = platform_get_drvdata(pdev); idev 815 drivers/i2c/busses/i2c-axxia.c clk_disable_unprepare(idev->i2c_clk); idev 816 drivers/i2c/busses/i2c-axxia.c i2c_del_adapter(&idev->adapter); idev 536 drivers/ide/it821x.c struct it821x_dev *idev = itdevs + hwif->channel; idev 539 drivers/ide/it821x.c ide_set_hwifdata(hwif, idev); idev 543 drivers/ide/it821x.c idev->smart = 1; idev 552 drivers/ide/it821x.c idev->clock_mode = ATA_50; idev 554 drivers/ide/it821x.c idev->clock_mode = ATA_66; idev 556 drivers/ide/it821x.c idev->want[0][1] = ATA_ANY; idev 557 drivers/ide/it821x.c idev->want[1][1] = ATA_ANY; idev 565 drivers/ide/it821x.c idev->timing10 = 1; idev 567 drivers/ide/it821x.c if (idev->smart == 0) idev 572 drivers/ide/it821x.c if (idev->smart == 0) { idev 585 drivers/ide/it821x.c if (idev->quirks & QUIRK_VORTEX86) { idev 248 drivers/iio/adc/at91_adc.c struct iio_dev *idev = pf->indio_dev; idev 249 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 253 drivers/iio/adc/at91_adc.c for (i = 0; i < idev->masklength; i++) { idev 254 drivers/iio/adc/at91_adc.c if (!test_bit(i, idev->active_scan_mask)) idev 256 drivers/iio/adc/at91_adc.c chan = idev->channels + i; idev 261 drivers/iio/adc/at91_adc.c iio_push_to_buffers_with_timestamp(idev, st->buffer, pf->timestamp); idev 263 drivers/iio/adc/at91_adc.c iio_trigger_notify_done(idev->trig); idev 274 drivers/iio/adc/at91_adc.c static void handle_adc_eoc_trigger(int irq, struct iio_dev *idev) idev 276 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 278 drivers/iio/adc/at91_adc.c if (iio_buffer_enabled(idev)) { idev 280 drivers/iio/adc/at91_adc.c iio_trigger_poll(idev->trig); idev 296 drivers/iio/adc/at91_adc.c struct iio_dev *idev = iio_priv_to_dev(st); idev 308 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Error: xscale == 0!\n"); idev 319 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Error: yscale == 0!\n"); idev 335 drivers/iio/adc/at91_adc.c dev_dbg(&idev->dev, "xpos = %d, xscale = %d, ypos = %d, yscale = %d, z1 = %d, z2 = %d, press = %d\n", idev 339 drivers/iio/adc/at91_adc.c dev_dbg(&idev->dev, "x = %d, y = %d, pressure = %d\n", idev 347 drivers/iio/adc/at91_adc.c dev_dbg(&idev->dev, "pressure too low: not reporting\n"); idev 355 drivers/iio/adc/at91_adc.c struct iio_dev *idev = private; idev 356 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 362 drivers/iio/adc/at91_adc.c handle_adc_eoc_trigger(irq, idev); idev 420 drivers/iio/adc/at91_adc.c struct iio_dev *idev = private; idev 421 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 429 drivers/iio/adc/at91_adc.c handle_adc_eoc_trigger(irq, idev); idev 466 drivers/iio/adc/at91_adc.c static int at91_adc_channel_init(struct iio_dev *idev) idev 468 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 482 drivers/iio/adc/at91_adc.c idev->num_channels = bitmap_weight(&st->channels_mask, idev 485 drivers/iio/adc/at91_adc.c chan_array = devm_kzalloc(&idev->dev, idev 486 drivers/iio/adc/at91_adc.c ((idev->num_channels + 1) * idev 516 drivers/iio/adc/at91_adc.c idev->channels = chan_array; idev 517 drivers/iio/adc/at91_adc.c return idev->num_channels; idev 520 drivers/iio/adc/at91_adc.c static int at91_adc_get_trigger_value_by_name(struct iio_dev *idev, idev 524 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 530 drivers/iio/adc/at91_adc.c idev->name, idev 531 drivers/iio/adc/at91_adc.c idev->id, idev 551 drivers/iio/adc/at91_adc.c struct iio_dev *idev = iio_trigger_get_drvdata(trig); idev 552 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 558 drivers/iio/adc/at91_adc.c value = at91_adc_get_trigger_value_by_name(idev, idev 560 drivers/iio/adc/at91_adc.c idev->trig->name); idev 565 drivers/iio/adc/at91_adc.c st->buffer = kmalloc(idev->scan_bytes, GFP_KERNEL); idev 572 drivers/iio/adc/at91_adc.c for_each_set_bit(bit, idev->active_scan_mask, idev 574 drivers/iio/adc/at91_adc.c struct iio_chan_spec const *chan = idev->channels + bit; idev 587 drivers/iio/adc/at91_adc.c for_each_set_bit(bit, idev->active_scan_mask, idev 589 drivers/iio/adc/at91_adc.c struct iio_chan_spec const *chan = idev->channels + bit; idev 603 drivers/iio/adc/at91_adc.c static struct iio_trigger *at91_adc_allocate_trigger(struct iio_dev *idev, idev 609 drivers/iio/adc/at91_adc.c trig = iio_trigger_alloc("%s-dev%d-%s", idev->name, idev 610 drivers/iio/adc/at91_adc.c idev->id, trigger->name); idev 614 drivers/iio/adc/at91_adc.c trig->dev.parent = idev->dev.parent; idev 615 drivers/iio/adc/at91_adc.c iio_trigger_set_drvdata(trig, idev); idev 625 drivers/iio/adc/at91_adc.c static int at91_adc_trigger_init(struct iio_dev *idev) idev 627 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 630 drivers/iio/adc/at91_adc.c st->trig = devm_kcalloc(&idev->dev, idev 643 drivers/iio/adc/at91_adc.c st->trig[i] = at91_adc_allocate_trigger(idev, idev 646 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, idev 664 drivers/iio/adc/at91_adc.c static void at91_adc_trigger_remove(struct iio_dev *idev) idev 666 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 675 drivers/iio/adc/at91_adc.c static int at91_adc_buffer_init(struct iio_dev *idev) idev 677 drivers/iio/adc/at91_adc.c return iio_triggered_buffer_setup(idev, &iio_pollfunc_store_time, idev 681 drivers/iio/adc/at91_adc.c static void at91_adc_buffer_remove(struct iio_dev *idev) idev 683 drivers/iio/adc/at91_adc.c iio_triggered_buffer_cleanup(idev); idev 686 drivers/iio/adc/at91_adc.c static int at91_adc_read_raw(struct iio_dev *idev, idev 690 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 722 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "ADC Channel %d timeout.\n", idev 743 drivers/iio/adc/at91_adc.c struct iio_dev *idev = iio_priv_to_dev(st); idev 751 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "You must specified at least two resolution names for " idev 761 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Missing adc-res property in the DT.\n"); idev 782 drivers/iio/adc/at91_adc.c dev_info(&idev->dev, "Resolution used: %u bits\n", st->res); idev 786 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "There is no resolution for %s\n", res_name); idev 872 drivers/iio/adc/at91_adc.c struct iio_dev *idev = iio_priv_to_dev(st); idev 887 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Missing adc-channels-used property in the DT.\n"); idev 896 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Missing adc-startup-time property in the DT.\n"); idev 907 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Missing adc-vref property in the DT.\n"); idev 920 drivers/iio/adc/at91_adc.c st->trigger_list = devm_kcalloc(&idev->dev, idev 925 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Could not allocate trigger list memory.\n"); idev 935 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Missing trigger-name property in the DT.\n"); idev 942 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Missing trigger-value property in the DT.\n"); idev 953 drivers/iio/adc/at91_adc.c return at91_adc_probe_dt_ts(node, st, &idev->dev); idev 955 drivers/iio/adc/at91_adc.c dev_info(&idev->dev, "not support touchscreen in the adc compatible string.\n"); idev 1015 drivers/iio/adc/at91_adc.c struct iio_dev *idev = iio_priv_to_dev(st); idev 1055 drivers/iio/adc/at91_adc.c dev_dbg(&idev->dev, "adc_clk at: %d KHz, tssctim at: %d\n", idev 1092 drivers/iio/adc/at91_adc.c struct iio_dev *idev = iio_priv_to_dev(st); idev 1097 drivers/iio/adc/at91_adc.c dev_err(&idev->dev, "Failed to allocate TS device!\n"); idev 1153 drivers/iio/adc/at91_adc.c struct iio_dev *idev; idev 1158 drivers/iio/adc/at91_adc.c idev = devm_iio_device_alloc(&pdev->dev, sizeof(struct at91_adc_state)); idev 1159 drivers/iio/adc/at91_adc.c if (!idev) idev 1162 drivers/iio/adc/at91_adc.c st = iio_priv(idev); idev 1174 drivers/iio/adc/at91_adc.c platform_set_drvdata(pdev, idev); idev 1176 drivers/iio/adc/at91_adc.c idev->dev.parent = &pdev->dev; idev 1177 drivers/iio/adc/at91_adc.c idev->name = dev_name(&pdev->dev); idev 1178 drivers/iio/adc/at91_adc.c idev->modes = INDIO_DIRECT_MODE; idev 1179 drivers/iio/adc/at91_adc.c idev->info = &at91_adc_info; idev 1200 drivers/iio/adc/at91_adc.c pdev->dev.driver->name, idev); idev 1203 drivers/iio/adc/at91_adc.c pdev->dev.driver->name, idev); idev 1279 drivers/iio/adc/at91_adc.c ret = at91_adc_channel_init(idev); idev 1294 drivers/iio/adc/at91_adc.c ret = at91_adc_buffer_init(idev); idev 1300 drivers/iio/adc/at91_adc.c ret = at91_adc_trigger_init(idev); idev 1303 drivers/iio/adc/at91_adc.c at91_adc_buffer_remove(idev); idev 1314 drivers/iio/adc/at91_adc.c ret = iio_device_register(idev); idev 1324 drivers/iio/adc/at91_adc.c at91_adc_trigger_remove(idev); idev 1325 drivers/iio/adc/at91_adc.c at91_adc_buffer_remove(idev); idev 1334 drivers/iio/adc/at91_adc.c free_irq(st->irq, idev); idev 1340 drivers/iio/adc/at91_adc.c struct iio_dev *idev = platform_get_drvdata(pdev); idev 1341 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 1343 drivers/iio/adc/at91_adc.c iio_device_unregister(idev); idev 1345 drivers/iio/adc/at91_adc.c at91_adc_trigger_remove(idev); idev 1346 drivers/iio/adc/at91_adc.c at91_adc_buffer_remove(idev); idev 1352 drivers/iio/adc/at91_adc.c free_irq(st->irq, idev); idev 1360 drivers/iio/adc/at91_adc.c struct iio_dev *idev = dev_get_drvdata(dev); idev 1361 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 1371 drivers/iio/adc/at91_adc.c struct iio_dev *idev = dev_get_drvdata(dev); idev 1372 drivers/iio/adc/at91_adc.c struct at91_adc_state *st = iio_priv(idev); idev 104 drivers/iio/adc/hi8435.c static int hi8435_read_raw(struct iio_dev *idev, idev 108 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 124 drivers/iio/adc/hi8435.c static int hi8435_read_event_config(struct iio_dev *idev, idev 129 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 134 drivers/iio/adc/hi8435.c static int hi8435_write_event_config(struct iio_dev *idev, idev 139 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 159 drivers/iio/adc/hi8435.c static int hi8435_read_event_value(struct iio_dev *idev, idev 166 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 191 drivers/iio/adc/hi8435.c static int hi8435_write_event_value(struct iio_dev *idev, idev 198 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 267 drivers/iio/adc/hi8435.c static int hi8435_debugfs_reg_access(struct iio_dev *idev, idev 271 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 302 drivers/iio/adc/hi8435.c static int hi8435_get_sensing_mode(struct iio_dev *idev, idev 305 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 316 drivers/iio/adc/hi8435.c static int hi8435_set_sensing_mode(struct iio_dev *idev, idev 320 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 415 drivers/iio/adc/hi8435.c static void hi8435_iio_push_event(struct iio_dev *idev, unsigned int val) idev 417 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 429 drivers/iio/adc/hi8435.c iio_push_event(idev, idev 432 drivers/iio/adc/hi8435.c iio_get_time_ns(idev)); idev 442 drivers/iio/adc/hi8435.c struct iio_dev *idev = pf->indio_dev; idev 443 drivers/iio/adc/hi8435.c struct hi8435_priv *priv = iio_priv(idev); idev 451 drivers/iio/adc/hi8435.c hi8435_iio_push_event(idev, val); idev 454 drivers/iio/adc/hi8435.c iio_trigger_notify_done(idev->trig); idev 466 drivers/iio/adc/hi8435.c struct iio_dev *idev; idev 471 drivers/iio/adc/hi8435.c idev = devm_iio_device_alloc(&spi->dev, sizeof(*priv)); idev 472 drivers/iio/adc/hi8435.c if (!idev) idev 475 drivers/iio/adc/hi8435.c priv = iio_priv(idev); idev 488 drivers/iio/adc/hi8435.c spi_set_drvdata(spi, idev); idev 491 drivers/iio/adc/hi8435.c idev->dev.parent = &spi->dev; idev 492 drivers/iio/adc/hi8435.c idev->dev.of_node = spi->dev.of_node; idev 493 drivers/iio/adc/hi8435.c idev->name = spi_get_device_id(spi)->name; idev 494 drivers/iio/adc/hi8435.c idev->modes = INDIO_DIRECT_MODE; idev 495 drivers/iio/adc/hi8435.c idev->info = &hi8435_info; idev 496 drivers/iio/adc/hi8435.c idev->channels = hi8435_channels; idev 497 drivers/iio/adc/hi8435.c idev->num_channels = ARRAY_SIZE(hi8435_channels); idev 517 drivers/iio/adc/hi8435.c ret = iio_triggered_event_setup(idev, NULL, hi8435_trigger_handler); idev 523 drivers/iio/adc/hi8435.c idev); idev 527 drivers/iio/adc/hi8435.c return devm_iio_device_register(&spi->dev, idev); idev 126 drivers/iio/inkern.c struct device *idev; idev 137 drivers/iio/inkern.c idev = bus_find_device(&iio_bus_type, NULL, iiospec.np, idev 140 drivers/iio/inkern.c if (idev == NULL) idev 143 drivers/iio/inkern.c indio_dev = dev_to_iio_dev(idev); idev 136 drivers/iio/pressure/zpa2326.c #define zpa2326_err(idev, fmt, ...) \ idev 137 drivers/iio/pressure/zpa2326.c dev_err(idev->dev.parent, fmt "\n", ##__VA_ARGS__) idev 139 drivers/iio/pressure/zpa2326.c #define zpa2326_warn(idev, fmt, ...) \ idev 140 drivers/iio/pressure/zpa2326.c dev_warn(idev->dev.parent, fmt "\n", ##__VA_ARGS__) idev 142 drivers/iio/pressure/zpa2326.c #define zpa2326_dbg(idev, fmt, ...) \ idev 143 drivers/iio/pressure/zpa2326.c dev_dbg(idev->dev.parent, fmt "\n", ##__VA_ARGS__) idev 86 drivers/infiniband/core/core_priv.h struct net_device *idev, void *cookie); idev 89 drivers/infiniband/core/core_priv.h struct net_device *idev, void *cookie); idev 2273 drivers/infiniband/core/device.c struct net_device *idev = idev 2276 drivers/infiniband/core/device.c if (filter(ib_dev, port, idev, filter_cookie)) idev 2277 drivers/infiniband/core/device.c cb(ib_dev, port, idev, cookie); idev 2279 drivers/infiniband/core/device.c if (idev) idev 2280 drivers/infiniband/core/device.c dev_put(idev); idev 877 drivers/infiniband/core/roce_gid_mgmt.c ndev = ifa6->idev->dev; idev 3260 drivers/infiniband/hw/cxgb4/cm.c struct inet6_dev *idev; idev 3264 drivers/infiniband/hw/cxgb4/cm.c idev = __in6_dev_get(dev); idev 3265 drivers/infiniband/hw/cxgb4/cm.c if (idev != NULL) { idev 3268 drivers/infiniband/hw/cxgb4/cm.c read_lock_bh(&idev->lock); idev 3269 drivers/infiniband/hw/cxgb4/cm.c list_for_each_entry(ifp, &idev->addr_list, if_list) { idev 3277 drivers/infiniband/hw/cxgb4/cm.c read_unlock_bh(&idev->lock); idev 1685 drivers/infiniband/hw/i40iw/i40iw_cm.c struct inet6_dev *idev; idev 1696 drivers/infiniband/hw/i40iw/i40iw_cm.c idev = __in6_dev_get(ip_dev); idev 1697 drivers/infiniband/hw/i40iw/i40iw_cm.c if (!idev) { idev 1701 drivers/infiniband/hw/i40iw/i40iw_cm.c list_for_each_entry_safe(ifp, tmp, &idev->addr_list, if_list) { idev 1766 drivers/infiniband/hw/i40iw/i40iw_cm.c struct in_device *idev; idev 1778 drivers/infiniband/hw/i40iw/i40iw_cm.c idev = in_dev_get(dev); idev 1780 drivers/infiniband/hw/i40iw/i40iw_cm.c in_dev_for_each_ifa_rtnl(ifa, idev) { idev 1794 drivers/infiniband/hw/i40iw/i40iw_cm.c in_dev_put(idev); idev 1826 drivers/infiniband/hw/i40iw/i40iw_cm.c in_dev_put(idev); idev 1177 drivers/infiniband/hw/i40iw/i40iw_main.c struct inet6_dev *idev; idev 1186 drivers/infiniband/hw/i40iw/i40iw_main.c idev = __in6_dev_get(ip_dev); idev 1187 drivers/infiniband/hw/i40iw/i40iw_main.c if (!idev) { idev 1191 drivers/infiniband/hw/i40iw/i40iw_main.c list_for_each_entry_safe(ifp, tmp, &idev->addr_list, if_list) { idev 1214 drivers/infiniband/hw/i40iw/i40iw_main.c struct in_device *idev; idev 1227 drivers/infiniband/hw/i40iw/i40iw_main.c idev = in_dev_get(dev); idev 1228 drivers/infiniband/hw/i40iw/i40iw_main.c if (!idev) idev 1230 drivers/infiniband/hw/i40iw/i40iw_main.c in_dev_for_each_ifa_rtnl(ifa, idev) { idev 1243 drivers/infiniband/hw/i40iw/i40iw_main.c in_dev_put(idev); idev 227 drivers/infiniband/hw/i40iw/i40iw_utils.c struct net_device *event_netdev = ifa->idev->dev; idev 102 drivers/input/joystick/maplecontrol.c struct input_dev *idev; idev 106 drivers/input/joystick/maplecontrol.c idev = input_allocate_device(); idev 107 drivers/input/joystick/maplecontrol.c if (!pad || !idev) { idev 112 drivers/input/joystick/maplecontrol.c pad->dev = idev; idev 115 drivers/input/joystick/maplecontrol.c idev->open = dc_pad_open; idev 116 drivers/input/joystick/maplecontrol.c idev->close = dc_pad_close; idev 121 drivers/input/joystick/maplecontrol.c __set_bit(btn_bit[i], idev->keybit); idev 123 drivers/input/joystick/maplecontrol.c __set_bit(abs_bit[i], idev->absbit); idev 127 drivers/input/joystick/maplecontrol.c if (idev->keybit[BIT_WORD(BTN_JOYSTICK)]) idev 128 drivers/input/joystick/maplecontrol.c idev->evbit[0] |= BIT_MASK(EV_KEY); idev 130 drivers/input/joystick/maplecontrol.c if (idev->absbit[0]) idev 131 drivers/input/joystick/maplecontrol.c idev->evbit[0] |= BIT_MASK(EV_ABS); idev 134 drivers/input/joystick/maplecontrol.c input_set_abs_params(idev, i, 0, 255, 0, 0); idev 137 drivers/input/joystick/maplecontrol.c input_set_abs_params(idev, i, 1, -1, 0, 0); idev 139 drivers/input/joystick/maplecontrol.c idev->dev.platform_data = pad; idev 140 drivers/input/joystick/maplecontrol.c idev->dev.parent = &mdev->dev; idev 141 drivers/input/joystick/maplecontrol.c idev->name = mdev->product_name; idev 142 drivers/input/joystick/maplecontrol.c idev->id.bustype = BUS_HOST; idev 144 drivers/input/joystick/maplecontrol.c error = input_register_device(idev); idev 154 drivers/input/joystick/maplecontrol.c input_free_device(idev); idev 140 drivers/input/joystick/psxpad-spi.c static int psxpad_spi_play_effect(struct input_dev *idev, idev 143 drivers/input/joystick/psxpad-spi.c struct input_polled_dev *pdev = input_get_drvdata(idev); idev 288 drivers/input/joystick/psxpad-spi.c struct input_dev *idev; idev 315 drivers/input/joystick/psxpad-spi.c idev = pdev->input; idev 316 drivers/input/joystick/psxpad-spi.c idev->name = "PlayStation 1/2 joypad"; idev 318 drivers/input/joystick/psxpad-spi.c idev->id.bustype = BUS_SPI; idev 321 drivers/input/joystick/psxpad-spi.c input_set_abs_params(idev, ABS_X, 0, 255, 0, 0); idev 322 drivers/input/joystick/psxpad-spi.c input_set_abs_params(idev, ABS_Y, 0, 255, 0, 0); idev 323 drivers/input/joystick/psxpad-spi.c input_set_abs_params(idev, ABS_RX, 0, 255, 0, 0); idev 324 drivers/input/joystick/psxpad-spi.c input_set_abs_params(idev, ABS_RY, 0, 255, 0, 0); idev 325 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_DPAD_UP); idev 326 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_DPAD_DOWN); idev 327 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_DPAD_LEFT); idev 328 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_DPAD_RIGHT); idev 329 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_A); idev 330 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_B); idev 331 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_X); idev 332 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_Y); idev 333 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_TL); idev 334 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_TR); idev 335 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_TL2); idev 336 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_TR2); idev 337 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_THUMBL); idev 338 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_THUMBR); idev 339 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_SELECT); idev 340 drivers/input/joystick/psxpad-spi.c input_set_capability(idev, EV_KEY, BTN_START); idev 81 drivers/input/keyboard/cap11xx.c struct input_dev *idev; idev 193 drivers/input/keyboard/cap11xx.c for (i = 0; i < priv->idev->keycodemax; i++) idev 194 drivers/input/keyboard/cap11xx.c input_report_key(priv->idev, priv->keycodes[i], idev 197 drivers/input/keyboard/cap11xx.c input_sync(priv->idev); idev 216 drivers/input/keyboard/cap11xx.c static int cap11xx_input_open(struct input_dev *idev) idev 218 drivers/input/keyboard/cap11xx.c struct cap11xx_priv *priv = input_get_drvdata(idev); idev 223 drivers/input/keyboard/cap11xx.c static void cap11xx_input_close(struct input_dev *idev) idev 225 drivers/input/keyboard/cap11xx.c struct cap11xx_priv *priv = input_get_drvdata(idev); idev 412 drivers/input/keyboard/cap11xx.c priv->idev = devm_input_allocate_device(dev); idev 413 drivers/input/keyboard/cap11xx.c if (!priv->idev) idev 416 drivers/input/keyboard/cap11xx.c priv->idev->name = "CAP11XX capacitive touch sensor"; idev 417 drivers/input/keyboard/cap11xx.c priv->idev->id.bustype = BUS_I2C; idev 418 drivers/input/keyboard/cap11xx.c priv->idev->evbit[0] = BIT_MASK(EV_KEY); idev 421 drivers/input/keyboard/cap11xx.c __set_bit(EV_REP, priv->idev->evbit); idev 424 drivers/input/keyboard/cap11xx.c __set_bit(priv->keycodes[i], priv->idev->keybit); idev 426 drivers/input/keyboard/cap11xx.c __clear_bit(KEY_RESERVED, priv->idev->keybit); idev 428 drivers/input/keyboard/cap11xx.c priv->idev->keycode = priv->keycodes; idev 429 drivers/input/keyboard/cap11xx.c priv->idev->keycodesize = sizeof(priv->keycodes[0]); idev 430 drivers/input/keyboard/cap11xx.c priv->idev->keycodemax = cap->num_channels; idev 432 drivers/input/keyboard/cap11xx.c priv->idev->id.vendor = CAP11XX_MANUFACTURER_ID; idev 433 drivers/input/keyboard/cap11xx.c priv->idev->id.product = cap->product_id; idev 434 drivers/input/keyboard/cap11xx.c priv->idev->id.version = rev; idev 436 drivers/input/keyboard/cap11xx.c priv->idev->open = cap11xx_input_open; idev 437 drivers/input/keyboard/cap11xx.c priv->idev->close = cap11xx_input_close; idev 443 drivers/input/keyboard/cap11xx.c input_set_drvdata(priv->idev, priv); idev 451 drivers/input/keyboard/cap11xx.c error = input_register_device(priv->idev); idev 56 drivers/input/keyboard/cros_ec_keyb.c struct input_dev *idev; idev 159 drivers/input/keyboard/cros_ec_keyb.c struct input_dev *idev = ckdev->idev; idev 177 drivers/input/keyboard/cros_ec_keyb.c const unsigned short *keycodes = idev->keycode; idev 186 drivers/input/keyboard/cros_ec_keyb.c input_report_key(idev, keycodes[pos], idev 192 drivers/input/keyboard/cros_ec_keyb.c input_sync(ckdev->idev); idev 209 drivers/input/keyboard/cros_ec_keyb.c struct input_dev *idev = ckdev->bs_idev; idev 218 drivers/input/keyboard/cros_ec_keyb.c input_event(idev, ev_type, map->code, idev 221 drivers/input/keyboard/cros_ec_keyb.c input_sync(idev); idev 296 drivers/input/keyboard/cros_ec_keyb.c unsigned short *keymap = ckdev->idev->keycode; idev 299 drivers/input/keyboard/cros_ec_keyb.c BUG_ON(ckdev->idev->keycodesize != sizeof(*keymap)); idev 445 drivers/input/keyboard/cros_ec_keyb.c struct input_dev *idev; idev 479 drivers/input/keyboard/cros_ec_keyb.c idev = devm_input_allocate_device(dev); idev 480 drivers/input/keyboard/cros_ec_keyb.c if (!idev) idev 483 drivers/input/keyboard/cros_ec_keyb.c idev->name = "cros_ec_buttons"; idev 484 drivers/input/keyboard/cros_ec_keyb.c idev->phys = phys; idev 485 drivers/input/keyboard/cros_ec_keyb.c __set_bit(EV_REP, idev->evbit); idev 487 drivers/input/keyboard/cros_ec_keyb.c idev->id.bustype = BUS_VIRTUAL; idev 488 drivers/input/keyboard/cros_ec_keyb.c idev->id.version = 1; idev 489 drivers/input/keyboard/cros_ec_keyb.c idev->id.product = 0; idev 490 drivers/input/keyboard/cros_ec_keyb.c idev->dev.parent = dev; idev 492 drivers/input/keyboard/cros_ec_keyb.c input_set_drvdata(idev, ckdev); idev 493 drivers/input/keyboard/cros_ec_keyb.c ckdev->bs_idev = idev; idev 500 drivers/input/keyboard/cros_ec_keyb.c input_set_capability(idev, map->ev_type, map->code); idev 531 drivers/input/keyboard/cros_ec_keyb.c struct input_dev *idev; idev 555 drivers/input/keyboard/cros_ec_keyb.c idev = devm_input_allocate_device(dev); idev 556 drivers/input/keyboard/cros_ec_keyb.c if (!idev) idev 559 drivers/input/keyboard/cros_ec_keyb.c idev->name = CROS_EC_DEV_NAME; idev 560 drivers/input/keyboard/cros_ec_keyb.c idev->phys = phys; idev 561 drivers/input/keyboard/cros_ec_keyb.c __set_bit(EV_REP, idev->evbit); idev 563 drivers/input/keyboard/cros_ec_keyb.c idev->id.bustype = BUS_VIRTUAL; idev 564 drivers/input/keyboard/cros_ec_keyb.c idev->id.version = 1; idev 565 drivers/input/keyboard/cros_ec_keyb.c idev->id.product = 0; idev 566 drivers/input/keyboard/cros_ec_keyb.c idev->dev.parent = dev; idev 572 drivers/input/keyboard/cros_ec_keyb.c NULL, idev); idev 580 drivers/input/keyboard/cros_ec_keyb.c input_set_capability(idev, EV_MSC, MSC_SCAN); idev 581 drivers/input/keyboard/cros_ec_keyb.c input_set_drvdata(idev, ckdev); idev 582 drivers/input/keyboard/cros_ec_keyb.c ckdev->idev = idev; idev 585 drivers/input/keyboard/cros_ec_keyb.c err = input_register_device(ckdev->idev); idev 137 drivers/input/keyboard/lm8323.c struct input_dev *idev; idev 275 drivers/input/keyboard/lm8323.c input_event(lm->idev, EV_MSC, MSC_SCAN, key); idev 276 drivers/input/keyboard/lm8323.c input_report_key(lm->idev, keycode, isdown); idev 277 drivers/input/keyboard/lm8323.c input_sync(lm->idev); idev 622 drivers/input/keyboard/lm8323.c struct input_dev *idev; idev 647 drivers/input/keyboard/lm8323.c idev = input_allocate_device(); idev 648 drivers/input/keyboard/lm8323.c if (!lm || !idev) { idev 654 drivers/input/keyboard/lm8323.c lm->idev = idev; idev 704 drivers/input/keyboard/lm8323.c idev->name = pdata->name ? : "LM8323 keypad"; idev 707 drivers/input/keyboard/lm8323.c idev->phys = lm->phys; idev 709 drivers/input/keyboard/lm8323.c idev->evbit[0] = BIT(EV_KEY) | BIT(EV_MSC); idev 710 drivers/input/keyboard/lm8323.c __set_bit(MSC_SCAN, idev->mscbit); idev 712 drivers/input/keyboard/lm8323.c __set_bit(pdata->keymap[i], idev->keybit); idev 715 drivers/input/keyboard/lm8323.c __clear_bit(KEY_RESERVED, idev->keybit); idev 718 drivers/input/keyboard/lm8323.c __set_bit(EV_REP, idev->evbit); idev 720 drivers/input/keyboard/lm8323.c err = input_register_device(idev); idev 741 drivers/input/keyboard/lm8323.c input_unregister_device(idev); idev 742 drivers/input/keyboard/lm8323.c idev = NULL; idev 750 drivers/input/keyboard/lm8323.c input_free_device(idev); idev 763 drivers/input/keyboard/lm8323.c input_unregister_device(lm->idev); idev 152 drivers/input/keyboard/maple_keyb.c struct input_dev *idev; idev 163 drivers/input/keyboard/maple_keyb.c idev = input_allocate_device(); idev 164 drivers/input/keyboard/maple_keyb.c if (!idev) { idev 169 drivers/input/keyboard/maple_keyb.c kbd->dev = idev; idev 172 drivers/input/keyboard/maple_keyb.c idev->name = mdev->product_name; idev 173 drivers/input/keyboard/maple_keyb.c idev->evbit[0] = BIT(EV_KEY) | BIT(EV_REP); idev 174 drivers/input/keyboard/maple_keyb.c idev->keycode = kbd->keycode; idev 175 drivers/input/keyboard/maple_keyb.c idev->keycodesize = sizeof(unsigned short); idev 176 drivers/input/keyboard/maple_keyb.c idev->keycodemax = ARRAY_SIZE(kbd->keycode); idev 177 drivers/input/keyboard/maple_keyb.c idev->id.bustype = BUS_HOST; idev 178 drivers/input/keyboard/maple_keyb.c idev->dev.parent = &mdev->dev; idev 181 drivers/input/keyboard/maple_keyb.c __set_bit(dc_kbd_keycode[i], idev->keybit); idev 182 drivers/input/keyboard/maple_keyb.c __clear_bit(KEY_RESERVED, idev->keybit); idev 184 drivers/input/keyboard/maple_keyb.c input_set_capability(idev, EV_MSC, MSC_SCAN); idev 186 drivers/input/keyboard/maple_keyb.c error = input_register_device(idev); idev 202 drivers/input/keyboard/maple_keyb.c input_free_device(idev); idev 91 drivers/input/keyboard/tegra-kbc.c struct input_dev *idev; idev 219 drivers/input/keyboard/tegra-kbc.c tegra_kbc_report_released_keys(kbc->idev, idev 222 drivers/input/keyboard/tegra-kbc.c tegra_kbc_report_pressed_keys(kbc->idev, scancodes, keycodes, num_down); idev 223 drivers/input/keyboard/tegra-kbc.c input_sync(kbc->idev); idev 265 drivers/input/keyboard/tegra-kbc.c input_report_key(kbc->idev, kbc->current_keys[i], 0); idev 266 drivers/input/keyboard/tegra-kbc.c input_sync(kbc->idev); idev 637 drivers/input/keyboard/tegra-kbc.c kbc->idev = devm_input_allocate_device(&pdev->dev); idev 638 drivers/input/keyboard/tegra-kbc.c if (!kbc->idev) { idev 673 drivers/input/keyboard/tegra-kbc.c kbc->idev->name = pdev->name; idev 674 drivers/input/keyboard/tegra-kbc.c kbc->idev->id.bustype = BUS_HOST; idev 675 drivers/input/keyboard/tegra-kbc.c kbc->idev->dev.parent = &pdev->dev; idev 676 drivers/input/keyboard/tegra-kbc.c kbc->idev->open = tegra_kbc_open; idev 677 drivers/input/keyboard/tegra-kbc.c kbc->idev->close = tegra_kbc_close; idev 685 drivers/input/keyboard/tegra-kbc.c kbc->keycode, kbc->idev); idev 691 drivers/input/keyboard/tegra-kbc.c __set_bit(EV_REP, kbc->idev->evbit); idev 692 drivers/input/keyboard/tegra-kbc.c input_set_capability(kbc->idev, EV_MSC, MSC_SCAN); idev 694 drivers/input/keyboard/tegra-kbc.c input_set_drvdata(kbc->idev, kbc); idev 705 drivers/input/keyboard/tegra-kbc.c err = input_register_device(kbc->idev); idev 735 drivers/input/keyboard/tegra-kbc.c mutex_lock(&kbc->idev->mutex); idev 759 drivers/input/keyboard/tegra-kbc.c if (kbc->idev->users) idev 762 drivers/input/keyboard/tegra-kbc.c mutex_unlock(&kbc->idev->mutex); idev 773 drivers/input/keyboard/tegra-kbc.c mutex_lock(&kbc->idev->mutex); idev 793 drivers/input/keyboard/tegra-kbc.c input_report_key(kbc->idev, kbc->wakeup_key, 1); idev 794 drivers/input/keyboard/tegra-kbc.c input_sync(kbc->idev); idev 795 drivers/input/keyboard/tegra-kbc.c input_report_key(kbc->idev, kbc->wakeup_key, 0); idev 796 drivers/input/keyboard/tegra-kbc.c input_sync(kbc->idev); idev 799 drivers/input/keyboard/tegra-kbc.c if (kbc->idev->users) idev 802 drivers/input/keyboard/tegra-kbc.c mutex_unlock(&kbc->idev->mutex); idev 36 drivers/input/misc/88pm80x_onkey.c struct input_dev *idev; idev 51 drivers/input/misc/88pm80x_onkey.c dev_err(info->idev->dev.parent, "failed to read status: %d\n", ret); idev 56 drivers/input/misc/88pm80x_onkey.c input_report_key(info->idev, KEY_POWER, val); idev 57 drivers/input/misc/88pm80x_onkey.c input_sync(info->idev); idev 91 drivers/input/misc/88pm80x_onkey.c info->idev = input_allocate_device(); idev 92 drivers/input/misc/88pm80x_onkey.c if (!info->idev) { idev 98 drivers/input/misc/88pm80x_onkey.c info->idev->name = "88pm80x_on"; idev 99 drivers/input/misc/88pm80x_onkey.c info->idev->phys = "88pm80x_on/input0"; idev 100 drivers/input/misc/88pm80x_onkey.c info->idev->id.bustype = BUS_I2C; idev 101 drivers/input/misc/88pm80x_onkey.c info->idev->dev.parent = &pdev->dev; idev 102 drivers/input/misc/88pm80x_onkey.c info->idev->evbit[0] = BIT_MASK(EV_KEY); idev 103 drivers/input/misc/88pm80x_onkey.c __set_bit(KEY_POWER, info->idev->keybit); idev 113 drivers/input/misc/88pm80x_onkey.c err = input_register_device(info->idev); idev 135 drivers/input/misc/88pm80x_onkey.c input_free_device(info->idev); idev 146 drivers/input/misc/88pm80x_onkey.c input_unregister_device(info->idev); idev 37 drivers/input/misc/88pm860x_onkey.c struct input_dev *idev; idev 52 drivers/input/misc/88pm860x_onkey.c input_report_key(info->idev, KEY_POWER, ret); idev 53 drivers/input/misc/88pm860x_onkey.c input_sync(info->idev); idev 79 drivers/input/misc/88pm860x_onkey.c info->idev = devm_input_allocate_device(&pdev->dev); idev 80 drivers/input/misc/88pm860x_onkey.c if (!info->idev) { idev 85 drivers/input/misc/88pm860x_onkey.c info->idev->name = "88pm860x_on"; idev 86 drivers/input/misc/88pm860x_onkey.c info->idev->phys = "88pm860x_on/input0"; idev 87 drivers/input/misc/88pm860x_onkey.c info->idev->id.bustype = BUS_I2C; idev 88 drivers/input/misc/88pm860x_onkey.c info->idev->dev.parent = &pdev->dev; idev 89 drivers/input/misc/88pm860x_onkey.c info->idev->evbit[0] = BIT_MASK(EV_KEY); idev 90 drivers/input/misc/88pm860x_onkey.c info->idev->keybit[BIT_WORD(KEY_POWER)] = BIT_MASK(KEY_POWER); idev 92 drivers/input/misc/88pm860x_onkey.c ret = input_register_device(info->idev); idev 28 drivers/input/misc/ab8500-ponkey.c struct input_dev *idev; idev 40 drivers/input/misc/ab8500-ponkey.c input_report_key(ponkey->idev, KEY_POWER, true); idev 42 drivers/input/misc/ab8500-ponkey.c input_report_key(ponkey->idev, KEY_POWER, false); idev 44 drivers/input/misc/ab8500-ponkey.c input_sync(ponkey->idev); idev 74 drivers/input/misc/ab8500-ponkey.c ponkey->idev = input; idev 102 drivers/input/misc/ab8500-ponkey.c error = input_register_device(ponkey->idev); idev 85 drivers/input/misc/apanel.c struct input_dev *idev = ipdev->input; idev 100 drivers/input/misc/apanel.c dev_dbg(&idev->dev, APANEL ": data %#x\n", data); idev 101 drivers/input/misc/apanel.c for (i = 0; i < idev->keycodemax; i++) idev 103 drivers/input/misc/apanel.c report_key(idev, ap->keymap[i]); idev 174 drivers/input/misc/apanel.c struct input_dev *idev; idev 200 drivers/input/misc/apanel.c idev = ipdev->input; idev 201 drivers/input/misc/apanel.c idev->name = APANEL_NAME " buttons"; idev 202 drivers/input/misc/apanel.c idev->phys = "apanel/input0"; idev 203 drivers/input/misc/apanel.c idev->id.bustype = BUS_HOST; idev 204 drivers/input/misc/apanel.c idev->dev.parent = &client->dev; idev 206 drivers/input/misc/apanel.c set_bit(EV_KEY, idev->evbit); idev 208 drivers/input/misc/apanel.c idev->keycode = ap->keymap; idev 209 drivers/input/misc/apanel.c idev->keycodesize = sizeof(ap->keymap[0]); idev 210 drivers/input/misc/apanel.c idev->keycodemax = (device_chip[APANEL_DEV_CDBTN] != CHIP_NONE) ? 12 : 4; idev 212 drivers/input/misc/apanel.c for (i = 0; i < idev->keycodemax; i++) idev 214 drivers/input/misc/apanel.c set_bit(ap->keymap[i], idev->keybit); idev 183 drivers/input/misc/ati_remote2.c struct input_dev *idev; idev 255 drivers/input/misc/ati_remote2.c static int ati_remote2_open(struct input_dev *idev) idev 257 drivers/input/misc/ati_remote2.c struct ati_remote2 *ar2 = input_get_drvdata(idev); idev 292 drivers/input/misc/ati_remote2.c static void ati_remote2_close(struct input_dev *idev) idev 294 drivers/input/misc/ati_remote2.c struct ati_remote2 *ar2 = input_get_drvdata(idev); idev 310 drivers/input/misc/ati_remote2.c struct input_dev *idev = ar2->idev; idev 331 drivers/input/misc/ati_remote2.c input_event(idev, EV_REL, REL_X, (s8) data[1]); idev 332 drivers/input/misc/ati_remote2.c input_event(idev, EV_REL, REL_Y, (s8) data[2]); idev 333 drivers/input/misc/ati_remote2.c input_sync(idev); idev 349 drivers/input/misc/ati_remote2.c struct input_dev *idev = ar2->idev; idev 398 drivers/input/misc/ati_remote2.c ar2->jiffies = jiffies + msecs_to_jiffies(idev->rep[REP_DELAY]); idev 410 drivers/input/misc/ati_remote2.c ar2->jiffies = jiffies + msecs_to_jiffies(idev->rep[REP_PERIOD]); idev 419 drivers/input/misc/ati_remote2.c input_event(idev, EV_KEY, ar2->keycode[mode][index], data[1]); idev 420 drivers/input/misc/ati_remote2.c input_sync(idev); idev 481 drivers/input/misc/ati_remote2.c static int ati_remote2_getkeycode(struct input_dev *idev, idev 484 drivers/input/misc/ati_remote2.c struct ati_remote2 *ar2 = input_get_drvdata(idev); idev 522 drivers/input/misc/ati_remote2.c static int ati_remote2_setkeycode(struct input_dev *idev, idev 526 drivers/input/misc/ati_remote2.c struct ati_remote2 *ar2 = input_get_drvdata(idev); idev 554 drivers/input/misc/ati_remote2.c __set_bit(ke->keycode, idev->keybit); idev 563 drivers/input/misc/ati_remote2.c __clear_bit(*old_keycode, idev->keybit); idev 570 drivers/input/misc/ati_remote2.c struct input_dev *idev; idev 573 drivers/input/misc/ati_remote2.c idev = input_allocate_device(); idev 574 drivers/input/misc/ati_remote2.c if (!idev) idev 577 drivers/input/misc/ati_remote2.c ar2->idev = idev; idev 578 drivers/input/misc/ati_remote2.c input_set_drvdata(idev, ar2); idev 580 drivers/input/misc/ati_remote2.c idev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_REP) | BIT_MASK(EV_REL); idev 581 drivers/input/misc/ati_remote2.c idev->keybit[BIT_WORD(BTN_MOUSE)] = BIT_MASK(BTN_LEFT) | idev 583 drivers/input/misc/ati_remote2.c idev->relbit[0] = BIT_MASK(REL_X) | BIT_MASK(REL_Y); idev 588 drivers/input/misc/ati_remote2.c __set_bit(ar2->keycode[mode][index], idev->keybit); idev 599 drivers/input/misc/ati_remote2.c __set_bit(KEY_PROG1, idev->keybit); idev 600 drivers/input/misc/ati_remote2.c __set_bit(KEY_PROG2, idev->keybit); idev 601 drivers/input/misc/ati_remote2.c __set_bit(KEY_PROG3, idev->keybit); idev 602 drivers/input/misc/ati_remote2.c __set_bit(KEY_PROG4, idev->keybit); idev 603 drivers/input/misc/ati_remote2.c __set_bit(KEY_PC, idev->keybit); idev 605 drivers/input/misc/ati_remote2.c idev->rep[REP_DELAY] = 250; idev 606 drivers/input/misc/ati_remote2.c idev->rep[REP_PERIOD] = 33; idev 608 drivers/input/misc/ati_remote2.c idev->open = ati_remote2_open; idev 609 drivers/input/misc/ati_remote2.c idev->close = ati_remote2_close; idev 611 drivers/input/misc/ati_remote2.c idev->getkeycode = ati_remote2_getkeycode; idev 612 drivers/input/misc/ati_remote2.c idev->setkeycode = ati_remote2_setkeycode; idev 614 drivers/input/misc/ati_remote2.c idev->name = ar2->name; idev 615 drivers/input/misc/ati_remote2.c idev->phys = ar2->phys; idev 617 drivers/input/misc/ati_remote2.c usb_to_input_id(ar2->udev, &idev->id); idev 618 drivers/input/misc/ati_remote2.c idev->dev.parent = &ar2->udev->dev; idev 620 drivers/input/misc/ati_remote2.c retval = input_register_device(idev); idev 622 drivers/input/misc/ati_remote2.c input_free_device(idev); idev 901 drivers/input/misc/ati_remote2.c input_unregister_device(ar2->idev); idev 207 drivers/input/misc/axp20x-pek.c struct input_dev *idev = pwr; idev 208 drivers/input/misc/axp20x-pek.c struct axp20x_pek *axp20x_pek = input_get_drvdata(idev); idev 215 drivers/input/misc/axp20x-pek.c input_report_key(idev, KEY_POWER, true); idev 217 drivers/input/misc/axp20x-pek.c input_report_key(idev, KEY_POWER, false); idev 219 drivers/input/misc/axp20x-pek.c input_sync(idev); idev 228 drivers/input/misc/axp20x-pek.c struct input_dev *idev; idev 247 drivers/input/misc/axp20x-pek.c idev = axp20x_pek->input; idev 249 drivers/input/misc/axp20x-pek.c idev->name = "axp20x-pek"; idev 250 drivers/input/misc/axp20x-pek.c idev->phys = "m1kbd/input2"; idev 251 drivers/input/misc/axp20x-pek.c idev->dev.parent = &pdev->dev; idev 253 drivers/input/misc/axp20x-pek.c input_set_capability(idev, EV_KEY, KEY_POWER); idev 255 drivers/input/misc/axp20x-pek.c input_set_drvdata(idev, axp20x_pek); idev 259 drivers/input/misc/axp20x-pek.c "axp20x-pek-dbr", idev); idev 268 drivers/input/misc/axp20x-pek.c "axp20x-pek-dbf", idev); idev 275 drivers/input/misc/axp20x-pek.c error = input_register_device(idev); idev 443 drivers/input/misc/bma150.c struct input_dev *idev) idev 445 drivers/input/misc/bma150.c idev->name = BMA150_DRIVER; idev 446 drivers/input/misc/bma150.c idev->phys = BMA150_DRIVER "/input0"; idev 447 drivers/input/misc/bma150.c idev->id.bustype = BUS_I2C; idev 448 drivers/input/misc/bma150.c idev->dev.parent = &bma150->client->dev; idev 450 drivers/input/misc/bma150.c idev->evbit[0] = BIT_MASK(EV_ABS); idev 451 drivers/input/misc/bma150.c input_set_abs_params(idev, ABS_X, ABSMIN_ACC_VAL, ABSMAX_ACC_VAL, 0, 0); idev 452 drivers/input/misc/bma150.c input_set_abs_params(idev, ABS_Y, ABSMIN_ACC_VAL, ABSMAX_ACC_VAL, 0, 0); idev 453 drivers/input/misc/bma150.c input_set_abs_params(idev, ABS_Z, ABSMIN_ACC_VAL, ABSMAX_ACC_VAL, 0, 0); idev 458 drivers/input/misc/bma150.c struct input_dev *idev; idev 461 drivers/input/misc/bma150.c idev = input_allocate_device(); idev 462 drivers/input/misc/bma150.c if (!idev) idev 465 drivers/input/misc/bma150.c bma150_init_input_device(bma150, idev); idev 467 drivers/input/misc/bma150.c idev->open = bma150_irq_open; idev 468 drivers/input/misc/bma150.c idev->close = bma150_irq_close; idev 469 drivers/input/misc/bma150.c input_set_drvdata(idev, bma150); idev 471 drivers/input/misc/bma150.c bma150->input = idev; idev 473 drivers/input/misc/bma150.c error = input_register_device(idev); idev 475 drivers/input/misc/bma150.c input_free_device(idev); idev 89 drivers/input/misc/cm109.c struct input_dev *idev; /* input device */ idev 296 drivers/input/misc/cm109.c struct input_dev *idev = dev->idev; idev 300 drivers/input/misc/cm109.c input_report_key(idev, dev->key_code, 0); idev 306 drivers/input/misc/cm109.c input_report_key(idev, key, 1); idev 309 drivers/input/misc/cm109.c input_sync(idev); idev 319 drivers/input/misc/cm109.c struct input_dev *idev = dev->idev; idev 329 drivers/input/misc/cm109.c input_report_key(idev, keycode, data & BIT(i)); idev 331 drivers/input/misc/cm109.c input_sync(idev); idev 332 drivers/input/misc/cm109.c input_report_key(idev, keycode, 0); idev 335 drivers/input/misc/cm109.c input_sync(idev); idev 547 drivers/input/misc/cm109.c static int cm109_input_open(struct input_dev *idev) idev 549 drivers/input/misc/cm109.c struct cm109_dev *dev = input_get_drvdata(idev); idev 554 drivers/input/misc/cm109.c dev_err(&idev->dev, "%s - cannot autoresume, result %d\n", idev 586 drivers/input/misc/cm109.c static void cm109_input_close(struct input_dev *idev) idev 588 drivers/input/misc/cm109.c struct cm109_dev *dev = input_get_drvdata(idev); idev 605 drivers/input/misc/cm109.c static int cm109_input_ev(struct input_dev *idev, unsigned int type, idev 608 drivers/input/misc/cm109.c struct cm109_dev *dev = input_get_drvdata(idev); idev 683 drivers/input/misc/cm109.c input_unregister_device(dev->idev); idev 719 drivers/input/misc/cm109.c dev->idev = input_dev = input_allocate_device(); idev 807 drivers/input/misc/cm109.c error = input_register_device(dev->idev); idev 32 drivers/input/misc/cpcap-pwrbutton.c struct input_dev *idev; idev 48 drivers/input/misc/cpcap-pwrbutton.c input_report_key(button->idev, KEY_POWER, val); idev 49 drivers/input/misc/cpcap-pwrbutton.c input_sync(button->idev); idev 64 drivers/input/misc/cpcap-pwrbutton.c button->idev = devm_input_allocate_device(&pdev->dev); idev 65 drivers/input/misc/cpcap-pwrbutton.c if (!button->idev) idev 74 drivers/input/misc/cpcap-pwrbutton.c button->idev->name = "cpcap-pwrbutton"; idev 75 drivers/input/misc/cpcap-pwrbutton.c button->idev->phys = "cpcap-pwrbutton/input0"; idev 76 drivers/input/misc/cpcap-pwrbutton.c button->idev->dev.parent = button->dev; idev 77 drivers/input/misc/cpcap-pwrbutton.c input_set_capability(button->idev, EV_KEY, KEY_POWER); idev 86 drivers/input/misc/cpcap-pwrbutton.c err = input_register_device(button->idev); idev 19 drivers/input/misc/e3x0-button.c struct input_dev *idev = data; idev 21 drivers/input/misc/e3x0-button.c input_report_key(idev, KEY_POWER, 0); idev 22 drivers/input/misc/e3x0-button.c input_sync(idev); idev 29 drivers/input/misc/e3x0-button.c struct input_dev *idev = data; idev 31 drivers/input/misc/e3x0-button.c input_report_key(idev, KEY_POWER, 1); idev 32 drivers/input/misc/e3x0-button.c pm_wakeup_event(idev->dev.parent, 0); idev 33 drivers/input/misc/e3x0-button.c input_sync(idev); idev 36 drivers/input/misc/max8925_onkey.c struct input_dev *idev; idev 54 drivers/input/misc/max8925_onkey.c input_report_key(info->idev, KEY_POWER, state & SW_INPUT); idev 55 drivers/input/misc/max8925_onkey.c input_sync(info->idev); idev 90 drivers/input/misc/max8925_onkey.c info->idev = input; idev 120 drivers/input/misc/max8925_onkey.c error = input_register_device(info->idev); idev 45 drivers/input/misc/mma8450.c struct input_polled_dev *idev; idev 160 drivers/input/misc/mma8450.c struct input_polled_dev *idev; idev 168 drivers/input/misc/mma8450.c idev = devm_input_allocate_polled_device(&c->dev); idev 169 drivers/input/misc/mma8450.c if (!idev) idev 173 drivers/input/misc/mma8450.c m->idev = idev; idev 175 drivers/input/misc/mma8450.c idev->private = m; idev 176 drivers/input/misc/mma8450.c idev->input->name = MMA8450_DRV_NAME; idev 177 drivers/input/misc/mma8450.c idev->input->id.bustype = BUS_I2C; idev 178 drivers/input/misc/mma8450.c idev->poll = mma8450_poll; idev 179 drivers/input/misc/mma8450.c idev->poll_interval = POLL_INTERVAL; idev 180 drivers/input/misc/mma8450.c idev->poll_interval_max = POLL_INTERVAL_MAX; idev 181 drivers/input/misc/mma8450.c idev->open = mma8450_open; idev 182 drivers/input/misc/mma8450.c idev->close = mma8450_close; idev 184 drivers/input/misc/mma8450.c __set_bit(EV_ABS, idev->input->evbit); idev 185 drivers/input/misc/mma8450.c input_set_abs_params(idev->input, ABS_X, -2048, 2047, 32, 32); idev 186 drivers/input/misc/mma8450.c input_set_abs_params(idev->input, ABS_Y, -2048, 2047, 32, 32); idev 187 drivers/input/misc/mma8450.c input_set_abs_params(idev->input, ABS_Z, -2048, 2047, 32, 32); idev 189 drivers/input/misc/mma8450.c err = input_register_polled_device(idev); idev 39 drivers/input/misc/pcf8574_keypad.c struct input_dev *idev; idev 74 drivers/input/misc/pcf8574_keypad.c input_report_key(lp->idev, keycode, key_down); idev 75 drivers/input/misc/pcf8574_keypad.c input_sync(lp->idev); idev 86 drivers/input/misc/pcf8574_keypad.c struct input_dev *idev; idev 98 drivers/input/misc/pcf8574_keypad.c idev = input_allocate_device(); idev 99 drivers/input/misc/pcf8574_keypad.c if (!idev) { idev 105 drivers/input/misc/pcf8574_keypad.c lp->idev = idev; idev 108 drivers/input/misc/pcf8574_keypad.c idev->evbit[0] = BIT_MASK(EV_KEY); idev 109 drivers/input/misc/pcf8574_keypad.c idev->keycode = lp->btncode; idev 110 drivers/input/misc/pcf8574_keypad.c idev->keycodesize = sizeof(lp->btncode[0]); idev 111 drivers/input/misc/pcf8574_keypad.c idev->keycodemax = ARRAY_SIZE(lp->btncode); idev 116 drivers/input/misc/pcf8574_keypad.c __set_bit(lp->btncode[i], idev->keybit); idev 119 drivers/input/misc/pcf8574_keypad.c __clear_bit(KEY_RESERVED, idev->keybit); idev 124 drivers/input/misc/pcf8574_keypad.c idev->name = lp->name; idev 125 drivers/input/misc/pcf8574_keypad.c idev->phys = lp->phys; idev 126 drivers/input/misc/pcf8574_keypad.c idev->id.bustype = BUS_I2C; idev 127 drivers/input/misc/pcf8574_keypad.c idev->id.vendor = 0x0001; idev 128 drivers/input/misc/pcf8574_keypad.c idev->id.product = 0x0001; idev 129 drivers/input/misc/pcf8574_keypad.c idev->id.version = 0x0100; idev 141 drivers/input/misc/pcf8574_keypad.c ret = input_register_device(idev); idev 153 drivers/input/misc/pcf8574_keypad.c input_free_device(idev); idev 166 drivers/input/misc/pcf8574_keypad.c input_unregister_device(lp->idev); idev 18 drivers/input/misc/rave-sp-pwrbutton.c struct input_dev *idev; idev 29 drivers/input/misc/rave-sp-pwrbutton.c struct input_dev *idev = pb->idev; idev 32 drivers/input/misc/rave-sp-pwrbutton.c input_report_key(idev, KEY_POWER, value); idev 33 drivers/input/misc/rave-sp-pwrbutton.c input_sync(idev); idev 45 drivers/input/misc/rave-sp-pwrbutton.c struct input_dev *idev; idev 52 drivers/input/misc/rave-sp-pwrbutton.c idev = devm_input_allocate_device(dev); idev 53 drivers/input/misc/rave-sp-pwrbutton.c if (!idev) idev 56 drivers/input/misc/rave-sp-pwrbutton.c idev->name = pdev->name; idev 58 drivers/input/misc/rave-sp-pwrbutton.c input_set_capability(idev, EV_KEY, KEY_POWER); idev 60 drivers/input/misc/rave-sp-pwrbutton.c error = input_register_device(idev); idev 64 drivers/input/misc/rave-sp-pwrbutton.c pb->idev = idev; idev 33 drivers/input/misc/retu-pwrbutton.c struct input_dev *idev = _pwr; idev 34 drivers/input/misc/retu-pwrbutton.c struct retu_dev *rdev = input_get_drvdata(idev); idev 38 drivers/input/misc/retu-pwrbutton.c input_report_key(idev, KEY_POWER, state); idev 39 drivers/input/misc/retu-pwrbutton.c input_sync(idev); idev 47 drivers/input/misc/retu-pwrbutton.c struct input_dev *idev; idev 55 drivers/input/misc/retu-pwrbutton.c idev = devm_input_allocate_device(&pdev->dev); idev 56 drivers/input/misc/retu-pwrbutton.c if (!idev) idev 59 drivers/input/misc/retu-pwrbutton.c idev->name = "retu-pwrbutton"; idev 60 drivers/input/misc/retu-pwrbutton.c idev->dev.parent = &pdev->dev; idev 62 drivers/input/misc/retu-pwrbutton.c input_set_capability(idev, EV_KEY, KEY_POWER); idev 63 drivers/input/misc/retu-pwrbutton.c input_set_drvdata(idev, rdev); idev 68 drivers/input/misc/retu-pwrbutton.c "retu-pwrbutton", idev); idev 72 drivers/input/misc/retu-pwrbutton.c error = input_register_device(idev); idev 51 drivers/input/misc/tps65218-pwrbutton.c struct input_dev *idev; idev 77 drivers/input/misc/tps65218-pwrbutton.c input_report_key(pwr->idev, KEY_POWER, 1); idev 80 drivers/input/misc/tps65218-pwrbutton.c input_report_key(pwr->idev, KEY_POWER, 0); idev 83 drivers/input/misc/tps65218-pwrbutton.c input_sync(pwr->idev); idev 93 drivers/input/misc/tps65218-pwrbutton.c struct input_dev *idev; idev 108 drivers/input/misc/tps65218-pwrbutton.c idev = devm_input_allocate_device(dev); idev 109 drivers/input/misc/tps65218-pwrbutton.c if (!idev) idev 112 drivers/input/misc/tps65218-pwrbutton.c idev->name = pwr->data->name; idev 115 drivers/input/misc/tps65218-pwrbutton.c idev->phys = pwr->phys; idev 116 drivers/input/misc/tps65218-pwrbutton.c idev->dev.parent = dev; idev 117 drivers/input/misc/tps65218-pwrbutton.c idev->id.bustype = BUS_I2C; idev 119 drivers/input/misc/tps65218-pwrbutton.c input_set_capability(idev, EV_KEY, KEY_POWER); idev 123 drivers/input/misc/tps65218-pwrbutton.c pwr->idev = idev; idev 140 drivers/input/misc/tps65218-pwrbutton.c error= input_register_device(idev); idev 86 drivers/input/misc/yealink.c struct input_dev *idev; /* input device */ idev 224 drivers/input/misc/yealink.c struct input_dev *idev = yld->idev; idev 228 drivers/input/misc/yealink.c input_report_key(idev, yld->key_code & 0xff, 0); idev 230 drivers/input/misc/yealink.c input_report_key(idev, yld->key_code >> 8, 0); idev 236 drivers/input/misc/yealink.c input_report_key(idev, key & 0xff, 1); idev 238 drivers/input/misc/yealink.c input_report_key(idev, key >> 8, 1); idev 240 drivers/input/misc/yealink.c input_sync(idev); idev 821 drivers/input/misc/yealink.c if (yld->idev) { idev 823 drivers/input/misc/yealink.c input_free_device(yld->idev); idev 825 drivers/input/misc/yealink.c input_unregister_device(yld->idev); idev 878 drivers/input/misc/yealink.c yld->idev = input_dev = input_allocate_device(); idev 964 drivers/input/misc/yealink.c ret = input_register_device(yld->idev); idev 343 drivers/input/mouse/hgpk.c struct input_dev *idev = psmouse->dev; idev 356 drivers/input/mouse/hgpk.c input_report_abs(idev, ABS_PRESSURE, z); idev 373 drivers/input/mouse/hgpk.c input_report_key(idev, BTN_TOUCH, down); idev 374 drivers/input/mouse/hgpk.c input_report_key(idev, BTN_LEFT, left); idev 375 drivers/input/mouse/hgpk.c input_report_key(idev, BTN_RIGHT, right); idev 416 drivers/input/mouse/hgpk.c input_report_abs(idev, ABS_X, x); idev 417 drivers/input/mouse/hgpk.c input_report_abs(idev, ABS_Y, y); idev 422 drivers/input/mouse/hgpk.c input_sync(idev); idev 41 drivers/input/touchscreen/88pm860x-ts.c struct input_dev *idev; idev 74 drivers/input/touchscreen/88pm860x-ts.c input_report_abs(touch->idev, ABS_X, x); idev 75 drivers/input/touchscreen/88pm860x-ts.c input_report_abs(touch->idev, ABS_Y, y); idev 76 drivers/input/touchscreen/88pm860x-ts.c input_report_abs(touch->idev, ABS_PRESSURE, rt); idev 77 drivers/input/touchscreen/88pm860x-ts.c input_report_key(touch->idev, BTN_TOUCH, 1); idev 80 drivers/input/touchscreen/88pm860x-ts.c input_report_abs(touch->idev, ABS_PRESSURE, 0); idev 81 drivers/input/touchscreen/88pm860x-ts.c input_report_key(touch->idev, BTN_TOUCH, 0); idev 84 drivers/input/touchscreen/88pm860x-ts.c input_sync(touch->idev); idev 246 drivers/input/touchscreen/88pm860x-ts.c touch->idev = devm_input_allocate_device(&pdev->dev); idev 247 drivers/input/touchscreen/88pm860x-ts.c if (!touch->idev) { idev 252 drivers/input/touchscreen/88pm860x-ts.c touch->idev->name = "88pm860x-touch"; idev 253 drivers/input/touchscreen/88pm860x-ts.c touch->idev->phys = "88pm860x/input0"; idev 254 drivers/input/touchscreen/88pm860x-ts.c touch->idev->id.bustype = BUS_I2C; idev 255 drivers/input/touchscreen/88pm860x-ts.c touch->idev->dev.parent = &pdev->dev; idev 256 drivers/input/touchscreen/88pm860x-ts.c touch->idev->open = pm860x_touch_open; idev 257 drivers/input/touchscreen/88pm860x-ts.c touch->idev->close = pm860x_touch_close; idev 262 drivers/input/touchscreen/88pm860x-ts.c input_set_drvdata(touch->idev, touch); idev 270 drivers/input/touchscreen/88pm860x-ts.c __set_bit(EV_ABS, touch->idev->evbit); idev 271 drivers/input/touchscreen/88pm860x-ts.c __set_bit(ABS_X, touch->idev->absbit); idev 272 drivers/input/touchscreen/88pm860x-ts.c __set_bit(ABS_Y, touch->idev->absbit); idev 273 drivers/input/touchscreen/88pm860x-ts.c __set_bit(ABS_PRESSURE, touch->idev->absbit); idev 274 drivers/input/touchscreen/88pm860x-ts.c __set_bit(EV_SYN, touch->idev->evbit); idev 275 drivers/input/touchscreen/88pm860x-ts.c __set_bit(EV_KEY, touch->idev->evbit); idev 276 drivers/input/touchscreen/88pm860x-ts.c __set_bit(BTN_TOUCH, touch->idev->keybit); idev 278 drivers/input/touchscreen/88pm860x-ts.c input_set_abs_params(touch->idev, ABS_X, 0, 1 << ACCURATE_BIT, 0, 0); idev 279 drivers/input/touchscreen/88pm860x-ts.c input_set_abs_params(touch->idev, ABS_Y, 0, 1 << ACCURATE_BIT, 0, 0); idev 280 drivers/input/touchscreen/88pm860x-ts.c input_set_abs_params(touch->idev, ABS_PRESSURE, 0, 1 << ACCURATE_BIT, idev 283 drivers/input/touchscreen/88pm860x-ts.c ret = input_register_device(touch->idev); idev 148 drivers/input/touchscreen/bcm_iproc_tsc.c struct input_dev *idev; idev 220 drivers/input/touchscreen/bcm_iproc_tsc.c input_report_key(priv->idev, BTN_TOUCH, priv->pen_status); idev 255 drivers/input/touchscreen/bcm_iproc_tsc.c input_report_abs(priv->idev, ABS_X, x); idev 256 drivers/input/touchscreen/bcm_iproc_tsc.c input_report_abs(priv->idev, ABS_Y, y); idev 264 drivers/input/touchscreen/bcm_iproc_tsc.c input_sync(priv->idev); idev 269 drivers/input/touchscreen/bcm_iproc_tsc.c static int iproc_ts_start(struct input_dev *idev) idev 274 drivers/input/touchscreen/bcm_iproc_tsc.c struct iproc_ts_priv *priv = input_get_drvdata(idev); idev 426 drivers/input/touchscreen/bcm_iproc_tsc.c struct input_dev *idev; idev 458 drivers/input/touchscreen/bcm_iproc_tsc.c idev = devm_input_allocate_device(&pdev->dev); idev 459 drivers/input/touchscreen/bcm_iproc_tsc.c if (!idev) { idev 464 drivers/input/touchscreen/bcm_iproc_tsc.c priv->idev = idev; idev 468 drivers/input/touchscreen/bcm_iproc_tsc.c idev->name = IPROC_TS_NAME; idev 469 drivers/input/touchscreen/bcm_iproc_tsc.c idev->dev.parent = &pdev->dev; idev 471 drivers/input/touchscreen/bcm_iproc_tsc.c idev->id.bustype = BUS_HOST; idev 472 drivers/input/touchscreen/bcm_iproc_tsc.c idev->id.vendor = SERIO_UNKNOWN; idev 473 drivers/input/touchscreen/bcm_iproc_tsc.c idev->id.product = 0; idev 474 drivers/input/touchscreen/bcm_iproc_tsc.c idev->id.version = 0; idev 476 drivers/input/touchscreen/bcm_iproc_tsc.c idev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_ABS); idev 477 drivers/input/touchscreen/bcm_iproc_tsc.c __set_bit(BTN_TOUCH, idev->keybit); idev 479 drivers/input/touchscreen/bcm_iproc_tsc.c input_set_abs_params(idev, ABS_X, X_MIN, priv->cfg_params.max_x, idev 481 drivers/input/touchscreen/bcm_iproc_tsc.c input_set_abs_params(idev, ABS_Y, Y_MIN, priv->cfg_params.max_y, idev 484 drivers/input/touchscreen/bcm_iproc_tsc.c idev->open = iproc_ts_start; idev 485 drivers/input/touchscreen/bcm_iproc_tsc.c idev->close = iproc_ts_stop; idev 487 drivers/input/touchscreen/bcm_iproc_tsc.c input_set_drvdata(idev, priv); idev 501 drivers/input/touchscreen/bcm_iproc_tsc.c error = input_register_device(priv->idev); idev 29 drivers/input/touchscreen/fsl-imx25-tcq.c struct input_dev *idev; idev 280 drivers/input/touchscreen/fsl-imx25-tcq.c input_report_abs(priv->idev, ABS_X, x_pos); idev 281 drivers/input/touchscreen/fsl-imx25-tcq.c input_report_abs(priv->idev, ABS_Y, y_pos); idev 282 drivers/input/touchscreen/fsl-imx25-tcq.c input_report_key(priv->idev, BTN_TOUCH, 1); idev 283 drivers/input/touchscreen/fsl-imx25-tcq.c input_sync(priv->idev); idev 293 drivers/input/touchscreen/fsl-imx25-tcq.c input_report_key(priv->idev, BTN_TOUCH, 0); idev 294 drivers/input/touchscreen/fsl-imx25-tcq.c input_sync(priv->idev); idev 466 drivers/input/touchscreen/fsl-imx25-tcq.c static int mx25_tcq_open(struct input_dev *idev) idev 468 drivers/input/touchscreen/fsl-imx25-tcq.c struct device *dev = &idev->dev; idev 490 drivers/input/touchscreen/fsl-imx25-tcq.c static void mx25_tcq_close(struct input_dev *idev) idev 492 drivers/input/touchscreen/fsl-imx25-tcq.c struct mx25_tcq_priv *priv = input_get_drvdata(idev); idev 503 drivers/input/touchscreen/fsl-imx25-tcq.c struct input_dev *idev; idev 532 drivers/input/touchscreen/fsl-imx25-tcq.c idev = devm_input_allocate_device(dev); idev 533 drivers/input/touchscreen/fsl-imx25-tcq.c if (!idev) { idev 538 drivers/input/touchscreen/fsl-imx25-tcq.c idev->name = mx25_tcq_name; idev 539 drivers/input/touchscreen/fsl-imx25-tcq.c input_set_capability(idev, EV_KEY, BTN_TOUCH); idev 540 drivers/input/touchscreen/fsl-imx25-tcq.c input_set_abs_params(idev, ABS_X, 0, 0xfff, 0, 0); idev 541 drivers/input/touchscreen/fsl-imx25-tcq.c input_set_abs_params(idev, ABS_Y, 0, 0xfff, 0, 0); idev 543 drivers/input/touchscreen/fsl-imx25-tcq.c idev->id.bustype = BUS_HOST; idev 544 drivers/input/touchscreen/fsl-imx25-tcq.c idev->open = mx25_tcq_open; idev 545 drivers/input/touchscreen/fsl-imx25-tcq.c idev->close = mx25_tcq_close; idev 547 drivers/input/touchscreen/fsl-imx25-tcq.c priv->idev = idev; idev 548 drivers/input/touchscreen/fsl-imx25-tcq.c input_set_drvdata(idev, priv); idev 568 drivers/input/touchscreen/fsl-imx25-tcq.c error = input_register_device(idev); idev 34 drivers/input/touchscreen/mc13783_ts.c struct input_dev *idev; idev 69 drivers/input/touchscreen/mc13783_ts.c struct input_dev *idev = priv->idev; idev 86 drivers/input/touchscreen/mc13783_ts.c dev_dbg(&idev->dev, idev 100 drivers/input/touchscreen/mc13783_ts.c input_report_abs(idev, ABS_X, x1); idev 101 drivers/input/touchscreen/mc13783_ts.c input_report_abs(idev, ABS_Y, y1); idev 103 drivers/input/touchscreen/mc13783_ts.c dev_dbg(&idev->dev, "report (%d, %d, %d)\n", idev 107 drivers/input/touchscreen/mc13783_ts.c dev_dbg(&idev->dev, "report release\n"); idev 110 drivers/input/touchscreen/mc13783_ts.c input_report_abs(idev, ABS_PRESSURE, idev 112 drivers/input/touchscreen/mc13783_ts.c input_report_key(idev, BTN_TOUCH, cr0); idev 113 drivers/input/touchscreen/mc13783_ts.c input_sync(idev); idev 115 drivers/input/touchscreen/mc13783_ts.c dev_dbg(&idev->dev, "discard event\n"); idev 172 drivers/input/touchscreen/mc13783_ts.c struct input_dev *idev; idev 176 drivers/input/touchscreen/mc13783_ts.c idev = input_allocate_device(); idev 177 drivers/input/touchscreen/mc13783_ts.c if (!priv || !idev) idev 182 drivers/input/touchscreen/mc13783_ts.c priv->idev = idev; idev 190 drivers/input/touchscreen/mc13783_ts.c idev->name = MC13783_TS_NAME; idev 191 drivers/input/touchscreen/mc13783_ts.c idev->dev.parent = &pdev->dev; idev 193 drivers/input/touchscreen/mc13783_ts.c idev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_ABS); idev 194 drivers/input/touchscreen/mc13783_ts.c idev->keybit[BIT_WORD(BTN_TOUCH)] = BIT_MASK(BTN_TOUCH); idev 195 drivers/input/touchscreen/mc13783_ts.c input_set_abs_params(idev, ABS_X, 0, 0xfff, 0, 0); idev 196 drivers/input/touchscreen/mc13783_ts.c input_set_abs_params(idev, ABS_Y, 0, 0xfff, 0, 0); idev 197 drivers/input/touchscreen/mc13783_ts.c input_set_abs_params(idev, ABS_PRESSURE, 0, 0xfff, 0, 0); idev 199 drivers/input/touchscreen/mc13783_ts.c idev->open = mc13783_ts_open; idev 200 drivers/input/touchscreen/mc13783_ts.c idev->close = mc13783_ts_close; idev 202 drivers/input/touchscreen/mc13783_ts.c input_set_drvdata(idev, priv); idev 204 drivers/input/touchscreen/mc13783_ts.c ret = input_register_device(priv->idev); idev 215 drivers/input/touchscreen/mc13783_ts.c input_free_device(idev); idev 224 drivers/input/touchscreen/mc13783_ts.c input_unregister_device(priv->idev); idev 72 drivers/input/touchscreen/stmpe-ts.c struct input_dev *idev; idev 121 drivers/input/touchscreen/stmpe-ts.c input_report_abs(ts->idev, ABS_PRESSURE, 0); idev 122 drivers/input/touchscreen/stmpe-ts.c input_report_key(ts->idev, BTN_TOUCH, 0); idev 123 drivers/input/touchscreen/stmpe-ts.c input_sync(ts->idev); idev 153 drivers/input/touchscreen/stmpe-ts.c input_report_abs(ts->idev, ABS_X, x); idev 154 drivers/input/touchscreen/stmpe-ts.c input_report_abs(ts->idev, ABS_Y, y); idev 155 drivers/input/touchscreen/stmpe-ts.c input_report_abs(ts->idev, ABS_PRESSURE, z); idev 156 drivers/input/touchscreen/stmpe-ts.c input_report_key(ts->idev, BTN_TOUCH, 1); idev 157 drivers/input/touchscreen/stmpe-ts.c input_sync(ts->idev); idev 289 drivers/input/touchscreen/stmpe-ts.c struct input_dev *idev; idev 301 drivers/input/touchscreen/stmpe-ts.c idev = devm_input_allocate_device(&pdev->dev); idev 302 drivers/input/touchscreen/stmpe-ts.c if (!idev) idev 307 drivers/input/touchscreen/stmpe-ts.c ts->idev = idev; idev 326 drivers/input/touchscreen/stmpe-ts.c idev->name = STMPE_TS_NAME; idev 327 drivers/input/touchscreen/stmpe-ts.c idev->phys = STMPE_TS_NAME"/input0"; idev 328 drivers/input/touchscreen/stmpe-ts.c idev->id.bustype = BUS_I2C; idev 330 drivers/input/touchscreen/stmpe-ts.c idev->open = stmpe_ts_open; idev 331 drivers/input/touchscreen/stmpe-ts.c idev->close = stmpe_ts_close; idev 333 drivers/input/touchscreen/stmpe-ts.c input_set_drvdata(idev, ts); idev 335 drivers/input/touchscreen/stmpe-ts.c input_set_capability(idev, EV_KEY, BTN_TOUCH); idev 336 drivers/input/touchscreen/stmpe-ts.c input_set_abs_params(idev, ABS_X, 0, XY_MASK, 0, 0); idev 337 drivers/input/touchscreen/stmpe-ts.c input_set_abs_params(idev, ABS_Y, 0, XY_MASK, 0, 0); idev 338 drivers/input/touchscreen/stmpe-ts.c input_set_abs_params(idev, ABS_PRESSURE, 0x0, 0xff, 0, 0); idev 340 drivers/input/touchscreen/stmpe-ts.c error = input_register_device(idev); idev 80 drivers/input/touchscreen/tsc200x-core.c struct input_dev *idev; idev 116 drivers/input/touchscreen/tsc200x-core.c input_report_abs(ts->idev, ABS_X, x); idev 117 drivers/input/touchscreen/tsc200x-core.c input_report_abs(ts->idev, ABS_Y, y); idev 118 drivers/input/touchscreen/tsc200x-core.c input_report_abs(ts->idev, ABS_PRESSURE, pressure); idev 120 drivers/input/touchscreen/tsc200x-core.c input_report_key(ts->idev, BTN_TOUCH, !!pressure); idev 124 drivers/input/touchscreen/tsc200x-core.c input_report_abs(ts->idev, ABS_PRESSURE, 0); idev 126 drivers/input/touchscreen/tsc200x-core.c input_report_key(ts->idev, BTN_TOUCH, 0); idev 130 drivers/input/touchscreen/tsc200x-core.c input_sync(ts->idev); idev 473 drivers/input/touchscreen/tsc200x-core.c ts->idev = input_dev; idev 562 drivers/input/touchscreen/tsc200x-core.c error = input_register_device(ts->idev); idev 147 drivers/input/touchscreen/ucb1400_ts.c static void ucb1400_ts_report_event(struct input_dev *idev, u16 pressure, u16 x, u16 y) idev 149 drivers/input/touchscreen/ucb1400_ts.c input_report_abs(idev, ABS_X, x); idev 150 drivers/input/touchscreen/ucb1400_ts.c input_report_abs(idev, ABS_Y, y); idev 151 drivers/input/touchscreen/ucb1400_ts.c input_report_abs(idev, ABS_PRESSURE, pressure); idev 152 drivers/input/touchscreen/ucb1400_ts.c input_report_key(idev, BTN_TOUCH, 1); idev 153 drivers/input/touchscreen/ucb1400_ts.c input_sync(idev); idev 156 drivers/input/touchscreen/ucb1400_ts.c static void ucb1400_ts_event_release(struct input_dev *idev) idev 158 drivers/input/touchscreen/ucb1400_ts.c input_report_abs(idev, ABS_PRESSURE, 0); idev 159 drivers/input/touchscreen/ucb1400_ts.c input_report_key(idev, BTN_TOUCH, 0); idev 160 drivers/input/touchscreen/ucb1400_ts.c input_sync(idev); idev 249 drivers/input/touchscreen/ucb1400_ts.c static int ucb1400_ts_open(struct input_dev *idev) idev 251 drivers/input/touchscreen/ucb1400_ts.c struct ucb1400_ts *ucb = input_get_drvdata(idev); idev 258 drivers/input/touchscreen/ucb1400_ts.c static void ucb1400_ts_close(struct input_dev *idev) idev 260 drivers/input/touchscreen/ucb1400_ts.c struct ucb1400_ts *ucb = input_get_drvdata(idev); idev 409 drivers/input/touchscreen/ucb1400_ts.c struct input_dev *idev = ucb->ts_idev; idev 411 drivers/input/touchscreen/ucb1400_ts.c mutex_lock(&idev->mutex); idev 413 drivers/input/touchscreen/ucb1400_ts.c if (idev->users) idev 416 drivers/input/touchscreen/ucb1400_ts.c mutex_unlock(&idev->mutex); idev 423 drivers/input/touchscreen/ucb1400_ts.c struct input_dev *idev = ucb->ts_idev; idev 425 drivers/input/touchscreen/ucb1400_ts.c mutex_lock(&idev->mutex); idev 427 drivers/input/touchscreen/ucb1400_ts.c if (idev->users) idev 430 drivers/input/touchscreen/ucb1400_ts.c mutex_unlock(&idev->mutex); idev 186 drivers/input/touchscreen/wm831x-ts.c static int wm831x_ts_input_open(struct input_dev *idev) idev 188 drivers/input/touchscreen/wm831x-ts.c struct wm831x_ts *wm831x_ts = input_get_drvdata(idev); idev 202 drivers/input/touchscreen/wm831x-ts.c static void wm831x_ts_input_close(struct input_dev *idev) idev 204 drivers/input/touchscreen/wm831x-ts.c struct wm831x_ts *wm831x_ts = input_get_drvdata(idev); idev 495 drivers/input/touchscreen/wm97xx-core.c static int wm97xx_ts_input_open(struct input_dev *idev) idev 497 drivers/input/touchscreen/wm97xx-core.c struct wm97xx *wm = input_get_drvdata(idev); idev 544 drivers/input/touchscreen/wm97xx-core.c static void wm97xx_ts_input_close(struct input_dev *idev) idev 546 drivers/input/touchscreen/wm97xx-core.c struct wm97xx *wm = input_get_drvdata(idev); idev 707 drivers/ipack/devices/ipoctal.c static void ipoctal_remove(struct ipack_device *idev) idev 709 drivers/ipack/devices/ipoctal.c __ipoctal_remove(dev_get_drvdata(&idev->dev)); idev 40 drivers/ipack/ipack.c ipack_match_id(const struct ipack_device_id *ids, struct ipack_device *idev) idev 44 drivers/ipack/ipack.c if (ipack_match_one_device(ids, idev)) idev 54 drivers/ipack/ipack.c struct ipack_device *idev = to_ipack_dev(dev); idev 58 drivers/ipack/ipack.c found_id = ipack_match_id(idrv->id_table, idev); idev 87 drivers/ipack/ipack.c struct ipack_device *idev; idev 92 drivers/ipack/ipack.c idev = to_ipack_dev(dev); idev 95 drivers/ipack/ipack.c "MODALIAS=ipack:f%02Xv%08Xd%08X", idev->id_format, idev 96 drivers/ipack/ipack.c idev->id_vendor, idev->id_device)) idev 107 drivers/ipack/ipack.c struct ipack_device *idev = to_ipack_dev(dev); \ idev 108 drivers/ipack/ipack.c return sprintf(buf, format_string, idev->field); \ idev 115 drivers/ipack/ipack.c struct ipack_device *idev = to_ipack_dev(dev); idev 118 drivers/ipack/ipack.c switch (idev->id_format) { idev 127 drivers/ipack/ipack.c for (i = 0; i < idev->id_avail; i++) { idev 134 drivers/ipack/ipack.c sprintf(&buf[c], "%02x", idev->id[i]); idev 144 drivers/ipack/ipack.c struct ipack_device *idev = to_ipack_dev(dev); idev 145 drivers/ipack/ipack.c switch (idev->id_format) { idev 147 drivers/ipack/ipack.c return sprintf(buf, "0x%02x\n", idev->id_vendor); idev 149 drivers/ipack/ipack.c return sprintf(buf, "0x%06x\n", idev->id_vendor); idev 158 drivers/ipack/ipack.c struct ipack_device *idev = to_ipack_dev(dev); idev 159 drivers/ipack/ipack.c switch (idev->id_format) { idev 161 drivers/ipack/ipack.c return sprintf(buf, "0x%02x\n", idev->id_device); idev 163 drivers/ipack/ipack.c return sprintf(buf, "0x%04x\n", idev->id_device); idev 172 drivers/ipack/ipack.c struct ipack_device *idev = to_ipack_dev(dev); idev 174 drivers/ipack/ipack.c return sprintf(buf, "ipac:f%02Xv%08Xd%08X", idev->id_format, idev 175 drivers/ipack/ipack.c idev->id_vendor, idev->id_device); idev 233 drivers/ipack/ipack.c struct ipack_device *idev = to_ipack_dev(dev); idev 236 drivers/ipack/ipack.c if (idev->bus == bus) idev 237 drivers/ipack/ipack.c ipack_device_del(idev); idev 41 drivers/leds/leds-pca9532.c struct input_dev *idev; idev 335 drivers/leds/leds-pca9532.c if (data->idev != NULL) { idev 337 drivers/leds/leds-pca9532.c data->idev = NULL; idev 401 drivers/leds/leds-pca9532.c BUG_ON(data->idev); idev 404 drivers/leds/leds-pca9532.c data->idev = devm_input_allocate_device(&client->dev); idev 405 drivers/leds/leds-pca9532.c if (data->idev == NULL) { idev 409 drivers/leds/leds-pca9532.c data->idev->name = pled->name; idev 410 drivers/leds/leds-pca9532.c data->idev->phys = "i2c/pca9532"; idev 411 drivers/leds/leds-pca9532.c data->idev->id.bustype = BUS_HOST; idev 412 drivers/leds/leds-pca9532.c data->idev->id.vendor = 0x001f; idev 413 drivers/leds/leds-pca9532.c data->idev->id.product = 0x0001; idev 414 drivers/leds/leds-pca9532.c data->idev->id.version = 0x0100; idev 415 drivers/leds/leds-pca9532.c data->idev->evbit[0] = BIT_MASK(EV_SND); idev 416 drivers/leds/leds-pca9532.c data->idev->sndbit[0] = BIT_MASK(SND_BELL) | idev 418 drivers/leds/leds-pca9532.c data->idev->event = pca9532_event; idev 419 drivers/leds/leds-pca9532.c input_set_drvdata(data->idev, data); idev 421 drivers/leds/leds-pca9532.c err = input_register_device(data->idev); idev 424 drivers/leds/leds-pca9532.c data->idev = NULL; idev 30 drivers/macintosh/ams/ams-input.c struct input_dev *idev = dev->input; idev 41 drivers/macintosh/ams/ams-input.c input_report_abs(idev, ABS_X, invert ? -x : x); idev 42 drivers/macintosh/ams/ams-input.c input_report_abs(idev, ABS_Y, invert ? -y : y); idev 43 drivers/macintosh/ams/ams-input.c input_report_abs(idev, ABS_Z, z); idev 45 drivers/macintosh/ams/ams-input.c input_sync(idev); idev 62 drivers/macintosh/ams/ams-input.c ams_info.idev = input_allocate_polled_device(); idev 63 drivers/macintosh/ams/ams-input.c if (!ams_info.idev) idev 66 drivers/macintosh/ams/ams-input.c ams_info.idev->poll = ams_idev_poll; idev 67 drivers/macintosh/ams/ams-input.c ams_info.idev->poll_interval = 25; idev 69 drivers/macintosh/ams/ams-input.c input = ams_info.idev->input; idev 83 drivers/macintosh/ams/ams-input.c error = input_register_polled_device(ams_info.idev); idev 85 drivers/macintosh/ams/ams-input.c input_free_polled_device(ams_info.idev); idev 86 drivers/macintosh/ams/ams-input.c ams_info.idev = NULL; idev 97 drivers/macintosh/ams/ams-input.c if (ams_info.idev) { idev 98 drivers/macintosh/ams/ams-input.c input_unregister_polled_device(ams_info.idev); idev 99 drivers/macintosh/ams/ams-input.c input_free_polled_device(ams_info.idev); idev 100 drivers/macintosh/ams/ams-input.c ams_info.idev = NULL; idev 54 drivers/macintosh/ams/ams.h struct input_polled_dev *idev; idev 127 drivers/media/firewire/firedtv-rc.c struct input_dev *idev; idev 130 drivers/media/firewire/firedtv-rc.c idev = input_allocate_device(); idev 131 drivers/media/firewire/firedtv-rc.c if (!idev) idev 134 drivers/media/firewire/firedtv-rc.c fdtv->remote_ctrl_dev = idev; idev 135 drivers/media/firewire/firedtv-rc.c idev->name = "FireDTV remote control"; idev 136 drivers/media/firewire/firedtv-rc.c idev->dev.parent = dev; idev 137 drivers/media/firewire/firedtv-rc.c idev->evbit[0] = BIT_MASK(EV_KEY); idev 138 drivers/media/firewire/firedtv-rc.c idev->keycode = kmemdup(keytable, sizeof(keytable), GFP_KERNEL); idev 139 drivers/media/firewire/firedtv-rc.c if (!idev->keycode) { idev 143 drivers/media/firewire/firedtv-rc.c idev->keycodesize = sizeof(keytable[0]); idev 144 drivers/media/firewire/firedtv-rc.c idev->keycodemax = ARRAY_SIZE(keytable); idev 147 drivers/media/firewire/firedtv-rc.c set_bit(keytable[i], idev->keybit); idev 149 drivers/media/firewire/firedtv-rc.c err = input_register_device(idev); idev 156 drivers/media/firewire/firedtv-rc.c kfree(idev->keycode); idev 158 drivers/media/firewire/firedtv-rc.c input_free_device(idev); idev 171 drivers/media/firewire/firedtv-rc.c struct input_dev *idev = fdtv->remote_ctrl_dev; idev 172 drivers/media/firewire/firedtv-rc.c u16 *keycode = idev->keycode; idev 189 drivers/media/firewire/firedtv-rc.c input_report_key(idev, code, 1); idev 190 drivers/media/firewire/firedtv-rc.c input_sync(idev); idev 191 drivers/media/firewire/firedtv-rc.c input_report_key(idev, code, 0); idev 192 drivers/media/firewire/firedtv-rc.c input_sync(idev); idev 229 drivers/media/pci/ddbridge/ddbridge-core.c struct ddb *idev = ddbs[(i >> 4) & 0x3f]; idev 234 drivers/media/pci/ddbridge/ddbridge-core.c if (!idev || !pdev) idev 236 drivers/media/pci/ddbridge/ddbridge-core.c if (!idev->has_dma || !pdev->has_dma) idev 248 drivers/media/pci/ddbridge/ddbridge-core.c input = &idev->input[i & 7]; idev 233 drivers/media/rc/ati_remote.c struct input_dev *idev; idev 483 drivers/media/rc/ati_remote.c struct input_dev *dev = ati_remote->idev; idev 725 drivers/media/rc/ati_remote.c struct input_dev *idev = ati_remote->idev; idev 728 drivers/media/rc/ati_remote.c idev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_REL); idev 729 drivers/media/rc/ati_remote.c idev->keybit[BIT_WORD(BTN_MOUSE)] = BIT_MASK(BTN_LEFT) | idev 731 drivers/media/rc/ati_remote.c idev->relbit[0] = BIT_MASK(REL_X) | BIT_MASK(REL_Y); idev 735 drivers/media/rc/ati_remote.c __set_bit(ati_remote_tbl[i].code, idev->keybit); idev 737 drivers/media/rc/ati_remote.c input_set_drvdata(idev, ati_remote); idev 739 drivers/media/rc/ati_remote.c idev->open = ati_remote_input_open; idev 740 drivers/media/rc/ati_remote.c idev->close = ati_remote_input_close; idev 742 drivers/media/rc/ati_remote.c idev->name = ati_remote->mouse_name; idev 743 drivers/media/rc/ati_remote.c idev->phys = ati_remote->mouse_phys; idev 745 drivers/media/rc/ati_remote.c usb_to_input_id(ati_remote->udev, &idev->id); idev 746 drivers/media/rc/ati_remote.c idev->dev.parent = &ati_remote->interface->dev; idev 906 drivers/media/rc/ati_remote.c ati_remote->idev = input_dev; idev 949 drivers/media/rc/ati_remote.c if (ati_remote->idev) idev 950 drivers/media/rc/ati_remote.c input_unregister_device(ati_remote->idev); idev 127 drivers/media/rc/imon.c struct input_dev *idev; /* input device for panel & IR mouse */ idev 1328 drivers/media/rc/imon.c input_report_rel(ictx->idev, REL_WHEEL, dir); idev 1330 drivers/media/rc/imon.c input_report_rel(ictx->idev, REL_X, rel_x); idev 1331 drivers/media/rc/imon.c input_report_rel(ictx->idev, REL_Y, rel_y); idev 1333 drivers/media/rc/imon.c input_report_key(ictx->idev, BTN_LEFT, buf[1] & 0x1); idev 1334 drivers/media/rc/imon.c input_report_key(ictx->idev, BTN_RIGHT, idev 1337 drivers/media/rc/imon.c input_sync(ictx->idev); idev 1658 drivers/media/rc/imon.c if (msec < ictx->idev->rep[REP_DELAY]) { idev 1668 drivers/media/rc/imon.c input_report_key(ictx->idev, kc, press_type); idev 1669 drivers/media/rc/imon.c input_sync(ictx->idev); idev 1672 drivers/media/rc/imon.c input_report_key(ictx->idev, kc, 0); idev 1673 drivers/media/rc/imon.c input_sync(ictx->idev); idev 1982 drivers/media/rc/imon.c struct input_dev *idev; idev 1985 drivers/media/rc/imon.c idev = input_allocate_device(); idev 1986 drivers/media/rc/imon.c if (!idev) idev 1992 drivers/media/rc/imon.c idev->name = ictx->name_idev; idev 1997 drivers/media/rc/imon.c idev->phys = ictx->phys_idev; idev 1999 drivers/media/rc/imon.c idev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_REP) | BIT_MASK(EV_REL); idev 2001 drivers/media/rc/imon.c idev->keybit[BIT_WORD(BTN_MOUSE)] = idev 2003 drivers/media/rc/imon.c idev->relbit[0] = BIT_MASK(REL_X) | BIT_MASK(REL_Y) | idev 2009 drivers/media/rc/imon.c __set_bit(kc, idev->keybit); idev 2012 drivers/media/rc/imon.c usb_to_input_id(ictx->usbdev_intf0, &idev->id); idev 2013 drivers/media/rc/imon.c idev->dev.parent = ictx->dev; idev 2014 drivers/media/rc/imon.c input_set_drvdata(idev, ictx); idev 2016 drivers/media/rc/imon.c ret = input_register_device(idev); idev 2022 drivers/media/rc/imon.c return idev; idev 2025 drivers/media/rc/imon.c input_free_device(idev); idev 2230 drivers/media/rc/imon.c ictx->idev = imon_init_idev(ictx); idev 2231 drivers/media/rc/imon.c if (!ictx->idev) { idev 2248 drivers/media/rc/imon.c input_unregister_device(ictx->idev); idev 2487 drivers/media/rc/imon.c input_unregister_device(ictx->idev); idev 390 drivers/media/rc/rc-main.c static int ir_setkeycode(struct input_dev *idev, idev 394 drivers/media/rc/rc-main.c struct rc_dev *rdev = input_get_drvdata(idev); idev 511 drivers/media/rc/rc-main.c static int ir_getkeycode(struct input_dev *idev, idev 514 drivers/media/rc/rc-main.c struct rc_dev *rdev = input_get_drvdata(idev); idev 957 drivers/media/rc/rc-main.c static int ir_open(struct input_dev *idev) idev 959 drivers/media/rc/rc-main.c struct rc_dev *rdev = input_get_drvdata(idev); idev 976 drivers/media/rc/rc-main.c static void ir_close(struct input_dev *idev) idev 978 drivers/media/rc/rc-main.c struct rc_dev *rdev = input_get_drvdata(idev); idev 39 drivers/mfd/ucb1x00-ts.c struct input_dev *idev; idev 56 drivers/mfd/ucb1x00-ts.c struct input_dev *idev = ts->idev; idev 58 drivers/mfd/ucb1x00-ts.c input_report_abs(idev, ABS_X, x); idev 59 drivers/mfd/ucb1x00-ts.c input_report_abs(idev, ABS_Y, y); idev 60 drivers/mfd/ucb1x00-ts.c input_report_abs(idev, ABS_PRESSURE, pressure); idev 61 drivers/mfd/ucb1x00-ts.c input_report_key(idev, BTN_TOUCH, 1); idev 62 drivers/mfd/ucb1x00-ts.c input_sync(idev); idev 67 drivers/mfd/ucb1x00-ts.c struct input_dev *idev = ts->idev; idev 69 drivers/mfd/ucb1x00-ts.c input_report_abs(idev, ABS_PRESSURE, 0); idev 70 drivers/mfd/ucb1x00-ts.c input_report_key(idev, BTN_TOUCH, 0); idev 71 drivers/mfd/ucb1x00-ts.c input_sync(idev); idev 301 drivers/mfd/ucb1x00-ts.c static int ucb1x00_ts_open(struct input_dev *idev) idev 303 drivers/mfd/ucb1x00-ts.c struct ucb1x00_ts *ts = input_get_drvdata(idev); idev 347 drivers/mfd/ucb1x00-ts.c static void ucb1x00_ts_close(struct input_dev *idev) idev 349 drivers/mfd/ucb1x00-ts.c struct ucb1x00_ts *ts = input_get_drvdata(idev); idev 367 drivers/mfd/ucb1x00-ts.c struct input_dev *idev; idev 371 drivers/mfd/ucb1x00-ts.c idev = input_allocate_device(); idev 372 drivers/mfd/ucb1x00-ts.c if (!ts || !idev) { idev 378 drivers/mfd/ucb1x00-ts.c ts->idev = idev; idev 382 drivers/mfd/ucb1x00-ts.c idev->name = "Touchscreen panel"; idev 383 drivers/mfd/ucb1x00-ts.c idev->id.product = ts->ucb->id; idev 384 drivers/mfd/ucb1x00-ts.c idev->open = ucb1x00_ts_open; idev 385 drivers/mfd/ucb1x00-ts.c idev->close = ucb1x00_ts_close; idev 386 drivers/mfd/ucb1x00-ts.c idev->dev.parent = &ts->ucb->dev; idev 388 drivers/mfd/ucb1x00-ts.c idev->evbit[0] = BIT_MASK(EV_ABS) | BIT_MASK(EV_KEY); idev 389 drivers/mfd/ucb1x00-ts.c idev->keybit[BIT_WORD(BTN_TOUCH)] = BIT_MASK(BTN_TOUCH); idev 391 drivers/mfd/ucb1x00-ts.c input_set_drvdata(idev, ts); idev 398 drivers/mfd/ucb1x00-ts.c input_set_abs_params(idev, ABS_X, 0, ts->x_res, 0, 0); idev 399 drivers/mfd/ucb1x00-ts.c input_set_abs_params(idev, ABS_Y, 0, ts->y_res, 0, 0); idev 400 drivers/mfd/ucb1x00-ts.c input_set_abs_params(idev, ABS_PRESSURE, 0, 0, 0, 0); idev 402 drivers/mfd/ucb1x00-ts.c err = input_register_device(idev); idev 411 drivers/mfd/ucb1x00-ts.c input_free_device(idev); idev 420 drivers/mfd/ucb1x00-ts.c input_unregister_device(ts->idev); idev 458 drivers/misc/lis3lv02d/lis3lv02d.c if (lis3->pdata && lis3->whoami == WAI_8B && lis3->idev) idev 500 drivers/misc/lis3lv02d/lis3lv02d.c struct input_dev *dev = lis3->idev->input; idev 543 drivers/misc/lis3lv02d/lis3lv02d.c lis3lv02d_joystick_poll(lis3->idev); idev 558 drivers/misc/lis3lv02d/lis3lv02d.c lis3lv02d_joystick_poll(lis3->idev); idev 677 drivers/misc/lis3lv02d/lis3lv02d.c if (lis3->idev) idev 680 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev = input_allocate_polled_device(); idev 681 drivers/misc/lis3lv02d/lis3lv02d.c if (!lis3->idev) idev 684 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev->poll = lis3lv02d_joystick_poll; idev 685 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev->open = lis3lv02d_joystick_open; idev 686 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev->close = lis3lv02d_joystick_close; idev 687 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev->poll_interval = MDPS_POLL_INTERVAL; idev 688 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev->poll_interval_min = MDPS_POLL_MIN; idev 689 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev->poll_interval_max = MDPS_POLL_MAX; idev 690 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev->private = lis3; idev 691 drivers/misc/lis3lv02d/lis3lv02d.c input_dev = lis3->idev->input; idev 719 drivers/misc/lis3lv02d/lis3lv02d.c err = input_register_polled_device(lis3->idev); idev 721 drivers/misc/lis3lv02d/lis3lv02d.c input_free_polled_device(lis3->idev); idev 722 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev = NULL; idev 736 drivers/misc/lis3lv02d/lis3lv02d.c if (!lis3->idev) idev 741 drivers/misc/lis3lv02d/lis3lv02d.c input_unregister_polled_device(lis3->idev); idev 742 drivers/misc/lis3lv02d/lis3lv02d.c input_free_polled_device(lis3->idev); idev 743 drivers/misc/lis3lv02d/lis3lv02d.c lis3->idev = NULL; idev 897 drivers/misc/lis3lv02d/lis3lv02d.c if (lis3->idev) { idev 898 drivers/misc/lis3lv02d/lis3lv02d.c struct input_dev *input_dev = lis3->idev->input; idev 284 drivers/misc/lis3lv02d/lis3lv02d.h struct input_polled_dev *idev; /* input device */ idev 368 drivers/net/ethernet/3com/3c515.c struct pnp_dev *idev, int card_number); idev 508 drivers/net/ethernet/3com/3c515.c struct pnp_dev *idev = NULL; idev 510 drivers/net/ethernet/3com/3c515.c while((idev = pnp_find_dev(NULL, idev 513 drivers/net/ethernet/3com/3c515.c idev))) { idev 515 drivers/net/ethernet/3com/3c515.c if (pnp_device_attach(idev) < 0) idev 517 drivers/net/ethernet/3com/3c515.c if (pnp_activate_dev(idev) < 0) { idev 519 drivers/net/ethernet/3com/3c515.c pnp_device_detach(idev); idev 522 drivers/net/ethernet/3com/3c515.c if (!pnp_port_valid(idev, 0) || !pnp_irq_valid(idev, 0)) { idev 523 drivers/net/ethernet/3com/3c515.c pnp_device_detach(idev); idev 526 drivers/net/ethernet/3com/3c515.c ioaddr = pnp_port_start(idev, 0); idev 527 drivers/net/ethernet/3com/3c515.c irq = pnp_irq(idev, 0); idev 529 drivers/net/ethernet/3com/3c515.c pnp_device_detach(idev); idev 538 drivers/net/ethernet/3com/3c515.c SET_NETDEV_DEV(dev, &idev->dev); idev 540 drivers/net/ethernet/3com/3c515.c err = corkscrew_setup(dev, ioaddr, idev, cards_found++); idev 579 drivers/net/ethernet/3com/3c515.c struct pnp_dev *idev, int card_number) idev 587 drivers/net/ethernet/3com/3c515.c if (idev) { idev 588 drivers/net/ethernet/3com/3c515.c irq = pnp_irq(idev, 0); idev 589 drivers/net/ethernet/3com/3c515.c vp->dev = &idev->dev; idev 248 drivers/net/ethernet/8390/ne.c struct pnp_dev *idev = NULL; idev 250 drivers/net/ethernet/8390/ne.c while ((idev = pnp_find_dev(NULL, idev 253 drivers/net/ethernet/8390/ne.c idev))) { idev 255 drivers/net/ethernet/8390/ne.c if (pnp_device_attach(idev) < 0) idev 257 drivers/net/ethernet/8390/ne.c if (pnp_activate_dev(idev) < 0) { idev 258 drivers/net/ethernet/8390/ne.c pnp_device_detach(idev); idev 262 drivers/net/ethernet/8390/ne.c if (!pnp_port_valid(idev, 0) || !pnp_irq_valid(idev, 0)) { idev 263 drivers/net/ethernet/8390/ne.c pnp_device_detach(idev); idev 267 drivers/net/ethernet/8390/ne.c dev->base_addr = pnp_port_start(idev, 0); idev 268 drivers/net/ethernet/8390/ne.c dev->irq = pnp_irq(idev, 0); idev 277 drivers/net/ethernet/8390/ne.c pnp_device_detach(idev); idev 280 drivers/net/ethernet/8390/ne.c ei_status.priv = (unsigned long)idev; idev 283 drivers/net/ethernet/8390/ne.c if (!idev) idev 834 drivers/net/ethernet/8390/ne.c struct pnp_dev *idev = (struct pnp_dev *)ei_status.priv; idev 837 drivers/net/ethernet/8390/ne.c if (idev) idev 838 drivers/net/ethernet/8390/ne.c pnp_device_detach(idev); idev 873 drivers/net/ethernet/8390/ne.c struct pnp_dev *idev = (struct pnp_dev *)ei_status.priv; idev 875 drivers/net/ethernet/8390/ne.c if (idev) idev 876 drivers/net/ethernet/8390/ne.c pnp_stop_dev(idev); idev 886 drivers/net/ethernet/8390/ne.c struct pnp_dev *idev = (struct pnp_dev *)ei_status.priv; idev 887 drivers/net/ethernet/8390/ne.c if (idev) idev 888 drivers/net/ethernet/8390/ne.c pnp_start_dev(idev); idev 342 drivers/net/ethernet/8390/smc-ultra.c struct pnp_dev *idev = NULL; idev 344 drivers/net/ethernet/8390/smc-ultra.c while ((idev = pnp_find_dev(NULL, idev 347 drivers/net/ethernet/8390/smc-ultra.c idev))) { idev 349 drivers/net/ethernet/8390/smc-ultra.c if (pnp_device_attach(idev) < 0) idev 351 drivers/net/ethernet/8390/smc-ultra.c if (pnp_activate_dev(idev) < 0) { idev 353 drivers/net/ethernet/8390/smc-ultra.c pnp_device_detach(idev); idev 357 drivers/net/ethernet/8390/smc-ultra.c if (!pnp_port_valid(idev, 0) || !pnp_irq_valid(idev, 0)) idev 360 drivers/net/ethernet/8390/smc-ultra.c dev->base_addr = pnp_port_start(idev, 0); idev 361 drivers/net/ethernet/8390/smc-ultra.c dev->irq = pnp_irq(idev, 0); idev 370 drivers/net/ethernet/8390/smc-ultra.c pnp_device_detach(idev); idev 373 drivers/net/ethernet/8390/smc-ultra.c ei_status.priv = (unsigned long)idev; idev 376 drivers/net/ethernet/8390/smc-ultra.c if (!idev) idev 608 drivers/net/ethernet/8390/smc-ultra.c struct pnp_dev *idev = (struct pnp_dev *)ei_status.priv; idev 609 drivers/net/ethernet/8390/smc-ultra.c if (idev) idev 610 drivers/net/ethernet/8390/smc-ultra.c pnp_device_detach(idev); idev 201 drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c struct inet6_dev *idev = NULL; idev 205 drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c idev = __in6_dev_get(root_dev); idev 206 drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c if (!idev) idev 209 drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c read_lock_bh(&idev->lock); idev 210 drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c list_for_each_entry(ifa, &idev->addr_list, if_list) { idev 215 drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c read_unlock_bh(&idev->lock); idev 2280 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c struct net_device *event_dev = ifa->idev->dev; idev 6365 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c struct in_device *idev; idev 6371 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c idev = __in_dev_get_rtnl(dev); idev 6372 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c if (idev && idev->ifa_list) idev 7109 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c struct net_device *dev = if6->idev->dev; idev 32 drivers/net/ethernet/pensando/ionic/ionic.h struct ionic_dev idev; idev 116 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c struct ionic_dev *idev = &lif->ionic->idev; idev 199 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c intr_ctrl_regset->base = &idev->intr_ctrl[intr->index]; idev 16 drivers/net/ethernet/pensando/ionic/ionic_dev.c struct ionic_dev *idev = &ionic->idev; idev 18 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->dev_info.asic_type = ioread8(&idev->dev_info_regs->asic_type); idev 19 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->dev_info.asic_rev = ioread8(&idev->dev_info_regs->asic_rev); idev 21 drivers/net/ethernet/pensando/ionic/ionic_dev.c memcpy_fromio(idev->dev_info.fw_version, idev 22 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->dev_info_regs->fw_version, idev 25 drivers/net/ethernet/pensando/ionic/ionic_dev.c memcpy_fromio(idev->dev_info.serial_num, idev 26 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->dev_info_regs->serial_num, idev 29 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->dev_info.fw_version[IONIC_DEVINFO_FWVERS_BUFLEN] = 0; idev 30 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->dev_info.serial_num[IONIC_DEVINFO_SERIAL_BUFLEN] = 0; idev 32 drivers/net/ethernet/pensando/ionic/ionic_dev.c dev_dbg(ionic->dev, "fw_version %s\n", idev->dev_info.fw_version); idev 39 drivers/net/ethernet/pensando/ionic/ionic_dev.c struct ionic_dev *idev = &ionic->idev; idev 55 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->dev_info_regs = bar->vaddr + IONIC_BAR0_DEV_INFO_REGS_OFFSET; idev 56 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->dev_cmd_regs = bar->vaddr + IONIC_BAR0_DEV_CMD_REGS_OFFSET; idev 57 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->intr_status = bar->vaddr + IONIC_BAR0_INTR_STATUS_OFFSET; idev 58 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->intr_ctrl = bar->vaddr + IONIC_BAR0_INTR_CTRL_OFFSET; idev 60 drivers/net/ethernet/pensando/ionic/ionic_dev.c sig = ioread32(&idev->dev_info_regs->signature); idev 75 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->db_pages = bar->vaddr; idev 76 drivers/net/ethernet/pensando/ionic/ionic_dev.c idev->phy_db_pages = bar->bus_addr; idev 87 drivers/net/ethernet/pensando/ionic/ionic_dev.c u8 ionic_dev_cmd_status(struct ionic_dev *idev) idev 89 drivers/net/ethernet/pensando/ionic/ionic_dev.c return ioread8(&idev->dev_cmd_regs->comp.comp.status); idev 92 drivers/net/ethernet/pensando/ionic/ionic_dev.c bool ionic_dev_cmd_done(struct ionic_dev *idev) idev 94 drivers/net/ethernet/pensando/ionic/ionic_dev.c return ioread32(&idev->dev_cmd_regs->done) & IONIC_DEV_CMD_DONE; idev 97 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_comp(struct ionic_dev *idev, union ionic_dev_cmd_comp *comp) idev 99 drivers/net/ethernet/pensando/ionic/ionic_dev.c memcpy_fromio(comp, &idev->dev_cmd_regs->comp, sizeof(*comp)); idev 102 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_go(struct ionic_dev *idev, union ionic_dev_cmd *cmd) idev 104 drivers/net/ethernet/pensando/ionic/ionic_dev.c memcpy_toio(&idev->dev_cmd_regs->cmd, cmd, sizeof(*cmd)); idev 105 drivers/net/ethernet/pensando/ionic/ionic_dev.c iowrite32(0, &idev->dev_cmd_regs->done); idev 106 drivers/net/ethernet/pensando/ionic/ionic_dev.c iowrite32(1, &idev->dev_cmd_regs->doorbell); idev 110 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_identify(struct ionic_dev *idev, u8 ver) idev 117 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 120 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_init(struct ionic_dev *idev) idev 127 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 130 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_reset(struct ionic_dev *idev) idev 136 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 140 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_port_identify(struct ionic_dev *idev) idev 147 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 150 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_port_init(struct ionic_dev *idev) idev 155 drivers/net/ethernet/pensando/ionic/ionic_dev.c .port_init.info_pa = cpu_to_le64(idev->port_info_pa), idev 158 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 161 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_port_reset(struct ionic_dev *idev) idev 168 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 171 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_port_state(struct ionic_dev *idev, u8 state) idev 180 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 183 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_port_speed(struct ionic_dev *idev, u32 speed) idev 192 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 195 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_port_autoneg(struct ionic_dev *idev, u8 an_enable) idev 204 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 207 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_port_fec(struct ionic_dev *idev, u8 fec_type) idev 216 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 219 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_port_pause(struct ionic_dev *idev, u8 pause_type) idev 228 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 232 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_lif_identify(struct ionic_dev *idev, u8 type, u8 ver) idev 240 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 243 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_lif_init(struct ionic_dev *idev, u16 lif_index, idev 252 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 255 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_lif_reset(struct ionic_dev *idev, u16 lif_index) idev 262 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 265 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_cmd_adminq_init(struct ionic_dev *idev, struct ionic_qcq *qcq, idev 285 drivers/net/ethernet/pensando/ionic/ionic_dev.c ionic_dev_cmd_go(idev, &cmd); idev 373 drivers/net/ethernet/pensando/ionic/ionic_dev.c int ionic_q_init(struct ionic_lif *lif, struct ionic_dev *idev, idev 390 drivers/net/ethernet/pensando/ionic/ionic_dev.c q->idev = idev; idev 175 drivers/net/ethernet/pensando/ionic/ionic_dev.h struct ionic_dev *idev; idev 220 drivers/net/ethernet/pensando/ionic/ionic_dev.h static inline void ionic_intr_init(struct ionic_dev *idev, idev 224 drivers/net/ethernet/pensando/ionic/ionic_dev.h ionic_intr_clean(idev->intr_ctrl, index); idev 249 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_go(struct ionic_dev *idev, union ionic_dev_cmd *cmd); idev 250 drivers/net/ethernet/pensando/ionic/ionic_dev.h u8 ionic_dev_cmd_status(struct ionic_dev *idev); idev 251 drivers/net/ethernet/pensando/ionic/ionic_dev.h bool ionic_dev_cmd_done(struct ionic_dev *idev); idev 252 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_comp(struct ionic_dev *idev, union ionic_dev_cmd_comp *comp); idev 254 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_identify(struct ionic_dev *idev, u8 ver); idev 255 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_init(struct ionic_dev *idev); idev 256 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_reset(struct ionic_dev *idev); idev 258 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_port_identify(struct ionic_dev *idev); idev 259 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_port_init(struct ionic_dev *idev); idev 260 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_port_reset(struct ionic_dev *idev); idev 261 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_port_state(struct ionic_dev *idev, u8 state); idev 262 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_port_speed(struct ionic_dev *idev, u32 speed); idev 263 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_port_autoneg(struct ionic_dev *idev, u8 an_enable); idev 264 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_port_fec(struct ionic_dev *idev, u8 fec_type); idev 265 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_port_pause(struct ionic_dev *idev, u8 pause_type); idev 267 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_lif_identify(struct ionic_dev *idev, u8 type, u8 ver); idev 268 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_lif_init(struct ionic_dev *idev, u16 lif_index, idev 270 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_lif_reset(struct ionic_dev *idev, u16 lif_index); idev 271 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_cmd_adminq_init(struct ionic_dev *idev, struct ionic_qcq *qcq, idev 287 drivers/net/ethernet/pensando/ionic/ionic_dev.h int ionic_q_init(struct ionic_lif *lif, struct ionic_dev *idev, idev 16 drivers/net/ethernet/pensando/ionic/ionic_devlink.c struct ionic_dev *idev = &ionic->idev; idev 26 drivers/net/ethernet/pensando/ionic/ionic_devlink.c idev->dev_info.fw_version); idev 30 drivers/net/ethernet/pensando/ionic/ionic_devlink.c snprintf(buf, sizeof(buf), "0x%x", idev->dev_info.asic_type); idev 37 drivers/net/ethernet/pensando/ionic/ionic_devlink.c snprintf(buf, sizeof(buf), "0x%x", idev->dev_info.asic_rev); idev 44 drivers/net/ethernet/pensando/ionic/ionic_devlink.c err = devlink_info_serial_number_put(req, idev->dev_info.serial_num); idev 90 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c strlcpy(drvinfo->fw_version, ionic->idev.dev_info.fw_version, idev 110 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c memcpy_fromio(p, lif->ionic->idev.dev_info_regs->words, size); idev 113 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c memcpy_fromio(p, lif->ionic->idev.dev_cmd_regs->words, size); idev 120 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c struct ionic_dev *idev = &lif->ionic->idev; idev 130 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c switch (le16_to_cpu(idev->port_info->status.xcvr.pid)) { idev 205 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c idev->port_info->status.xcvr.pid, idev 206 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c idev->port_info->status.xcvr.pid); idev 215 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c if (idev->port_info->config.fec_type == IONIC_PORT_FEC_TYPE_FC) idev 217 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c else if (idev->port_info->config.fec_type == IONIC_PORT_FEC_TYPE_RS) idev 223 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c if (idev->port_info->status.xcvr.phy == IONIC_PHY_TYPE_COPPER || idev 226 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c else if (idev->port_info->status.xcvr.phy == IONIC_PHY_TYPE_FIBER) idev 241 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c if (idev->port_info->config.an_enable) { idev 256 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c struct ionic_dev *idev; idev 261 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c idev = &lif->ionic->idev; idev 265 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c if (ks->base.autoneg != idev->port_info->config.an_enable) { idev 267 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c ionic_dev_cmd_port_autoneg(idev, ks->base.autoneg); idev 275 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c if (ks->base.speed != le32_to_cpu(idev->port_info->config.speed)) { idev 277 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c ionic_dev_cmd_port_speed(idev, ks->base.speed); idev 298 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c if (fec_type != idev->port_info->config.fec_type) { idev 300 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c ionic_dev_cmd_port_fec(idev, fec_type); idev 318 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c pause_type = lif->ionic->idev.port_info->config.pause_type; idev 343 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c if (requested_pause == lif->ionic->idev.port_info->config.pause_type) idev 347 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c ionic_dev_cmd_port_pause(&lif->ionic->idev, requested_pause); idev 431 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c ionic_intr_coal_init(lif->ionic->idev.intr_ctrl, idev 663 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c struct ionic_dev *idev = &lif->ionic->idev; idev 666 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c xcvr = &idev->port_info->status.xcvr; idev 693 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c struct ionic_dev *idev = &lif->ionic->idev; idev 702 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c xcvr = &idev->port_info->status.xcvr; idev 731 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c ionic_dev_cmd_port_state(&ionic->idev, IONIC_PORT_ADMIN_STATE_DOWN); idev 735 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c ionic_dev_cmd_port_state(&ionic->idev, IONIC_PORT_ADMIN_STATE_UP); idev 165 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_intr_init(&ionic->idev, intr, index); idev 180 drivers/net/ethernet/pensando/ionic/ionic_lif.c struct ionic_dev *idev; idev 194 drivers/net/ethernet/pensando/ionic/ionic_lif.c idev = &lif->ionic->idev; idev 204 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_intr_clean(idev->intr_ctrl, qcq->intr.index); idev 205 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_intr_mask(idev->intr_ctrl, qcq->intr.index, idev 216 drivers/net/ethernet/pensando/ionic/ionic_lif.c struct ionic_dev *idev; idev 230 drivers/net/ethernet/pensando/ionic/ionic_lif.c idev = &lif->ionic->idev; idev 237 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_intr_mask(idev->intr_ctrl, qcq->intr.index, idev 249 drivers/net/ethernet/pensando/ionic/ionic_lif.c struct ionic_dev *idev = &lif->ionic->idev; idev 261 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_intr_mask(idev->intr_ctrl, qcq->intr.index, idev 341 drivers/net/ethernet/pensando/ionic/ionic_lif.c struct ionic_dev *idev = &lif->ionic->idev; idev 387 drivers/net/ethernet/pensando/ionic/ionic_lif.c err = ionic_q_init(lif, idev, &new->q, index, name, num_descs, idev 409 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_intr_mask_assert(idev->intr_ctrl, new->intr.index, idev 700 drivers/net/ethernet/pensando/ionic/ionic_lif.c struct ionic_dev *idev = &lif->ionic->idev; idev 707 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_intr_credits(idev->intr_ctrl, cq->bound_intr->index, idev 1467 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_intr_coal_init(lif->ionic->idev.intr_ctrl, idev 1750 drivers/net/ethernet/pensando/ionic/ionic_lif.c struct ionic_dev *idev = &lif->ionic->idev; idev 1753 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_dev_cmd_lif_reset(idev, lif->index); idev 1833 drivers/net/ethernet/pensando/ionic/ionic_lif.c struct ionic_dev *idev; idev 1838 drivers/net/ethernet/pensando/ionic/ionic_lif.c idev = &lif->ionic->idev; idev 1843 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_dev_cmd_adminq_init(idev, qcq, lif->index, qcq->intr.index); idev 1845 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_dev_cmd_comp(idev, (union ionic_dev_cmd_comp *)&comp); idev 1872 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_intr_mask(idev->intr_ctrl, qcq->intr.index, idev 1971 drivers/net/ethernet/pensando/ionic/ionic_lif.c struct ionic_dev *idev = &lif->ionic->idev; idev 1980 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_dev_cmd_lif_init(idev, lif->index, lif->info_pa); idev 1982 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_dev_cmd_comp(idev, (union ionic_dev_cmd_comp *)&comp); idev 2168 drivers/net/ethernet/pensando/ionic/ionic_lif.c struct ionic_dev *idev = &ionic->idev; idev 2172 drivers/net/ethernet/pensando/ionic/ionic_lif.c sz = min(sizeof(*lid), sizeof(idev->dev_cmd_regs->data)); idev 2175 drivers/net/ethernet/pensando/ionic/ionic_lif.c ionic_dev_cmd_lif_identify(idev, lif_type, IONIC_IDENTITY_VERSION_1); idev 2177 drivers/net/ethernet/pensando/ionic/ionic_lif.c memcpy_fromio(lid, &idev->dev_cmd_regs->data, sz); idev 300 drivers/net/ethernet/pensando/ionic/ionic_main.c ionic_intr_credits(cq->lif->ionic->idev.intr_ctrl, idev 312 drivers/net/ethernet/pensando/ionic/ionic_main.c struct ionic_dev *idev = &ionic->idev; idev 329 drivers/net/ethernet/pensando/ionic/ionic_main.c done = ionic_dev_cmd_done(idev); idev 336 drivers/net/ethernet/pensando/ionic/ionic_main.c opcode = idev->dev_cmd_regs->cmd.cmd.opcode; idev 347 drivers/net/ethernet/pensando/ionic/ionic_main.c err = ionic_dev_cmd_status(&ionic->idev); idev 355 drivers/net/ethernet/pensando/ionic/ionic_main.c iowrite32(0, &idev->dev_cmd_regs->done); idev 356 drivers/net/ethernet/pensando/ionic/ionic_main.c iowrite32(1, &idev->dev_cmd_regs->doorbell); idev 384 drivers/net/ethernet/pensando/ionic/ionic_main.c struct ionic_dev *idev = &ionic->idev; idev 396 drivers/net/ethernet/pensando/ionic/ionic_main.c sz = min(sizeof(ident->drv), sizeof(idev->dev_cmd_regs->data)); idev 397 drivers/net/ethernet/pensando/ionic/ionic_main.c memcpy_toio(&idev->dev_cmd_regs->data, &ident->drv, sz); idev 399 drivers/net/ethernet/pensando/ionic/ionic_main.c ionic_dev_cmd_identify(idev, IONIC_IDENTITY_VERSION_1); idev 402 drivers/net/ethernet/pensando/ionic/ionic_main.c sz = min(sizeof(ident->dev), sizeof(idev->dev_cmd_regs->data)); idev 403 drivers/net/ethernet/pensando/ionic/ionic_main.c memcpy_fromio(&ident->dev, &idev->dev_cmd_regs->data, sz); idev 421 drivers/net/ethernet/pensando/ionic/ionic_main.c struct ionic_dev *idev = &ionic->idev; idev 425 drivers/net/ethernet/pensando/ionic/ionic_main.c ionic_dev_cmd_init(idev); idev 434 drivers/net/ethernet/pensando/ionic/ionic_main.c struct ionic_dev *idev = &ionic->idev; idev 438 drivers/net/ethernet/pensando/ionic/ionic_main.c ionic_dev_cmd_reset(idev); idev 448 drivers/net/ethernet/pensando/ionic/ionic_main.c struct ionic_dev *idev = &ionic->idev; idev 454 drivers/net/ethernet/pensando/ionic/ionic_main.c ionic_dev_cmd_port_identify(idev); idev 457 drivers/net/ethernet/pensando/ionic/ionic_main.c sz = min(sizeof(ident->port), sizeof(idev->dev_cmd_regs->data)); idev 458 drivers/net/ethernet/pensando/ionic/ionic_main.c memcpy_fromio(&ident->port, &idev->dev_cmd_regs->data, sz); idev 469 drivers/net/ethernet/pensando/ionic/ionic_main.c struct ionic_dev *idev = &ionic->idev; idev 473 drivers/net/ethernet/pensando/ionic/ionic_main.c if (idev->port_info) idev 476 drivers/net/ethernet/pensando/ionic/ionic_main.c idev->port_info_sz = ALIGN(sizeof(*idev->port_info), PAGE_SIZE); idev 477 drivers/net/ethernet/pensando/ionic/ionic_main.c idev->port_info = dma_alloc_coherent(ionic->dev, idev->port_info_sz, idev 478 drivers/net/ethernet/pensando/ionic/ionic_main.c &idev->port_info_pa, idev 480 drivers/net/ethernet/pensando/ionic/ionic_main.c if (!idev->port_info) { idev 485 drivers/net/ethernet/pensando/ionic/ionic_main.c sz = min(sizeof(ident->port.config), sizeof(idev->dev_cmd_regs->data)); idev 489 drivers/net/ethernet/pensando/ionic/ionic_main.c memcpy_toio(&idev->dev_cmd_regs->data, &ident->port.config, sz); idev 490 drivers/net/ethernet/pensando/ionic/ionic_main.c ionic_dev_cmd_port_init(idev); idev 493 drivers/net/ethernet/pensando/ionic/ionic_main.c ionic_dev_cmd_port_state(&ionic->idev, IONIC_PORT_ADMIN_STATE_UP); idev 499 drivers/net/ethernet/pensando/ionic/ionic_main.c dma_free_coherent(ionic->dev, idev->port_info_sz, idev 500 drivers/net/ethernet/pensando/ionic/ionic_main.c idev->port_info, idev->port_info_pa); idev 501 drivers/net/ethernet/pensando/ionic/ionic_main.c idev->port_info = NULL; idev 502 drivers/net/ethernet/pensando/ionic/ionic_main.c idev->port_info_pa = 0; idev 510 drivers/net/ethernet/pensando/ionic/ionic_main.c struct ionic_dev *idev = &ionic->idev; idev 513 drivers/net/ethernet/pensando/ionic/ionic_main.c if (!idev->port_info) idev 517 drivers/net/ethernet/pensando/ionic/ionic_main.c ionic_dev_cmd_port_reset(idev); idev 521 drivers/net/ethernet/pensando/ionic/ionic_main.c dma_free_coherent(ionic->dev, idev->port_info_sz, idev 522 drivers/net/ethernet/pensando/ionic/ionic_main.c idev->port_info, idev->port_info_pa); idev 524 drivers/net/ethernet/pensando/ionic/ionic_main.c idev->port_info = NULL; idev 525 drivers/net/ethernet/pensando/ionic/ionic_main.c idev->port_info_pa = 0; idev 206 drivers/net/ethernet/pensando/ionic/ionic_txrx.c struct ionic_dev *idev = &cq->lif->ionic->idev; idev 212 drivers/net/ethernet/pensando/ionic/ionic_txrx.c ionic_intr_credits(idev->intr_ctrl, cq->bound_intr->index, idev 304 drivers/net/ethernet/pensando/ionic/ionic_txrx.c struct ionic_dev *idev; idev 311 drivers/net/ethernet/pensando/ionic/ionic_txrx.c idev = &lif->ionic->idev; idev 328 drivers/net/ethernet/pensando/ionic/ionic_txrx.c ionic_intr_credits(idev->intr_ctrl, rxcq->bound_intr->index, idev 419 drivers/net/ethernet/pensando/ionic/ionic_txrx.c struct ionic_dev *idev = &cq->lif->ionic->idev; idev 451 drivers/net/ethernet/pensando/ionic/ionic_txrx.c ionic_intr_credits(idev->intr_ctrl, cq->bound_intr->index, idev 858 drivers/net/ipvlan/ipvlan_main.c struct net_device *dev = (struct net_device *)if6->idev->dev; idev 3437 drivers/net/vxlan.c struct inet6_dev *idev = __in6_dev_get(lowerdev); idev 3438 drivers/net/vxlan.c if (idev && idev->cnf.disable_ipv6) { idev 1014 drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c if (ifp->ndev != ifa->idev->dev) idev 100 drivers/net/wireless/intel/iwlwifi/mvm/d3.c struct inet6_dev *idev) idev 108 drivers/net/wireless/intel/iwlwifi/mvm/d3.c read_lock_bh(&idev->lock); idev 109 drivers/net/wireless/intel/iwlwifi/mvm/d3.c list_for_each_entry(ifa, &idev->addr_list, if_list) { idev 117 drivers/net/wireless/intel/iwlwifi/mvm/d3.c read_unlock_bh(&idev->lock); idev 1811 drivers/net/wireless/intel/iwlwifi/mvm/mvm.h struct inet6_dev *idev); idev 25 drivers/platform/chrome/chromeos_tbmc.c struct input_dev *idev) idev 35 drivers/platform/chrome/chromeos_tbmc.c input_report_switch(idev, SW_TABLET_MODE, state); idev 36 drivers/platform/chrome/chromeos_tbmc.c input_sync(idev); idev 60 drivers/platform/chrome/chromeos_tbmc.c static int chromeos_tbmc_open(struct input_dev *idev) idev 62 drivers/platform/chrome/chromeos_tbmc.c struct acpi_device *adev = input_get_drvdata(idev); idev 64 drivers/platform/chrome/chromeos_tbmc.c return chromeos_tbmc_query_switch(adev, idev); idev 69 drivers/platform/chrome/chromeos_tbmc.c struct input_dev *idev; idev 73 drivers/platform/chrome/chromeos_tbmc.c idev = devm_input_allocate_device(dev); idev 74 drivers/platform/chrome/chromeos_tbmc.c if (!idev) idev 77 drivers/platform/chrome/chromeos_tbmc.c idev->name = "Tablet Mode Switch"; idev 78 drivers/platform/chrome/chromeos_tbmc.c idev->phys = acpi_device_hid(adev); idev 80 drivers/platform/chrome/chromeos_tbmc.c idev->id.bustype = BUS_HOST; idev 81 drivers/platform/chrome/chromeos_tbmc.c idev->id.version = 1; idev 82 drivers/platform/chrome/chromeos_tbmc.c idev->id.product = 0; idev 83 drivers/platform/chrome/chromeos_tbmc.c idev->open = chromeos_tbmc_open; idev 85 drivers/platform/chrome/chromeos_tbmc.c input_set_drvdata(idev, adev); idev 86 drivers/platform/chrome/chromeos_tbmc.c adev->driver_data = idev; idev 88 drivers/platform/chrome/chromeos_tbmc.c input_set_capability(idev, EV_SW, SW_TABLET_MODE); idev 89 drivers/platform/chrome/chromeos_tbmc.c ret = input_register_device(idev); idev 23 drivers/platform/x86/acer-wireless.c struct input_dev *idev = acpi_driver_data(adev); idev 30 drivers/platform/x86/acer-wireless.c input_report_key(idev, KEY_RFKILL, 1); idev 31 drivers/platform/x86/acer-wireless.c input_report_key(idev, KEY_RFKILL, 0); idev 32 drivers/platform/x86/acer-wireless.c input_sync(idev); idev 37 drivers/platform/x86/acer-wireless.c struct input_dev *idev; idev 39 drivers/platform/x86/acer-wireless.c idev = devm_input_allocate_device(&adev->dev); idev 40 drivers/platform/x86/acer-wireless.c if (!idev) idev 43 drivers/platform/x86/acer-wireless.c adev->driver_data = idev; idev 44 drivers/platform/x86/acer-wireless.c idev->name = "Acer Wireless Radio Control"; idev 45 drivers/platform/x86/acer-wireless.c idev->phys = "acer-wireless/input0"; idev 46 drivers/platform/x86/acer-wireless.c idev->id.bustype = BUS_HOST; idev 47 drivers/platform/x86/acer-wireless.c idev->id.vendor = PCI_VENDOR_ID_AI; idev 48 drivers/platform/x86/acer-wireless.c idev->id.product = 0x1229; idev 49 drivers/platform/x86/acer-wireless.c set_bit(EV_KEY, idev->evbit); idev 50 drivers/platform/x86/acer-wireless.c set_bit(KEY_RFKILL, idev->keybit); idev 52 drivers/platform/x86/acer-wireless.c return input_register_device(idev); idev 24 drivers/platform/x86/asus-wireless.c struct input_dev *idev; idev 120 drivers/platform/x86/asus-wireless.c input_report_key(data->idev, KEY_RFKILL, 1); idev 121 drivers/platform/x86/asus-wireless.c input_sync(data->idev); idev 122 drivers/platform/x86/asus-wireless.c input_report_key(data->idev, KEY_RFKILL, 0); idev 123 drivers/platform/x86/asus-wireless.c input_sync(data->idev); idev 138 drivers/platform/x86/asus-wireless.c data->idev = devm_input_allocate_device(&adev->dev); idev 139 drivers/platform/x86/asus-wireless.c if (!data->idev) idev 141 drivers/platform/x86/asus-wireless.c data->idev->name = "Asus Wireless Radio Control"; idev 142 drivers/platform/x86/asus-wireless.c data->idev->phys = "asus-wireless/input0"; idev 143 drivers/platform/x86/asus-wireless.c data->idev->id.bustype = BUS_HOST; idev 144 drivers/platform/x86/asus-wireless.c data->idev->id.vendor = PCI_VENDOR_ID_ASUSTEK; idev 145 drivers/platform/x86/asus-wireless.c set_bit(EV_KEY, data->idev->evbit); idev 146 drivers/platform/x86/asus-wireless.c set_bit(KEY_RFKILL, data->idev->keybit); idev 147 drivers/platform/x86/asus-wireless.c err = input_register_device(data->idev); idev 158 drivers/platform/x86/fujitsu-tablet.c struct input_dev *idev; idev 204 drivers/platform/x86/fujitsu-tablet.c input_report_switch(fujitsu.idev, SW_DOCK, dock); idev 205 drivers/platform/x86/fujitsu-tablet.c input_report_switch(fujitsu.idev, SW_TABLET_MODE, tablet_mode); idev 206 drivers/platform/x86/fujitsu-tablet.c input_sync(fujitsu.idev); idev 224 drivers/platform/x86/fujitsu-tablet.c struct input_dev *idev; idev 228 drivers/platform/x86/fujitsu-tablet.c idev = input_allocate_device(); idev 229 drivers/platform/x86/fujitsu-tablet.c if (!idev) idev 232 drivers/platform/x86/fujitsu-tablet.c idev->dev.parent = parent; idev 233 drivers/platform/x86/fujitsu-tablet.c idev->phys = phys; idev 234 drivers/platform/x86/fujitsu-tablet.c idev->name = name; idev 235 drivers/platform/x86/fujitsu-tablet.c idev->id.bustype = BUS_HOST; idev 236 drivers/platform/x86/fujitsu-tablet.c idev->id.vendor = 0x1734; /* Fujitsu Siemens Computer GmbH */ idev 237 drivers/platform/x86/fujitsu-tablet.c idev->id.product = 0x0001; idev 238 drivers/platform/x86/fujitsu-tablet.c idev->id.version = 0x0101; idev 240 drivers/platform/x86/fujitsu-tablet.c idev->keycode = fujitsu.config.keymap; idev 241 drivers/platform/x86/fujitsu-tablet.c idev->keycodesize = sizeof(fujitsu.config.keymap[0]); idev 242 drivers/platform/x86/fujitsu-tablet.c idev->keycodemax = ARRAY_SIZE(fujitsu.config.keymap); idev 244 drivers/platform/x86/fujitsu-tablet.c __set_bit(EV_REP, idev->evbit); idev 248 drivers/platform/x86/fujitsu-tablet.c input_set_capability(idev, EV_KEY, fujitsu.config.keymap[i]); idev 250 drivers/platform/x86/fujitsu-tablet.c input_set_capability(idev, EV_MSC, MSC_SCAN); idev 252 drivers/platform/x86/fujitsu-tablet.c input_set_capability(idev, EV_SW, SW_DOCK); idev 253 drivers/platform/x86/fujitsu-tablet.c input_set_capability(idev, EV_SW, SW_TABLET_MODE); idev 255 drivers/platform/x86/fujitsu-tablet.c error = input_register_device(idev); idev 257 drivers/platform/x86/fujitsu-tablet.c input_free_device(idev); idev 261 drivers/platform/x86/fujitsu-tablet.c fujitsu.idev = idev; idev 267 drivers/platform/x86/fujitsu-tablet.c input_unregister_device(fujitsu.idev); idev 295 drivers/platform/x86/fujitsu-tablet.c input_event(fujitsu.idev, EV_MSC, MSC_SCAN, i); idev 297 drivers/platform/x86/fujitsu-tablet.c input_report_key(fujitsu.idev, keycode, pressed); idev 298 drivers/platform/x86/fujitsu-tablet.c input_sync(fujitsu.idev); idev 534 drivers/platform/x86/hdaps.c struct input_dev *idev; idev 575 drivers/platform/x86/hdaps.c idev = hdaps_idev->input; idev 576 drivers/platform/x86/hdaps.c idev->name = "hdaps"; idev 577 drivers/platform/x86/hdaps.c idev->phys = "isa1600/input0"; idev 578 drivers/platform/x86/hdaps.c idev->id.bustype = BUS_ISA; idev 579 drivers/platform/x86/hdaps.c idev->dev.parent = &pdev->dev; idev 580 drivers/platform/x86/hdaps.c idev->evbit[0] = BIT_MASK(EV_ABS); idev 581 drivers/platform/x86/hdaps.c input_set_abs_params(idev, ABS_X, idev 583 drivers/platform/x86/hdaps.c input_set_abs_params(idev, ABS_Y, idev 24 drivers/platform/x86/huawei-wmi.c struct input_dev *idev; idev 130 drivers/platform/x86/huawei-wmi.c key = sparse_keymap_entry_from_scancode(priv->idev, code); idev 136 drivers/platform/x86/huawei-wmi.c sparse_keymap_report_entry(priv->idev, key, 1, true); idev 153 drivers/platform/x86/huawei-wmi.c priv->idev = devm_input_allocate_device(&wdev->dev); idev 154 drivers/platform/x86/huawei-wmi.c if (!priv->idev) idev 157 drivers/platform/x86/huawei-wmi.c priv->idev->name = "Huawei WMI hotkeys"; idev 158 drivers/platform/x86/huawei-wmi.c priv->idev->phys = "wmi/input0"; idev 159 drivers/platform/x86/huawei-wmi.c priv->idev->id.bustype = BUS_HOST; idev 160 drivers/platform/x86/huawei-wmi.c priv->idev->dev.parent = &wdev->dev; idev 162 drivers/platform/x86/huawei-wmi.c err = sparse_keymap_setup(priv->idev, huawei_wmi_keymap, NULL); idev 166 drivers/platform/x86/huawei-wmi.c return input_register_device(priv->idev); idev 2577 drivers/s390/net/qeth_l3_main.c struct net_device *dev = ifa->idev->dev; idev 795 drivers/scsi/cxgbi/libcxgbi.c struct inet6_dev *idev = ip6_dst_idev((struct dst_entry *)rt); idev 797 drivers/scsi/cxgbi/libcxgbi.c err = ipv6_dev_get_saddr(&init_net, idev ? idev->dev : NULL, idev 276 drivers/scsi/isci/host.c struct isci_remote_device *idev; idev 293 drivers/scsi/isci/host.c idev = ihost->device_table[index]; idev 295 drivers/scsi/isci/host.c __func__, ent, idev); idev 314 drivers/scsi/isci/host.c struct isci_remote_device *idev; idev 350 drivers/scsi/isci/host.c idev = ihost->device_table[index]; idev 352 drivers/scsi/isci/host.c idev = NULL; idev 354 drivers/scsi/isci/host.c if (idev != NULL) idev 355 drivers/scsi/isci/host.c result = sci_remote_device_frame_handler(idev, frame_index); idev 370 drivers/scsi/isci/host.c struct isci_remote_device *idev; idev 426 drivers/scsi/isci/host.c idev = ihost->device_table[index]; idev 427 drivers/scsi/isci/host.c if (idev != NULL) idev 428 drivers/scsi/isci/host.c sci_remote_device_event_handler(idev, ent); idev 460 drivers/scsi/isci/host.c idev = ihost->device_table[index]; idev 462 drivers/scsi/isci/host.c if (idev != NULL) idev 463 drivers/scsi/isci/host.c sci_remote_device_event_handler(idev, ent); idev 2437 drivers/scsi/isci/host.c struct isci_remote_device *idev) idev 2443 drivers/scsi/isci/host.c ihost, idev, idev 2496 drivers/scsi/isci/host.c struct isci_remote_device *idev, idev 2500 drivers/scsi/isci/host.c u32 remote_node_count = sci_remote_device_node_count(idev); idev 2507 drivers/scsi/isci/host.c ihost->device_table[node_index] = idev; idev 2518 drivers/scsi/isci/host.c struct isci_remote_device *idev, idev 2521 drivers/scsi/isci/host.c u32 remote_node_count = sci_remote_device_node_count(idev); idev 2523 drivers/scsi/isci/host.c if (ihost->device_table[node_id] == idev) { idev 2605 drivers/scsi/isci/host.c struct isci_remote_device *idev, idev 2616 drivers/scsi/isci/host.c status = sci_remote_device_start_io(ihost, idev, ireq); idev 2626 drivers/scsi/isci/host.c struct isci_remote_device *idev, idev 2670 drivers/scsi/isci/host.c struct isci_remote_device *idev, idev 2681 drivers/scsi/isci/host.c status = sci_remote_device_complete_io(ihost, idev, ireq); idev 2721 drivers/scsi/isci/host.c struct isci_remote_device *idev, idev 2734 drivers/scsi/isci/host.c status = sci_remote_device_start_task(ihost, idev, ireq); idev 326 drivers/scsi/isci/host.h static inline void wait_for_device_start(struct isci_host *ihost, struct isci_remote_device *idev) idev 328 drivers/scsi/isci/host.h wait_event(ihost->eventq, !test_bit(IDEV_START_PENDING, &idev->flags)); idev 331 drivers/scsi/isci/host.h static inline void wait_for_device_stop(struct isci_host *ihost, struct isci_remote_device *idev) idev 333 drivers/scsi/isci/host.h wait_event(ihost->eventq, !test_bit(IDEV_STOP_PENDING, &idev->flags)); idev 341 drivers/scsi/isci/host.h static inline struct isci_host *idev_to_ihost(struct isci_remote_device *idev) idev 343 drivers/scsi/isci/host.h return dev_to_ihost(idev->domain_dev); idev 360 drivers/scsi/isci/host.h static inline int sci_remote_device_node_count(struct isci_remote_device *idev) idev 362 drivers/scsi/isci/host.h struct domain_device *dev = idev->domain_dev; idev 379 drivers/scsi/isci/host.h static inline struct device *scirdev_to_dev(struct isci_remote_device *idev) idev 381 drivers/scsi/isci/host.h if (!idev || !idev->isci_port || !idev->isci_port->isci_host) idev 384 drivers/scsi/isci/host.h return &idev->isci_port->isci_host->pdev->dev; idev 453 drivers/scsi/isci/host.h struct isci_remote_device *idev, idev 457 drivers/scsi/isci/host.h struct isci_remote_device *idev, idev 470 drivers/scsi/isci/host.h struct isci_remote_device *idev); idev 489 drivers/scsi/isci/host.h struct isci_remote_device *idev, idev 494 drivers/scsi/isci/host.h struct isci_remote_device *idev, idev 499 drivers/scsi/isci/host.h struct isci_remote_device *idev, idev 504 drivers/scsi/isci/host.h struct isci_remote_device *idev, idev 550 drivers/scsi/isci/init.c struct isci_remote_device *idev = &ihost->devices[i]; idev 552 drivers/scsi/isci/init.c INIT_LIST_HEAD(&idev->node); idev 1382 drivers/scsi/isci/port.c struct isci_remote_device *idev, idev 1402 drivers/scsi/isci/port.c struct isci_remote_device *idev, idev 1698 drivers/scsi/isci/port.c struct isci_remote_device *idev; idev 1703 drivers/scsi/isci/port.c idev = isci_lookup_device(dev); idev 1706 drivers/scsi/isci/port.c if (!idev) idev 1714 drivers/scsi/isci/port.c isci_put_device(idev); idev 246 drivers/scsi/isci/port.h struct isci_remote_device *idev, idev 251 drivers/scsi/isci/port.h struct isci_remote_device *idev, idev 75 drivers/scsi/isci/remote_device.c enum sci_status sci_remote_device_suspend(struct isci_remote_device *idev, idev 78 drivers/scsi/isci/remote_device.c return sci_remote_node_context_suspend(&idev->rnc, reason, idev 90 drivers/scsi/isci/remote_device.c static void isci_remote_device_ready(struct isci_host *ihost, struct isci_remote_device *idev) idev 93 drivers/scsi/isci/remote_device.c "%s: idev = %p\n", __func__, idev); idev 95 drivers/scsi/isci/remote_device.c clear_bit(IDEV_IO_NCQERROR, &idev->flags); idev 96 drivers/scsi/isci/remote_device.c set_bit(IDEV_IO_READY, &idev->flags); idev 97 drivers/scsi/isci/remote_device.c if (test_and_clear_bit(IDEV_START_PENDING, &idev->flags)) idev 103 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 108 drivers/scsi/isci/remote_device.c (ireq->target_device != idev) || idev 114 drivers/scsi/isci/remote_device.c __func__, idev, idev->flags, ireq, ireq->target_device); idev 118 drivers/scsi/isci/remote_device.c return sci_controller_terminate_request(ihost, idev, ireq); idev 122 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 125 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 133 drivers/scsi/isci/remote_device.c s = sci_remote_device_terminate_req(ihost, idev, chk, ireq); idev 141 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 149 drivers/scsi/isci/remote_device.c return (localcount != idev->rnc.suspend_count) idev 150 drivers/scsi/isci/remote_device.c || sci_remote_node_context_is_being_destroyed(&idev->rnc); idev 155 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 163 drivers/scsi/isci/remote_device.c res = isci_compare_suspendcount(idev, localcount) idev 172 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 179 drivers/scsi/isci/remote_device.c res = isci_compare_suspendcount(idev, localcount) idev 180 drivers/scsi/isci/remote_device.c && idev->started_request_count == 0; idev 188 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 197 drivers/scsi/isci/remote_device.c if (isci_get_device(idev) == NULL) { idev 199 drivers/scsi/isci/remote_device.c __func__, idev); idev 206 drivers/scsi/isci/remote_device.c = sci_remote_node_context_is_suspended(&idev->rnc) idev 207 drivers/scsi/isci/remote_device.c ? 0 : idev->rnc.suspend_count; idev 213 drivers/scsi/isci/remote_device.c __func__, idev, ireq, idev->started_request_count, idev 214 drivers/scsi/isci/remote_device.c rnc_suspend_count, idev->rnc.suspend_count); idev 220 drivers/scsi/isci/remote_device.c sci_remote_device_terminate_req(ihost, idev, 0, ireq); idev 223 drivers/scsi/isci/remote_device.c isci_check_reqterm(ihost, idev, ireq, idev 237 drivers/scsi/isci/remote_device.c __func__, idev, idev 238 drivers/scsi/isci/remote_device.c dev_state_name(idev->sm.current_state_id), idev 239 drivers/scsi/isci/remote_device.c idev->started_request_count, idev->flags, idev 240 drivers/scsi/isci/remote_device.c rnc_suspend_count, idev->rnc.suspend_count, idev 241 drivers/scsi/isci/remote_device.c rnc_state_name(idev->rnc.sm.current_state_id), idev 242 drivers/scsi/isci/remote_device.c idev->rnc.suspend_type, idev 243 drivers/scsi/isci/remote_device.c idev->rnc.destination_state, idev 253 drivers/scsi/isci/remote_device.c sci_remote_device_terminate_requests(idev); idev 256 drivers/scsi/isci/remote_device.c isci_check_devempty(ihost, idev, idev 270 drivers/scsi/isci/remote_device.c __func__, idev, idev 271 drivers/scsi/isci/remote_device.c dev_state_name(idev->sm.current_state_id), idev 272 drivers/scsi/isci/remote_device.c idev->started_request_count, idev->flags, idev 274 drivers/scsi/isci/remote_device.c rnc_state_name(idev->rnc.sm.current_state_id), idev 275 drivers/scsi/isci/remote_device.c idev->rnc.suspend_count, idev 276 drivers/scsi/isci/remote_device.c idev->rnc.suspend_type, idev 277 drivers/scsi/isci/remote_device.c idev->rnc.destination_state); idev 281 drivers/scsi/isci/remote_device.c __func__, idev); idev 282 drivers/scsi/isci/remote_device.c isci_put_device(idev); idev 297 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 301 drivers/scsi/isci/remote_device.c "%s: isci_device = %p; reason = %d\n", __func__, idev, reason); idev 305 drivers/scsi/isci/remote_device.c set_bit(IDEV_IO_NCQERROR, &idev->flags); idev 308 drivers/scsi/isci/remote_device.c sci_remote_device_suspend(idev, SCI_SW_SUSPEND_NORMAL); idev 311 drivers/scsi/isci/remote_device.c sci_remote_device_terminate_requests(idev); idev 315 drivers/scsi/isci/remote_device.c clear_bit(IDEV_IO_READY, &idev->flags); idev 325 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = _dev; idev 327 drivers/scsi/isci/remote_device.c BUG_ON(idev->started_request_count != 0); idev 328 drivers/scsi/isci/remote_device.c sci_change_state(&idev->sm, SCI_DEV_STOPPED); idev 332 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 334 drivers/scsi/isci/remote_device.c return sci_remote_device_terminate_reqs_checkabort(idev, 0); idev 337 drivers/scsi/isci/remote_device.c enum sci_status sci_remote_device_stop(struct isci_remote_device *idev, idev 340 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 348 drivers/scsi/isci/remote_device.c dev_warn(scirdev_to_dev(idev), "%s: in wrong state: %s\n", idev 355 drivers/scsi/isci/remote_device.c BUG_ON(idev->started_request_count != 0); idev 356 drivers/scsi/isci/remote_device.c sci_remote_node_context_destruct(&idev->rnc, idev 357 drivers/scsi/isci/remote_device.c rnc_destruct_done, idev); idev 372 drivers/scsi/isci/remote_device.c if (idev->started_request_count == 0) idev 373 drivers/scsi/isci/remote_device.c sci_remote_node_context_destruct(&idev->rnc, idev 375 drivers/scsi/isci/remote_device.c idev); idev 378 drivers/scsi/isci/remote_device.c idev, SCI_SW_SUSPEND_LINKHANG_DETECT); idev 379 drivers/scsi/isci/remote_device.c sci_remote_device_terminate_requests(idev); idev 387 drivers/scsi/isci/remote_device.c return sci_remote_device_terminate_requests(idev); idev 394 drivers/scsi/isci/remote_device.c enum sci_status sci_remote_device_reset(struct isci_remote_device *idev) idev 396 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 410 drivers/scsi/isci/remote_device.c dev_warn(scirdev_to_dev(idev), "%s: in wrong state: %s\n", idev 424 drivers/scsi/isci/remote_device.c enum sci_status sci_remote_device_reset_complete(struct isci_remote_device *idev) idev 426 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 430 drivers/scsi/isci/remote_device.c dev_warn(scirdev_to_dev(idev), "%s: in wrong state: %s\n", idev 439 drivers/scsi/isci/remote_device.c enum sci_status sci_remote_device_frame_handler(struct isci_remote_device *idev, idev 442 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 444 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 455 drivers/scsi/isci/remote_device.c dev_warn(scirdev_to_dev(idev), "%s: in wrong state: %s\n", idev 481 drivers/scsi/isci/remote_device.c if (ireq && ireq->target_device == idev) { idev 503 drivers/scsi/isci/remote_device.c idev->not_ready_reason = SCIC_REMOTE_DEVICE_NOT_READY_SATA_SDB_ERROR_FIS_RECEIVED; idev 513 drivers/scsi/isci/remote_device.c idev->not_ready_reason = SCIC_REMOTE_DEVICE_NOT_READY_SATA_SDB_ERROR_FIS_RECEIVED; idev 514 drivers/scsi/isci/remote_device.c sci_change_state(&idev->sm, SCI_STP_DEV_NCQ_ERROR); idev 527 drivers/scsi/isci/remote_device.c status = sci_io_request_frame_handler(idev->working_request, frame_index); idev 534 drivers/scsi/isci/remote_device.c static bool is_remote_device_ready(struct isci_remote_device *idev) idev 537 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 561 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = _dev; idev 562 drivers/scsi/isci/remote_device.c struct isci_request *ireq = idev->working_request; idev 567 drivers/scsi/isci/remote_device.c enum sci_status sci_remote_device_event_handler(struct isci_remote_device *idev, idev 571 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 578 drivers/scsi/isci/remote_device.c status = sci_remote_node_context_event_handler(&idev->rnc, event_code); idev 585 drivers/scsi/isci/remote_device.c sci_remote_device_suspend(idev, SCI_SW_SUSPEND_NORMAL); idev 587 drivers/scsi/isci/remote_device.c dev_dbg(scirdev_to_dev(idev), idev 589 drivers/scsi/isci/remote_device.c __func__, idev, event_code, idev 590 drivers/scsi/isci/remote_device.c is_remote_device_ready(idev) idev 598 drivers/scsi/isci/remote_device.c dev_dbg(scirdev_to_dev(idev), idev 600 drivers/scsi/isci/remote_device.c __func__, idev, event_code, idev 601 drivers/scsi/isci/remote_device.c is_remote_device_ready(idev) idev 619 drivers/scsi/isci/remote_device.c return sci_remote_node_context_resume(&idev->rnc, idev 621 drivers/scsi/isci/remote_device.c idev); idev 632 drivers/scsi/isci/remote_device.c status = sci_remote_node_context_resume(&idev->rnc, NULL, NULL); idev 638 drivers/scsi/isci/remote_device.c static void sci_remote_device_start_request(struct isci_remote_device *idev, idev 642 drivers/scsi/isci/remote_device.c struct isci_port *iport = idev->owning_port; idev 646 drivers/scsi/isci/remote_device.c sci_port_complete_io(iport, idev, ireq); idev 648 drivers/scsi/isci/remote_device.c kref_get(&idev->kref); idev 649 drivers/scsi/isci/remote_device.c idev->started_request_count++; idev 654 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 657 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 659 drivers/scsi/isci/remote_device.c struct isci_port *iport = idev->owning_port; idev 672 drivers/scsi/isci/remote_device.c dev_warn(scirdev_to_dev(idev), "%s: in wrong state: %s\n", idev 681 drivers/scsi/isci/remote_device.c status = sci_port_start_io(iport, idev, ireq); idev 685 drivers/scsi/isci/remote_device.c status = sci_remote_node_context_start_io(&idev->rnc, ireq); idev 703 drivers/scsi/isci/remote_device.c status = sci_port_start_io(iport, idev, ireq); idev 707 drivers/scsi/isci/remote_device.c status = sci_remote_node_context_start_io(&idev->rnc, ireq); idev 718 drivers/scsi/isci/remote_device.c idev->working_request = ireq; idev 728 drivers/scsi/isci/remote_device.c status = sci_port_start_io(iport, idev, ireq); idev 732 drivers/scsi/isci/remote_device.c status = sci_remote_node_context_start_io(&idev->rnc, ireq); idev 744 drivers/scsi/isci/remote_device.c status = sci_port_start_io(iport, idev, ireq); idev 748 drivers/scsi/isci/remote_device.c status = sci_remote_node_context_start_io(&idev->rnc, ireq); idev 756 drivers/scsi/isci/remote_device.c idev->working_request = ireq; idev 757 drivers/scsi/isci/remote_device.c sci_change_state(&idev->sm, SCI_SMP_DEV_CMD); idev 767 drivers/scsi/isci/remote_device.c sci_remote_device_start_request(idev, ireq, status); idev 772 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 781 drivers/scsi/isci/remote_device.c status = sci_port_complete_io(iport, idev, ireq); idev 785 drivers/scsi/isci/remote_device.c sci_remote_device_decrement_request_count(idev); idev 790 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 793 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 795 drivers/scsi/isci/remote_device.c struct isci_port *iport = idev->owning_port; idev 807 drivers/scsi/isci/remote_device.c dev_warn(scirdev_to_dev(idev), "%s: in wrong state: %s\n", idev 813 drivers/scsi/isci/remote_device.c status = common_complete_io(iport, idev, ireq); idev 819 drivers/scsi/isci/remote_device.c status = common_complete_io(iport, idev, ireq); idev 830 drivers/scsi/isci/remote_device.c } else if (idev->started_request_count == 0) idev 834 drivers/scsi/isci/remote_device.c status = common_complete_io(iport, idev, ireq); idev 840 drivers/scsi/isci/remote_device.c status = common_complete_io(iport, idev, ireq); idev 844 drivers/scsi/isci/remote_device.c if (idev->started_request_count == 0) idev 845 drivers/scsi/isci/remote_device.c sci_remote_node_context_destruct(&idev->rnc, idev 847 drivers/scsi/isci/remote_device.c idev); idev 852 drivers/scsi/isci/remote_device.c dev_err(scirdev_to_dev(idev), idev 855 drivers/scsi/isci/remote_device.c idev, ireq, status); idev 857 drivers/scsi/isci/remote_device.c isci_put_device(idev); idev 864 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = dev; idev 867 drivers/scsi/isci/remote_device.c if (idev->working_request) idev 868 drivers/scsi/isci/remote_device.c sci_controller_continue_io(idev->working_request); idev 872 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 875 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 877 drivers/scsi/isci/remote_device.c struct isci_port *iport = idev->owning_port; idev 891 drivers/scsi/isci/remote_device.c dev_warn(scirdev_to_dev(idev), "%s: in wrong state: %s\n", idev 899 drivers/scsi/isci/remote_device.c status = sci_port_start_io(iport, idev, ireq); idev 911 drivers/scsi/isci/remote_device.c idev->working_request = ireq; idev 921 drivers/scsi/isci/remote_device.c sci_remote_device_suspend(idev, idev 924 drivers/scsi/isci/remote_device.c status = sci_remote_node_context_start_task(&idev->rnc, ireq, idev 925 drivers/scsi/isci/remote_device.c sci_remote_device_continue_request, idev); idev 928 drivers/scsi/isci/remote_device.c sci_remote_device_start_request(idev, ireq, status); idev 935 drivers/scsi/isci/remote_device.c status = sci_port_start_io(iport, idev, ireq); idev 940 drivers/scsi/isci/remote_device.c status = sci_remote_node_context_start_task(&idev->rnc, ireq, idev 948 drivers/scsi/isci/remote_device.c sci_remote_device_start_request(idev, ireq, status); idev 953 drivers/scsi/isci/remote_device.c void sci_remote_device_post_request(struct isci_remote_device *idev, u32 request) idev 955 drivers/scsi/isci/remote_device.c struct isci_port *iport = idev->owning_port; idev 961 drivers/scsi/isci/remote_device.c idev->rnc.remote_node_index; idev 972 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = _dev; idev 974 drivers/scsi/isci/remote_device.c if (is_remote_device_ready(idev)) idev 978 drivers/scsi/isci/remote_device.c sci_change_state(&idev->sm, SCI_DEV_READY); idev 983 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = _dev; idev 984 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 989 drivers/scsi/isci/remote_device.c if (idev->sm.previous_state_id != SCI_STP_DEV_NCQ) idev 990 drivers/scsi/isci/remote_device.c isci_remote_device_ready(ihost, idev); idev 995 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 998 drivers/scsi/isci/remote_device.c sci_change_state(&idev->sm, SCI_DEV_STOPPED); idev 1014 drivers/scsi/isci/remote_device.c static enum sci_status sci_remote_device_destruct(struct isci_remote_device *idev) idev 1016 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 1021 drivers/scsi/isci/remote_device.c dev_warn(scirdev_to_dev(idev), "%s: in wrong state: %s\n", idev 1026 drivers/scsi/isci/remote_device.c ihost = idev->owning_port->owning_controller; idev 1027 drivers/scsi/isci/remote_device.c sci_controller_free_remote_node_context(ihost, idev, idev 1028 drivers/scsi/isci/remote_device.c idev->rnc.remote_node_index); idev 1029 drivers/scsi/isci/remote_device.c idev->rnc.remote_node_index = SCIC_SDS_REMOTE_NODE_CONTEXT_INVALID_INDEX; idev 1041 drivers/scsi/isci/remote_device.c static void isci_remote_device_deconstruct(struct isci_host *ihost, struct isci_remote_device *idev) idev 1044 drivers/scsi/isci/remote_device.c "%s: isci_device = %p\n", __func__, idev); idev 1050 drivers/scsi/isci/remote_device.c BUG_ON(idev->started_request_count > 0); idev 1052 drivers/scsi/isci/remote_device.c sci_remote_device_destruct(idev); idev 1053 drivers/scsi/isci/remote_device.c list_del_init(&idev->node); idev 1054 drivers/scsi/isci/remote_device.c isci_put_device(idev); idev 1059 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1060 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1066 drivers/scsi/isci/remote_device.c prev_state = idev->sm.previous_state_id; idev 1068 drivers/scsi/isci/remote_device.c isci_remote_device_deconstruct(ihost, idev); idev 1070 drivers/scsi/isci/remote_device.c sci_controller_remote_device_stopped(ihost, idev); idev 1075 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1076 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1078 drivers/scsi/isci/remote_device.c isci_remote_device_not_ready(ihost, idev, idev 1084 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1085 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1086 drivers/scsi/isci/remote_device.c struct domain_device *dev = idev->domain_dev; idev 1089 drivers/scsi/isci/remote_device.c sci_change_state(&idev->sm, SCI_STP_DEV_IDLE); idev 1091 drivers/scsi/isci/remote_device.c sci_change_state(&idev->sm, SCI_SMP_DEV_IDLE); idev 1093 drivers/scsi/isci/remote_device.c isci_remote_device_ready(ihost, idev); idev 1098 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1099 drivers/scsi/isci/remote_device.c struct domain_device *dev = idev->domain_dev; idev 1102 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1104 drivers/scsi/isci/remote_device.c isci_remote_device_not_ready(ihost, idev, idev 1111 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1112 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1115 drivers/scsi/isci/remote_device.c "%s: isci_device = %p\n", __func__, idev); idev 1117 drivers/scsi/isci/remote_device.c sci_remote_device_suspend(idev, SCI_SW_SUSPEND_LINKHANG_DETECT); idev 1122 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1123 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1126 drivers/scsi/isci/remote_device.c "%s: isci_device = %p\n", __func__, idev); idev 1128 drivers/scsi/isci/remote_device.c sci_remote_node_context_resume(&idev->rnc, NULL, NULL); idev 1133 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1135 drivers/scsi/isci/remote_device.c idev->working_request = NULL; idev 1136 drivers/scsi/isci/remote_device.c if (sci_remote_node_context_is_ready(&idev->rnc)) { idev 1140 drivers/scsi/isci/remote_device.c sci_stp_remote_device_ready_idle_substate_resume_complete_handler(idev); idev 1142 drivers/scsi/isci/remote_device.c sci_remote_node_context_resume(&idev->rnc, idev 1144 drivers/scsi/isci/remote_device.c idev); idev 1150 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1151 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1153 drivers/scsi/isci/remote_device.c BUG_ON(idev->working_request == NULL); idev 1155 drivers/scsi/isci/remote_device.c isci_remote_device_not_ready(ihost, idev, idev 1161 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1162 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1164 drivers/scsi/isci/remote_device.c if (idev->not_ready_reason == SCIC_REMOTE_DEVICE_NOT_READY_SATA_SDB_ERROR_FIS_RECEIVED) idev 1165 drivers/scsi/isci/remote_device.c isci_remote_device_not_ready(ihost, idev, idev 1166 drivers/scsi/isci/remote_device.c idev->not_ready_reason); idev 1171 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1172 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1174 drivers/scsi/isci/remote_device.c isci_remote_device_ready(ihost, idev); idev 1179 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1180 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1182 drivers/scsi/isci/remote_device.c BUG_ON(idev->working_request == NULL); idev 1184 drivers/scsi/isci/remote_device.c isci_remote_device_not_ready(ihost, idev, idev 1190 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(sm, typeof(*idev), sm); idev 1192 drivers/scsi/isci/remote_device.c idev->working_request = NULL; idev 1248 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1250 drivers/scsi/isci/remote_device.c idev->owning_port = iport; idev 1251 drivers/scsi/isci/remote_device.c idev->started_request_count = 0; idev 1253 drivers/scsi/isci/remote_device.c sci_init_sm(&idev->sm, sci_remote_device_state_table, SCI_DEV_INITIAL); idev 1255 drivers/scsi/isci/remote_device.c sci_remote_node_context_construct(&idev->rnc, idev 1274 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1279 drivers/scsi/isci/remote_device.c sci_remote_device_construct(iport, idev); idev 1283 drivers/scsi/isci/remote_device.c idev->device_port_width = hweight32(properties.phy_mask); idev 1286 drivers/scsi/isci/remote_device.c idev, idev 1287 drivers/scsi/isci/remote_device.c &idev->rnc.remote_node_index); idev 1292 drivers/scsi/isci/remote_device.c idev->connection_rate = sci_port_get_max_allowed_speed(iport); idev 1310 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1312 drivers/scsi/isci/remote_device.c struct domain_device *dev = idev->domain_dev; idev 1315 drivers/scsi/isci/remote_device.c sci_remote_device_construct(iport, idev); idev 1318 drivers/scsi/isci/remote_device.c idev, idev 1319 drivers/scsi/isci/remote_device.c &idev->rnc.remote_node_index); idev 1330 drivers/scsi/isci/remote_device.c idev->connection_rate = min_t(u16, sci_port_get_max_allowed_speed(iport), idev 1334 drivers/scsi/isci/remote_device.c idev->device_port_width = 1; idev 1340 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 1346 drivers/scsi/isci/remote_device.c status = sci_remote_node_context_resume(&idev->rnc, cb_fn, cb_p); idev 1348 drivers/scsi/isci/remote_device.c dev_dbg(scirdev_to_dev(idev), "%s: failed to resume: %d\n", idev 1355 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = cbparam; idev 1356 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 1358 drivers/scsi/isci/remote_device.c idev->abort_resume_cb; idev 1360 drivers/scsi/isci/remote_device.c dev_dbg(scirdev_to_dev(idev), "%s: passing-along resume: %p\n", idev 1364 drivers/scsi/isci/remote_device.c idev->abort_resume_cb = NULL; idev 1365 drivers/scsi/isci/remote_device.c abort_resume_cb(idev->abort_resume_cbparam); idev 1367 drivers/scsi/isci/remote_device.c clear_bit(IDEV_ABORT_PATH_RESUME_PENDING, &idev->flags); idev 1373 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1379 drivers/scsi/isci/remote_device.c done = !test_bit(IDEV_ABORT_PATH_RESUME_PENDING, &idev->flags) idev 1380 drivers/scsi/isci/remote_device.c || test_bit(IDEV_STOP_PENDING, &idev->flags) idev 1381 drivers/scsi/isci/remote_device.c || sci_remote_node_context_is_being_destroyed(&idev->rnc); idev 1389 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1392 drivers/scsi/isci/remote_device.c __func__, idev); idev 1396 drivers/scsi/isci/remote_device.c isci_remote_device_test_resume_done(ihost, idev), idev 1400 drivers/scsi/isci/remote_device.c "resume: %p\n", __func__, idev); idev 1402 drivers/scsi/isci/remote_device.c clear_bit(IDEV_ABORT_PATH_RESUME_PENDING, &idev->flags); idev 1405 drivers/scsi/isci/remote_device.c __func__, idev); idev 1410 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1420 drivers/scsi/isci/remote_device.c idev->abort_resume_cb = idev->rnc.user_callback; idev 1421 drivers/scsi/isci/remote_device.c idev->abort_resume_cbparam = idev->rnc.user_cookie; idev 1422 drivers/scsi/isci/remote_device.c set_bit(IDEV_ABORT_PATH_RESUME_PENDING, &idev->flags); idev 1423 drivers/scsi/isci/remote_device.c clear_bit(IDEV_ABORT_PATH_ACTIVE, &idev->flags); idev 1424 drivers/scsi/isci/remote_device.c destroyed = sci_remote_node_context_is_being_destroyed(&idev->rnc); idev 1427 drivers/scsi/isci/remote_device.c idev, isci_remote_device_resume_from_abort_complete, idev 1428 drivers/scsi/isci/remote_device.c idev); idev 1431 drivers/scsi/isci/remote_device.c isci_remote_device_wait_for_resume_from_abort(ihost, idev); idev 1433 drivers/scsi/isci/remote_device.c clear_bit(IDEV_ABORT_PATH_RESUME_PENDING, &idev->flags); idev 1451 drivers/scsi/isci/remote_device.c static enum sci_status sci_remote_device_start(struct isci_remote_device *idev, idev 1454 drivers/scsi/isci/remote_device.c struct sci_base_state_machine *sm = &idev->sm; idev 1459 drivers/scsi/isci/remote_device.c dev_warn(scirdev_to_dev(idev), "%s: in wrong state: %s\n", idev 1464 drivers/scsi/isci/remote_device.c status = sci_remote_device_resume(idev, remote_device_resume_done, idev 1465 drivers/scsi/isci/remote_device.c idev); idev 1475 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1478 drivers/scsi/isci/remote_device.c struct domain_device *dev = idev->domain_dev; idev 1482 drivers/scsi/isci/remote_device.c status = sci_remote_device_ea_construct(iport, idev); idev 1484 drivers/scsi/isci/remote_device.c status = sci_remote_device_da_construct(iport, idev); idev 1494 drivers/scsi/isci/remote_device.c status = sci_remote_device_start(idev, ISCI_REMOTE_DEVICE_START_TIMEOUT); idev 1514 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev; idev 1518 drivers/scsi/isci/remote_device.c idev = &ihost->devices[i]; idev 1519 drivers/scsi/isci/remote_device.c if (!test_and_set_bit(IDEV_ALLOCATED, &idev->flags)) idev 1527 drivers/scsi/isci/remote_device.c if (WARN_ONCE(!list_empty(&idev->node), "found non-idle remote device\n")) idev 1530 drivers/scsi/isci/remote_device.c return idev; idev 1535 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = container_of(kref, typeof(*idev), kref); idev 1536 drivers/scsi/isci/remote_device.c struct isci_host *ihost = idev->isci_port->isci_host; idev 1538 drivers/scsi/isci/remote_device.c idev->domain_dev = NULL; idev 1539 drivers/scsi/isci/remote_device.c idev->isci_port = NULL; idev 1540 drivers/scsi/isci/remote_device.c clear_bit(IDEV_START_PENDING, &idev->flags); idev 1541 drivers/scsi/isci/remote_device.c clear_bit(IDEV_STOP_PENDING, &idev->flags); idev 1542 drivers/scsi/isci/remote_device.c clear_bit(IDEV_IO_READY, &idev->flags); idev 1543 drivers/scsi/isci/remote_device.c clear_bit(IDEV_GONE, &idev->flags); idev 1545 drivers/scsi/isci/remote_device.c clear_bit(IDEV_ALLOCATED, &idev->flags); idev 1557 drivers/scsi/isci/remote_device.c enum sci_status isci_remote_device_stop(struct isci_host *ihost, struct isci_remote_device *idev) idev 1563 drivers/scsi/isci/remote_device.c "%s: isci_device = %p\n", __func__, idev); idev 1566 drivers/scsi/isci/remote_device.c idev->domain_dev->lldd_dev = NULL; /* disable new lookups */ idev 1567 drivers/scsi/isci/remote_device.c set_bit(IDEV_GONE, &idev->flags); idev 1569 drivers/scsi/isci/remote_device.c set_bit(IDEV_STOP_PENDING, &idev->flags); idev 1570 drivers/scsi/isci/remote_device.c status = sci_remote_device_stop(idev, 50); idev 1577 drivers/scsi/isci/remote_device.c wait_for_device_stop(ihost, idev); idev 1580 drivers/scsi/isci/remote_device.c "%s: isci_device = %p, waiting done.\n", __func__, idev); idev 1594 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev = dev->lldd_dev; idev 1598 drivers/scsi/isci/remote_device.c __func__, dev, idev, idev->isci_port); idev 1600 drivers/scsi/isci/remote_device.c isci_remote_device_stop(ihost, idev); idev 1660 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 1668 drivers/scsi/isci/remote_device.c set_bit(IDEV_ABORT_PATH_ACTIVE, &idev->flags); idev 1669 drivers/scsi/isci/remote_device.c sci_remote_device_suspend(idev, SCI_SW_SUSPEND_LINKHANG_DETECT); idev 1673 drivers/scsi/isci/remote_device.c status = isci_remote_device_terminate_requests(ihost, idev, ireq); idev 1678 drivers/scsi/isci/remote_device.c __func__, idev, status); idev 1685 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1687 drivers/scsi/isci/remote_device.c return sci_remote_node_context_is_safe_to_abort(&idev->rnc); idev 1691 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1693 drivers/scsi/isci/remote_device.c return sci_remote_device_terminate_reqs_checkabort(idev, 1); idev 1698 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev) idev 1704 drivers/scsi/isci/remote_device.c status = sci_remote_device_reset_complete(idev); idev 1711 drivers/scsi/isci/remote_device.c struct isci_remote_device *idev, idev 1714 drivers/scsi/isci/remote_device.c if (dev_is_sata(idev->domain_dev)) { idev 1717 drivers/scsi/isci/remote_device.c &idev->flags)) idev 1720 drivers/scsi/isci/remote_device.c &idev->flags)) idev 1723 drivers/scsi/isci/remote_device.c sci_port_set_hang_detection_timeout(idev->owning_port, idev 113 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev) idev 115 drivers/scsi/isci/remote_device.h if (idev) idev 116 drivers/scsi/isci/remote_device.h kref_get(&idev->kref); idev 117 drivers/scsi/isci/remote_device.h return idev; idev 122 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev = dev->lldd_dev; idev 124 drivers/scsi/isci/remote_device.h if (idev && !test_bit(IDEV_GONE, &idev->flags)) { idev 125 drivers/scsi/isci/remote_device.h kref_get(&idev->kref); idev 126 drivers/scsi/isci/remote_device.h return idev; idev 133 drivers/scsi/isci/remote_device.h static inline void isci_put_device(struct isci_remote_device *idev) idev 135 drivers/scsi/isci/remote_device.h if (idev) idev 136 drivers/scsi/isci/remote_device.h kref_put(&idev->kref, isci_remote_device_release); idev 140 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 142 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 159 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 175 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 188 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 291 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev; idev 293 drivers/scsi/isci/remote_device.h idev = container_of(rnc, typeof(*idev), rnc); idev 295 drivers/scsi/isci/remote_device.h return idev; idev 298 drivers/scsi/isci/remote_device.h static inline void sci_remote_device_decrement_request_count(struct isci_remote_device *idev) idev 303 drivers/scsi/isci/remote_device.h if (WARN_ONCE(idev->started_request_count == 0, idev 308 drivers/scsi/isci/remote_device.h idev->started_request_count--; idev 311 drivers/scsi/isci/remote_device.h void isci_dev_set_hang_detection_timeout(struct isci_remote_device *idev, u32 timeout); idev 314 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 318 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 323 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 328 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 333 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 337 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 341 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 344 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 348 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 352 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 355 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 361 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 365 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 369 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev); idev 373 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 378 drivers/scsi/isci/remote_device.h struct isci_remote_device *idev, idev 380 drivers/scsi/isci/remote_device.h enum sci_status sci_remote_device_suspend(struct isci_remote_device *idev, idev 116 drivers/scsi/isci/remote_node_context.c struct isci_remote_device *idev = rnc_to_dev(sci_rnc); idev 117 drivers/scsi/isci/remote_node_context.c struct domain_device *dev = idev->domain_dev; idev 123 drivers/scsi/isci/remote_node_context.c ihost = idev->owning_port->owning_controller; idev 127 drivers/scsi/isci/remote_node_context.c * sci_remote_device_node_count(idev)); idev 130 drivers/scsi/isci/remote_node_context.c rnc->ssp.remote_node_port_width = idev->device_port_width; idev 131 drivers/scsi/isci/remote_node_context.c rnc->ssp.logical_port_index = idev->owning_port->physical_port_index; idev 161 drivers/scsi/isci/remote_node_context.c rnc->ssp.oaf_connection_rate = idev->connection_rate; idev 242 drivers/scsi/isci/remote_node_context.c struct isci_remote_device *idev = rnc_to_dev(sci_rnc); idev 243 drivers/scsi/isci/remote_node_context.c struct domain_device *dev = idev->domain_dev; idev 244 drivers/scsi/isci/remote_node_context.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 251 drivers/scsi/isci/remote_node_context.c sci_remote_device_post_request(idev, SCU_CONTEXT_COMMAND_POST_RNC_96); idev 253 drivers/scsi/isci/remote_node_context.c sci_remote_device_post_request(idev, SCU_CONTEXT_COMMAND_POST_RNC_32); idev 256 drivers/scsi/isci/remote_node_context.c sci_port_setup_transports(idev->owning_port, idev 264 drivers/scsi/isci/remote_node_context.c struct isci_remote_device *idev = rnc_to_dev(sci_rnc); idev 265 drivers/scsi/isci/remote_node_context.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 278 drivers/scsi/isci/remote_node_context.c struct isci_remote_device *idev = rnc_to_dev(rnc); idev 279 drivers/scsi/isci/remote_node_context.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 312 drivers/scsi/isci/remote_node_context.c struct isci_remote_device *idev; idev 315 drivers/scsi/isci/remote_node_context.c idev = rnc_to_dev(rnc); idev 316 drivers/scsi/isci/remote_node_context.c dev = idev->domain_dev; idev 325 drivers/scsi/isci/remote_node_context.c sci_port_setup_transports(idev->owning_port, rnc->remote_node_index); idev 327 drivers/scsi/isci/remote_node_context.c sci_remote_device_post_request(idev, SCU_CONTEXT_COMMAND_POST_RNC_RESUME); idev 362 drivers/scsi/isci/remote_node_context.c struct isci_remote_device *idev = rnc_to_dev(rnc); idev 363 drivers/scsi/isci/remote_node_context.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 373 drivers/scsi/isci/remote_node_context.c sci_remote_device_abort_requests_pending_abort(idev); idev 384 drivers/scsi/isci/remote_node_context.c struct isci_remote_device *idev = rnc_to_dev(rnc); idev 386 drivers/scsi/isci/remote_node_context.c if (dev_is_sata(idev->domain_dev)) idev 387 drivers/scsi/isci/remote_node_context.c isci_dev_set_hang_detection_timeout(idev, 0); idev 577 drivers/scsi/isci/remote_node_context.c struct isci_remote_device *idev = rnc_to_dev(sci_rnc); idev 582 drivers/scsi/isci/remote_node_context.c dev_dbg(scirdev_to_dev(idev), idev 599 drivers/scsi/isci/remote_node_context.c dev_warn(scirdev_to_dev(idev), idev 642 drivers/scsi/isci/remote_node_context.c struct isci_host *ihost = idev->owning_port->owning_controller; idev 651 drivers/scsi/isci/remote_node_context.c isci_dev_set_hang_detection_timeout(idev, 0x00000001); idev 654 drivers/scsi/isci/remote_node_context.c idev, SCI_SOFTWARE_SUSPEND_CMD); idev 667 drivers/scsi/isci/remote_node_context.c struct isci_remote_device *idev = rnc_to_dev(sci_rnc); idev 670 drivers/scsi/isci/remote_node_context.c dev_dbg(scirdev_to_dev(idev), idev 675 drivers/scsi/isci/remote_node_context.c test_bit(IDEV_ABORT_PATH_ACTIVE, &idev->flags) idev 685 drivers/scsi/isci/remote_node_context.c if (!test_bit(IDEV_ABORT_PATH_ACTIVE, &idev->flags)) { idev 718 drivers/scsi/isci/remote_node_context.c struct domain_device *dev = idev->domain_dev; idev 727 drivers/scsi/isci/remote_node_context.c if (!test_bit(IDEV_ABORT_PATH_ACTIVE, &idev->flags)) { idev 221 drivers/scsi/isci/request.c struct isci_remote_device *idev; idev 224 drivers/scsi/isci/request.c idev = ireq->target_device; idev 225 drivers/scsi/isci/request.c iport = idev->owning_port; idev 231 drivers/scsi/isci/request.c task_context->connection_rate = idev->connection_rate; idev 238 drivers/scsi/isci/request.c task_context->remote_node_index = idev->rnc.remote_node_index; idev 503 drivers/scsi/isci/request.c struct isci_remote_device *idev; idev 506 drivers/scsi/isci/request.c idev = ireq->target_device; idev 507 drivers/scsi/isci/request.c iport = idev->owning_port; idev 513 drivers/scsi/isci/request.c task_context->connection_rate = idev->connection_rate; idev 520 drivers/scsi/isci/request.c task_context->remote_node_index = idev->rnc.remote_node_index; idev 2183 drivers/scsi/isci/request.c struct isci_remote_device *idev = ireq->target_device; idev 2225 drivers/scsi/isci/request.c sci_change_state(&idev->sm, SCI_STP_DEV_ATAPI_ERROR); idev 2241 drivers/scsi/isci/request.c sci_change_state(&idev->sm, SCI_STP_DEV_ATAPI_ERROR); idev 2525 drivers/scsi/isci/request.c struct isci_remote_device *idev, idev 2564 drivers/scsi/isci/request.c if (!idev) idev 2574 drivers/scsi/isci/request.c if (!idev) idev 2602 drivers/scsi/isci/request.c if (!idev) idev 2742 drivers/scsi/isci/request.c struct isci_remote_device *idev = request->target_device; idev 2836 drivers/scsi/isci/request.c if (!idev) idev 2844 drivers/scsi/isci/request.c isci_request_handle_controller_specific_errors(idev, request, idev 2872 drivers/scsi/isci/request.c if (!idev) idev 2894 drivers/scsi/isci/request.c if (!idev) idev 3072 drivers/scsi/isci/request.c struct isci_remote_device *idev, idev 3077 drivers/scsi/isci/request.c ireq->target_device = idev; idev 3088 drivers/scsi/isci/request.c struct isci_remote_device *idev, idev 3091 drivers/scsi/isci/request.c struct domain_device *dev = idev->domain_dev; idev 3095 drivers/scsi/isci/request.c sci_general_request_construct(ihost, idev, ireq); idev 3097 drivers/scsi/isci/request.c if (idev->rnc.remote_node_index == SCIC_SDS_REMOTE_NODE_CONTEXT_INVALID_INDEX) idev 3115 drivers/scsi/isci/request.c struct isci_remote_device *idev, idev 3118 drivers/scsi/isci/request.c struct domain_device *dev = idev->domain_dev; idev 3122 drivers/scsi/isci/request.c sci_general_request_construct(ihost, idev, ireq); idev 3189 drivers/scsi/isci/request.c struct isci_remote_device *idev; idev 3234 drivers/scsi/isci/request.c idev = ireq->target_device; idev 3235 drivers/scsi/isci/request.c iport = idev->owning_port; idev 3243 drivers/scsi/isci/request.c task_context->connection_rate = idev->connection_rate; idev 3252 drivers/scsi/isci/request.c task_context->remote_node_index = idev->rnc.remote_node_index; idev 3342 drivers/scsi/isci/request.c struct isci_remote_device *idev) idev 3351 drivers/scsi/isci/request.c idev, idev 3374 drivers/scsi/isci/request.c status = sci_io_request_construct(ihost, idev, request); idev 3444 drivers/scsi/isci/request.c int isci_request_execute(struct isci_host *ihost, struct isci_remote_device *idev, idev 3455 drivers/scsi/isci/request.c status = isci_io_request_build(ihost, ireq, idev); idev 3466 drivers/scsi/isci/request.c if (test_bit(IDEV_IO_NCQERROR, &idev->flags)) { idev 3477 drivers/scsi/isci/request.c idev, idev 3484 drivers/scsi/isci/request.c status = sci_controller_start_io(ihost, idev, idev 293 drivers/scsi/isci/request.h int isci_request_execute(struct isci_host *ihost, struct isci_remote_device *idev, idev 297 drivers/scsi/isci/request.h struct isci_remote_device *idev, idev 107 drivers/scsi/isci/task.c static inline int isci_device_io_ready(struct isci_remote_device *idev, idev 110 drivers/scsi/isci/task.c return idev ? test_bit(IDEV_IO_READY, &idev->flags) || idev 111 drivers/scsi/isci/task.c (test_bit(IDEV_IO_NCQERROR, &idev->flags) && idev 127 drivers/scsi/isci/task.c struct isci_remote_device *idev; idev 134 drivers/scsi/isci/task.c idev = isci_lookup_device(task->dev); idev 135 drivers/scsi/isci/task.c io_ready = isci_device_io_ready(idev, task); idev 141 drivers/scsi/isci/task.c task, task->dev, idev, idev ? idev->flags : 0, idev 144 drivers/scsi/isci/task.c if (!idev) { idev 169 drivers/scsi/isci/task.c status = isci_request_execute(ihost, idev, task, tag); idev 177 drivers/scsi/isci/task.c if (test_bit(IDEV_GONE, &idev->flags)) { idev 210 drivers/scsi/isci/task.c isci_put_device(idev); idev 215 drivers/scsi/isci/task.c struct isci_remote_device *idev, idev 225 drivers/scsi/isci/task.c dev = idev->domain_dev; idev 233 drivers/scsi/isci/task.c status = sci_task_request_construct(ihost, idev, tag, idev 257 drivers/scsi/isci/task.c struct isci_remote_device *idev, idev 278 drivers/scsi/isci/task.c if (!idev || idev 279 drivers/scsi/isci/task.c (!test_bit(IDEV_IO_READY, &idev->flags) && idev 280 drivers/scsi/isci/task.c !test_bit(IDEV_IO_NCQERROR, &idev->flags))) { idev 284 drivers/scsi/isci/task.c idev, idev ? idev->flags : 0); idev 289 drivers/scsi/isci/task.c __func__, idev); idev 295 drivers/scsi/isci/task.c ireq = isci_task_request_build(ihost, idev, tag, tmf); idev 302 drivers/scsi/isci/task.c status = sci_controller_start_task(ihost, idev, ireq); idev 316 drivers/scsi/isci/task.c isci_remote_device_resume_from_abort(ihost, idev); idev 326 drivers/scsi/isci/task.c isci_remote_device_suspend_terminate(ihost, idev, ireq); idev 415 drivers/scsi/isci/task.c struct isci_remote_device *idev; idev 420 drivers/scsi/isci/task.c idev = isci_get_device(dev->lldd_dev); idev 425 drivers/scsi/isci/task.c __func__, dev, ihost, idev); idev 427 drivers/scsi/isci/task.c if (!idev) { idev 436 drivers/scsi/isci/task.c if (isci_remote_device_suspend_terminate(ihost, idev, NULL) idev 443 drivers/scsi/isci/task.c if (!test_bit(IDEV_GONE, &idev->flags)) { idev 448 drivers/scsi/isci/task.c ret = isci_task_send_lu_reset_sas(ihost, idev, lun); idev 451 drivers/scsi/isci/task.c isci_put_device(idev); idev 483 drivers/scsi/isci/task.c struct isci_remote_device *idev = NULL; idev 503 drivers/scsi/isci/task.c idev = isci_get_device(task->dev->lldd_dev); idev 512 drivers/scsi/isci/task.c __func__, idev, idev 517 drivers/scsi/isci/task.c ((idev) ? ((test_bit(IDEV_GONE, &idev->flags)) idev 527 drivers/scsi/isci/task.c if (!idev || !old_request) { idev 547 drivers/scsi/isci/task.c if (isci_remote_device_suspend_terminate(ihost, idev, old_request) idev 552 drivers/scsi/isci/task.c __func__, idev, old_request, task); idev 561 drivers/scsi/isci/task.c test_bit(IDEV_GONE, &idev->flags)) { idev 566 drivers/scsi/isci/task.c isci_remote_device_resume_from_abort(ihost, idev); idev 581 drivers/scsi/isci/task.c test_bit(IDEV_GONE, &idev->flags)); idev 599 drivers/scsi/isci/task.c ret = isci_task_execute_tmf(ihost, idev, &tmf, idev 605 drivers/scsi/isci/task.c __func__, idev, task, old_request); idev 606 drivers/scsi/isci/task.c isci_put_device(idev); idev 743 drivers/scsi/isci/task.c struct isci_remote_device *idev) idev 749 drivers/scsi/isci/task.c dev_dbg(&ihost->pdev->dev, "%s: idev %p\n", __func__, idev); idev 752 drivers/scsi/isci/task.c if (isci_remote_device_suspend_terminate(ihost, idev, NULL) idev 763 drivers/scsi/isci/task.c if (!test_bit(IDEV_GONE, &idev->flags)) { idev 773 drivers/scsi/isci/task.c isci_remote_device_resume_from_abort(ihost, idev); idev 776 drivers/scsi/isci/task.c __func__, idev, reset_stat); idev 785 drivers/scsi/isci/task.c struct isci_remote_device *idev; idev 790 drivers/scsi/isci/task.c idev = isci_get_device(dev->lldd_dev); idev 793 drivers/scsi/isci/task.c if (!idev) { idev 801 drivers/scsi/isci/task.c ret = isci_reset_device(ihost, dev, idev); idev 803 drivers/scsi/isci/task.c isci_put_device(idev); idev 644 drivers/staging/android/ion/ion.c struct ion_device *idev; idev 647 drivers/staging/android/ion/ion.c idev = kzalloc(sizeof(*idev), GFP_KERNEL); idev 648 drivers/staging/android/ion/ion.c if (!idev) idev 651 drivers/staging/android/ion/ion.c idev->dev.minor = MISC_DYNAMIC_MINOR; idev 652 drivers/staging/android/ion/ion.c idev->dev.name = "ion"; idev 653 drivers/staging/android/ion/ion.c idev->dev.fops = &ion_fops; idev 654 drivers/staging/android/ion/ion.c idev->dev.parent = NULL; idev 655 drivers/staging/android/ion/ion.c ret = misc_register(&idev->dev); idev 658 drivers/staging/android/ion/ion.c kfree(idev); idev 662 drivers/staging/android/ion/ion.c idev->debug_root = debugfs_create_dir("ion", NULL); idev 663 drivers/staging/android/ion/ion.c init_rwsem(&idev->lock); idev 664 drivers/staging/android/ion/ion.c plist_head_init(&idev->heaps); idev 665 drivers/staging/android/ion/ion.c internal_dev = idev; idev 110 drivers/staging/nvec/nvec_kbd.c struct input_dev *idev; idev 125 drivers/staging/nvec/nvec_kbd.c idev = devm_input_allocate_device(&pdev->dev); idev 126 drivers/staging/nvec/nvec_kbd.c idev->name = "nvec keyboard"; idev 127 drivers/staging/nvec/nvec_kbd.c idev->phys = "nvec"; idev 128 drivers/staging/nvec/nvec_kbd.c idev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_REP) | BIT_MASK(EV_LED); idev 129 drivers/staging/nvec/nvec_kbd.c idev->ledbit[0] = BIT_MASK(LED_CAPSL); idev 130 drivers/staging/nvec/nvec_kbd.c idev->event = nvec_kbd_event; idev 131 drivers/staging/nvec/nvec_kbd.c idev->keycode = keycodes; idev 132 drivers/staging/nvec/nvec_kbd.c idev->keycodesize = sizeof(unsigned char); idev 133 drivers/staging/nvec/nvec_kbd.c idev->keycodemax = ARRAY_SIZE(keycodes); idev 136 drivers/staging/nvec/nvec_kbd.c set_bit(keycodes[i], idev->keybit); idev 138 drivers/staging/nvec/nvec_kbd.c clear_bit(0, idev->keybit); idev 139 drivers/staging/nvec/nvec_kbd.c err = input_register_device(idev); idev 143 drivers/staging/nvec/nvec_kbd.c keys_dev.input = idev; idev 216 drivers/uio/uio.c struct uio_device *idev = dev_get_drvdata(dev); idev 219 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 220 drivers/uio/uio.c if (!idev->info) { idev 226 drivers/uio/uio.c ret = sprintf(buf, "%s\n", idev->info->name); idev 229 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 237 drivers/uio/uio.c struct uio_device *idev = dev_get_drvdata(dev); idev 240 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 241 drivers/uio/uio.c if (!idev->info) { idev 247 drivers/uio/uio.c ret = sprintf(buf, "%s\n", idev->info->version); idev 250 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 258 drivers/uio/uio.c struct uio_device *idev = dev_get_drvdata(dev); idev 259 drivers/uio/uio.c return sprintf(buf, "%u\n", (unsigned int)atomic_read(&idev->event)); idev 282 drivers/uio/uio.c static int uio_dev_add_attributes(struct uio_device *idev) idev 294 drivers/uio/uio.c mem = &idev->info->mem[mi]; idev 299 drivers/uio/uio.c idev->map_dir = kobject_create_and_add("maps", idev 300 drivers/uio/uio.c &idev->dev.kobj); idev 301 drivers/uio/uio.c if (!idev->map_dir) { idev 314 drivers/uio/uio.c ret = kobject_add(&map->kobj, idev->map_dir, "map%d", mi); idev 323 drivers/uio/uio.c port = &idev->info->port[pi]; idev 328 drivers/uio/uio.c idev->portio_dir = kobject_create_and_add("portio", idev 329 drivers/uio/uio.c &idev->dev.kobj); idev 330 drivers/uio/uio.c if (!idev->portio_dir) { idev 343 drivers/uio/uio.c ret = kobject_add(&portio->kobj, idev->portio_dir, idev 358 drivers/uio/uio.c port = &idev->info->port[pi]; idev 362 drivers/uio/uio.c kobject_put(idev->portio_dir); idev 367 drivers/uio/uio.c mem = &idev->info->mem[mi]; idev 371 drivers/uio/uio.c kobject_put(idev->map_dir); idev 372 drivers/uio/uio.c dev_err(&idev->dev, "error creating sysfs files (%d)\n", ret); idev 376 drivers/uio/uio.c static void uio_dev_del_attributes(struct uio_device *idev) idev 383 drivers/uio/uio.c mem = &idev->info->mem[i]; idev 388 drivers/uio/uio.c kobject_put(idev->map_dir); idev 391 drivers/uio/uio.c port = &idev->info->port[i]; idev 396 drivers/uio/uio.c kobject_put(idev->portio_dir); idev 399 drivers/uio/uio.c static int uio_get_minor(struct uio_device *idev) idev 404 drivers/uio/uio.c retval = idr_alloc(&uio_idr, idev, 0, UIO_MAX_DEVICES, GFP_KERNEL); idev 406 drivers/uio/uio.c idev->minor = retval; idev 409 drivers/uio/uio.c dev_err(&idev->dev, "too many uio devices\n"); idev 416 drivers/uio/uio.c static void uio_free_minor(struct uio_device *idev) idev 419 drivers/uio/uio.c idr_remove(&uio_idr, idev->minor); idev 429 drivers/uio/uio.c struct uio_device *idev = info->uio_dev; idev 431 drivers/uio/uio.c atomic_inc(&idev->event); idev 432 drivers/uio/uio.c wake_up_interruptible(&idev->wait); idev 433 drivers/uio/uio.c kill_fasync(&idev->async_queue, SIGIO, POLL_IN); idev 444 drivers/uio/uio.c struct uio_device *idev = (struct uio_device *)dev_id; idev 447 drivers/uio/uio.c ret = idev->info->handler(irq, idev->info); idev 449 drivers/uio/uio.c uio_event_notify(idev->info); idev 461 drivers/uio/uio.c struct uio_device *idev; idev 466 drivers/uio/uio.c idev = idr_find(&uio_idr, iminor(inode)); idev 468 drivers/uio/uio.c if (!idev) { idev 473 drivers/uio/uio.c get_device(&idev->dev); idev 475 drivers/uio/uio.c if (!try_module_get(idev->owner)) { idev 486 drivers/uio/uio.c listener->dev = idev; idev 487 drivers/uio/uio.c listener->event_count = atomic_read(&idev->event); idev 490 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 491 drivers/uio/uio.c if (!idev->info) { idev 492 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 497 drivers/uio/uio.c if (idev->info->open) idev 498 drivers/uio/uio.c ret = idev->info->open(idev->info, inode); idev 499 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 509 drivers/uio/uio.c module_put(idev->owner); idev 512 drivers/uio/uio.c put_device(&idev->dev); idev 521 drivers/uio/uio.c struct uio_device *idev = listener->dev; idev 523 drivers/uio/uio.c return fasync_helper(fd, filep, on, &idev->async_queue); idev 530 drivers/uio/uio.c struct uio_device *idev = listener->dev; idev 532 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 533 drivers/uio/uio.c if (idev->info && idev->info->release) idev 534 drivers/uio/uio.c ret = idev->info->release(idev->info, inode); idev 535 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 537 drivers/uio/uio.c module_put(idev->owner); idev 539 drivers/uio/uio.c put_device(&idev->dev); idev 546 drivers/uio/uio.c struct uio_device *idev = listener->dev; idev 549 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 550 drivers/uio/uio.c if (!idev->info || !idev->info->irq) idev 552 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 557 drivers/uio/uio.c poll_wait(filep, &idev->wait, wait); idev 558 drivers/uio/uio.c if (listener->event_count != atomic_read(&idev->event)) idev 567 drivers/uio/uio.c struct uio_device *idev = listener->dev; idev 575 drivers/uio/uio.c add_wait_queue(&idev->wait, &wait); idev 578 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 579 drivers/uio/uio.c if (!idev->info || !idev->info->irq) { idev 581 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 584 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 588 drivers/uio/uio.c event_count = atomic_read(&idev->event); idev 613 drivers/uio/uio.c remove_wait_queue(&idev->wait, &wait); idev 622 drivers/uio/uio.c struct uio_device *idev = listener->dev; idev 632 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 633 drivers/uio/uio.c if (!idev->info) { idev 638 drivers/uio/uio.c if (!idev->info->irq) { idev 643 drivers/uio/uio.c if (!idev->info->irqcontrol) { idev 648 drivers/uio/uio.c retval = idev->info->irqcontrol(idev->info, irq_on); idev 651 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 657 drivers/uio/uio.c struct uio_device *idev = vma->vm_private_data; idev 660 drivers/uio/uio.c if (idev->info->mem[vma->vm_pgoff].size == 0) idev 669 drivers/uio/uio.c struct uio_device *idev = vmf->vma->vm_private_data; idev 676 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 677 drivers/uio/uio.c if (!idev->info) { idev 694 drivers/uio/uio.c addr = (void *)(unsigned long)idev->info->mem[mi].addr + offset; idev 695 drivers/uio/uio.c if (idev->info->mem[mi].memtype == UIO_MEM_LOGICAL) idev 703 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 727 drivers/uio/uio.c struct uio_device *idev = vma->vm_private_data; idev 733 drivers/uio/uio.c mem = idev->info->mem + mi; idev 741 drivers/uio/uio.c if (idev->info->mem[mi].memtype == UIO_MEM_PHYS) idev 763 drivers/uio/uio.c struct uio_device *idev = listener->dev; idev 771 drivers/uio/uio.c vma->vm_private_data = idev; idev 773 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 774 drivers/uio/uio.c if (!idev->info) { idev 786 drivers/uio/uio.c actual_pages = ((idev->info->mem[mi].addr & ~PAGE_MASK) idev 787 drivers/uio/uio.c + idev->info->mem[mi].size + PAGE_SIZE -1) >> PAGE_SHIFT; idev 793 drivers/uio/uio.c if (idev->info->mmap) { idev 794 drivers/uio/uio.c ret = idev->info->mmap(idev->info, vma); idev 798 drivers/uio/uio.c switch (idev->info->mem[mi].memtype) { idev 812 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 903 drivers/uio/uio.c struct uio_device *idev = dev_get_drvdata(dev); idev 905 drivers/uio/uio.c kfree(idev); idev 920 drivers/uio/uio.c struct uio_device *idev; idev 931 drivers/uio/uio.c idev = kzalloc(sizeof(*idev), GFP_KERNEL); idev 932 drivers/uio/uio.c if (!idev) { idev 936 drivers/uio/uio.c idev->owner = owner; idev 937 drivers/uio/uio.c idev->info = info; idev 938 drivers/uio/uio.c mutex_init(&idev->info_lock); idev 939 drivers/uio/uio.c init_waitqueue_head(&idev->wait); idev 940 drivers/uio/uio.c atomic_set(&idev->event, 0); idev 942 drivers/uio/uio.c ret = uio_get_minor(idev); idev 944 drivers/uio/uio.c kfree(idev); idev 948 drivers/uio/uio.c device_initialize(&idev->dev); idev 949 drivers/uio/uio.c idev->dev.devt = MKDEV(uio_major, idev->minor); idev 950 drivers/uio/uio.c idev->dev.class = &uio_class; idev 951 drivers/uio/uio.c idev->dev.parent = parent; idev 952 drivers/uio/uio.c idev->dev.release = uio_device_release; idev 953 drivers/uio/uio.c dev_set_drvdata(&idev->dev, idev); idev 955 drivers/uio/uio.c ret = dev_set_name(&idev->dev, "uio%d", idev->minor); idev 959 drivers/uio/uio.c ret = device_add(&idev->dev); idev 963 drivers/uio/uio.c ret = uio_dev_add_attributes(idev); idev 967 drivers/uio/uio.c info->uio_dev = idev; idev 979 drivers/uio/uio.c info->irq_flags, info->name, idev); idev 989 drivers/uio/uio.c uio_dev_del_attributes(idev); idev 991 drivers/uio/uio.c device_del(&idev->dev); idev 993 drivers/uio/uio.c uio_free_minor(idev); idev 994 drivers/uio/uio.c put_device(&idev->dev); idev 1006 drivers/uio/uio.c struct uio_device *idev; idev 1011 drivers/uio/uio.c idev = info->uio_dev; idev 1013 drivers/uio/uio.c uio_free_minor(idev); idev 1015 drivers/uio/uio.c mutex_lock(&idev->info_lock); idev 1016 drivers/uio/uio.c uio_dev_del_attributes(idev); idev 1019 drivers/uio/uio.c free_irq(info->irq, idev); idev 1021 drivers/uio/uio.c idev->info = NULL; idev 1022 drivers/uio/uio.c mutex_unlock(&idev->info_lock); idev 1024 drivers/uio/uio.c wake_up_interruptible(&idev->wait); idev 1025 drivers/uio/uio.c kill_fasync(&idev->async_queue, SIGIO, POLL_HUP); idev 1027 drivers/uio/uio.c device_unregister(&idev->dev); idev 795 drivers/usb/misc/legousbtower.c struct device *idev = &interface->dev; idev 841 drivers/usb/misc/legousbtower.c dev_err(idev, "interrupt endpoints not found\n"); idev 884 drivers/usb/misc/legousbtower.c dev_err(idev, "get version request failed: %d\n", result); idev 901 drivers/usb/misc/legousbtower.c dev_err(idev, "Not able to get a minor for this device.\n"); idev 12 drivers/virtio/virtio_input.c struct input_dev *idev; idev 42 drivers/virtio/virtio_input.c input_event(vi->idev, idev 102 drivers/virtio/virtio_input.c static int virtinput_status(struct input_dev *idev, unsigned int type, idev 105 drivers/virtio/virtio_input.c struct virtio_input *vi = input_get_drvdata(idev); idev 152 drivers/virtio/virtio_input.c __set_bit(subsel, vi->idev->evbit); idev 165 drivers/virtio/virtio_input.c input_set_abs_params(vi->idev, abs, mi, ma, fu, fl); idev 166 drivers/virtio/virtio_input.c input_abs_set_res(vi->idev, abs, re); idev 223 drivers/virtio/virtio_input.c vi->idev = input_allocate_device(); idev 224 drivers/virtio/virtio_input.c if (!vi->idev) { idev 228 drivers/virtio/virtio_input.c input_set_drvdata(vi->idev, vi); idev 240 drivers/virtio/virtio_input.c vi->idev->name = vi->name; idev 241 drivers/virtio/virtio_input.c vi->idev->phys = vi->phys; idev 242 drivers/virtio/virtio_input.c vi->idev->uniq = vi->serial; idev 247 drivers/virtio/virtio_input.c u.ids.bustype, &vi->idev->id.bustype); idev 249 drivers/virtio/virtio_input.c u.ids.vendor, &vi->idev->id.vendor); idev 251 drivers/virtio/virtio_input.c u.ids.product, &vi->idev->id.product); idev 253 drivers/virtio/virtio_input.c u.ids.version, &vi->idev->id.version); idev 255 drivers/virtio/virtio_input.c vi->idev->id.bustype = BUS_VIRTUAL; idev 259 drivers/virtio/virtio_input.c vi->idev->propbit, INPUT_PROP_CNT); idev 262 drivers/virtio/virtio_input.c __set_bit(EV_REP, vi->idev->evbit); idev 264 drivers/virtio/virtio_input.c vi->idev->dev.parent = &vdev->dev; idev 265 drivers/virtio/virtio_input.c vi->idev->event = virtinput_status; idev 269 drivers/virtio/virtio_input.c vi->idev->keybit, KEY_CNT); idev 271 drivers/virtio/virtio_input.c vi->idev->relbit, REL_CNT); idev 273 drivers/virtio/virtio_input.c vi->idev->absbit, ABS_CNT); idev 275 drivers/virtio/virtio_input.c vi->idev->mscbit, MSC_CNT); idev 277 drivers/virtio/virtio_input.c vi->idev->swbit, SW_CNT); idev 281 drivers/virtio/virtio_input.c vi->idev->ledbit, LED_CNT); idev 283 drivers/virtio/virtio_input.c vi->idev->sndbit, SND_CNT); idev 285 drivers/virtio/virtio_input.c if (test_bit(EV_ABS, vi->idev->evbit)) { idev 287 drivers/virtio/virtio_input.c if (!test_bit(abs, vi->idev->absbit)) idev 295 drivers/virtio/virtio_input.c err = input_register_device(vi->idev); idev 306 drivers/virtio/virtio_input.c input_free_device(vi->idev); idev 324 drivers/virtio/virtio_input.c input_unregister_device(vi->idev); idev 344 fs/lockd/svc.c sin6.sin6_scope_id = ifa->idev->dev->ifindex; idev 463 fs/nfsd/nfssvc.c struct net_device *dev = ifa->idev->dev; idev 477 fs/nfsd/nfssvc.c sin6.sin6_scope_id = ifa->idev->dev->ifindex; idev 260 include/linux/inetdevice.h void in_dev_finish_destroy(struct in_device *idev); idev 262 include/linux/inetdevice.h static inline void in_dev_put(struct in_device *idev) idev 264 include/linux/inetdevice.h if (refcount_dec_and_test(&idev->refcnt)) idev 265 include/linux/inetdevice.h in_dev_finish_destroy(idev); idev 268 include/linux/inetdevice.h #define __in_dev_put(idev) refcount_dec(&(idev)->refcnt) idev 269 include/linux/inetdevice.h #define in_dev_hold(idev) refcount_inc(&(idev)->refcnt) idev 106 include/net/addrconf.h int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr, idev 114 include/net/addrconf.h void addrconf_leave_solict(struct inet6_dev *idev, const struct in6_addr *addr); idev 116 include/net/addrconf.h void addrconf_add_linklocal(struct inet6_dev *idev, idev 224 include/net/addrconf.h int __ipv6_dev_mc_dec(struct inet6_dev *idev, const struct in6_addr *addr); idev 226 include/net/addrconf.h void ipv6_mc_up(struct inet6_dev *idev); idev 227 include/net/addrconf.h void ipv6_mc_down(struct inet6_dev *idev); idev 228 include/net/addrconf.h void ipv6_mc_unmap(struct inet6_dev *idev); idev 229 include/net/addrconf.h void ipv6_mc_remap(struct inet6_dev *idev); idev 230 include/net/addrconf.h void ipv6_mc_init_dev(struct inet6_dev *idev); idev 231 include/net/addrconf.h void ipv6_mc_destroy_dev(struct inet6_dev *idev); idev 239 include/net/addrconf.h void ipv6_mc_dad_complete(struct inet6_dev *idev); idev 278 include/net/addrconf.h int __ipv6_dev_ac_inc(struct inet6_dev *idev, const struct in6_addr *addr); idev 279 include/net/addrconf.h int __ipv6_dev_ac_dec(struct inet6_dev *idev, const struct in6_addr *addr); idev 280 include/net/addrconf.h void ipv6_ac_destroy_dev(struct inet6_dev *idev); idev 352 include/net/addrconf.h struct inet6_dev *idev; idev 355 include/net/addrconf.h idev = rcu_dereference(dev->ip6_ptr); idev 356 include/net/addrconf.h if (idev) idev 357 include/net/addrconf.h refcount_inc(&idev->refcnt); idev 359 include/net/addrconf.h return idev; idev 364 include/net/addrconf.h struct inet6_dev *idev = __in6_dev_get(dev); idev 366 include/net/addrconf.h return idev ? idev->nd_parms : NULL; idev 369 include/net/addrconf.h void in6_dev_finish_destroy(struct inet6_dev *idev); idev 371 include/net/addrconf.h static inline void in6_dev_put(struct inet6_dev *idev) idev 373 include/net/addrconf.h if (refcount_dec_and_test(&idev->refcnt)) idev 374 include/net/addrconf.h in6_dev_finish_destroy(idev); idev 379 include/net/addrconf.h struct inet6_dev *idev = *pidev; idev 381 include/net/addrconf.h if (idev) { idev 382 include/net/addrconf.h in6_dev_put(idev); idev 387 include/net/addrconf.h static inline void __in6_dev_put(struct inet6_dev *idev) idev 389 include/net/addrconf.h refcount_dec(&idev->refcnt); idev 392 include/net/addrconf.h static inline void in6_dev_hold(struct inet6_dev *idev) idev 394 include/net/addrconf.h refcount_inc(&idev->refcnt); idev 400 include/net/addrconf.h const struct inet6_dev *idev = __in6_dev_get(dev); idev 402 include/net/addrconf.h return !!idev->cnf.ignore_routes_with_linkdown; idev 62 include/net/if_inet6.h struct inet6_dev *idev; idev 116 include/net/if_inet6.h struct inet6_dev *idev; idev 160 include/net/ip6_route.h struct fib6_info *addrconf_f6i_alloc(struct net *net, struct inet6_dev *idev, idev 312 include/net/ip6_route.h struct inet6_dev *idev; idev 323 include/net/ip6_route.h idev = __in6_dev_get(dst->dev); idev 324 include/net/ip6_route.h if (idev) idev 325 include/net/ip6_route.h mtu = idev->cnf.mtu6; idev 411 include/net/ip_fib.h struct in_device *idev, u32 *itag); idev 206 include/net/ipv6.h #define _DEVINC(net, statname, mod, idev, field) \ idev 208 include/net/ipv6.h struct inet6_dev *_idev = (idev); \ idev 215 include/net/ipv6.h #define _DEVINCATOMIC(net, statname, mod, idev, field) \ idev 217 include/net/ipv6.h struct inet6_dev *_idev = (idev); \ idev 224 include/net/ipv6.h #define _DEVINC_ATOMIC_ATOMIC(net, statname, idev, field) \ idev 226 include/net/ipv6.h struct inet6_dev *_idev = (idev); \ idev 232 include/net/ipv6.h #define _DEVADD(net, statname, mod, idev, field, val) \ idev 234 include/net/ipv6.h struct inet6_dev *_idev = (idev); \ idev 240 include/net/ipv6.h #define _DEVUPD(net, statname, mod, idev, field, val) \ idev 242 include/net/ipv6.h struct inet6_dev *_idev = (idev); \ idev 250 include/net/ipv6.h #define IP6_INC_STATS(net, idev,field) \ idev 251 include/net/ipv6.h _DEVINC(net, ipv6, , idev, field) idev 252 include/net/ipv6.h #define __IP6_INC_STATS(net, idev,field) \ idev 253 include/net/ipv6.h _DEVINC(net, ipv6, __, idev, field) idev 254 include/net/ipv6.h #define IP6_ADD_STATS(net, idev,field,val) \ idev 255 include/net/ipv6.h _DEVADD(net, ipv6, , idev, field, val) idev 256 include/net/ipv6.h #define __IP6_ADD_STATS(net, idev,field,val) \ idev 257 include/net/ipv6.h _DEVADD(net, ipv6, __, idev, field, val) idev 258 include/net/ipv6.h #define IP6_UPD_PO_STATS(net, idev,field,val) \ idev 259 include/net/ipv6.h _DEVUPD(net, ipv6, , idev, field, val) idev 260 include/net/ipv6.h #define __IP6_UPD_PO_STATS(net, idev,field,val) \ idev 261 include/net/ipv6.h _DEVUPD(net, ipv6, __, idev, field, val) idev 262 include/net/ipv6.h #define ICMP6_INC_STATS(net, idev, field) \ idev 263 include/net/ipv6.h _DEVINCATOMIC(net, icmpv6, , idev, field) idev 264 include/net/ipv6.h #define __ICMP6_INC_STATS(net, idev, field) \ idev 265 include/net/ipv6.h _DEVINCATOMIC(net, icmpv6, __, idev, field) idev 267 include/net/ipv6.h #define ICMP6MSGOUT_INC_STATS(net, idev, field) \ idev 268 include/net/ipv6.h _DEVINC_ATOMIC_ATOMIC(net, icmpv6msg, idev, field +256) idev 269 include/net/ipv6.h #define ICMP6MSGIN_INC_STATS(net, idev, field) \ idev 270 include/net/ipv6.h _DEVINC_ATOMIC_ATOMIC(net, icmpv6msg, idev, field) idev 445 include/net/ipv6.h static inline bool ipv6_accept_ra(struct inet6_dev *idev) idev 450 include/net/ipv6.h return idev->cnf.forwarding ? idev->cnf.accept_ra == 2 : idev 451 include/net/ipv6.h idev->cnf.accept_ra; idev 1141 include/net/ipv6.h int snmp6_register_dev(struct inet6_dev *idev); idev 1142 include/net/ipv6.h int snmp6_unregister_dev(struct inet6_dev *idev); idev 1147 include/net/ipv6.h static inline int snmp6_register_dev(struct inet6_dev *idev) { return 0; } idev 1148 include/net/ipv6.h static inline int snmp6_unregister_dev(struct inet6_dev *idev) { return 0; } idev 3992 include/net/mac80211.h struct inet6_dev *idev); idev 502 include/net/ndisc.h void inet6_ifinfo_notify(int event, struct inet6_dev *idev); idev 111 net/6lowpan/core.c struct inet6_dev *idev; idev 118 net/6lowpan/core.c idev = __in6_dev_get(dev); idev 119 net/6lowpan/core.c if (!idev) idev 130 net/6lowpan/core.c addrconf_add_linklocal(idev, &addr, 0); idev 102 net/bridge/br_netfilter_ipv6.c struct inet6_dev *idev = __in6_dev_get(skb->dev); idev 121 net/bridge/br_netfilter_ipv6.c __IP6_INC_STATS(net, idev, idev 126 net/bridge/br_netfilter_ipv6.c __IP6_INC_STATS(net, idev, idev 142 net/bridge/br_netfilter_ipv6.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 4737 net/core/filter.c struct inet6_dev *idev; idev 4751 net/core/filter.c idev = __in6_dev_get_safely(dev); idev 4752 net/core/filter.c if (unlikely(!idev || !idev->cnf.forwarding)) idev 718 net/core/netpoll.c struct inet6_dev *idev; idev 721 net/core/netpoll.c idev = __in6_dev_get(ndev); idev 722 net/core/netpoll.c if (idev) { idev 725 net/core/netpoll.c read_lock_bh(&idev->lock); idev 726 net/core/netpoll.c list_for_each_entry(ifp, &idev->addr_list, if_list) { idev 734 net/core/netpoll.c read_unlock_bh(&idev->lock); idev 2061 net/core/pktgen.c struct inet6_dev *idev; idev 2085 net/core/pktgen.c idev = __in6_dev_get(pkt_dev->odev); idev 2086 net/core/pktgen.c if (idev) { idev 2089 net/core/pktgen.c read_lock_bh(&idev->lock); idev 2090 net/core/pktgen.c list_for_each_entry(ifp, &idev->addr_list, if_list) { idev 2098 net/core/pktgen.c read_unlock_bh(&idev->lock); idev 202 net/ipv4/devinet.c static int devinet_sysctl_register(struct in_device *idev); idev 203 net/ipv4/devinet.c static void devinet_sysctl_unregister(struct in_device *idev); idev 205 net/ipv4/devinet.c static int devinet_sysctl_register(struct in_device *idev) idev 209 net/ipv4/devinet.c static void devinet_sysctl_unregister(struct in_device *idev) idev 234 net/ipv4/devinet.c void in_dev_finish_destroy(struct in_device *idev) idev 236 net/ipv4/devinet.c struct net_device *dev = idev->dev; idev 238 net/ipv4/devinet.c WARN_ON(idev->ifa_list); idev 239 net/ipv4/devinet.c WARN_ON(idev->mc_list); idev 240 net/ipv4/devinet.c kfree(rcu_dereference_protected(idev->mc_hash, 1)); idev 242 net/ipv4/devinet.c pr_debug("%s: %p=%s\n", __func__, idev, dev ? dev->name : "NIL"); idev 245 net/ipv4/devinet.c if (!idev->dead) idev 246 net/ipv4/devinet.c pr_err("Freeing alive in_device %p\n", idev); idev 248 net/ipv4/devinet.c kfree(idev); idev 300 net/ipv4/devinet.c struct in_device *idev = container_of(head, struct in_device, rcu_head); idev 301 net/ipv4/devinet.c in_dev_put(idev); idev 2363 net/ipv4/devinet.c struct in_device *idev idev 2365 net/ipv4/devinet.c return idev->dev->ifindex; idev 2445 net/ipv4/devinet.c struct in_device *idev = idev 2448 net/ipv4/devinet.c dev_disable_lro(idev->dev); idev 2451 net/ipv4/devinet.c idev->dev->ifindex, idev 2605 net/ipv4/devinet.c static int devinet_sysctl_register(struct in_device *idev) idev 2609 net/ipv4/devinet.c if (!sysctl_dev_name_is_allowed(idev->dev->name)) idev 2612 net/ipv4/devinet.c err = neigh_sysctl_register(idev->dev, idev->arp_parms, NULL); idev 2615 net/ipv4/devinet.c err = __devinet_sysctl_register(dev_net(idev->dev), idev->dev->name, idev 2616 net/ipv4/devinet.c idev->dev->ifindex, &idev->cnf); idev 2618 net/ipv4/devinet.c neigh_sysctl_unregister(idev->arp_parms); idev 2622 net/ipv4/devinet.c static void devinet_sysctl_unregister(struct in_device *idev) idev 2624 net/ipv4/devinet.c struct net *net = dev_net(idev->dev); idev 2626 net/ipv4/devinet.c __devinet_sysctl_unregister(net, &idev->cnf, idev->dev->ifindex); idev 2627 net/ipv4/devinet.c neigh_sysctl_unregister(idev->arp_parms); idev 355 net/ipv4/fib_frontend.c int rpf, struct in_device *idev, u32 *itag) idev 376 net/ipv4/fib_frontend.c no_addr = idev->ifa_list == NULL; idev 378 net/ipv4/fib_frontend.c fl4.flowi4_mark = IN_DEV_SRC_VMARK(idev) ? skb->mark : 0; idev 388 net/ipv4/fib_frontend.c (res.type != RTN_LOCAL || !IN_DEV_ACCEPT_LOCAL(idev))) idev 430 net/ipv4/fib_frontend.c struct in_device *idev, u32 *itag) idev 432 net/ipv4/fib_frontend.c int r = secpath_exists(skb) ? 0 : IN_DEV_RPFILTER(idev); idev 436 net/ipv4/fib_frontend.c (dev->ifindex != oif || !IN_DEV_TX_REDIRECTS(idev))) { idev 437 net/ipv4/fib_frontend.c if (IN_DEV_ACCEPT_LOCAL(idev)) idev 455 net/ipv4/fib_frontend.c return __fib_validate_source(skb, src, dst, tos, oif, dev, r, idev, itag); idev 1814 net/ipv4/igmp.c struct in_device *idev = NULL; idev 1817 net/ipv4/igmp.c idev = inetdev_by_index(net, imr->imr_ifindex); idev 1818 net/ipv4/igmp.c return idev; idev 1837 net/ipv4/igmp.c idev = __in_dev_get_rtnl(dev); idev 1839 net/ipv4/igmp.c return idev; idev 2873 net/ipv4/igmp.c struct in_device *idev; idev 2886 net/ipv4/igmp.c state->idev = NULL; idev 2889 net/ipv4/igmp.c struct in_device *idev; idev 2890 net/ipv4/igmp.c idev = __in_dev_get_rcu(state->dev); idev 2891 net/ipv4/igmp.c if (unlikely(!idev)) idev 2893 net/ipv4/igmp.c im = rcu_dereference(idev->mc_list); idev 2899 net/ipv4/igmp.c state->idev = idev; idev 2919 net/ipv4/igmp.c state->idev = NULL; idev 2922 net/ipv4/igmp.c state->idev = __in_dev_get_rcu(state->dev); idev 2923 net/ipv4/igmp.c if (!state->idev) idev 2925 net/ipv4/igmp.c state->im = rcu_dereference(state->idev->mc_list); idev 2971 net/ipv4/igmp.c state->idev = NULL; idev 125 net/ipv6/addrconf.c static int addrconf_sysctl_register(struct inet6_dev *idev); idev 126 net/ipv6/addrconf.c static void addrconf_sysctl_unregister(struct inet6_dev *idev); idev 128 net/ipv6/addrconf.c static inline int addrconf_sysctl_register(struct inet6_dev *idev) idev 133 net/ipv6/addrconf.c static inline void addrconf_sysctl_unregister(struct inet6_dev *idev) idev 138 net/ipv6/addrconf.c static void ipv6_regen_rndid(struct inet6_dev *idev); idev 139 net/ipv6/addrconf.c static void ipv6_try_regen_rndid(struct inet6_dev *idev, struct in6_addr *tmpaddr); idev 142 net/ipv6/addrconf.c static int ipv6_count_addresses(const struct inet6_dev *idev); idev 145 net/ipv6/addrconf.c const struct inet6_dev *idev); idev 179 net/ipv6/addrconf.c static void addrconf_dad_run(struct inet6_dev *idev, bool restart); idev 184 net/ipv6/addrconf.c static void inet6_prefix_notify(int event, struct inet6_dev *idev, idev 301 net/ipv6/addrconf.c static void addrconf_del_rs_timer(struct inet6_dev *idev) idev 303 net/ipv6/addrconf.c if (del_timer(&idev->rs_timer)) idev 304 net/ipv6/addrconf.c __in6_dev_put(idev); idev 313 net/ipv6/addrconf.c static void addrconf_mod_rs_timer(struct inet6_dev *idev, idev 316 net/ipv6/addrconf.c if (!timer_pending(&idev->rs_timer)) idev 317 net/ipv6/addrconf.c in6_dev_hold(idev); idev 318 net/ipv6/addrconf.c mod_timer(&idev->rs_timer, jiffies + when); idev 329 net/ipv6/addrconf.c static int snmp6_alloc_dev(struct inet6_dev *idev) idev 333 net/ipv6/addrconf.c idev->stats.ipv6 = alloc_percpu(struct ipstats_mib); idev 334 net/ipv6/addrconf.c if (!idev->stats.ipv6) idev 339 net/ipv6/addrconf.c addrconf_stats = per_cpu_ptr(idev->stats.ipv6, i); idev 344 net/ipv6/addrconf.c idev->stats.icmpv6dev = kzalloc(sizeof(struct icmpv6_mib_device), idev 346 net/ipv6/addrconf.c if (!idev->stats.icmpv6dev) idev 348 net/ipv6/addrconf.c idev->stats.icmpv6msgdev = kzalloc(sizeof(struct icmpv6msg_mib_device), idev 350 net/ipv6/addrconf.c if (!idev->stats.icmpv6msgdev) idev 356 net/ipv6/addrconf.c kfree(idev->stats.icmpv6dev); idev 358 net/ipv6/addrconf.c free_percpu(idev->stats.ipv6); idev 473 net/ipv6/addrconf.c struct inet6_dev *idev; idev 477 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 478 net/ipv6/addrconf.c if (!idev) { idev 479 net/ipv6/addrconf.c idev = ipv6_add_dev(dev); idev 480 net/ipv6/addrconf.c if (IS_ERR(idev)) idev 481 net/ipv6/addrconf.c return idev; idev 485 net/ipv6/addrconf.c ipv6_mc_up(idev); idev 486 net/ipv6/addrconf.c return idev; idev 708 net/ipv6/addrconf.c struct inet6_dev *idev; idev 738 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 739 net/ipv6/addrconf.c if (!idev) idev 743 net/ipv6/addrconf.c &idev->cnf, idev 788 net/ipv6/addrconf.c static void dev_forward_change(struct inet6_dev *idev) idev 793 net/ipv6/addrconf.c if (!idev) idev 795 net/ipv6/addrconf.c dev = idev->dev; idev 796 net/ipv6/addrconf.c if (idev->cnf.forwarding) idev 799 net/ipv6/addrconf.c if (idev->cnf.forwarding) { idev 810 net/ipv6/addrconf.c list_for_each_entry(ifa, &idev->addr_list, if_list) { idev 813 net/ipv6/addrconf.c if (idev->cnf.forwarding) idev 820 net/ipv6/addrconf.c dev->ifindex, &idev->cnf); idev 827 net/ipv6/addrconf.c struct inet6_dev *idev; idev 830 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 831 net/ipv6/addrconf.c if (idev) { idev 832 net/ipv6/addrconf.c int changed = (!idev->cnf.forwarding) ^ (!newf); idev 833 net/ipv6/addrconf.c idev->cnf.forwarding = newf; idev 835 net/ipv6/addrconf.c dev_forward_change(idev); idev 890 net/ipv6/addrconf.c struct inet6_dev *idev; idev 893 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 894 net/ipv6/addrconf.c if (idev) { idev 895 net/ipv6/addrconf.c int changed = (!idev->cnf.ignore_routes_with_linkdown) ^ (!newf); idev 897 net/ipv6/addrconf.c idev->cnf.ignore_routes_with_linkdown = newf; idev 903 net/ipv6/addrconf.c &idev->cnf); idev 957 net/ipv6/addrconf.c in6_dev_put(ifp->idev); idev 972 net/ipv6/addrconf.c ipv6_link_dev_addr(struct inet6_dev *idev, struct inet6_ifaddr *ifp) idev 981 net/ipv6/addrconf.c list_for_each(p, &idev->addr_list) { idev 1004 net/ipv6/addrconf.c if (!net_eq(dev_net(ifp->idev->dev), net)) idev 1007 net/ipv6/addrconf.c if (!dev || ifp->idev->dev == dev) idev 1037 net/ipv6/addrconf.c ipv6_add_addr(struct inet6_dev *idev, struct ifa6_config *cfg, idev 1042 net/ipv6/addrconf.c struct net *net = dev_net(idev->dev); idev 1050 net/ipv6/addrconf.c (!(idev->dev->flags & IFF_LOOPBACK) && idev 1051 net/ipv6/addrconf.c !netif_is_l3_master(idev->dev) && idev 1055 net/ipv6/addrconf.c if (idev->dead) { idev 1060 net/ipv6/addrconf.c if (idev->cnf.disable_ipv6) { idev 1071 net/ipv6/addrconf.c .i6vi_dev = idev, idev 1087 net/ipv6/addrconf.c f6i = addrconf_f6i_alloc(net, idev, cfg->pfx, false, gfp_flags); idev 1095 net/ipv6/addrconf.c idev->cnf.disable_policy) idev 1098 net/ipv6/addrconf.c neigh_parms_data_state_setall(idev->nd_parms); idev 1121 net/ipv6/addrconf.c ifa->idev = idev; idev 1122 net/ipv6/addrconf.c in6_dev_hold(idev); idev 1129 net/ipv6/addrconf.c err = ipv6_add_addr_hash(idev->dev, ifa); idev 1135 net/ipv6/addrconf.c write_lock(&idev->lock); idev 1138 net/ipv6/addrconf.c ipv6_link_dev_addr(idev, ifa); idev 1141 net/ipv6/addrconf.c list_add(&ifa->tmp_list, &idev->tempaddr_list); idev 1146 net/ipv6/addrconf.c write_unlock(&idev->lock); idev 1156 net/ipv6/addrconf.c if (ifa->idev) idev 1157 net/ipv6/addrconf.c in6_dev_put(ifa->idev); idev 1194 net/ipv6/addrconf.c struct inet6_dev *idev = ifp->idev; idev 1200 net/ipv6/addrconf.c list_for_each_entry(ifa, &idev->addr_list, if_list) { idev 1236 net/ipv6/addrconf.c ifp->idev->dev, 0, RTF_DEFAULT, true); idev 1239 net/ipv6/addrconf.c ip6_del_rt(dev_net(ifp->idev->dev), f6i); idev 1271 net/ipv6/addrconf.c write_lock_bh(&ifp->idev->lock); idev 1288 net/ipv6/addrconf.c write_unlock_bh(&ifp->idev->lock); idev 1311 net/ipv6/addrconf.c struct inet6_dev *idev = ifp->idev; idev 1321 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 1331 net/ipv6/addrconf.c in6_dev_hold(idev); idev 1332 net/ipv6/addrconf.c if (idev->cnf.use_tempaddr <= 0) { idev 1333 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 1335 net/ipv6/addrconf.c in6_dev_put(idev); idev 1340 net/ipv6/addrconf.c if (ifp->regen_count++ >= idev->cnf.regen_max_retry) { idev 1341 net/ipv6/addrconf.c idev->cnf.use_tempaddr = -1; /*XXX*/ idev 1343 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 1346 net/ipv6/addrconf.c in6_dev_put(idev); idev 1352 net/ipv6/addrconf.c ipv6_try_regen_rndid(idev, tmpaddr); idev 1353 net/ipv6/addrconf.c memcpy(&addr.s6_addr[8], idev->rndid, 8); idev 1356 net/ipv6/addrconf.c regen_advance = idev->cnf.regen_max_retry * idev 1357 net/ipv6/addrconf.c idev->cnf.dad_transmits * idev 1358 net/ipv6/addrconf.c NEIGH_VAR(idev->nd_parms, RETRANS_TIME) / HZ; idev 1363 net/ipv6/addrconf.c cnf_temp_preferred_lft = READ_ONCE(idev->cnf.temp_prefered_lft); idev 1365 net/ipv6/addrconf.c idev->cnf.max_desync_factor, idev 1368 net/ipv6/addrconf.c if (unlikely(idev->desync_factor > max_desync_factor)) { idev 1370 net/ipv6/addrconf.c get_random_bytes(&idev->desync_factor, idev 1371 net/ipv6/addrconf.c sizeof(idev->desync_factor)); idev 1372 net/ipv6/addrconf.c idev->desync_factor %= max_desync_factor; idev 1374 net/ipv6/addrconf.c idev->desync_factor = 0; idev 1380 net/ipv6/addrconf.c idev->cnf.temp_valid_lft + age); idev 1381 net/ipv6/addrconf.c cfg.preferred_lft = cnf_temp_preferred_lft + age - idev->desync_factor; idev 1388 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 1400 net/ipv6/addrconf.c in6_dev_put(idev); idev 1413 net/ipv6/addrconf.c ift = ipv6_add_addr(idev, &cfg, block, NULL); idev 1416 net/ipv6/addrconf.c in6_dev_put(idev); idev 1419 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 1431 net/ipv6/addrconf.c in6_dev_put(idev); idev 1483 net/ipv6/addrconf.c struct inet6_dev *idev) idev 1486 net/ipv6/addrconf.c if (!idev) idev 1488 net/ipv6/addrconf.c if (!net->ipv6.devconf_all->optimistic_dad && !idev->cnf.optimistic_dad) idev 1490 net/ipv6/addrconf.c if (!net->ipv6.devconf_all->use_optimistic && !idev->cnf.use_optimistic) idev 1500 net/ipv6/addrconf.c struct inet6_dev *idev) idev 1503 net/ipv6/addrconf.c if (!idev) idev 1505 net/ipv6/addrconf.c if (!net->ipv6.devconf_all->optimistic_dad && !idev->cnf.optimistic_dad) idev 1578 net/ipv6/addrconf.c if (!ipv6_use_optimistic_addr(net, score->ifa->idev)) idev 1596 net/ipv6/addrconf.c dst->ifindex == score->ifa->idev->dev->ifindex); idev 1602 net/ipv6/addrconf.c score->ifa->idev->dev->ifindex) == dst->label; idev 1611 net/ipv6/addrconf.c score->ifa->idev->cnf.use_tempaddr >= 2; idev 1650 net/ipv6/addrconf.c struct inet6_dev *idev, idev 1656 net/ipv6/addrconf.c list_for_each_entry_rcu(score->ifa, &idev->addr_list, if_list) { idev 1678 net/ipv6/addrconf.c idev->dev->name); idev 1727 net/ipv6/addrconf.c struct inet6_dev *idev; idev 1729 net/ipv6/addrconf.c idev = __in6_dev_get(dst_dev); idev 1730 net/ipv6/addrconf.c if (idev) idev 1731 net/ipv6/addrconf.c hiscore_idx = __ipv6_dev_get_saddr(net, dst, idev, idev 1734 net/ipv6/addrconf.c idev = __in6_dev_get(master); idev 1735 net/ipv6/addrconf.c if (idev) idev 1736 net/ipv6/addrconf.c hiscore_idx = __ipv6_dev_get_saddr(net, dst, idev, idev 1748 net/ipv6/addrconf.c struct inet6_dev *idev; idev 1784 net/ipv6/addrconf.c idev = __in6_dev_get(dst_dev); idev 1787 net/ipv6/addrconf.c (idev && idev->cnf.use_oif_addrs_only)) { idev 1793 net/ipv6/addrconf.c if (idev) idev 1794 net/ipv6/addrconf.c hiscore_idx = __ipv6_dev_get_saddr(net, &dst, idev, scores, hiscore_idx); idev 1821 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 1822 net/ipv6/addrconf.c if (!idev) idev 1824 net/ipv6/addrconf.c hiscore_idx = __ipv6_dev_get_saddr(net, &dst, idev, scores, hiscore_idx); idev 1840 net/ipv6/addrconf.c int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr, idev 1846 net/ipv6/addrconf.c list_for_each_entry_reverse(ifp, &idev->addr_list, if_list) { idev 1862 net/ipv6/addrconf.c struct inet6_dev *idev; idev 1866 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 1867 net/ipv6/addrconf.c if (idev) { idev 1868 net/ipv6/addrconf.c read_lock_bh(&idev->lock); idev 1869 net/ipv6/addrconf.c err = __ipv6_get_lladdr(idev, addr, banned_flags); idev 1870 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 1876 net/ipv6/addrconf.c static int ipv6_count_addresses(const struct inet6_dev *idev) idev 1882 net/ipv6/addrconf.c list_for_each_entry_rcu(ifp, &idev->addr_list, if_list) idev 1921 net/ipv6/addrconf.c if (!net_eq(dev_net(ifp->idev->dev), net)) idev 1924 net/ipv6/addrconf.c if (l3mdev_master_dev_rcu(ifp->idev->dev) != l3mdev) idev 1935 net/ipv6/addrconf.c (!dev || ifp->idev->dev == dev || idev 1955 net/ipv6/addrconf.c const struct inet6_dev *idev; idev 1959 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 1960 net/ipv6/addrconf.c if (idev) { idev 1961 net/ipv6/addrconf.c list_for_each_entry_rcu(ifa, &idev->addr_list, if_list) { idev 1976 net/ipv6/addrconf.c const struct inet6_dev *idev; idev 1981 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 1982 net/ipv6/addrconf.c if (idev) { idev 1983 net/ipv6/addrconf.c list_for_each_entry_rcu(ifa, &idev->addr_list, if_list) { idev 2003 net/ipv6/addrconf.c if (!net_eq(dev_net(ifp->idev->dev), net)) idev 2006 net/ipv6/addrconf.c if (!dev || ifp->idev->dev == dev || idev 2070 net/ipv6/addrconf.c struct inet6_dev *idev = ifp->idev; idev 2071 net/ipv6/addrconf.c struct net *net = dev_net(ifp->idev->dev); idev 2079 net/ipv6/addrconf.c ifp->idev->dev->name, &ifp->addr, eth_hdr(skb)->h_source); idev 2098 net/ipv6/addrconf.c ifp->idev->dev->name); idev 2104 net/ipv6/addrconf.c idev)) idev 2109 net/ipv6/addrconf.c if (idev->cnf.max_addresses && idev 2110 net/ipv6/addrconf.c ipv6_count_addresses(idev) >= idev 2111 net/ipv6/addrconf.c idev->cnf.max_addresses) idev 2115 net/ipv6/addrconf.c ifp->idev->dev->name); idev 2117 net/ipv6/addrconf.c ifp2 = ipv6_add_addr(idev, &cfg, false, NULL); idev 2155 net/ipv6/addrconf.c void addrconf_leave_solict(struct inet6_dev *idev, const struct in6_addr *addr) idev 2159 net/ipv6/addrconf.c if (idev->dev->flags&(IFF_LOOPBACK|IFF_NOARP)) idev 2163 net/ipv6/addrconf.c __ipv6_dev_mc_dec(idev, &maddr); idev 2176 net/ipv6/addrconf.c __ipv6_dev_ac_inc(ifp->idev, &addr); idev 2189 net/ipv6/addrconf.c __ipv6_dev_ac_dec(ifp->idev, &addr); idev 2311 net/ipv6/addrconf.c static int ipv6_inherit_eui64(u8 *eui, struct inet6_dev *idev) idev 2316 net/ipv6/addrconf.c read_lock_bh(&idev->lock); idev 2317 net/ipv6/addrconf.c list_for_each_entry_reverse(ifp, &idev->addr_list, if_list) { idev 2326 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 2331 net/ipv6/addrconf.c static void ipv6_regen_rndid(struct inet6_dev *idev) idev 2334 net/ipv6/addrconf.c get_random_bytes(idev->rndid, sizeof(idev->rndid)); idev 2335 net/ipv6/addrconf.c idev->rndid[0] &= ~0x02; idev 2348 net/ipv6/addrconf.c if (idev->rndid[0] == 0xfd && idev 2349 net/ipv6/addrconf.c (idev->rndid[1]&idev->rndid[2]&idev->rndid[3]&idev->rndid[4]&idev->rndid[5]&idev->rndid[6]) == 0xff && idev 2350 net/ipv6/addrconf.c (idev->rndid[7]&0x80)) idev 2352 net/ipv6/addrconf.c if ((idev->rndid[0]|idev->rndid[1]) == 0) { idev 2353 net/ipv6/addrconf.c if (idev->rndid[2] == 0x5e && idev->rndid[3] == 0xfe) idev 2355 net/ipv6/addrconf.c if ((idev->rndid[2]|idev->rndid[3]|idev->rndid[4]|idev->rndid[5]|idev->rndid[6]|idev->rndid[7]) == 0x00) idev 2360 net/ipv6/addrconf.c static void ipv6_try_regen_rndid(struct inet6_dev *idev, struct in6_addr *tmpaddr) idev 2362 net/ipv6/addrconf.c if (tmpaddr && memcmp(idev->rndid, &tmpaddr->s6_addr[8], 8) == 0) idev 2363 net/ipv6/addrconf.c ipv6_regen_rndid(idev); idev 2466 net/ipv6/addrconf.c struct inet6_dev *idev; idev 2470 net/ipv6/addrconf.c idev = ipv6_find_idev(dev); idev 2471 net/ipv6/addrconf.c if (IS_ERR(idev)) idev 2472 net/ipv6/addrconf.c return idev; idev 2474 net/ipv6/addrconf.c if (idev->cnf.disable_ipv6) idev 2481 net/ipv6/addrconf.c return idev; idev 2484 net/ipv6/addrconf.c static void manage_tempaddrs(struct inet6_dev *idev, idev 2492 net/ipv6/addrconf.c read_lock_bh(&idev->lock); idev 2494 net/ipv6/addrconf.c list_for_each_entry(ift, &idev->tempaddr_list, tmp_list) { idev 2509 net/ipv6/addrconf.c max_valid = idev->cnf.temp_valid_lft - age; idev 2513 net/ipv6/addrconf.c max_prefered = idev->cnf.temp_prefered_lft - idev 2514 net/ipv6/addrconf.c idev->desync_factor - age; idev 2537 net/ipv6/addrconf.c if ((create || list_empty(&idev->tempaddr_list)) && idev 2538 net/ipv6/addrconf.c idev->cnf.use_tempaddr > 0) { idev 2544 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 2547 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 2551 net/ipv6/addrconf.c static bool is_addr_mode_generate_stable(struct inet6_dev *idev) idev 2553 net/ipv6/addrconf.c return idev->cnf.addr_gen_mode == IN6_ADDR_GEN_MODE_STABLE_PRIVACY || idev 2554 net/ipv6/addrconf.c idev->cnf.addr_gen_mode == IN6_ADDR_GEN_MODE_RANDOM; idev 2901 net/ipv6/addrconf.c struct inet6_dev *idev; idev 2923 net/ipv6/addrconf.c idev = addrconf_add_dev(dev); idev 2924 net/ipv6/addrconf.c if (IS_ERR(idev)) idev 2925 net/ipv6/addrconf.c return PTR_ERR(idev); idev 2955 net/ipv6/addrconf.c ifp = ipv6_add_addr(idev, cfg, true, extack); idev 2975 net/ipv6/addrconf.c manage_tempaddrs(idev, ifp, cfg->valid_lft, idev 2992 net/ipv6/addrconf.c struct inet6_dev *idev; idev 3002 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 3003 net/ipv6/addrconf.c if (!idev) idev 3006 net/ipv6/addrconf.c read_lock_bh(&idev->lock); idev 3007 net/ipv6/addrconf.c list_for_each_entry(ifp, &idev->addr_list, if_list) { idev 3011 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 3015 net/ipv6/addrconf.c manage_tempaddrs(idev, ifp, 0, 0, false, idev 3026 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 3074 net/ipv6/addrconf.c static void add_addr(struct inet6_dev *idev, const struct in6_addr *addr, idev 3087 net/ipv6/addrconf.c ifp = ipv6_add_addr(idev, &cfg, true, NULL); idev 3092 net/ipv6/addrconf.c rt_genid_bump_ipv6(dev_net(idev->dev)); idev 3099 net/ipv6/addrconf.c static void sit_add_v4_addrs(struct inet6_dev *idev) idev 3103 net/ipv6/addrconf.c struct net *net = dev_net(idev->dev); idev 3110 net/ipv6/addrconf.c memcpy(&addr.s6_addr32[3], idev->dev->dev_addr, 4); idev 3112 net/ipv6/addrconf.c if (idev->dev->flags&IFF_POINTOPOINT) { idev 3123 net/ipv6/addrconf.c add_addr(idev, &addr, plen, scope); idev 3124 net/ipv6/addrconf.c addrconf_prefix_route(&addr, plen, 0, idev->dev, 0, pflags, idev 3141 net/ipv6/addrconf.c if (idev->dev->flags&IFF_POINTOPOINT) idev 3146 net/ipv6/addrconf.c add_addr(idev, &addr, plen, flag); idev 3147 net/ipv6/addrconf.c addrconf_prefix_route(&addr, plen, 0, idev->dev, idev 3157 net/ipv6/addrconf.c struct inet6_dev *idev; idev 3163 net/ipv6/addrconf.c idev = ipv6_find_idev(dev); idev 3164 net/ipv6/addrconf.c if (IS_ERR(idev)) { idev 3169 net/ipv6/addrconf.c add_addr(idev, &in6addr_loopback, 128, IFA_HOST); idev 3172 net/ipv6/addrconf.c void addrconf_add_linklocal(struct inet6_dev *idev, idev 3186 net/ipv6/addrconf.c if ((dev_net(idev->dev)->ipv6.devconf_all->optimistic_dad || idev 3187 net/ipv6/addrconf.c idev->cnf.optimistic_dad) && idev 3188 net/ipv6/addrconf.c !dev_net(idev->dev)->ipv6.devconf_all->forwarding) idev 3192 net/ipv6/addrconf.c ifp = ipv6_add_addr(idev, &cfg, true, NULL); idev 3194 net/ipv6/addrconf.c addrconf_prefix_route(&ifp->addr, ifp->prefix_len, 0, idev->dev, idev 3220 net/ipv6/addrconf.c const struct inet6_dev *idev) idev 3238 net/ipv6/addrconf.c struct net *net = dev_net(idev->dev); idev 3242 net/ipv6/addrconf.c if (idev->cnf.stable_secret.initialized) idev 3243 net/ipv6/addrconf.c secret = idev->cnf.stable_secret.secret; idev 3255 net/ipv6/addrconf.c memcpy(data.hwaddr, idev->dev->perm_addr, idev->dev->addr_len); idev 3271 net/ipv6/addrconf.c if (dad_count > dev_net(idev->dev)->ipv6.sysctl.idgen_retries) idev 3280 net/ipv6/addrconf.c static void ipv6_gen_mode_random_init(struct inet6_dev *idev) idev 3282 net/ipv6/addrconf.c struct ipv6_stable_secret *s = &idev->cnf.stable_secret; idev 3286 net/ipv6/addrconf.c s = &idev->cnf.stable_secret; idev 3291 net/ipv6/addrconf.c static void addrconf_addr_gen(struct inet6_dev *idev, bool prefix_route) idev 3296 net/ipv6/addrconf.c if (netif_is_l3_master(idev->dev)) idev 3300 net/ipv6/addrconf.c if (idev->dev->flags & IFF_SLAVE) idev 3305 net/ipv6/addrconf.c switch (idev->cnf.addr_gen_mode) { idev 3307 net/ipv6/addrconf.c ipv6_gen_mode_random_init(idev); idev 3310 net/ipv6/addrconf.c if (!ipv6_generate_stable_address(&addr, 0, idev)) idev 3311 net/ipv6/addrconf.c addrconf_add_linklocal(idev, &addr, idev 3314 net/ipv6/addrconf.c addrconf_prefix_route(&addr, 64, 0, idev->dev, idev 3322 net/ipv6/addrconf.c if (ipv6_generate_eui64(addr.s6_addr + 8, idev->dev) == 0) idev 3323 net/ipv6/addrconf.c addrconf_add_linklocal(idev, &addr, 0); idev 3325 net/ipv6/addrconf.c addrconf_prefix_route(&addr, 64, 0, idev->dev, idev 3337 net/ipv6/addrconf.c struct inet6_dev *idev; idev 3354 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 3355 net/ipv6/addrconf.c if (!IS_ERR_OR_NULL(idev) && dev->flags & IFF_UP && idev 3357 net/ipv6/addrconf.c ipv6_mc_up(idev); idev 3361 net/ipv6/addrconf.c idev = addrconf_add_dev(dev); idev 3362 net/ipv6/addrconf.c if (IS_ERR(idev)) idev 3367 net/ipv6/addrconf.c idev->cnf.addr_gen_mode == IN6_ADDR_GEN_MODE_EUI64) idev 3368 net/ipv6/addrconf.c idev->cnf.addr_gen_mode = IN6_ADDR_GEN_MODE_RANDOM; idev 3370 net/ipv6/addrconf.c addrconf_addr_gen(idev, false); idev 3376 net/ipv6/addrconf.c struct inet6_dev *idev; idev 3386 net/ipv6/addrconf.c idev = ipv6_find_idev(dev); idev 3387 net/ipv6/addrconf.c if (IS_ERR(idev)) { idev 3393 net/ipv6/addrconf.c addrconf_addr_gen(idev, false); idev 3397 net/ipv6/addrconf.c sit_add_v4_addrs(idev); idev 3407 net/ipv6/addrconf.c struct inet6_dev *idev; idev 3411 net/ipv6/addrconf.c idev = ipv6_find_idev(dev); idev 3412 net/ipv6/addrconf.c if (IS_ERR(idev)) { idev 3417 net/ipv6/addrconf.c addrconf_addr_gen(idev, true); idev 3424 net/ipv6/addrconf.c struct inet6_dev *idev, idev 3434 net/ipv6/addrconf.c f6i = addrconf_f6i_alloc(net, idev, &ifp->addr, false, idev 3450 net/ipv6/addrconf.c ifp->rt_priority, idev->dev, 0, 0, idev 3463 net/ipv6/addrconf.c struct inet6_dev *idev; idev 3465 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 3466 net/ipv6/addrconf.c if (!idev) idev 3469 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 3471 net/ipv6/addrconf.c list_for_each_entry_safe(ifp, tmp, &idev->addr_list, if_list) { idev 3473 net/ipv6/addrconf.c fixup_permanent_addr(net, idev, ifp) < 0) { idev 3474 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 3477 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 3480 net/ipv6/addrconf.c idev->dev->name, &ifp->addr); idev 3484 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 3493 net/ipv6/addrconf.c struct inet6_dev *idev = __in6_dev_get(dev); idev 3500 net/ipv6/addrconf.c if (!idev && dev->mtu >= IPV6_MIN_MTU) { idev 3501 net/ipv6/addrconf.c idev = ipv6_add_dev(dev); idev 3502 net/ipv6/addrconf.c if (IS_ERR(idev)) idev 3503 net/ipv6/addrconf.c return notifier_from_errno(PTR_ERR(idev)); idev 3514 net/ipv6/addrconf.c if (idev) { idev 3516 net/ipv6/addrconf.c idev->cnf.mtu6 = dev->mtu; idev 3521 net/ipv6/addrconf.c idev = ipv6_add_dev(dev); idev 3522 net/ipv6/addrconf.c if (IS_ERR(idev)) idev 3526 net/ipv6/addrconf.c if (!(idev->if_flags & IF_READY)) idev 3538 net/ipv6/addrconf.c if (idev && idev->cnf.disable_ipv6) idev 3552 net/ipv6/addrconf.c if (!idev && dev->mtu >= IPV6_MIN_MTU) idev 3553 net/ipv6/addrconf.c idev = ipv6_add_dev(dev); idev 3555 net/ipv6/addrconf.c if (!IS_ERR_OR_NULL(idev)) { idev 3556 net/ipv6/addrconf.c idev->if_flags |= IF_READY; idev 3566 net/ipv6/addrconf.c if (!IS_ERR_OR_NULL(idev)) { idev 3567 net/ipv6/addrconf.c if (idev->if_flags & IF_READY) { idev 3573 net/ipv6/addrconf.c ipv6_mc_up(idev); idev 3576 net/ipv6/addrconf.c addrconf_dad_run(idev, true); idev 3580 net/ipv6/addrconf.c idev->if_flags |= IF_READY; idev 3609 net/ipv6/addrconf.c if (!IS_ERR_OR_NULL(idev)) { idev 3611 net/ipv6/addrconf.c addrconf_dad_run(idev, false); idev 3621 net/ipv6/addrconf.c if (idev->cnf.mtu6 != dev->mtu && idev 3624 net/ipv6/addrconf.c idev->cnf.mtu6 = dev->mtu; idev 3626 net/ipv6/addrconf.c idev->tstamp = jiffies; idev 3627 net/ipv6/addrconf.c inet6_ifinfo_notify(RTM_NEWLINK, idev); idev 3647 net/ipv6/addrconf.c if (idev) { idev 3648 net/ipv6/addrconf.c snmp6_unregister_dev(idev); idev 3649 net/ipv6/addrconf.c addrconf_sysctl_unregister(idev); idev 3650 net/ipv6/addrconf.c err = addrconf_sysctl_register(idev); idev 3653 net/ipv6/addrconf.c err = snmp6_register_dev(idev); idev 3655 net/ipv6/addrconf.c addrconf_sysctl_unregister(idev); idev 3663 net/ipv6/addrconf.c if (idev) idev 3690 net/ipv6/addrconf.c struct inet6_dev *idev; idev 3693 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 3696 net/ipv6/addrconf.c ipv6_mc_remap(idev); idev 3698 net/ipv6/addrconf.c ipv6_mc_unmap(idev); idev 3711 net/ipv6/addrconf.c struct inet6_dev *idev; idev 3720 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 3721 net/ipv6/addrconf.c if (!idev) idev 3729 net/ipv6/addrconf.c idev->dead = 1; idev 3735 net/ipv6/addrconf.c snmp6_unregister_dev(idev); idev 3742 net/ipv6/addrconf.c if (!how && !idev->cnf.disable_ipv6) { idev 3747 net/ipv6/addrconf.c _keep_addr = idev->cnf.keep_addr_on_down; idev 3759 net/ipv6/addrconf.c if (ifa->idev == idev) { idev 3775 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 3777 net/ipv6/addrconf.c addrconf_del_rs_timer(idev); idev 3781 net/ipv6/addrconf.c idev->if_flags &= ~(IF_RS_SENT|IF_RA_RCVD|IF_READY); idev 3784 net/ipv6/addrconf.c while (!list_empty(&idev->tempaddr_list)) { idev 3785 net/ipv6/addrconf.c ifa = list_first_entry(&idev->tempaddr_list, idev 3788 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 3797 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 3800 net/ipv6/addrconf.c list_for_each_entry_safe(ifa, tmp, &idev->addr_list, if_list) { idev 3809 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 3835 net/ipv6/addrconf.c if (idev->cnf.forwarding) idev 3837 net/ipv6/addrconf.c addrconf_leave_solict(ifa->idev, &ifa->addr); idev 3840 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 3847 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 3851 net/ipv6/addrconf.c ipv6_ac_destroy_dev(idev); idev 3852 net/ipv6/addrconf.c ipv6_mc_destroy_dev(idev); idev 3854 net/ipv6/addrconf.c ipv6_mc_down(idev); idev 3857 net/ipv6/addrconf.c idev->tstamp = jiffies; idev 3861 net/ipv6/addrconf.c addrconf_sysctl_unregister(idev); idev 3862 net/ipv6/addrconf.c neigh_parms_release(&nd_tbl, idev->nd_parms); idev 3864 net/ipv6/addrconf.c in6_dev_put(idev); idev 3871 net/ipv6/addrconf.c struct inet6_dev *idev = from_timer(idev, t, rs_timer); idev 3872 net/ipv6/addrconf.c struct net_device *dev = idev->dev; idev 3875 net/ipv6/addrconf.c write_lock(&idev->lock); idev 3876 net/ipv6/addrconf.c if (idev->dead || !(idev->if_flags & IF_READY)) idev 3879 net/ipv6/addrconf.c if (!ipv6_accept_ra(idev)) idev 3883 net/ipv6/addrconf.c if (idev->if_flags & IF_RA_RCVD) idev 3886 net/ipv6/addrconf.c if (idev->rs_probes++ < idev->cnf.rtr_solicits || idev->cnf.rtr_solicits < 0) { idev 3887 net/ipv6/addrconf.c write_unlock(&idev->lock); idev 3894 net/ipv6/addrconf.c write_lock(&idev->lock); idev 3895 net/ipv6/addrconf.c idev->rs_interval = rfc3315_s14_backoff_update( idev 3896 net/ipv6/addrconf.c idev->rs_interval, idev->cnf.rtr_solicit_max_interval); idev 3898 net/ipv6/addrconf.c addrconf_mod_rs_timer(idev, (idev->rs_probes == idev 3899 net/ipv6/addrconf.c idev->cnf.rtr_solicits) ? idev 3900 net/ipv6/addrconf.c idev->cnf.rtr_solicit_delay : idev 3901 net/ipv6/addrconf.c idev->rs_interval); idev 3907 net/ipv6/addrconf.c pr_debug("%s: no IPv6 routers present\n", idev->dev->name); idev 3911 net/ipv6/addrconf.c write_unlock(&idev->lock); idev 3913 net/ipv6/addrconf.c in6_dev_put(idev); idev 3922 net/ipv6/addrconf.c struct inet6_dev *idev = ifp->idev; idev 3928 net/ipv6/addrconf.c rand_num = prandom_u32() % (idev->cnf.rtr_solicit_delay ? : 1); idev 3931 net/ipv6/addrconf.c if (idev->cnf.enhanced_dad || idev 3932 net/ipv6/addrconf.c dev_net(idev->dev)->ipv6.devconf_all->enhanced_dad) { idev 3938 net/ipv6/addrconf.c ifp->dad_probes = idev->cnf.dad_transmits; idev 3944 net/ipv6/addrconf.c struct inet6_dev *idev = ifp->idev; idev 3945 net/ipv6/addrconf.c struct net_device *dev = idev->dev; idev 3953 net/ipv6/addrconf.c read_lock_bh(&idev->lock); idev 3961 net/ipv6/addrconf.c idev->cnf.accept_dad < 1) || idev 3972 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 3978 net/ipv6/addrconf.c if (!(idev->if_flags & IF_READY)) { idev 3980 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 3997 net/ipv6/addrconf.c if (ipv6_use_optimistic_addr(net, idev)) { idev 4008 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 4033 net/ipv6/addrconf.c struct inet6_dev *idev = ifp->idev; idev 4053 net/ipv6/addrconf.c if ((dev_net(idev->dev)->ipv6.devconf_all->accept_dad > 1 || idev 4054 net/ipv6/addrconf.c idev->cnf.accept_dad > 1) && idev 4055 net/ipv6/addrconf.c !idev->cnf.disable_ipv6 && idev 4062 net/ipv6/addrconf.c if (!ipv6_generate_eui64(addr.s6_addr + 8, idev->dev) && idev 4065 net/ipv6/addrconf.c idev->cnf.disable_ipv6 = 1; idev 4068 net/ipv6/addrconf.c ifp->idev->dev->name); idev 4082 net/ipv6/addrconf.c addrconf_ifdown(idev->dev, 0); idev 4089 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 4090 net/ipv6/addrconf.c if (idev->dead || !(idev->if_flags & IF_READY)) { idev 4091 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 4098 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 4115 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 4124 net/ipv6/addrconf.c NEIGH_VAR(ifp->idev->nd_parms, RETRANS_TIME)); idev 4126 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 4130 net/ipv6/addrconf.c ndisc_send_ns(ifp->idev->dev, &ifp->addr, &mcaddr, &in6addr_any, idev 4141 net/ipv6/addrconf.c struct inet6_dev *idev = ifp->idev; idev 4143 net/ipv6/addrconf.c list_for_each_entry_reverse(ifpiter, &idev->addr_list, if_list) { idev 4158 net/ipv6/addrconf.c struct net_device *dev = ifp->idev->dev; idev 4174 net/ipv6/addrconf.c read_lock_bh(&ifp->idev->lock); idev 4177 net/ipv6/addrconf.c ipv6_accept_ra(ifp->idev) && idev 4178 net/ipv6/addrconf.c ifp->idev->cnf.rtr_solicits != 0 && idev 4180 net/ipv6/addrconf.c read_unlock_bh(&ifp->idev->lock); idev 4186 net/ipv6/addrconf.c ipv6_mc_dad_complete(ifp->idev); idev 4190 net/ipv6/addrconf.c (ifp->idev->cnf.ndisc_notify || idev 4193 net/ipv6/addrconf.c /*router=*/ !!ifp->idev->cnf.forwarding, idev 4208 net/ipv6/addrconf.c write_lock_bh(&ifp->idev->lock); idev 4210 net/ipv6/addrconf.c ifp->idev->rs_interval = rfc3315_s14_backoff_init( idev 4211 net/ipv6/addrconf.c ifp->idev->cnf.rtr_solicit_interval); idev 4212 net/ipv6/addrconf.c ifp->idev->rs_probes = 1; idev 4213 net/ipv6/addrconf.c ifp->idev->if_flags |= IF_RS_SENT; idev 4214 net/ipv6/addrconf.c addrconf_mod_rs_timer(ifp->idev, ifp->idev->rs_interval); idev 4216 net/ipv6/addrconf.c write_unlock_bh(&ifp->idev->lock); idev 4229 net/ipv6/addrconf.c static void addrconf_dad_run(struct inet6_dev *idev, bool restart) idev 4233 net/ipv6/addrconf.c read_lock_bh(&idev->lock); idev 4234 net/ipv6/addrconf.c list_for_each_entry(ifp, &idev->addr_list, if_list) { idev 4244 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 4270 net/ipv6/addrconf.c if (!net_eq(dev_net(ifa->idev->dev), net)) idev 4294 net/ipv6/addrconf.c if (!net_eq(dev_net(ifa->idev->dev), net)) idev 4304 net/ipv6/addrconf.c if (!net_eq(dev_net(ifa->idev->dev), net)) idev 4340 net/ipv6/addrconf.c ifp->idev->dev->ifindex, idev 4344 net/ipv6/addrconf.c ifp->idev->dev->name); idev 4394 net/ipv6/addrconf.c if (!net_eq(dev_net(ifp->idev->dev), net)) idev 4475 net/ipv6/addrconf.c unsigned long regen_advance = ifp->idev->cnf.regen_max_retry * idev 4476 net/ipv6/addrconf.c ifp->idev->cnf.dad_transmits * idev 4477 net/ipv6/addrconf.c NEIGH_VAR(ifp->idev->nd_parms, RETRANS_TIME) / HZ; idev 4607 net/ipv6/addrconf.c ifp->idev->dev, 0, RTF_DEFAULT, true); idev 4614 net/ipv6/addrconf.c ip6_del_rt(dev_net(ifp->idev->dev), f6i); idev 4619 net/ipv6/addrconf.c ifp->rt_priority, ifp->idev->dev, idev 4710 net/ipv6/addrconf.c ifp->rt_priority, ifp->idev->dev, idev 4719 net/ipv6/addrconf.c ifp->rt_priority, ifp->idev->dev, idev 4726 net/ipv6/addrconf.c write_lock_bh(&ifp->idev->lock); idev 4728 net/ipv6/addrconf.c write_unlock_bh(&ifp->idev->lock); idev 4742 net/ipv6/addrconf.c manage_tempaddrs(ifp->idev, ifp, cfg->valid_lft, idev 4762 net/ipv6/addrconf.c struct inet6_dev *idev; idev 4808 net/ipv6/addrconf.c idev = ipv6_find_idev(dev); idev 4809 net/ipv6/addrconf.c if (IS_ERR(idev)) idev 4810 net/ipv6/addrconf.c return PTR_ERR(idev); idev 4812 net/ipv6/addrconf.c if (!ipv6_allow_optimistic_dad(net, idev)) idev 4917 net/ipv6/addrconf.c ifa->idev->dev->ifindex); idev 4976 net/ipv6/addrconf.c int ifindex = ifmca->idev->dev->ifindex; idev 5035 net/ipv6/addrconf.c static int in6_dump_addrs(struct inet6_dev *idev, struct sk_buff *skb, idev 5044 net/ipv6/addrconf.c read_lock_bh(&idev->lock); idev 5051 net/ipv6/addrconf.c list_for_each_entry(ifa, &idev->addr_list, if_list) { idev 5067 net/ipv6/addrconf.c for (ifmca = idev->mc_list; ifmca; idev 5079 net/ipv6/addrconf.c for (ifaca = idev->ac_list; ifaca; idev 5091 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 5168 net/ipv6/addrconf.c struct inet6_dev *idev; idev 5189 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 5190 net/ipv6/addrconf.c if (idev) { idev 5191 net/ipv6/addrconf.c err = in6_dump_addrs(idev, skb, cb, s_ip_idx, idev 5210 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 5211 net/ipv6/addrconf.c if (!idev) idev 5214 net/ipv6/addrconf.c if (in6_dump_addrs(idev, skb, cb, s_ip_idx, idev 5375 net/ipv6/addrconf.c struct net *net = dev_net(ifa->idev->dev); idev 5537 net/ipv6/addrconf.c static void snmp6_fill_stats(u64 *stats, struct inet6_dev *idev, int attrtype, idev 5542 net/ipv6/addrconf.c __snmp6_fill_stats64(stats, idev->stats.ipv6, bytes, idev 5546 net/ipv6/addrconf.c __snmp6_fill_statsdev(stats, idev->stats.icmpv6dev->mibs, bytes); idev 5551 net/ipv6/addrconf.c static int inet6_fill_ifla6_attrs(struct sk_buff *skb, struct inet6_dev *idev, idev 5557 net/ipv6/addrconf.c if (nla_put_u32(skb, IFLA_INET6_FLAGS, idev->if_flags)) idev 5560 net/ipv6/addrconf.c ci.tstamp = cstamp_delta(idev->tstamp); idev 5561 net/ipv6/addrconf.c ci.reachable_time = jiffies_to_msecs(idev->nd_parms->reachable_time); idev 5562 net/ipv6/addrconf.c ci.retrans_time = jiffies_to_msecs(NEIGH_VAR(idev->nd_parms, RETRANS_TIME)); idev 5568 net/ipv6/addrconf.c ipv6_store_devconf(&idev->cnf, nla_data(nla), nla_len(nla)); idev 5578 net/ipv6/addrconf.c snmp6_fill_stats(nla_data(nla), idev, IFLA_INET6_STATS, nla_len(nla)); idev 5583 net/ipv6/addrconf.c snmp6_fill_stats(nla_data(nla), idev, IFLA_INET6_ICMP6STATS, nla_len(nla)); idev 5589 net/ipv6/addrconf.c if (nla_put_u8(skb, IFLA_INET6_ADDR_GEN_MODE, idev->cnf.addr_gen_mode)) idev 5592 net/ipv6/addrconf.c read_lock_bh(&idev->lock); idev 5593 net/ipv6/addrconf.c memcpy(nla_data(nla), idev->token.s6_addr, nla_len(nla)); idev 5594 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 5614 net/ipv6/addrconf.c struct inet6_dev *idev = __in6_dev_get(dev); idev 5616 net/ipv6/addrconf.c if (!idev) idev 5619 net/ipv6/addrconf.c if (inet6_fill_ifla6_attrs(skb, idev, ext_filter_mask) < 0) idev 5625 net/ipv6/addrconf.c static int inet6_set_iftoken(struct inet6_dev *idev, struct in6_addr *token) idev 5628 net/ipv6/addrconf.c struct net_device *dev = idev->dev; idev 5638 net/ipv6/addrconf.c if (!ipv6_accept_ra(idev)) idev 5640 net/ipv6/addrconf.c if (idev->cnf.rtr_solicits == 0) idev 5643 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 5646 net/ipv6/addrconf.c memcpy(idev->token.s6_addr + 8, token->s6_addr + 8, 8); idev 5648 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 5654 net/ipv6/addrconf.c if (!idev->dead && (idev->if_flags & IF_READY) && idev 5665 net/ipv6/addrconf.c write_lock_bh(&idev->lock); idev 5668 net/ipv6/addrconf.c idev->if_flags |= IF_RS_SENT; idev 5669 net/ipv6/addrconf.c idev->rs_interval = rfc3315_s14_backoff_init( idev 5670 net/ipv6/addrconf.c idev->cnf.rtr_solicit_interval); idev 5671 net/ipv6/addrconf.c idev->rs_probes = 1; idev 5672 net/ipv6/addrconf.c addrconf_mod_rs_timer(idev, idev->rs_interval); idev 5676 net/ipv6/addrconf.c list_for_each_entry(ifp, &idev->addr_list, if_list) { idev 5685 net/ipv6/addrconf.c write_unlock_bh(&idev->lock); idev 5686 net/ipv6/addrconf.c inet6_ifinfo_notify(RTM_NEWLINK, idev); idev 5706 net/ipv6/addrconf.c static int check_stable_privacy(struct inet6_dev *idev, struct net *net, idev 5710 net/ipv6/addrconf.c !idev->cnf.stable_secret.initialized && idev 5720 net/ipv6/addrconf.c struct inet6_dev *idev = NULL; idev 5724 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 5725 net/ipv6/addrconf.c if (!idev) idev 5742 net/ipv6/addrconf.c if (dev && check_stable_privacy(idev, dev_net(dev), mode) < 0) idev 5751 net/ipv6/addrconf.c struct inet6_dev *idev = __in6_dev_get(dev); idev 5755 net/ipv6/addrconf.c if (!idev) idev 5762 net/ipv6/addrconf.c err = inet6_set_iftoken(idev, nla_data(tb[IFLA_INET6_TOKEN])); idev 5770 net/ipv6/addrconf.c idev->cnf.addr_gen_mode = mode; idev 5776 net/ipv6/addrconf.c static int inet6_fill_ifinfo(struct sk_buff *skb, struct inet6_dev *idev, idev 5779 net/ipv6/addrconf.c struct net_device *dev = idev->dev; idev 5809 net/ipv6/addrconf.c if (inet6_fill_ifla6_attrs(skb, idev, 0) < 0) idev 5852 net/ipv6/addrconf.c struct inet6_dev *idev; idev 5875 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 5876 net/ipv6/addrconf.c if (!idev) idev 5878 net/ipv6/addrconf.c if (inet6_fill_ifinfo(skb, idev, idev 5895 net/ipv6/addrconf.c void inet6_ifinfo_notify(int event, struct inet6_dev *idev) idev 5898 net/ipv6/addrconf.c struct net *net = dev_net(idev->dev); idev 5905 net/ipv6/addrconf.c err = inet6_fill_ifinfo(skb, idev, 0, 0, event, 0); idev 5926 net/ipv6/addrconf.c static int inet6_fill_prefix(struct sk_buff *skb, struct inet6_dev *idev, idev 5942 net/ipv6/addrconf.c pmsg->prefix_ifindex = idev->dev->ifindex; idev 5966 net/ipv6/addrconf.c static void inet6_prefix_notify(int event, struct inet6_dev *idev, idev 5970 net/ipv6/addrconf.c struct net *net = dev_net(idev->dev); idev 5977 net/ipv6/addrconf.c err = inet6_fill_prefix(skb, idev, pinfo, 0, 0, event, 0); idev 5993 net/ipv6/addrconf.c struct net *net = dev_net(ifp->idev->dev); idev 6012 net/ipv6/addrconf.c } else if (!ifp->rt && (ifp->idev->dev->flags & IFF_UP)) { idev 6014 net/ipv6/addrconf.c &ifp->addr, ifp->idev->dev->name); idev 6017 net/ipv6/addrconf.c if (ifp->idev->cnf.forwarding) idev 6021 net/ipv6/addrconf.c ifp->rt_priority, ifp->idev->dev, idev 6025 net/ipv6/addrconf.c if (ifp->idev->cnf.forwarding) idev 6027 net/ipv6/addrconf.c addrconf_leave_solict(ifp->idev, &ifp->addr); idev 6032 net/ipv6/addrconf.c ifp->idev->dev, 0, 0, idev 6050 net/ipv6/addrconf.c if (likely(ifp->idev->dead == 0)) idev 6087 net/ipv6/addrconf.c struct inet6_dev *idev = ctl->extra1; idev 6093 net/ipv6/addrconf.c lctl.extra2 = idev ? &idev->dev->mtu : NULL; idev 6098 net/ipv6/addrconf.c static void dev_disable_change(struct inet6_dev *idev) idev 6102 net/ipv6/addrconf.c if (!idev || !idev->dev) idev 6105 net/ipv6/addrconf.c netdev_notifier_info_init(&info, idev->dev); idev 6106 net/ipv6/addrconf.c if (idev->cnf.disable_ipv6) idev 6115 net/ipv6/addrconf.c struct inet6_dev *idev; idev 6118 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 6119 net/ipv6/addrconf.c if (idev) { idev 6120 net/ipv6/addrconf.c int changed = (!idev->cnf.disable_ipv6) ^ (!newf); idev 6121 net/ipv6/addrconf.c idev->cnf.disable_ipv6 = newf; idev 6123 net/ipv6/addrconf.c dev_disable_change(idev); idev 6210 net/ipv6/addrconf.c struct inet6_dev *idev = ctl->extra1; idev 6214 net/ipv6/addrconf.c idev->dev->ifindex, idev 6215 net/ipv6/addrconf.c &idev->cnf); idev 6229 net/ipv6/addrconf.c struct inet6_dev *idev = (struct inet6_dev *)ctl->extra1; idev 6252 net/ipv6/addrconf.c if (idev) { idev 6253 net/ipv6/addrconf.c if (check_stable_privacy(idev, net, new_val) < 0) { idev 6258 net/ipv6/addrconf.c if (idev->cnf.addr_gen_mode != new_val) { idev 6259 net/ipv6/addrconf.c idev->cnf.addr_gen_mode = new_val; idev 6260 net/ipv6/addrconf.c addrconf_dev_config(idev->dev); idev 6267 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 6268 net/ipv6/addrconf.c if (idev && idev 6269 net/ipv6/addrconf.c idev->cnf.addr_gen_mode != new_val) { idev 6270 net/ipv6/addrconf.c idev->cnf.addr_gen_mode = new_val; idev 6271 net/ipv6/addrconf.c addrconf_dev_config(idev->dev); idev 6332 net/ipv6/addrconf.c struct inet6_dev *idev = __in6_dev_get(dev); idev 6334 net/ipv6/addrconf.c if (idev) { idev 6335 net/ipv6/addrconf.c idev->cnf.addr_gen_mode = idev 6340 net/ipv6/addrconf.c struct inet6_dev *idev = ctl->extra1; idev 6342 net/ipv6/addrconf.c idev->cnf.addr_gen_mode = IN6_ADDR_GEN_MODE_STABLE_PRIVACY; idev 6391 net/ipv6/addrconf.c void addrconf_disable_policy_idev(struct inet6_dev *idev, int val) idev 6395 net/ipv6/addrconf.c read_lock_bh(&idev->lock); idev 6396 net/ipv6/addrconf.c list_for_each_entry(ifa, &idev->addr_list, if_list) { idev 6417 net/ipv6/addrconf.c read_unlock_bh(&idev->lock); idev 6423 net/ipv6/addrconf.c struct inet6_dev *idev; idev 6441 net/ipv6/addrconf.c idev = __in6_dev_get(dev); idev 6442 net/ipv6/addrconf.c if (idev) idev 6443 net/ipv6/addrconf.c addrconf_disable_policy_idev(idev, val); idev 6446 net/ipv6/addrconf.c idev = (struct inet6_dev *)ctl->extra1; idev 6447 net/ipv6/addrconf.c addrconf_disable_policy_idev(idev, val); idev 6863 net/ipv6/addrconf.c struct inet6_dev *idev, struct ipv6_devconf *p) idev 6880 net/ipv6/addrconf.c table[i].extra1 = idev; /* embedded; no ref */ idev 6896 net/ipv6/addrconf.c ifindex = idev->dev->ifindex; idev 6923 net/ipv6/addrconf.c static int addrconf_sysctl_register(struct inet6_dev *idev) idev 6927 net/ipv6/addrconf.c if (!sysctl_dev_name_is_allowed(idev->dev->name)) idev 6930 net/ipv6/addrconf.c err = neigh_sysctl_register(idev->dev, idev->nd_parms, idev 6934 net/ipv6/addrconf.c err = __addrconf_sysctl_register(dev_net(idev->dev), idev->dev->name, idev 6935 net/ipv6/addrconf.c idev, &idev->cnf); idev 6937 net/ipv6/addrconf.c neigh_sysctl_unregister(idev->nd_parms); idev 6942 net/ipv6/addrconf.c static void addrconf_sysctl_unregister(struct inet6_dev *idev) idev 6944 net/ipv6/addrconf.c __addrconf_sysctl_unregister(dev_net(idev->dev), &idev->cnf, idev 6945 net/ipv6/addrconf.c idev->dev->ifindex); idev 6946 net/ipv6/addrconf.c neigh_sysctl_unregister(idev->nd_parms); idev 7035 net/ipv6/addrconf.c struct inet6_dev *idev; idev 7074 net/ipv6/addrconf.c idev = ipv6_add_dev(init_net.loopback_dev); idev 7076 net/ipv6/addrconf.c if (IS_ERR(idev)) { idev 7077 net/ipv6/addrconf.c err = PTR_ERR(idev); idev 222 net/ipv6/addrconf_core.c static void snmp6_free_dev(struct inet6_dev *idev) idev 224 net/ipv6/addrconf_core.c kfree(idev->stats.icmpv6msgdev); idev 225 net/ipv6/addrconf_core.c kfree(idev->stats.icmpv6dev); idev 226 net/ipv6/addrconf_core.c free_percpu(idev->stats.ipv6); idev 231 net/ipv6/addrconf_core.c struct inet6_dev *idev = container_of(head, struct inet6_dev, rcu); idev 233 net/ipv6/addrconf_core.c snmp6_free_dev(idev); idev 234 net/ipv6/addrconf_core.c kfree(idev); idev 239 net/ipv6/addrconf_core.c void in6_dev_finish_destroy(struct inet6_dev *idev) idev 241 net/ipv6/addrconf_core.c struct net_device *dev = idev->dev; idev 243 net/ipv6/addrconf_core.c WARN_ON(!list_empty(&idev->addr_list)); idev 244 net/ipv6/addrconf_core.c WARN_ON(idev->mc_list); idev 245 net/ipv6/addrconf_core.c WARN_ON(timer_pending(&idev->rs_timer)); idev 251 net/ipv6/addrconf_core.c if (!idev->dead) { idev 252 net/ipv6/addrconf_core.c pr_warn("Freeing alive inet6 device %p\n", idev); idev 255 net/ipv6/addrconf_core.c call_rcu(&idev->rcu, in6_dev_finish_destroy_rcu); idev 67 net/ipv6/anycast.c struct inet6_dev *idev; idev 114 net/ipv6/anycast.c idev = __in6_dev_get(dev); idev 115 net/ipv6/anycast.c if (!idev) { idev 123 net/ipv6/anycast.c ishost = !idev->cnf.forwarding; idev 139 net/ipv6/anycast.c err = __ipv6_dev_ac_inc(idev, addr); idev 277 net/ipv6/anycast.c int __ipv6_dev_ac_inc(struct inet6_dev *idev, const struct in6_addr *addr) idev 286 net/ipv6/anycast.c write_lock_bh(&idev->lock); idev 287 net/ipv6/anycast.c if (idev->dead) { idev 292 net/ipv6/anycast.c for (aca = idev->ac_list; aca; aca = aca->aca_next) { idev 300 net/ipv6/anycast.c net = dev_net(idev->dev); idev 301 net/ipv6/anycast.c f6i = addrconf_f6i_alloc(net, idev, addr, true, GFP_ATOMIC); idev 313 net/ipv6/anycast.c aca->aca_next = idev->ac_list; idev 314 net/ipv6/anycast.c idev->ac_list = aca; idev 320 net/ipv6/anycast.c write_unlock_bh(&idev->lock); idev 326 net/ipv6/anycast.c addrconf_join_solict(idev->dev, &aca->aca_addr); idev 331 net/ipv6/anycast.c write_unlock_bh(&idev->lock); idev 338 net/ipv6/anycast.c int __ipv6_dev_ac_dec(struct inet6_dev *idev, const struct in6_addr *addr) idev 344 net/ipv6/anycast.c write_lock_bh(&idev->lock); idev 346 net/ipv6/anycast.c for (aca = idev->ac_list; aca; aca = aca->aca_next) { idev 352 net/ipv6/anycast.c write_unlock_bh(&idev->lock); idev 356 net/ipv6/anycast.c write_unlock_bh(&idev->lock); idev 362 net/ipv6/anycast.c idev->ac_list = aca->aca_next; idev 363 net/ipv6/anycast.c write_unlock_bh(&idev->lock); idev 365 net/ipv6/anycast.c addrconf_leave_solict(idev, &aca->aca_addr); idev 367 net/ipv6/anycast.c ip6_del_rt(dev_net(idev->dev), aca->aca_rt); idev 376 net/ipv6/anycast.c struct inet6_dev *idev = __in6_dev_get(dev); idev 378 net/ipv6/anycast.c if (!idev) idev 380 net/ipv6/anycast.c return __ipv6_dev_ac_dec(idev, addr); idev 383 net/ipv6/anycast.c void ipv6_ac_destroy_dev(struct inet6_dev *idev) idev 387 net/ipv6/anycast.c write_lock_bh(&idev->lock); idev 388 net/ipv6/anycast.c while ((aca = idev->ac_list) != NULL) { idev 389 net/ipv6/anycast.c idev->ac_list = aca->aca_next; idev 390 net/ipv6/anycast.c write_unlock_bh(&idev->lock); idev 394 net/ipv6/anycast.c addrconf_leave_solict(idev, &aca->aca_addr); idev 396 net/ipv6/anycast.c ip6_del_rt(dev_net(idev->dev), aca->aca_rt); idev 400 net/ipv6/anycast.c write_lock_bh(&idev->lock); idev 402 net/ipv6/anycast.c write_unlock_bh(&idev->lock); idev 411 net/ipv6/anycast.c struct inet6_dev *idev; idev 414 net/ipv6/anycast.c idev = __in6_dev_get(dev); idev 415 net/ipv6/anycast.c if (idev) { idev 416 net/ipv6/anycast.c read_lock_bh(&idev->lock); idev 417 net/ipv6/anycast.c for (aca = idev->ac_list; aca; aca = aca->aca_next) idev 420 net/ipv6/anycast.c read_unlock_bh(&idev->lock); idev 473 net/ipv6/anycast.c struct inet6_dev *idev; idev 484 net/ipv6/anycast.c state->idev = NULL; idev 486 net/ipv6/anycast.c struct inet6_dev *idev; idev 487 net/ipv6/anycast.c idev = __in6_dev_get(state->dev); idev 488 net/ipv6/anycast.c if (!idev) idev 490 net/ipv6/anycast.c read_lock_bh(&idev->lock); idev 491 net/ipv6/anycast.c im = idev->ac_list; idev 493 net/ipv6/anycast.c state->idev = idev; idev 496 net/ipv6/anycast.c read_unlock_bh(&idev->lock); idev 507 net/ipv6/anycast.c if (likely(state->idev != NULL)) idev 508 net/ipv6/anycast.c read_unlock_bh(&state->idev->lock); idev 512 net/ipv6/anycast.c state->idev = NULL; idev 515 net/ipv6/anycast.c state->idev = __in6_dev_get(state->dev); idev 516 net/ipv6/anycast.c if (!state->idev) idev 518 net/ipv6/anycast.c read_lock_bh(&state->idev->lock); idev 519 net/ipv6/anycast.c im = state->idev->ac_list; idev 553 net/ipv6/anycast.c if (likely(state->idev != NULL)) { idev 554 net/ipv6/anycast.c read_unlock_bh(&state->idev->lock); idev 555 net/ipv6/anycast.c state->idev = NULL; idev 279 net/ipv6/exthdrs.c struct inet6_dev *idev = __in6_dev_get(skb->dev); idev 291 net/ipv6/exthdrs.c __IP6_INC_STATS(dev_net(dst->dev), idev, idev 319 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 357 net/ipv6/exthdrs.c struct inet6_dev *idev; idev 363 net/ipv6/exthdrs.c idev = __in6_dev_get(skb->dev); idev 366 net/ipv6/exthdrs.c if (accept_seg6 > idev->cnf.seg6_enabled) idev 367 net/ipv6/exthdrs.c accept_seg6 = idev->cnf.seg6_enabled; idev 415 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 454 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 478 net/ipv6/exthdrs.c struct inet6_dev *idev = __in6_dev_get(skb->dev); idev 488 net/ipv6/exthdrs.c idev = __in6_dev_get(skb->dev); idev 489 net/ipv6/exthdrs.c if (idev && accept_source_route > idev->cnf.accept_source_route) idev 490 net/ipv6/exthdrs.c accept_source_route = idev->cnf.accept_source_route; idev 495 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 504 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INADDRERRORS); idev 522 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, idev 548 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 566 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 602 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INADDRERRORS); idev 607 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INADDRERRORS); idev 618 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INADDRERRORS); idev 637 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 652 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 744 net/ipv6/exthdrs.c struct inet6_dev *idev = __in6_dev_get_safely(skb->dev); idev 751 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 757 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 762 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 768 net/ipv6/exthdrs.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INTRUNCATEDPKTS); idev 426 net/ipv6/icmp.c struct inet6_dev *idev = NULL; idev 576 net/ipv6/icmp.c idev = __in6_dev_get(skb->dev); idev 583 net/ipv6/icmp.c ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTERRORS); idev 676 net/ipv6/icmp.c struct inet6_dev *idev; idev 742 net/ipv6/icmp.c idev = __in6_dev_get(skb->dev); idev 756 net/ipv6/icmp.c __ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTERRORS); idev 822 net/ipv6/icmp.c struct inet6_dev *idev = __in6_dev_get(dev); idev 848 net/ipv6/icmp.c __ICMP6_INC_STATS(dev_net(dev), idev, ICMP6_MIB_INMSGS); idev 866 net/ipv6/icmp.c ICMP6MSGIN_INC_STATS(dev_net(dev), idev, type); idev 949 net/ipv6/icmp.c __ICMP6_INC_STATS(dev_net(dev), idev, ICMP6_MIB_CSUMERRORS); idev 951 net/ipv6/icmp.c __ICMP6_INC_STATS(dev_net(dev), idev, ICMP6_MIB_INERRORS); idev 128 net/ipv6/ip6_input.c struct inet6_dev *idev; idev 137 net/ipv6/ip6_input.c idev = __in6_dev_get(skb->dev); idev 139 net/ipv6/ip6_input.c __IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_IN, skb->len); idev 142 net/ipv6/ip6_input.c !idev || unlikely(idev->cnf.disable_ipv6)) { idev 143 net/ipv6/ip6_input.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INDISCARDS); idev 170 net/ipv6/ip6_input.c __IP6_ADD_STATS(net, idev, idev 206 net/ipv6/ip6_input.c idev->cnf.drop_unicast_in_l2_multicast) idev 245 net/ipv6/ip6_input.c idev, IPSTATS_MIB_INTRUNCATEDPKTS); idev 249 net/ipv6/ip6_input.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 257 net/ipv6/ip6_input.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 270 net/ipv6/ip6_input.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 341 net/ipv6/ip6_input.c struct inet6_dev *idev; idev 350 net/ipv6/ip6_input.c idev = ip6_dst_idev(skb_dst(skb)); idev 424 net/ipv6/ip6_input.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INDELIVERS); idev 429 net/ipv6/ip6_input.c __IP6_INC_STATS(net, idev, idev 436 net/ipv6/ip6_input.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INDELIVERS); idev 443 net/ipv6/ip6_input.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INDISCARDS); idev 67 net/ipv6/ip6_output.c struct inet6_dev *idev = ip6_dst_idev(skb_dst(skb)); idev 85 net/ipv6/ip6_output.c IP6_INC_STATS(net, idev, idev 92 net/ipv6/ip6_output.c IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUTMCAST, skb->len); idev 164 net/ipv6/ip6_output.c struct inet6_dev *idev = ip6_dst_idev(skb_dst(skb)); idev 169 net/ipv6/ip6_output.c if (unlikely(idev->cnf.disable_ipv6)) { idev 170 net/ipv6/ip6_output.c IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS); idev 422 net/ipv6/ip6_output.c struct inet6_dev *idev = __in6_dev_get_safely(skb->dev); idev 442 net/ipv6/ip6_output.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INDISCARDS); idev 473 net/ipv6/ip6_output.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 486 net/ipv6/ip6_output.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INDISCARDS); idev 492 net/ipv6/ip6_output.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INDISCARDS); idev 549 net/ipv6/ip6_output.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INTOOBIGERRORS); idev 573 net/ipv6/ip6_output.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INADDRERRORS); idev 1778 net/ipv6/ip6_output.c struct inet6_dev *idev = ip6_dst_idev(skb_dst(skb)); idev 1780 net/ipv6/ip6_output.c ICMP6MSGOUT_INC_STATS(net, idev, icmp6_hdr(skb)->icmp6_type); idev 1781 net/ipv6/ip6_output.c ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS); idev 78 net/ipv6/mcast.c static void mld_ifc_event(struct inet6_dev *idev); idev 79 net/ipv6/mcast.c static void mld_add_delrec(struct inet6_dev *idev, struct ifmcaddr6 *pmc); idev 80 net/ipv6/mcast.c static void mld_del_delrec(struct inet6_dev *idev, struct ifmcaddr6 *pmc); idev 81 net/ipv6/mcast.c static void mld_clear_delrec(struct inet6_dev *idev); idev 82 net/ipv6/mcast.c static bool mld_in_v1_mode(const struct inet6_dev *idev); idev 86 net/ipv6/mcast.c static int ip6_mc_del_src(struct inet6_dev *idev, const struct in6_addr *pmca, idev 89 net/ipv6/mcast.c static int ip6_mc_add_src(struct inet6_dev *idev, const struct in6_addr *pmca, idev 93 net/ipv6/mcast.c struct inet6_dev *idev); idev 121 net/ipv6/mcast.c static int unsolicited_report_interval(struct inet6_dev *idev) idev 125 net/ipv6/mcast.c if (mld_in_v1_mode(idev)) idev 126 net/ipv6/mcast.c iv = idev->cnf.mldv1_unsolicited_report_interval; idev 128 net/ipv6/mcast.c iv = idev->cnf.mldv2_unsolicited_report_interval; idev 240 net/ipv6/mcast.c struct inet6_dev *idev = __in6_dev_get(dev); idev 242 net/ipv6/mcast.c (void) ip6_mc_leave_src(sk, mc_lst, idev); idev 243 net/ipv6/mcast.c if (idev) idev 244 net/ipv6/mcast.c __ipv6_dev_mc_dec(idev, &mc_lst->addr); idev 264 net/ipv6/mcast.c struct inet6_dev *idev = NULL; idev 278 net/ipv6/mcast.c idev = __in6_dev_get(dev); idev 279 net/ipv6/mcast.c if (!idev) idev 281 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 282 net/ipv6/mcast.c if (idev->dead) { idev 283 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 286 net/ipv6/mcast.c return idev; idev 304 net/ipv6/mcast.c struct inet6_dev *idev = __in6_dev_get(dev); idev 306 net/ipv6/mcast.c (void) ip6_mc_leave_src(sk, mc_lst, idev); idev 307 net/ipv6/mcast.c if (idev) idev 308 net/ipv6/mcast.c __ipv6_dev_mc_dec(idev, &mc_lst->addr); idev 333 net/ipv6/mcast.c struct inet6_dev *idev; idev 349 net/ipv6/mcast.c idev = ip6_mc_find_dev_rcu(net, group, pgsr->gsr_interface); idev 350 net/ipv6/mcast.c if (!idev) { idev 375 net/ipv6/mcast.c ip6_mc_add_src(idev, group, omode, 0, NULL, 0); idev 376 net/ipv6/mcast.c ip6_mc_del_src(idev, group, pmc->sfmode, 0, NULL, 0); idev 403 net/ipv6/mcast.c ip6_mc_del_src(idev, group, omode, 1, source, 1); idev 449 net/ipv6/mcast.c ip6_mc_add_src(idev, group, omode, 1, source, 1); idev 453 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 464 net/ipv6/mcast.c struct inet6_dev *idev; idev 480 net/ipv6/mcast.c idev = ip6_mc_find_dev_rcu(net, group, gsf->gf_interface); idev 482 net/ipv6/mcast.c if (!idev) { idev 518 net/ipv6/mcast.c err = ip6_mc_add_src(idev, group, gsf->gf_fmode, idev 526 net/ipv6/mcast.c (void) ip6_mc_add_src(idev, group, gsf->gf_fmode, 0, NULL, 0); idev 532 net/ipv6/mcast.c (void) ip6_mc_del_src(idev, group, pmc->sfmode, idev 536 net/ipv6/mcast.c (void) ip6_mc_del_src(idev, group, pmc->sfmode, 0, NULL, 0); idev 542 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 555 net/ipv6/mcast.c struct inet6_dev *idev; idev 566 net/ipv6/mcast.c idev = ip6_mc_find_dev_rcu(net, group, gsf->gf_interface); idev 568 net/ipv6/mcast.c if (!idev) { idev 590 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 615 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 661 net/ipv6/mcast.c struct net_device *dev = mc->idev->dev; idev 679 net/ipv6/mcast.c if (mld_in_v1_mode(mc->idev)) { idev 690 net/ipv6/mcast.c mc->mca_crcount = mc->idev->mc_qrv; idev 692 net/ipv6/mcast.c mld_ifc_event(mc->idev); idev 697 net/ipv6/mcast.c struct net_device *dev = mc->idev->dev; idev 715 net/ipv6/mcast.c if (!mc->idev->dead) idev 727 net/ipv6/mcast.c static void mld_add_delrec(struct inet6_dev *idev, struct ifmcaddr6 *im) idev 743 net/ipv6/mcast.c pmc->idev = im->idev; idev 744 net/ipv6/mcast.c in6_dev_hold(idev); idev 746 net/ipv6/mcast.c pmc->mca_crcount = idev->mc_qrv; idev 759 net/ipv6/mcast.c spin_lock_bh(&idev->mc_lock); idev 760 net/ipv6/mcast.c pmc->next = idev->mc_tomb; idev 761 net/ipv6/mcast.c idev->mc_tomb = pmc; idev 762 net/ipv6/mcast.c spin_unlock_bh(&idev->mc_lock); idev 765 net/ipv6/mcast.c static void mld_del_delrec(struct inet6_dev *idev, struct ifmcaddr6 *im) idev 771 net/ipv6/mcast.c spin_lock_bh(&idev->mc_lock); idev 773 net/ipv6/mcast.c for (pmc = idev->mc_tomb; pmc; pmc = pmc->next) { idev 782 net/ipv6/mcast.c idev->mc_tomb = pmc->next; idev 784 net/ipv6/mcast.c spin_unlock_bh(&idev->mc_lock); idev 788 net/ipv6/mcast.c im->idev = pmc->idev; idev 793 net/ipv6/mcast.c psf->sf_crcount = idev->mc_qrv; idev 795 net/ipv6/mcast.c im->mca_crcount = idev->mc_qrv; idev 797 net/ipv6/mcast.c in6_dev_put(pmc->idev); idev 804 net/ipv6/mcast.c static void mld_clear_delrec(struct inet6_dev *idev) idev 808 net/ipv6/mcast.c spin_lock_bh(&idev->mc_lock); idev 809 net/ipv6/mcast.c pmc = idev->mc_tomb; idev 810 net/ipv6/mcast.c idev->mc_tomb = NULL; idev 811 net/ipv6/mcast.c spin_unlock_bh(&idev->mc_lock); idev 816 net/ipv6/mcast.c in6_dev_put(pmc->idev); idev 821 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 822 net/ipv6/mcast.c for (pmc = idev->mc_list; pmc; pmc = pmc->next) { idev 834 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 845 net/ipv6/mcast.c in6_dev_put(mc->idev); idev 850 net/ipv6/mcast.c static struct ifmcaddr6 *mca_alloc(struct inet6_dev *idev, idev 863 net/ipv6/mcast.c mc->idev = idev; /* reference taken by caller */ idev 887 net/ipv6/mcast.c struct inet6_dev *idev; idev 892 net/ipv6/mcast.c idev = in6_dev_get(dev); idev 894 net/ipv6/mcast.c if (!idev) idev 897 net/ipv6/mcast.c write_lock_bh(&idev->lock); idev 898 net/ipv6/mcast.c if (idev->dead) { idev 899 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 900 net/ipv6/mcast.c in6_dev_put(idev); idev 904 net/ipv6/mcast.c for (mc = idev->mc_list; mc; mc = mc->next) { idev 907 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 908 net/ipv6/mcast.c ip6_mc_add_src(idev, &mc->mca_addr, mode, 0, NULL, 0); idev 909 net/ipv6/mcast.c in6_dev_put(idev); idev 914 net/ipv6/mcast.c mc = mca_alloc(idev, addr, mode); idev 916 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 917 net/ipv6/mcast.c in6_dev_put(idev); idev 921 net/ipv6/mcast.c mc->next = idev->mc_list; idev 922 net/ipv6/mcast.c idev->mc_list = mc; idev 928 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 930 net/ipv6/mcast.c mld_del_delrec(idev, mc); idev 945 net/ipv6/mcast.c int __ipv6_dev_mc_dec(struct inet6_dev *idev, const struct in6_addr *addr) idev 951 net/ipv6/mcast.c write_lock_bh(&idev->lock); idev 952 net/ipv6/mcast.c for (map = &idev->mc_list; (ma = *map) != NULL; map = &ma->next) { idev 956 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 964 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 968 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 975 net/ipv6/mcast.c struct inet6_dev *idev; idev 980 net/ipv6/mcast.c idev = __in6_dev_get(dev); idev 981 net/ipv6/mcast.c if (!idev) idev 984 net/ipv6/mcast.c err = __ipv6_dev_mc_dec(idev, addr); idev 996 net/ipv6/mcast.c struct inet6_dev *idev; idev 1001 net/ipv6/mcast.c idev = __in6_dev_get(dev); idev 1002 net/ipv6/mcast.c if (idev) { idev 1003 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 1004 net/ipv6/mcast.c for (mc = idev->mc_list; mc; mc = mc->next) { idev 1027 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 1033 net/ipv6/mcast.c static void mld_gq_start_timer(struct inet6_dev *idev) idev 1035 net/ipv6/mcast.c unsigned long tv = prandom_u32() % idev->mc_maxdelay; idev 1037 net/ipv6/mcast.c idev->mc_gq_running = 1; idev 1038 net/ipv6/mcast.c if (!mod_timer(&idev->mc_gq_timer, jiffies+tv+2)) idev 1039 net/ipv6/mcast.c in6_dev_hold(idev); idev 1042 net/ipv6/mcast.c static void mld_gq_stop_timer(struct inet6_dev *idev) idev 1044 net/ipv6/mcast.c idev->mc_gq_running = 0; idev 1045 net/ipv6/mcast.c if (del_timer(&idev->mc_gq_timer)) idev 1046 net/ipv6/mcast.c __in6_dev_put(idev); idev 1049 net/ipv6/mcast.c static void mld_ifc_start_timer(struct inet6_dev *idev, unsigned long delay) idev 1053 net/ipv6/mcast.c if (!mod_timer(&idev->mc_ifc_timer, jiffies+tv+2)) idev 1054 net/ipv6/mcast.c in6_dev_hold(idev); idev 1057 net/ipv6/mcast.c static void mld_ifc_stop_timer(struct inet6_dev *idev) idev 1059 net/ipv6/mcast.c idev->mc_ifc_count = 0; idev 1060 net/ipv6/mcast.c if (del_timer(&idev->mc_ifc_timer)) idev 1061 net/ipv6/mcast.c __in6_dev_put(idev); idev 1064 net/ipv6/mcast.c static void mld_dad_start_timer(struct inet6_dev *idev, unsigned long delay) idev 1068 net/ipv6/mcast.c if (!mod_timer(&idev->mc_dad_timer, jiffies+tv+2)) idev 1069 net/ipv6/mcast.c in6_dev_hold(idev); idev 1072 net/ipv6/mcast.c static void mld_dad_stop_timer(struct inet6_dev *idev) idev 1074 net/ipv6/mcast.c if (del_timer(&idev->mc_dad_timer)) idev 1075 net/ipv6/mcast.c __in6_dev_put(idev); idev 1165 net/ipv6/mcast.c static int mld_force_mld_version(const struct inet6_dev *idev) idev 1172 net/ipv6/mcast.c if (dev_net(idev->dev)->ipv6.devconf_all->force_mld_version != 0) idev 1173 net/ipv6/mcast.c return dev_net(idev->dev)->ipv6.devconf_all->force_mld_version; idev 1175 net/ipv6/mcast.c return idev->cnf.force_mld_version; idev 1178 net/ipv6/mcast.c static bool mld_in_v2_mode_only(const struct inet6_dev *idev) idev 1180 net/ipv6/mcast.c return mld_force_mld_version(idev) == 2; idev 1183 net/ipv6/mcast.c static bool mld_in_v1_mode_only(const struct inet6_dev *idev) idev 1185 net/ipv6/mcast.c return mld_force_mld_version(idev) == 1; idev 1188 net/ipv6/mcast.c static bool mld_in_v1_mode(const struct inet6_dev *idev) idev 1190 net/ipv6/mcast.c if (mld_in_v2_mode_only(idev)) idev 1192 net/ipv6/mcast.c if (mld_in_v1_mode_only(idev)) idev 1194 net/ipv6/mcast.c if (idev->mc_v1_seen && time_before(jiffies, idev->mc_v1_seen)) idev 1200 net/ipv6/mcast.c static void mld_set_v1_mode(struct inet6_dev *idev) idev 1210 net/ipv6/mcast.c switchback = (idev->mc_qrv * idev->mc_qi) + idev->mc_qri; idev 1212 net/ipv6/mcast.c idev->mc_v1_seen = jiffies + switchback; idev 1215 net/ipv6/mcast.c static void mld_update_qrv(struct inet6_dev *idev, idev 1228 net/ipv6/mcast.c WARN_ON(idev->mc_qrv == 0); idev 1231 net/ipv6/mcast.c idev->mc_qrv = mlh2->mld2q_qrv; idev 1233 net/ipv6/mcast.c if (unlikely(idev->mc_qrv < min_qrv)) { idev 1235 net/ipv6/mcast.c idev->mc_qrv, min_qrv); idev 1236 net/ipv6/mcast.c idev->mc_qrv = min_qrv; idev 1240 net/ipv6/mcast.c static void mld_update_qi(struct inet6_dev *idev, idev 1262 net/ipv6/mcast.c idev->mc_qi = mc_qqi * HZ; idev 1265 net/ipv6/mcast.c static void mld_update_qri(struct inet6_dev *idev, idev 1272 net/ipv6/mcast.c idev->mc_qri = msecs_to_jiffies(mldv2_mrc(mlh2)); idev 1275 net/ipv6/mcast.c static int mld_process_v1(struct inet6_dev *idev, struct mld_msg *mld, idev 1281 net/ipv6/mcast.c if (mld_in_v2_mode_only(idev)) idev 1309 net/ipv6/mcast.c mld_set_v1_mode(idev); idev 1312 net/ipv6/mcast.c mld_gq_stop_timer(idev); idev 1314 net/ipv6/mcast.c mld_ifc_stop_timer(idev); idev 1316 net/ipv6/mcast.c mld_clear_delrec(idev); idev 1321 net/ipv6/mcast.c static int mld_process_v2(struct inet6_dev *idev, struct mld2_query *mld, idev 1326 net/ipv6/mcast.c mld_update_qrv(idev, mld); idev 1327 net/ipv6/mcast.c mld_update_qi(idev, mld); idev 1328 net/ipv6/mcast.c mld_update_qri(idev, mld); idev 1330 net/ipv6/mcast.c idev->mc_maxdelay = *max_delay; idev 1342 net/ipv6/mcast.c struct inet6_dev *idev; idev 1368 net/ipv6/mcast.c idev = __in6_dev_get(skb->dev); idev 1369 net/ipv6/mcast.c if (!idev) idev 1382 net/ipv6/mcast.c } else if (len == MLD_V1_QUERY_LEN || mld_in_v1_mode(idev)) { idev 1383 net/ipv6/mcast.c err = mld_process_v1(idev, mld, &max_delay, idev 1396 net/ipv6/mcast.c err = mld_process_v2(idev, mlh2, &max_delay); idev 1404 net/ipv6/mcast.c mld_gq_start_timer(idev); idev 1420 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 1422 net/ipv6/mcast.c for (ma = idev->mc_list; ma; ma = ma->next) { idev 1428 net/ipv6/mcast.c for (ma = idev->mc_list; ma; ma = ma->next) { idev 1450 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 1459 net/ipv6/mcast.c struct inet6_dev *idev; idev 1483 net/ipv6/mcast.c idev = __in6_dev_get(skb->dev); idev 1484 net/ipv6/mcast.c if (!idev) idev 1491 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 1492 net/ipv6/mcast.c for (ma = idev->mc_list; ma; ma = ma->next) { idev 1502 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 1589 net/ipv6/mcast.c static struct sk_buff *mld_newpack(struct inet6_dev *idev, unsigned int mtu) idev 1591 net/ipv6/mcast.c struct net_device *dev = idev->dev; idev 1618 net/ipv6/mcast.c if (__ipv6_get_lladdr(idev, &addr_buf, IFA_F_TENTATIVE)) { idev 1648 net/ipv6/mcast.c struct inet6_dev *idev; idev 1655 net/ipv6/mcast.c idev = __in6_dev_get(skb->dev); idev 1656 net/ipv6/mcast.c IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUT, skb->len); idev 1687 net/ipv6/mcast.c ICMP6MSGOUT_INC_STATS(net, idev, ICMPV6_MLD2_REPORT); idev 1688 net/ipv6/mcast.c ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS); idev 1690 net/ipv6/mcast.c IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS); idev 1713 net/ipv6/mcast.c skb = mld_newpack(pmc->idev, mtu); idev 1733 net/ipv6/mcast.c struct inet6_dev *idev = pmc->idev; idev 1734 net/ipv6/mcast.c struct net_device *dev = idev->dev; idev 1768 net/ipv6/mcast.c skb = mld_newpack(idev, mtu); idev 1804 net/ipv6/mcast.c skb = mld_newpack(idev, mtu); idev 1855 net/ipv6/mcast.c static void mld_send_report(struct inet6_dev *idev, struct ifmcaddr6 *pmc) idev 1860 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 1862 net/ipv6/mcast.c for (pmc = idev->mc_list; pmc; pmc = pmc->next) { idev 1882 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 1908 net/ipv6/mcast.c static void mld_send_cr(struct inet6_dev *idev) idev 1914 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 1915 net/ipv6/mcast.c spin_lock(&idev->mc_lock); idev 1919 net/ipv6/mcast.c for (pmc = idev->mc_tomb; pmc; pmc = pmc_next) { idev 1943 net/ipv6/mcast.c idev->mc_tomb = pmc_next; idev 1944 net/ipv6/mcast.c in6_dev_put(pmc->idev); idev 1949 net/ipv6/mcast.c spin_unlock(&idev->mc_lock); idev 1952 net/ipv6/mcast.c for (pmc = idev->mc_list; pmc; pmc = pmc->next) { idev 1975 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 1985 net/ipv6/mcast.c struct inet6_dev *idev; idev 2047 net/ipv6/mcast.c idev = __in6_dev_get(skb->dev); idev 2064 net/ipv6/mcast.c ICMP6MSGOUT_INC_STATS(net, idev, type); idev 2065 net/ipv6/mcast.c ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS); idev 2067 net/ipv6/mcast.c IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS); idev 2077 net/ipv6/mcast.c static void mld_send_initial_cr(struct inet6_dev *idev) idev 2083 net/ipv6/mcast.c if (mld_in_v1_mode(idev)) idev 2087 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 2088 net/ipv6/mcast.c for (pmc = idev->mc_list; pmc; pmc = pmc->next) { idev 2097 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2102 net/ipv6/mcast.c void ipv6_mc_dad_complete(struct inet6_dev *idev) idev 2104 net/ipv6/mcast.c idev->mc_dad_count = idev->mc_qrv; idev 2105 net/ipv6/mcast.c if (idev->mc_dad_count) { idev 2106 net/ipv6/mcast.c mld_send_initial_cr(idev); idev 2107 net/ipv6/mcast.c idev->mc_dad_count--; idev 2108 net/ipv6/mcast.c if (idev->mc_dad_count) idev 2109 net/ipv6/mcast.c mld_dad_start_timer(idev, idev 2110 net/ipv6/mcast.c unsolicited_report_interval(idev)); idev 2116 net/ipv6/mcast.c struct inet6_dev *idev = from_timer(idev, t, mc_dad_timer); idev 2118 net/ipv6/mcast.c mld_send_initial_cr(idev); idev 2119 net/ipv6/mcast.c if (idev->mc_dad_count) { idev 2120 net/ipv6/mcast.c idev->mc_dad_count--; idev 2121 net/ipv6/mcast.c if (idev->mc_dad_count) idev 2122 net/ipv6/mcast.c mld_dad_start_timer(idev, idev 2123 net/ipv6/mcast.c unsolicited_report_interval(idev)); idev 2125 net/ipv6/mcast.c in6_dev_put(idev); idev 2146 net/ipv6/mcast.c struct inet6_dev *idev = pmc->idev; idev 2154 net/ipv6/mcast.c !mld_in_v1_mode(idev)) { idev 2155 net/ipv6/mcast.c psf->sf_crcount = idev->mc_qrv; idev 2165 net/ipv6/mcast.c static int ip6_mc_del_src(struct inet6_dev *idev, const struct in6_addr *pmca, idev 2173 net/ipv6/mcast.c if (!idev) idev 2175 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 2176 net/ipv6/mcast.c for (pmc = idev->mc_list; pmc; pmc = pmc->next) { idev 2182 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2190 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2210 net/ipv6/mcast.c pmc->mca_crcount = idev->mc_qrv; idev 2211 net/ipv6/mcast.c idev->mc_ifc_count = pmc->mca_crcount; idev 2214 net/ipv6/mcast.c mld_ifc_event(pmc->idev); idev 2216 net/ipv6/mcast.c mld_ifc_event(pmc->idev); idev 2218 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2269 net/ipv6/mcast.c int qrv = pmc->idev->mc_qrv; idev 2329 net/ipv6/mcast.c static int ip6_mc_add_src(struct inet6_dev *idev, const struct in6_addr *pmca, idev 2337 net/ipv6/mcast.c if (!idev) idev 2339 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 2340 net/ipv6/mcast.c for (pmc = idev->mc_list; pmc; pmc = pmc->next) { idev 2346 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2378 net/ipv6/mcast.c pmc->mca_crcount = idev->mc_qrv; idev 2379 net/ipv6/mcast.c idev->mc_ifc_count = pmc->mca_crcount; idev 2382 net/ipv6/mcast.c mld_ifc_event(idev); idev 2384 net/ipv6/mcast.c mld_ifc_event(idev); idev 2386 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2417 net/ipv6/mcast.c igmp6_send(&ma->mca_addr, ma->idev->dev, ICMPV6_MGM_REPORT); idev 2419 net/ipv6/mcast.c delay = prandom_u32() % unsolicited_report_interval(ma->idev); idev 2434 net/ipv6/mcast.c struct inet6_dev *idev) idev 2441 net/ipv6/mcast.c err = ip6_mc_del_src(idev, &iml->addr, iml->sfmode, 0, NULL, 0); idev 2443 net/ipv6/mcast.c err = ip6_mc_del_src(idev, &iml->addr, iml->sfmode, idev 2454 net/ipv6/mcast.c if (mld_in_v1_mode(ma->idev)) { idev 2456 net/ipv6/mcast.c igmp6_send(&ma->mca_addr, ma->idev->dev, idev 2459 net/ipv6/mcast.c mld_add_delrec(ma->idev, ma); idev 2460 net/ipv6/mcast.c mld_ifc_event(ma->idev); idev 2466 net/ipv6/mcast.c struct inet6_dev *idev = from_timer(idev, t, mc_gq_timer); idev 2468 net/ipv6/mcast.c idev->mc_gq_running = 0; idev 2469 net/ipv6/mcast.c mld_send_report(idev, NULL); idev 2470 net/ipv6/mcast.c in6_dev_put(idev); idev 2475 net/ipv6/mcast.c struct inet6_dev *idev = from_timer(idev, t, mc_ifc_timer); idev 2477 net/ipv6/mcast.c mld_send_cr(idev); idev 2478 net/ipv6/mcast.c if (idev->mc_ifc_count) { idev 2479 net/ipv6/mcast.c idev->mc_ifc_count--; idev 2480 net/ipv6/mcast.c if (idev->mc_ifc_count) idev 2481 net/ipv6/mcast.c mld_ifc_start_timer(idev, idev 2482 net/ipv6/mcast.c unsolicited_report_interval(idev)); idev 2484 net/ipv6/mcast.c in6_dev_put(idev); idev 2487 net/ipv6/mcast.c static void mld_ifc_event(struct inet6_dev *idev) idev 2489 net/ipv6/mcast.c if (mld_in_v1_mode(idev)) idev 2491 net/ipv6/mcast.c idev->mc_ifc_count = idev->mc_qrv; idev 2492 net/ipv6/mcast.c mld_ifc_start_timer(idev, 1); idev 2499 net/ipv6/mcast.c if (mld_in_v1_mode(ma->idev)) idev 2500 net/ipv6/mcast.c igmp6_send(&ma->mca_addr, ma->idev->dev, ICMPV6_MGM_REPORT); idev 2502 net/ipv6/mcast.c mld_send_report(ma->idev, ma); idev 2513 net/ipv6/mcast.c void ipv6_mc_unmap(struct inet6_dev *idev) idev 2519 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 2520 net/ipv6/mcast.c for (i = idev->mc_list; i; i = i->next) idev 2522 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2525 net/ipv6/mcast.c void ipv6_mc_remap(struct inet6_dev *idev) idev 2527 net/ipv6/mcast.c ipv6_mc_up(idev); idev 2532 net/ipv6/mcast.c void ipv6_mc_down(struct inet6_dev *idev) idev 2538 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 2540 net/ipv6/mcast.c for (i = idev->mc_list; i; i = i->next) idev 2546 net/ipv6/mcast.c mld_ifc_stop_timer(idev); idev 2547 net/ipv6/mcast.c mld_gq_stop_timer(idev); idev 2548 net/ipv6/mcast.c mld_dad_stop_timer(idev); idev 2549 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2552 net/ipv6/mcast.c static void ipv6_mc_reset(struct inet6_dev *idev) idev 2554 net/ipv6/mcast.c idev->mc_qrv = sysctl_mld_qrv; idev 2555 net/ipv6/mcast.c idev->mc_qi = MLD_QI_DEFAULT; idev 2556 net/ipv6/mcast.c idev->mc_qri = MLD_QRI_DEFAULT; idev 2557 net/ipv6/mcast.c idev->mc_v1_seen = 0; idev 2558 net/ipv6/mcast.c idev->mc_maxdelay = unsolicited_report_interval(idev); idev 2563 net/ipv6/mcast.c void ipv6_mc_up(struct inet6_dev *idev) idev 2569 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 2570 net/ipv6/mcast.c ipv6_mc_reset(idev); idev 2571 net/ipv6/mcast.c for (i = idev->mc_list; i; i = i->next) { idev 2572 net/ipv6/mcast.c mld_del_delrec(idev, i); idev 2575 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2580 net/ipv6/mcast.c void ipv6_mc_init_dev(struct inet6_dev *idev) idev 2582 net/ipv6/mcast.c write_lock_bh(&idev->lock); idev 2583 net/ipv6/mcast.c spin_lock_init(&idev->mc_lock); idev 2584 net/ipv6/mcast.c idev->mc_gq_running = 0; idev 2585 net/ipv6/mcast.c timer_setup(&idev->mc_gq_timer, mld_gq_timer_expire, 0); idev 2586 net/ipv6/mcast.c idev->mc_tomb = NULL; idev 2587 net/ipv6/mcast.c idev->mc_ifc_count = 0; idev 2588 net/ipv6/mcast.c timer_setup(&idev->mc_ifc_timer, mld_ifc_timer_expire, 0); idev 2589 net/ipv6/mcast.c timer_setup(&idev->mc_dad_timer, mld_dad_timer_expire, 0); idev 2590 net/ipv6/mcast.c ipv6_mc_reset(idev); idev 2591 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 2598 net/ipv6/mcast.c void ipv6_mc_destroy_dev(struct inet6_dev *idev) idev 2603 net/ipv6/mcast.c ipv6_mc_down(idev); idev 2604 net/ipv6/mcast.c mld_clear_delrec(idev); idev 2611 net/ipv6/mcast.c __ipv6_dev_mc_dec(idev, &in6addr_linklocal_allnodes); idev 2613 net/ipv6/mcast.c if (idev->cnf.forwarding) idev 2614 net/ipv6/mcast.c __ipv6_dev_mc_dec(idev, &in6addr_linklocal_allrouters); idev 2616 net/ipv6/mcast.c write_lock_bh(&idev->lock); idev 2617 net/ipv6/mcast.c while ((i = idev->mc_list) != NULL) { idev 2618 net/ipv6/mcast.c idev->mc_list = i->next; idev 2620 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 2622 net/ipv6/mcast.c write_lock_bh(&idev->lock); idev 2624 net/ipv6/mcast.c write_unlock_bh(&idev->lock); idev 2627 net/ipv6/mcast.c static void ipv6_mc_rejoin_groups(struct inet6_dev *idev) idev 2633 net/ipv6/mcast.c if (mld_in_v1_mode(idev)) { idev 2634 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 2635 net/ipv6/mcast.c for (pmc = idev->mc_list; pmc; pmc = pmc->next) idev 2637 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2639 net/ipv6/mcast.c mld_send_report(idev, NULL); idev 2647 net/ipv6/mcast.c struct inet6_dev *idev = __in6_dev_get(dev); idev 2651 net/ipv6/mcast.c if (idev) idev 2652 net/ipv6/mcast.c ipv6_mc_rejoin_groups(idev); idev 2669 net/ipv6/mcast.c struct inet6_dev *idev; idev 2680 net/ipv6/mcast.c state->idev = NULL; idev 2682 net/ipv6/mcast.c struct inet6_dev *idev; idev 2683 net/ipv6/mcast.c idev = __in6_dev_get(state->dev); idev 2684 net/ipv6/mcast.c if (!idev) idev 2686 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 2687 net/ipv6/mcast.c im = idev->mc_list; idev 2689 net/ipv6/mcast.c state->idev = idev; idev 2692 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2703 net/ipv6/mcast.c if (likely(state->idev)) idev 2704 net/ipv6/mcast.c read_unlock_bh(&state->idev->lock); idev 2708 net/ipv6/mcast.c state->idev = NULL; idev 2711 net/ipv6/mcast.c state->idev = __in6_dev_get(state->dev); idev 2712 net/ipv6/mcast.c if (!state->idev) idev 2714 net/ipv6/mcast.c read_lock_bh(&state->idev->lock); idev 2715 net/ipv6/mcast.c im = state->idev->mc_list; idev 2749 net/ipv6/mcast.c if (likely(state->idev)) { idev 2750 net/ipv6/mcast.c read_unlock_bh(&state->idev->lock); idev 2751 net/ipv6/mcast.c state->idev = NULL; idev 2782 net/ipv6/mcast.c struct inet6_dev *idev; idev 2795 net/ipv6/mcast.c state->idev = NULL; idev 2798 net/ipv6/mcast.c struct inet6_dev *idev; idev 2799 net/ipv6/mcast.c idev = __in6_dev_get(state->dev); idev 2800 net/ipv6/mcast.c if (unlikely(idev == NULL)) idev 2802 net/ipv6/mcast.c read_lock_bh(&idev->lock); idev 2803 net/ipv6/mcast.c im = idev->mc_list; idev 2809 net/ipv6/mcast.c state->idev = idev; idev 2814 net/ipv6/mcast.c read_unlock_bh(&idev->lock); idev 2828 net/ipv6/mcast.c if (likely(state->idev)) idev 2829 net/ipv6/mcast.c read_unlock_bh(&state->idev->lock); idev 2833 net/ipv6/mcast.c state->idev = NULL; idev 2836 net/ipv6/mcast.c state->idev = __in6_dev_get(state->dev); idev 2837 net/ipv6/mcast.c if (!state->idev) idev 2839 net/ipv6/mcast.c read_lock_bh(&state->idev->lock); idev 2840 net/ipv6/mcast.c state->im = state->idev->mc_list; idev 2886 net/ipv6/mcast.c if (likely(state->idev)) { idev 2887 net/ipv6/mcast.c read_unlock_bh(&state->idev->lock); idev 2888 net/ipv6/mcast.c state->idev = NULL; idev 399 net/ipv6/ndisc.c struct inet6_dev *idev = __in6_dev_get(dev); idev 401 net/ipv6/ndisc.c if (!idev || idev->cnf.disable_ipv6) { idev 444 net/ipv6/ndisc.c struct inet6_dev *idev; idev 448 net/ipv6/ndisc.c idev = __in6_dev_get(skb->dev); idev 449 net/ipv6/ndisc.c tclass = idev ? idev->cnf.ndisc_tclass : 0; idev 473 net/ipv6/ndisc.c struct inet6_dev *idev; idev 502 net/ipv6/ndisc.c idev = __in6_dev_get(dst->dev); idev 503 net/ipv6/ndisc.c IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUT, skb->len); idev 509 net/ipv6/ndisc.c ICMP6MSGOUT_INC_STATS(net, idev, type); idev 510 net/ipv6/ndisc.c ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS); idev 533 net/ipv6/ndisc.c inc_opt |= ifp->idev->cnf.force_tllao; idev 574 net/ipv6/ndisc.c struct inet6_dev *idev; idev 577 net/ipv6/ndisc.c idev = in6_dev_get(dev); idev 578 net/ipv6/ndisc.c if (!idev) idev 581 net/ipv6/ndisc.c read_lock_bh(&idev->lock); idev 582 net/ipv6/ndisc.c list_for_each_entry(ifa, &idev->addr_list, if_list) { idev 589 net/ipv6/ndisc.c /*router=*/ !!idev->cnf.forwarding, idev 593 net/ipv6/ndisc.c read_unlock_bh(&idev->lock); idev 595 net/ipv6/ndisc.c in6_dev_put(idev); idev 778 net/ipv6/ndisc.c struct inet6_dev *idev = NULL; idev 843 net/ipv6/ndisc.c ifp->idev->dev->name, idev 866 net/ipv6/ndisc.c idev = ifp->idev; idev 882 net/ipv6/ndisc.c idev = in6_dev_get(dev); idev 883 net/ipv6/ndisc.c if (!idev) { idev 889 net/ipv6/ndisc.c (idev->cnf.forwarding && idev 890 net/ipv6/ndisc.c (net->ipv6.devconf_all->proxy_ndp || idev->cnf.proxy_ndp) && idev 895 net/ipv6/ndisc.c NEIGH_VAR(idev->nd_parms, PROXY_DELAY) != 0) { idev 905 net/ipv6/ndisc.c pneigh_enqueue(&nd_tbl, idev->nd_parms, n); idev 913 net/ipv6/ndisc.c is_router = idev->cnf.forwarding; idev 948 net/ipv6/ndisc.c in6_dev_put(idev); idev 961 net/ipv6/ndisc.c struct inet6_dev *idev = __in6_dev_get(dev); idev 985 net/ipv6/ndisc.c if (!msg->icmph.icmp6_solicited && idev && idev 986 net/ipv6/ndisc.c idev->cnf.drop_unsolicited_na) idev 1020 net/ipv6/ndisc.c eth_hdr(skb)->h_source, &ifp->addr, ifp->idev->dev->name); idev 1070 net/ipv6/ndisc.c struct inet6_dev *idev; idev 1078 net/ipv6/ndisc.c idev = __in6_dev_get(skb->dev); idev 1079 net/ipv6/ndisc.c if (!idev) { idev 1085 net/ipv6/ndisc.c if (!idev->cnf.forwarding) idev 1710 net/ipv6/ndisc.c struct inet6_dev *idev = __in6_dev_get(skb->dev); idev 1712 net/ipv6/ndisc.c if (!idev) idev 1715 net/ipv6/ndisc.c idev->cnf.suppress_frag_ndisc) { idev 1779 net/ipv6/ndisc.c struct inet6_dev *idev; idev 1787 net/ipv6/ndisc.c idev = in6_dev_get(dev); idev 1788 net/ipv6/ndisc.c if (!idev) idev 1790 net/ipv6/ndisc.c if (idev->cnf.ndisc_notify || idev 1793 net/ipv6/ndisc.c in6_dev_put(idev); idev 1840 net/ipv6/ndisc.c struct inet6_dev *idev; idev 1861 net/ipv6/ndisc.c if (write && ret == 0 && dev && (idev = in6_dev_get(dev)) != NULL) { idev 1862 net/ipv6/ndisc.c if (ctl->data == &NEIGH_VAR(idev->nd_parms, BASE_REACHABLE_TIME)) idev 1863 net/ipv6/ndisc.c idev->nd_parms->reachable_time = idev 1864 net/ipv6/ndisc.c neigh_rand_reach_time(NEIGH_VAR(idev->nd_parms, BASE_REACHABLE_TIME)); idev 1865 net/ipv6/ndisc.c idev->tstamp = jiffies; idev 1866 net/ipv6/ndisc.c inet6_ifinfo_notify(RTM_NEWLINK, idev); idev 1867 net/ipv6/ndisc.c in6_dev_put(idev); idev 133 net/ipv6/output_core.c struct inet6_dev *idev; idev 136 net/ipv6/output_core.c idev = __in6_dev_get(dev); idev 137 net/ipv6/output_core.c if (idev) idev 138 net/ipv6/output_core.c hoplimit = idev->cnf.hop_limit; idev 231 net/ipv6/proc.c struct inet6_dev *idev = (struct inet6_dev *)seq->private; idev 233 net/ipv6/proc.c seq_printf(seq, "%-32s\t%u\n", "ifIndex", idev->dev->ifindex); idev 234 net/ipv6/proc.c snmp6_seq_show_item64(seq, idev->stats.ipv6, idev 236 net/ipv6/proc.c snmp6_seq_show_item(seq, NULL, idev->stats.icmpv6dev->mibs, idev 238 net/ipv6/proc.c snmp6_seq_show_icmpv6msg(seq, idev->stats.icmpv6msgdev->mibs); idev 242 net/ipv6/proc.c int snmp6_register_dev(struct inet6_dev *idev) idev 247 net/ipv6/proc.c if (!idev || !idev->dev) idev 250 net/ipv6/proc.c net = dev_net(idev->dev); idev 254 net/ipv6/proc.c p = proc_create_single_data(idev->dev->name, 0444, idev 255 net/ipv6/proc.c net->mib.proc_net_devsnmp6, snmp6_dev_seq_show, idev); idev 259 net/ipv6/proc.c idev->stats.proc_dir_entry = p; idev 263 net/ipv6/proc.c int snmp6_unregister_dev(struct inet6_dev *idev) idev 265 net/ipv6/proc.c struct net *net = dev_net(idev->dev); idev 268 net/ipv6/proc.c if (!idev->stats.proc_dir_entry) idev 270 net/ipv6/proc.c proc_remove(idev->stats.proc_dir_entry); idev 271 net/ipv6/proc.c idev->stats.proc_dir_entry = NULL; idev 371 net/ipv6/route.c struct inet6_dev *idev; idev 376 net/ipv6/route.c idev = rt->rt6i_idev; idev 377 net/ipv6/route.c if (idev) { idev 379 net/ipv6/route.c in6_dev_put(idev); idev 390 net/ipv6/route.c struct inet6_dev *idev = rt->rt6i_idev; idev 394 net/ipv6/route.c if (idev && idev->dev != loopback_dev) { idev 398 net/ipv6/route.c in6_dev_put(idev); idev 629 net/ipv6/route.c struct inet6_dev *idev; idev 646 net/ipv6/route.c idev = __in6_dev_get(dev); idev 655 net/ipv6/route.c neigh->updated + idev->cnf.rtr_probe_interval)) { idev 662 net/ipv6/route.c idev->cnf.rtr_probe_interval)) { idev 1592 net/ipv6/route.c struct inet6_dev *idev; idev 1595 net/ipv6/route.c idev = __in6_dev_get(dev); idev 1596 net/ipv6/route.c mtu = idev->cnf.mtu6; idev 1992 net/ipv6/route.c static bool rt6_mtu_change_route_allowed(struct inet6_dev *idev, idev 2008 net/ipv6/route.c if (dst_mtu(&rt->dst) == idev->cnf.mtu6) idev 2014 net/ipv6/route.c static void rt6_exceptions_update_pmtu(struct inet6_dev *idev, idev 2034 net/ipv6/route.c rt6_mtu_change_route_allowed(idev, entry, mtu)) idev 3095 net/ipv6/route.c struct inet6_dev *idev; idev 3105 net/ipv6/route.c idev = __in6_dev_get(dst->dev); idev 3106 net/ipv6/route.c if (idev) idev 3107 net/ipv6/route.c mtu = idev->cnf.mtu6; idev 3130 net/ipv6/route.c struct inet6_dev *idev; idev 3147 net/ipv6/route.c idev = __in6_dev_get(dev); idev 3148 net/ipv6/route.c if (idev && idev->cnf.mtu6 > mtu) idev 3149 net/ipv6/route.c mtu = idev->cnf.mtu6; idev 3162 net/ipv6/route.c struct inet6_dev *idev = in6_dev_get(dev); idev 3165 net/ipv6/route.c if (unlikely(!idev)) idev 3170 net/ipv6/route.c in6_dev_put(idev); idev 3181 net/ipv6/route.c rt->rt6i_idev = idev; idev 3276 net/ipv6/route.c struct inet6_dev **idev) idev 3321 net/ipv6/route.c *idev = in6_dev_get(dev); idev 3328 net/ipv6/route.c struct net_device **_dev, struct inet6_dev **idev, idev 3369 net/ipv6/route.c err = ip6_route_check_nh(net, cfg, _dev, idev); idev 3420 net/ipv6/route.c struct inet6_dev *idev = NULL; idev 3434 net/ipv6/route.c idev = in6_dev_get(dev); idev 3435 net/ipv6/route.c if (!idev) idev 3466 net/ipv6/route.c in6_dev_put(idev); idev 3470 net/ipv6/route.c idev = in6_dev_get(dev); idev 3471 net/ipv6/route.c if (!idev) { idev 3480 net/ipv6/route.c err = ip6_validate_gw(net, cfg, &dev, &idev, extack); idev 3492 net/ipv6/route.c if (idev->cnf.disable_ipv6) { idev 3524 net/ipv6/route.c if (idev) idev 3525 net/ipv6/route.c in6_dev_put(idev); idev 4264 net/ipv6/route.c struct inet6_dev *idev = dev ? __in6_dev_get(dev) : NULL; idev 4267 net/ipv6/route.c (!idev || idev->cnf.accept_ra != 2) && idev 4366 net/ipv6/route.c struct inet6_dev *idev; idev 4371 net/ipv6/route.c idev = __in6_dev_get_safely(dev_get_by_index_rcu(net, IP6CB(skb)->iif)); idev 4373 net/ipv6/route.c idev = ip6_dst_idev(dst); idev 4379 net/ipv6/route.c IP6_INC_STATS(net, idev, IPSTATS_MIB_INADDRERRORS); idev 4384 net/ipv6/route.c IP6_INC_STATS(net, idev, ipstats_mib_noroutes); idev 4424 net/ipv6/route.c struct inet6_dev *idev, idev 4429 net/ipv6/route.c .fc_table = l3mdev_fib_table(idev->dev) ? : RT6_TABLE_LOCAL, idev 4430 net/ipv6/route.c .fc_ifindex = idev->dev->ifindex, idev 4481 net/ipv6/route.c struct net *net = dev_net(ifp->idev->dev); idev 4483 net/ipv6/route.c .dev = ifp->idev->dev, idev 4791 net/ipv6/route.c struct inet6_dev *idev = __in6_dev_get(arg->dev); idev 4795 net/ipv6/route.c (mtu < arg->mtu && mtu == idev->cnf.mtu6)) idev 4799 net/ipv6/route.c rt6_exceptions_update_pmtu(idev, nh, arg->mtu); idev 4809 net/ipv6/route.c struct inet6_dev *idev; idev 4817 net/ipv6/route.c idev = __in6_dev_get(arg->dev); idev 4818 net/ipv6/route.c if (!idev) idev 245 net/ipv6/seg6_hmac.c struct inet6_dev *idev; idev 247 net/ipv6/seg6_hmac.c idev = __in6_dev_get(skb->dev); idev 254 net/ipv6/seg6_hmac.c if (idev->cnf.seg6_require_hmac > 0 && !tlv) idev 258 net/ipv6/seg6_hmac.c if (idev->cnf.seg6_require_hmac < 0) idev 262 net/ipv6/seg6_hmac.c if (idev->cnf.seg6_require_hmac == 0 && !tlv) idev 1006 net/mac80211/driver-ops.h struct inet6_dev *idev) idev 1010 net/mac80211/driver-ops.h local->ops->ipv6_addr_change(&local->hw, &sdata->vif, idev); idev 327 net/mac80211/main.c struct in_device *idev; idev 347 net/mac80211/main.c idev = __in_dev_get_rtnl(sdata->dev); idev 348 net/mac80211/main.c if (!idev) idev 355 net/mac80211/main.c ifa = rtnl_dereference(idev->ifa_list); idev 381 net/mac80211/main.c struct inet6_dev *idev = ifa->idev; idev 382 net/mac80211/main.c struct net_device *ndev = ifa->idev->dev; idev 401 net/mac80211/main.c drv_ipv6_addr_change(local, sdata, idev); idev 268 net/netfilter/ipvs/ip_vs_xmit.c struct inet6_dev *idev = __in6_dev_get_safely(skb->dev); idev 274 net/netfilter/ipvs/ip_vs_xmit.c __IP6_INC_STATS(net, idev, IPSTATS_MIB_INHDRERRORS); idev 113 net/netfilter/nf_nat_masquerade.c struct in_device *idev = ((struct in_ifaddr *)ptr)->ifa_dev; idev 114 net/netfilter/nf_nat_masquerade.c struct net *net = dev_net(idev->dev); idev 121 net/netfilter/nf_nat_masquerade.c if (idev->dead) idev 242 net/netfilter/nf_nat_masquerade.c dev = ifa->idev->dev; idev 93 net/netfilter/nf_nat_redirect.c struct inet6_dev *idev; idev 97 net/netfilter/nf_nat_redirect.c idev = __in6_dev_get(skb->dev); idev 98 net/netfilter/nf_nat_redirect.c if (idev != NULL) { idev 99 net/netfilter/nf_nat_redirect.c read_lock_bh(&idev->lock); idev 100 net/netfilter/nf_nat_redirect.c list_for_each_entry(ifa, &idev->addr_list, if_list) { idev 105 net/netfilter/nf_nat_redirect.c read_unlock_bh(&idev->lock); idev 80 net/sctp/ipv6.c struct net *net = dev_net(ifa->idev->dev); idev 89 net/sctp/ipv6.c addr->a.v6.sin6_scope_id = ifa->idev->dev->ifindex; idev 128 net/sctp/ipv6.c struct inet6_dev *idev; idev 137 net/sctp/ipv6.c idev = in6_dev_get(skb->dev); idev 149 net/sctp/ipv6.c __ICMP6_INC_STATS(net, idev, ICMP6_MIB_INERRORS); idev 188 net/sctp/ipv6.c if (likely(idev != NULL)) idev 189 net/sctp/ipv6.c in6_dev_put(idev); idev 532 sound/usb/caiaq/input.c static int snd_usb_caiaq_input_open(struct input_dev *idev) idev 534 sound/usb/caiaq/input.c struct snd_usb_caiaqdev *cdev = input_get_drvdata(idev); idev 551 sound/usb/caiaq/input.c static void snd_usb_caiaq_input_close(struct input_dev *idev) idev 553 sound/usb/caiaq/input.c struct snd_usb_caiaqdev *cdev = input_get_drvdata(idev); idev 21 tools/usb/usbip/libsrc/vhci_driver.c imported_device_init(struct usbip_imported_device *idev, char *busid) idev 31 tools/usb/usbip/libsrc/vhci_driver.c read_usb_device(sudev, &idev->udev); idev 34 tools/usb/usbip/libsrc/vhci_driver.c return idev; idev 55 tools/usb/usbip/libsrc/vhci_driver.c struct usbip_imported_device *idev; idev 72 tools/usb/usbip/libsrc/vhci_driver.c idev = &vhci_driver->idev[port]; idev 73 tools/usb/usbip/libsrc/vhci_driver.c memset(idev, 0, sizeof(*idev)); idev 76 tools/usb/usbip/libsrc/vhci_driver.c idev->hub = HUB_SPEED_HIGH; idev 78 tools/usb/usbip/libsrc/vhci_driver.c idev->hub = HUB_SPEED_SUPER; idev 80 tools/usb/usbip/libsrc/vhci_driver.c idev->port = port; idev 81 tools/usb/usbip/libsrc/vhci_driver.c idev->status = status; idev 83 tools/usb/usbip/libsrc/vhci_driver.c idev->devid = devid; idev 85 tools/usb/usbip/libsrc/vhci_driver.c idev->busnum = (devid >> 16); idev 86 tools/usb/usbip/libsrc/vhci_driver.c idev->devnum = (devid & 0x0000ffff); idev 88 tools/usb/usbip/libsrc/vhci_driver.c if (idev->status != VDEV_ST_NULL idev 89 tools/usb/usbip/libsrc/vhci_driver.c && idev->status != VDEV_ST_NOTASSIGNED) { idev 90 tools/usb/usbip/libsrc/vhci_driver.c idev = imported_device_init(idev, lbusid); idev 91 tools/usb/usbip/libsrc/vhci_driver.c if (!idev) { idev 341 tools/usb/usbip/libsrc/vhci_driver.c if (vhci_driver->idev[i].hub != HUB_SPEED_SUPER) idev 345 tools/usb/usbip/libsrc/vhci_driver.c if (vhci_driver->idev[i].hub != HUB_SPEED_HIGH) idev 350 tools/usb/usbip/libsrc/vhci_driver.c if (vhci_driver->idev[i].status == VDEV_ST_NULL) idev 351 tools/usb/usbip/libsrc/vhci_driver.c return vhci_driver->idev[i].port; idev 426 tools/usb/usbip/libsrc/vhci_driver.c int usbip_vhci_imported_device_dump(struct usbip_imported_device *idev) idev 435 tools/usb/usbip/libsrc/vhci_driver.c if (idev->status == VDEV_ST_NULL || idev->status == VDEV_ST_NOTASSIGNED) idev 438 tools/usb/usbip/libsrc/vhci_driver.c ret = read_record(idev->port, host, sizeof(host), serv, sizeof(serv), idev 445 tools/usb/usbip/libsrc/vhci_driver.c printf("Port %02d: <%s> at %s\n", idev->port, idev 446 tools/usb/usbip/libsrc/vhci_driver.c usbip_status_string(idev->status), idev 447 tools/usb/usbip/libsrc/vhci_driver.c usbip_speed_string(idev->udev.speed)); idev 450 tools/usb/usbip/libsrc/vhci_driver.c idev->udev.idVendor, idev->udev.idProduct); idev 455 tools/usb/usbip/libsrc/vhci_driver.c printf("%10s -> usbip://%s:%s/%s\n", idev->udev.busid, idev 458 tools/usb/usbip/libsrc/vhci_driver.c idev->busnum, idev->devnum); idev 461 tools/usb/usbip/libsrc/vhci_driver.c idev->udev.busid); idev 463 tools/usb/usbip/libsrc/vhci_driver.c idev->busnum, idev->devnum); idev 43 tools/usb/usbip/libsrc/vhci_driver.h struct usbip_imported_device idev[]; idev 65 tools/usb/usbip/libsrc/vhci_driver.h int usbip_vhci_imported_device_dump(struct usbip_imported_device *idev); idev 38 tools/usb/usbip/src/usbip_detach.c struct usbip_imported_device *idev; idev 59 tools/usb/usbip/src/usbip_detach.c idev = &vhci_driver->idev[i]; idev 61 tools/usb/usbip/src/usbip_detach.c if (idev->port == portnum) { idev 63 tools/usb/usbip/src/usbip_detach.c if (idev->status != VDEV_ST_NULL) idev 65 tools/usb/usbip/src/usbip_detach.c info("Port %d is already detached!\n", idev->port); idev 13 tools/usb/usbip/src/usbip_port.c struct usbip_imported_device *idev; idev 29 tools/usb/usbip/src/usbip_port.c idev = &vhci_driver->idev[i]; idev 31 tools/usb/usbip/src/usbip_port.c if (usbip_vhci_imported_device_dump(idev) < 0)