pcard 1741 drivers/scsi/FlashPoint.c static int FlashPoint_HandleInterrupt(void *pcard) pcard 1747 drivers/scsi/FlashPoint.c struct sccb_card *pCurrCard = pcard; pcard 68 drivers/staging/kpc2000/kpc2000/cell_probe.c void dbg_cte(struct kp2000_device *pcard, struct core_table_entry *cte) pcard 70 drivers/staging/kpc2000/kpc2000/cell_probe.c dev_dbg(&pcard->pdev->dev, "CTE: type:%3d offset:%3d (%3d) length:%3d (%3d) s2c:%d c2s:%d irq_count:%d base_irq:%d\n", pcard 96 drivers/staging/kpc2000/kpc2000/cell_probe.c static int probe_core_basic(unsigned int core_num, struct kp2000_device *pcard, pcard 103 drivers/staging/kpc2000/kpc2000/cell_probe.c .card_id = pcard->card_id, pcard 104 drivers/staging/kpc2000/kpc2000/cell_probe.c .build_version = pcard->build_version, pcard 105 drivers/staging/kpc2000/kpc2000/cell_probe.c .hardware_revision = pcard->hardware_revision, pcard 106 drivers/staging/kpc2000/kpc2000/cell_probe.c .ssid = pcard->ssid, pcard 107 drivers/staging/kpc2000/kpc2000/cell_probe.c .ddna = pcard->ddna, pcard 110 drivers/staging/kpc2000/kpc2000/cell_probe.c dev_dbg(&pcard->pdev->dev, "Found Basic core: type = %02d dma = %02x / %02x offset = 0x%x length = 0x%x (%d regs)\n", cte.type, KPC_OLD_S2C_DMA_CH_NUM(cte), KPC_OLD_C2S_DMA_CH_NUM(cte), cte.offset, cte.length, cte.length / 8); pcard 122 drivers/staging/kpc2000/kpc2000/cell_probe.c resources[1].start = pcard->pdev->irq; pcard 123 drivers/staging/kpc2000/kpc2000/cell_probe.c resources[1].end = pcard->pdev->irq; pcard 128 drivers/staging/kpc2000/kpc2000/cell_probe.c return mfd_add_devices(PCARD_TO_DEV(pcard), // parent pcard 129 drivers/staging/kpc2000/kpc2000/cell_probe.c pcard->card_num * 100, // id pcard 132 drivers/staging/kpc2000/kpc2000/cell_probe.c &pcard->regs_base_resource, pcard 139 drivers/staging/kpc2000/kpc2000/cell_probe.c struct kp2000_device *pcard; pcard 237 drivers/staging/kpc2000/kpc2000/cell_probe.c int kp2000_check_uio_irq(struct kp2000_device *pcard, u32 irq_num) pcard 239 drivers/staging/kpc2000/kpc2000/cell_probe.c u64 interrupt_active = readq(pcard->sysinfo_regs_base + REG_INTERRUPT_ACTIVE); pcard 240 drivers/staging/kpc2000/kpc2000/cell_probe.c u64 interrupt_mask_inv = ~readq(pcard->sysinfo_regs_base + REG_INTERRUPT_MASK); pcard 256 drivers/staging/kpc2000/kpc2000/cell_probe.c if (irq != kudev->pcard->pdev->irq) pcard 259 drivers/staging/kpc2000/kpc2000/cell_probe.c if (kp2000_check_uio_irq(kudev->pcard, kudev->cte.irq_base_num)) { pcard 262 drivers/staging/kpc2000/kpc2000/cell_probe.c kudev->pcard->sysinfo_regs_base + REG_INTERRUPT_ACTIVE); pcard 272 drivers/staging/kpc2000/kpc2000/cell_probe.c struct kp2000_device *pcard = kudev->pcard; pcard 275 drivers/staging/kpc2000/kpc2000/cell_probe.c mutex_lock(&pcard->sem); pcard 276 drivers/staging/kpc2000/kpc2000/cell_probe.c mask = readq(pcard->sysinfo_regs_base + REG_INTERRUPT_MASK); pcard 281 drivers/staging/kpc2000/kpc2000/cell_probe.c writeq(mask, pcard->sysinfo_regs_base + REG_INTERRUPT_MASK); pcard 282 drivers/staging/kpc2000/kpc2000/cell_probe.c mutex_unlock(&pcard->sem); pcard 287 drivers/staging/kpc2000/kpc2000/cell_probe.c static int probe_core_uio(unsigned int core_num, struct kp2000_device *pcard, pcard 293 drivers/staging/kpc2000/kpc2000/cell_probe.c dev_dbg(&pcard->pdev->dev, "Found UIO core: type = %02d dma = %02x / %02x offset = 0x%x length = 0x%x (%d regs)\n", cte.type, KPC_OLD_S2C_DMA_CH_NUM(cte), KPC_OLD_C2S_DMA_CH_NUM(cte), cte.offset, cte.length, cte.length / 8); pcard 300 drivers/staging/kpc2000/kpc2000/cell_probe.c kudev->pcard = pcard; pcard 309 drivers/staging/kpc2000/kpc2000/cell_probe.c kudev->uioinfo.irq = pcard->pdev->irq; pcard 317 drivers/staging/kpc2000/kpc2000/cell_probe.c kudev->uioinfo.mem[0].addr = pci_resource_start(pcard->pdev, REG_BAR) + cte.offset; pcard 321 drivers/staging/kpc2000/kpc2000/cell_probe.c kudev->dev = device_create(kpc_uio_class, &pcard->pdev->dev, MKDEV(0, 0), kudev, "%s.%d.%d.%d", kudev->uioinfo.name, pcard->card_num, cte.type, kudev->core_num); pcard 323 drivers/staging/kpc2000/kpc2000/cell_probe.c dev_err(&pcard->pdev->dev, "%s: device_create failed!\n", pcard 332 drivers/staging/kpc2000/kpc2000/cell_probe.c dev_err(&pcard->pdev->dev, "%s: failed uio_register_device: %d\n", pcard 339 drivers/staging/kpc2000/kpc2000/cell_probe.c list_add_tail(&kudev->list, &pcard->uio_devices_list); pcard 344 drivers/staging/kpc2000/kpc2000/cell_probe.c static int create_dma_engine_core(struct kp2000_device *pcard, size_t engine_regs_offset, int engine_num, int irq_num) pcard 366 drivers/staging/kpc2000/kpc2000/cell_probe.c return mfd_add_devices(PCARD_TO_DEV(pcard), // parent pcard 367 drivers/staging/kpc2000/kpc2000/cell_probe.c pcard->card_num * 100, // id pcard 370 drivers/staging/kpc2000/kpc2000/cell_probe.c &pcard->dma_base_resource, pcard 375 drivers/staging/kpc2000/kpc2000/cell_probe.c static int kp2000_setup_dma_controller(struct kp2000_device *pcard) pcard 383 drivers/staging/kpc2000/kpc2000/cell_probe.c capabilities_reg = readq(pcard->dma_bar_base + KPC_DMA_S2C_BASE_OFFSET + (KPC_DMA_ENGINE_SIZE * i)); pcard 385 drivers/staging/kpc2000/kpc2000/cell_probe.c err = create_dma_engine_core(pcard, (KPC_DMA_S2C_BASE_OFFSET + (KPC_DMA_ENGINE_SIZE * i)), i, pcard->pdev->irq); pcard 392 drivers/staging/kpc2000/kpc2000/cell_probe.c capabilities_reg = readq(pcard->dma_bar_base + KPC_DMA_C2S_BASE_OFFSET + (KPC_DMA_ENGINE_SIZE * i)); pcard 394 drivers/staging/kpc2000/kpc2000/cell_probe.c err = create_dma_engine_core(pcard, (KPC_DMA_C2S_BASE_OFFSET + (KPC_DMA_ENGINE_SIZE * i)), 32 + i, pcard->pdev->irq); pcard 403 drivers/staging/kpc2000/kpc2000/cell_probe.c dev_err(&pcard->pdev->dev, "%s: failed to add a DMA Engine: %d\n", pcard 408 drivers/staging/kpc2000/kpc2000/cell_probe.c int kp2000_probe_cores(struct kp2000_device *pcard) pcard 417 drivers/staging/kpc2000/kpc2000/cell_probe.c err = kp2000_setup_dma_controller(pcard); pcard 421 drivers/staging/kpc2000/kpc2000/cell_probe.c INIT_LIST_HEAD(&pcard->uio_devices_list); pcard 424 drivers/staging/kpc2000/kpc2000/cell_probe.c for (i = 0 ; i < pcard->core_table_length ; i++) { pcard 425 drivers/staging/kpc2000/kpc2000/cell_probe.c read_val = readq(pcard->sysinfo_regs_base + ((pcard->core_table_offset + i) * 8)); pcard 426 drivers/staging/kpc2000/kpc2000/cell_probe.c parse_core_table_entry(&cte, read_val, pcard->core_table_rev); pcard 427 drivers/staging/kpc2000/kpc2000/cell_probe.c dbg_cte(pcard, &cte); pcard 431 drivers/staging/kpc2000/kpc2000/cell_probe.c dev_info(&pcard->pdev->dev, "Found Invalid core: %016llx\n", read_val); pcard 438 drivers/staging/kpc2000/kpc2000/cell_probe.c for (i = 0 ; i < pcard->core_table_length ; i++) { pcard 439 drivers/staging/kpc2000/kpc2000/cell_probe.c read_val = readq(pcard->sysinfo_regs_base + ((pcard->core_table_offset + i) * 8)); pcard 440 drivers/staging/kpc2000/kpc2000/cell_probe.c parse_core_table_entry(&cte, read_val, pcard->core_table_rev); pcard 447 drivers/staging/kpc2000/kpc2000/cell_probe.c err = probe_core_basic(core_num, pcard, pcard 452 drivers/staging/kpc2000/kpc2000/cell_probe.c err = probe_core_basic(core_num, pcard, pcard 457 drivers/staging/kpc2000/kpc2000/cell_probe.c err = probe_core_uio(core_num, pcard, "kpc_uio", cte); pcard 461 drivers/staging/kpc2000/kpc2000/cell_probe.c dev_err(&pcard->pdev->dev, pcard 480 drivers/staging/kpc2000/kpc2000/cell_probe.c err = probe_core_uio(0, pcard, "kpc_uio", cte); pcard 482 drivers/staging/kpc2000/kpc2000/cell_probe.c dev_err(&pcard->pdev->dev, "%s: failed to add board_info core: %d\n", pcard 490 drivers/staging/kpc2000/kpc2000/cell_probe.c kp2000_remove_cores(pcard); pcard 491 drivers/staging/kpc2000/kpc2000/cell_probe.c mfd_remove_devices(PCARD_TO_DEV(pcard)); pcard 495 drivers/staging/kpc2000/kpc2000/cell_probe.c void kp2000_remove_cores(struct kp2000_device *pcard) pcard 500 drivers/staging/kpc2000/kpc2000/cell_probe.c list_for_each_safe(ptr, next, &pcard->uio_devices_list) { pcard 37 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 39 drivers/staging/kpc2000/kpc2000/core.c return sprintf(buf, "%016llx\n", pcard->ssid); pcard 46 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 48 drivers/staging/kpc2000/kpc2000/core.c return sprintf(buf, "%016llx\n", pcard->ddna); pcard 55 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 57 drivers/staging/kpc2000/kpc2000/core.c return sprintf(buf, "%08x\n", pcard->card_id); pcard 64 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 66 drivers/staging/kpc2000/kpc2000/core.c return sprintf(buf, "%08x\n", pcard->hardware_revision); pcard 73 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 75 drivers/staging/kpc2000/kpc2000/core.c return sprintf(buf, "%08x\n", pcard->build_version); pcard 82 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 84 drivers/staging/kpc2000/kpc2000/core.c return sprintf(buf, "%08x\n", pcard->build_datestamp); pcard 91 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 93 drivers/staging/kpc2000/kpc2000/core.c return sprintf(buf, "%08x\n", pcard->build_timestamp); pcard 100 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 103 drivers/staging/kpc2000/kpc2000/core.c val = readq(pcard->sysinfo_regs_base + REG_CPLD_CONFIG); pcard 112 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 124 drivers/staging/kpc2000/kpc2000/core.c writeq(wr_val, pcard->sysinfo_regs_base + REG_CPLD_CONFIG); pcard 132 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 135 drivers/staging/kpc2000/kpc2000/core.c val = readq(pcard->sysinfo_regs_base + REG_INTERRUPT_MASK); pcard 143 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 146 drivers/staging/kpc2000/kpc2000/core.c val = readq(pcard->sysinfo_regs_base + REG_INTERRUPT_ACTIVE); pcard 155 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 158 drivers/staging/kpc2000/kpc2000/core.c val = readq(pcard->sysinfo_regs_base + REG_PCIE_ERROR_COUNT); pcard 166 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 168 drivers/staging/kpc2000/kpc2000/core.c return sprintf(buf, "%08x\n", pcard->core_table_offset); pcard 175 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_get_drvdata(dev); pcard 177 drivers/staging/kpc2000/kpc2000/core.c return sprintf(buf, "%08x\n", pcard->core_table_length); pcard 203 drivers/staging/kpc2000/kpc2000/core.c static void wait_and_read_ssid(struct kp2000_device *pcard) pcard 205 drivers/staging/kpc2000/kpc2000/core.c u64 read_val = readq(pcard->sysinfo_regs_base + REG_FPGA_SSID); pcard 209 drivers/staging/kpc2000/kpc2000/core.c pcard->ssid = read_val; pcard 215 drivers/staging/kpc2000/kpc2000/core.c read_val = readq(pcard->sysinfo_regs_base + REG_FPGA_SSID); pcard 217 drivers/staging/kpc2000/kpc2000/core.c pcard->ssid = read_val; pcard 224 drivers/staging/kpc2000/kpc2000/core.c dev_notice(&pcard->pdev->dev, "SSID didn't show up!\n"); pcard 228 drivers/staging/kpc2000/kpc2000/core.c pcard->ssid = 0; pcard 231 drivers/staging/kpc2000/kpc2000/core.c static int read_system_regs(struct kp2000_device *pcard) pcard 235 drivers/staging/kpc2000/kpc2000/core.c read_val = readq(pcard->sysinfo_regs_base + REG_MAGIC_NUMBER); pcard 237 drivers/staging/kpc2000/kpc2000/core.c dev_err(&pcard->pdev->dev, pcard 243 drivers/staging/kpc2000/kpc2000/core.c read_val = readq(pcard->sysinfo_regs_base + REG_CARD_ID_AND_BUILD); pcard 244 drivers/staging/kpc2000/kpc2000/core.c pcard->card_id = (read_val & 0xFFFFFFFF00000000UL) >> 32; pcard 245 drivers/staging/kpc2000/kpc2000/core.c pcard->build_version = (read_val & 0x00000000FFFFFFFFUL) >> 0; pcard 247 drivers/staging/kpc2000/kpc2000/core.c read_val = readq(pcard->sysinfo_regs_base + REG_DATE_AND_TIME_STAMPS); pcard 248 drivers/staging/kpc2000/kpc2000/core.c pcard->build_datestamp = (read_val & 0xFFFFFFFF00000000UL) >> 32; pcard 249 drivers/staging/kpc2000/kpc2000/core.c pcard->build_timestamp = (read_val & 0x00000000FFFFFFFFUL) >> 0; pcard 251 drivers/staging/kpc2000/kpc2000/core.c read_val = readq(pcard->sysinfo_regs_base + REG_CORE_TABLE_OFFSET); pcard 252 drivers/staging/kpc2000/kpc2000/core.c pcard->core_table_length = (read_val & 0xFFFFFFFF00000000UL) >> 32; pcard 253 drivers/staging/kpc2000/kpc2000/core.c pcard->core_table_offset = (read_val & 0x00000000FFFFFFFFUL) >> 0; pcard 255 drivers/staging/kpc2000/kpc2000/core.c wait_and_read_ssid(pcard); pcard 257 drivers/staging/kpc2000/kpc2000/core.c read_val = readq(pcard->sysinfo_regs_base + REG_FPGA_HW_ID); pcard 258 drivers/staging/kpc2000/kpc2000/core.c pcard->core_table_rev = (read_val & 0x0000000000000F00) >> 8; pcard 259 drivers/staging/kpc2000/kpc2000/core.c pcard->hardware_revision = (read_val & 0x000000000000001F); pcard 261 drivers/staging/kpc2000/kpc2000/core.c read_val = readq(pcard->sysinfo_regs_base + REG_FPGA_DDNA); pcard 262 drivers/staging/kpc2000/kpc2000/core.c pcard->ddna = read_val; pcard 264 drivers/staging/kpc2000/kpc2000/core.c dev_info(&pcard->pdev->dev, pcard 266 drivers/staging/kpc2000/kpc2000/core.c pcard->card_id, pcard 267 drivers/staging/kpc2000/kpc2000/core.c pcard->build_version, pcard 268 drivers/staging/kpc2000/kpc2000/core.c pcard->build_datestamp, pcard 269 drivers/staging/kpc2000/kpc2000/core.c pcard->build_timestamp, pcard 270 drivers/staging/kpc2000/kpc2000/core.c pcard->hardware_revision, pcard 271 drivers/staging/kpc2000/kpc2000/core.c pcard->core_table_rev, pcard 272 drivers/staging/kpc2000/kpc2000/core.c pcard->core_table_length, pcard 273 drivers/staging/kpc2000/kpc2000/core.c pcard->ssid, pcard 274 drivers/staging/kpc2000/kpc2000/core.c pcard->ddna); pcard 276 drivers/staging/kpc2000/kpc2000/core.c if (pcard->core_table_rev > 1) { pcard 277 drivers/staging/kpc2000/kpc2000/core.c dev_err(&pcard->pdev->dev, pcard 287 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = dev_id; pcard 292 drivers/staging/kpc2000/kpc2000/core.c pcard->dma_common_regs); pcard 300 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard; pcard 307 drivers/staging/kpc2000/kpc2000/core.c pcard = kzalloc(sizeof(*pcard), GFP_KERNEL); pcard 308 drivers/staging/kpc2000/kpc2000/core.c if (!pcard) pcard 311 drivers/staging/kpc2000/kpc2000/core.c pcard); pcard 319 drivers/staging/kpc2000/kpc2000/core.c pcard->card_num = err; pcard 320 drivers/staging/kpc2000/kpc2000/core.c scnprintf(pcard->name, 16, "kpcard%u", pcard->card_num); pcard 322 drivers/staging/kpc2000/kpc2000/core.c mutex_init(&pcard->sem); pcard 323 drivers/staging/kpc2000/kpc2000/core.c mutex_lock(&pcard->sem); pcard 325 drivers/staging/kpc2000/kpc2000/core.c pcard->pdev = pdev; pcard 326 drivers/staging/kpc2000/kpc2000/core.c pci_set_drvdata(pdev, pcard); pcard 328 drivers/staging/kpc2000/kpc2000/core.c err = pci_enable_device(pcard->pdev); pcard 330 drivers/staging/kpc2000/kpc2000/core.c dev_err(&pcard->pdev->dev, pcard 337 drivers/staging/kpc2000/kpc2000/core.c reg_bar_phys_addr = pci_resource_start(pcard->pdev, REG_BAR); pcard 338 drivers/staging/kpc2000/kpc2000/core.c reg_bar_phys_len = pci_resource_len(pcard->pdev, REG_BAR); pcard 340 drivers/staging/kpc2000/kpc2000/core.c pcard->regs_bar_base = ioremap_nocache(reg_bar_phys_addr, PAGE_SIZE); pcard 341 drivers/staging/kpc2000/kpc2000/core.c if (!pcard->regs_bar_base) { pcard 342 drivers/staging/kpc2000/kpc2000/core.c dev_err(&pcard->pdev->dev, pcard 347 drivers/staging/kpc2000/kpc2000/core.c dev_dbg(&pcard->pdev->dev, pcard 349 drivers/staging/kpc2000/kpc2000/core.c pcard->regs_bar_base); pcard 351 drivers/staging/kpc2000/kpc2000/core.c err = pci_request_region(pcard->pdev, REG_BAR, KP_DRIVER_NAME_KP2000); pcard 353 drivers/staging/kpc2000/kpc2000/core.c dev_err(&pcard->pdev->dev, pcard 360 drivers/staging/kpc2000/kpc2000/core.c pcard->regs_base_resource.start = reg_bar_phys_addr; pcard 361 drivers/staging/kpc2000/kpc2000/core.c pcard->regs_base_resource.end = reg_bar_phys_addr + pcard 363 drivers/staging/kpc2000/kpc2000/core.c pcard->regs_base_resource.flags = IORESOURCE_MEM; pcard 366 drivers/staging/kpc2000/kpc2000/core.c dma_bar_phys_addr = pci_resource_start(pcard->pdev, DMA_BAR); pcard 367 drivers/staging/kpc2000/kpc2000/core.c dma_bar_phys_len = pci_resource_len(pcard->pdev, DMA_BAR); pcard 369 drivers/staging/kpc2000/kpc2000/core.c pcard->dma_bar_base = ioremap_nocache(dma_bar_phys_addr, pcard 371 drivers/staging/kpc2000/kpc2000/core.c if (!pcard->dma_bar_base) { pcard 372 drivers/staging/kpc2000/kpc2000/core.c dev_err(&pcard->pdev->dev, pcard 377 drivers/staging/kpc2000/kpc2000/core.c dev_dbg(&pcard->pdev->dev, pcard 379 drivers/staging/kpc2000/kpc2000/core.c pcard->dma_bar_base); pcard 381 drivers/staging/kpc2000/kpc2000/core.c pcard->dma_common_regs = pcard->dma_bar_base + KPC_DMA_COMMON_OFFSET; pcard 383 drivers/staging/kpc2000/kpc2000/core.c err = pci_request_region(pcard->pdev, DMA_BAR, "kp2000_pcie"); pcard 385 drivers/staging/kpc2000/kpc2000/core.c dev_err(&pcard->pdev->dev, pcard 391 drivers/staging/kpc2000/kpc2000/core.c pcard->dma_base_resource.start = dma_bar_phys_addr; pcard 392 drivers/staging/kpc2000/kpc2000/core.c pcard->dma_base_resource.end = dma_bar_phys_addr + pcard 394 drivers/staging/kpc2000/kpc2000/core.c pcard->dma_base_resource.flags = IORESOURCE_MEM; pcard 397 drivers/staging/kpc2000/kpc2000/core.c pcard->sysinfo_regs_base = pcard->regs_bar_base; pcard 398 drivers/staging/kpc2000/kpc2000/core.c err = read_system_regs(pcard); pcard 404 drivers/staging/kpc2000/kpc2000/core.c pcard->sysinfo_regs_base + REG_INTERRUPT_MASK); pcard 407 drivers/staging/kpc2000/kpc2000/core.c pci_set_master(pcard->pdev); pcard 410 drivers/staging/kpc2000/kpc2000/core.c pci_read_config_word(pcard->pdev, PCI_COMMAND, ®val); pcard 412 drivers/staging/kpc2000/kpc2000/core.c pci_write_config_word(pcard->pdev, PCI_COMMAND, regval); pcard 415 drivers/staging/kpc2000/kpc2000/core.c pcie_capability_clear_and_set_word(pcard->pdev, PCI_EXP_DEVCTL, pcard 420 drivers/staging/kpc2000/kpc2000/core.c pcie_capability_clear_and_set_word(pcard->pdev, PCI_EXP_DEVCTL, pcard 423 drivers/staging/kpc2000/kpc2000/core.c pcie_capability_clear_and_set_word(pcard->pdev, PCI_EXP_DEVCTL, pcard 428 drivers/staging/kpc2000/kpc2000/core.c pcie_capability_clear_and_set_word(pcard->pdev, PCI_EXP_DEVCTL, 0, pcard 434 drivers/staging/kpc2000/kpc2000/core.c err = dma_set_mask(PCARD_TO_DEV(pcard), DMA_BIT_MASK(64)); pcard 436 drivers/staging/kpc2000/kpc2000/core.c dev_err(&pcard->pdev->dev, pcard 440 drivers/staging/kpc2000/kpc2000/core.c dev_dbg(&pcard->pdev->dev, pcard 441 drivers/staging/kpc2000/kpc2000/core.c "Using DMA mask %0llx\n", dma_get_mask(PCARD_TO_DEV(pcard))); pcard 443 drivers/staging/kpc2000/kpc2000/core.c err = pci_enable_msi(pcard->pdev); pcard 447 drivers/staging/kpc2000/kpc2000/core.c err = request_irq(pcard->pdev->irq, kp2000_irq_handler, IRQF_SHARED, pcard 448 drivers/staging/kpc2000/kpc2000/core.c pcard->name, pcard); pcard 450 drivers/staging/kpc2000/kpc2000/core.c dev_err(&pcard->pdev->dev, pcard 461 drivers/staging/kpc2000/kpc2000/core.c err = kp2000_probe_cores(pcard); pcard 467 drivers/staging/kpc2000/kpc2000/core.c pcard->dma_common_regs); pcard 469 drivers/staging/kpc2000/kpc2000/core.c mutex_unlock(&pcard->sem); pcard 475 drivers/staging/kpc2000/kpc2000/core.c free_irq(pcard->pdev->irq, pcard); pcard 477 drivers/staging/kpc2000/kpc2000/core.c pci_disable_msi(pcard->pdev); pcard 481 drivers/staging/kpc2000/kpc2000/core.c iounmap(pcard->dma_bar_base); pcard 485 drivers/staging/kpc2000/kpc2000/core.c iounmap(pcard->regs_bar_base); pcard 487 drivers/staging/kpc2000/kpc2000/core.c pci_disable_device(pcard->pdev); pcard 489 drivers/staging/kpc2000/kpc2000/core.c mutex_unlock(&pcard->sem); pcard 490 drivers/staging/kpc2000/kpc2000/core.c ida_simple_remove(&card_num_ida, pcard->card_num); pcard 492 drivers/staging/kpc2000/kpc2000/core.c kfree(pcard); pcard 498 drivers/staging/kpc2000/kpc2000/core.c struct kp2000_device *pcard = pci_get_drvdata(pdev); pcard 500 drivers/staging/kpc2000/kpc2000/core.c if (!pcard) pcard 503 drivers/staging/kpc2000/kpc2000/core.c mutex_lock(&pcard->sem); pcard 504 drivers/staging/kpc2000/kpc2000/core.c kp2000_remove_cores(pcard); pcard 505 drivers/staging/kpc2000/kpc2000/core.c mfd_remove_devices(PCARD_TO_DEV(pcard)); pcard 507 drivers/staging/kpc2000/kpc2000/core.c free_irq(pcard->pdev->irq, pcard); pcard 508 drivers/staging/kpc2000/kpc2000/core.c pci_disable_msi(pcard->pdev); pcard 509 drivers/staging/kpc2000/kpc2000/core.c if (pcard->dma_bar_base) { pcard 510 drivers/staging/kpc2000/kpc2000/core.c iounmap(pcard->dma_bar_base); pcard 512 drivers/staging/kpc2000/kpc2000/core.c pcard->dma_bar_base = NULL; pcard 514 drivers/staging/kpc2000/kpc2000/core.c if (pcard->regs_bar_base) { pcard 515 drivers/staging/kpc2000/kpc2000/core.c iounmap(pcard->regs_bar_base); pcard 517 drivers/staging/kpc2000/kpc2000/core.c pcard->regs_bar_base = NULL; pcard 519 drivers/staging/kpc2000/kpc2000/core.c pci_disable_device(pcard->pdev); pcard 521 drivers/staging/kpc2000/kpc2000/core.c mutex_unlock(&pcard->sem); pcard 522 drivers/staging/kpc2000/kpc2000/core.c ida_simple_remove(&card_num_ida, pcard->card_num); pcard 523 drivers/staging/kpc2000/kpc2000/core.c kfree(pcard); pcard 85 drivers/staging/kpc2000/kpc2000/pcie.h int kp2000_probe_cores(struct kp2000_device *pcard); pcard 86 drivers/staging/kpc2000/kpc2000/pcie.h void kp2000_remove_cores(struct kp2000_device *pcard); pcard 89 drivers/staging/kpc2000/kpc2000/pcie.h #define PCARD_TO_DEV(pcard) (&(pcard->pdev->dev)) pcard 233 include/linux/pnp.h static inline void *pnp_get_card_drvdata(struct pnp_card_link *pcard) pcard 235 include/linux/pnp.h return pcard->driver_data; pcard 238 include/linux/pnp.h static inline void pnp_set_card_drvdata(struct pnp_card_link *pcard, void *data) pcard 240 include/linux/pnp.h pcard->driver_data = data; pcard 126 sound/isa/ad1816a/ad1816a.c static int snd_card_ad1816a_probe(int dev, struct pnp_card_link *pcard, pcard 134 sound/isa/ad1816a/ad1816a.c error = snd_card_new(&pcard->card->dev, pcard 141 sound/isa/ad1816a/ad1816a.c if ((error = snd_card_ad1816a_pnp(dev, pcard, pid))) { pcard 203 sound/isa/ad1816a/ad1816a.c pnp_set_card_drvdata(pcard, card); pcard 228 sound/isa/ad1816a/ad1816a.c static void snd_ad1816a_pnp_remove(struct pnp_card_link *pcard) pcard 230 sound/isa/ad1816a/ad1816a.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 231 sound/isa/ad1816a/ad1816a.c pnp_set_card_drvdata(pcard, NULL); pcard 235 sound/isa/ad1816a/ad1816a.c static int snd_ad1816a_pnp_suspend(struct pnp_card_link *pcard, pcard 238 sound/isa/ad1816a/ad1816a.c struct snd_card *card = pnp_get_card_drvdata(pcard); pcard 245 sound/isa/ad1816a/ad1816a.c static int snd_ad1816a_pnp_resume(struct pnp_card_link *pcard) pcard 247 sound/isa/ad1816a/ad1816a.c struct snd_card *card = pnp_get_card_drvdata(pcard); pcard 175 sound/isa/als100.c struct pnp_card_link *pcard, pcard 184 sound/isa/als100.c error = snd_card_new(&pcard->card->dev, pcard 191 sound/isa/als100.c if ((error = snd_card_als100_pnp(dev, acard, pcard, pid))) { pcard 274 sound/isa/als100.c pnp_set_card_drvdata(pcard, card); pcard 299 sound/isa/als100.c static void snd_als100_pnp_remove(struct pnp_card_link *pcard) pcard 301 sound/isa/als100.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 302 sound/isa/als100.c pnp_set_card_drvdata(pcard, NULL); pcard 306 sound/isa/als100.c static int snd_als100_pnp_suspend(struct pnp_card_link *pcard, pm_message_t state) pcard 308 sound/isa/als100.c struct snd_card *card = pnp_get_card_drvdata(pcard); pcard 317 sound/isa/als100.c static int snd_als100_pnp_resume(struct pnp_card_link *pcard) pcard 319 sound/isa/als100.c struct snd_card *card = pnp_get_card_drvdata(pcard); pcard 166 sound/isa/azt2320.c struct pnp_card_link *pcard, pcard 175 sound/isa/azt2320.c error = snd_card_new(&pcard->card->dev, pcard 182 sound/isa/azt2320.c if ((error = snd_card_azt2320_pnp(dev, acard, pcard, pid))) { pcard 251 sound/isa/azt2320.c pnp_set_card_drvdata(pcard, card); pcard 276 sound/isa/azt2320.c static void snd_azt2320_pnp_remove(struct pnp_card_link *pcard) pcard 278 sound/isa/azt2320.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 279 sound/isa/azt2320.c pnp_set_card_drvdata(pcard, NULL); pcard 283 sound/isa/azt2320.c static int snd_azt2320_pnp_suspend(struct pnp_card_link *pcard, pm_message_t state) pcard 285 sound/isa/azt2320.c struct snd_card *card = pnp_get_card_drvdata(pcard); pcard 294 sound/isa/azt2320.c static int snd_azt2320_pnp_resume(struct pnp_card_link *pcard) pcard 296 sound/isa/azt2320.c struct snd_card *card = pnp_get_card_drvdata(pcard); pcard 672 sound/isa/cmi8330.c static int snd_cmi8330_pnp_detect(struct pnp_card_link *pcard, pcard 686 sound/isa/cmi8330.c res = snd_cmi8330_card_new(&pcard->card->dev, dev, &card); pcard 689 sound/isa/cmi8330.c if ((res = snd_cmi8330_pnp(dev, card->private_data, pcard, pid)) < 0) { pcard 698 sound/isa/cmi8330.c pnp_set_card_drvdata(pcard, card); pcard 703 sound/isa/cmi8330.c static void snd_cmi8330_pnp_remove(struct pnp_card_link *pcard) pcard 705 sound/isa/cmi8330.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 706 sound/isa/cmi8330.c pnp_set_card_drvdata(pcard, NULL); pcard 710 sound/isa/cmi8330.c static int snd_cmi8330_pnp_suspend(struct pnp_card_link *pcard, pm_message_t state) pcard 712 sound/isa/cmi8330.c return snd_cmi8330_suspend(pnp_get_card_drvdata(pcard)); pcard 715 sound/isa/cmi8330.c static int snd_cmi8330_pnp_resume(struct pnp_card_link *pcard) pcard 717 sound/isa/cmi8330.c return snd_cmi8330_resume(pnp_get_card_drvdata(pcard)); pcard 613 sound/isa/cs423x/cs4236.c static int snd_cs423x_pnpc_detect(struct pnp_card_link *pcard, pcard 627 sound/isa/cs423x/cs4236.c res = snd_cs423x_card_new(&pcard->card->dev, dev, &card); pcard 630 sound/isa/cs423x/cs4236.c if ((res = snd_card_cs423x_pnpc(dev, card->private_data, pcard, pid)) < 0) { pcard 640 sound/isa/cs423x/cs4236.c pnp_set_card_drvdata(pcard, card); pcard 645 sound/isa/cs423x/cs4236.c static void snd_cs423x_pnpc_remove(struct pnp_card_link *pcard) pcard 647 sound/isa/cs423x/cs4236.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 648 sound/isa/cs423x/cs4236.c pnp_set_card_drvdata(pcard, NULL); pcard 652 sound/isa/cs423x/cs4236.c static int snd_cs423x_pnpc_suspend(struct pnp_card_link *pcard, pm_message_t state) pcard 654 sound/isa/cs423x/cs4236.c return snd_cs423x_suspend(pnp_get_card_drvdata(pcard)); pcard 657 sound/isa/cs423x/cs4236.c static int snd_cs423x_pnpc_resume(struct pnp_card_link *pcard) pcard 659 sound/isa/cs423x/cs4236.c return snd_cs423x_resume(pnp_get_card_drvdata(pcard)); pcard 218 sound/isa/es1688/es1688.c struct pnp_card_link *pcard, pcard 225 sound/isa/es1688/es1688.c pdev = pnp_request_card_device(pcard, pid->devs[0].id, NULL); pcard 242 sound/isa/es1688/es1688.c static int snd_es968_pnp_detect(struct pnp_card_link *pcard, pcard 258 sound/isa/es1688/es1688.c error = snd_card_new(&pcard->card->dev, pcard 264 sound/isa/es1688/es1688.c error = snd_card_es968_pnp(card, dev, pcard, pid); pcard 274 sound/isa/es1688/es1688.c pnp_set_card_drvdata(pcard, card); pcard 279 sound/isa/es1688/es1688.c static void snd_es968_pnp_remove(struct pnp_card_link *pcard) pcard 281 sound/isa/es1688/es1688.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 282 sound/isa/es1688/es1688.c pnp_set_card_drvdata(pcard, NULL); pcard 287 sound/isa/es1688/es1688.c static int snd_es968_pnp_suspend(struct pnp_card_link *pcard, pcard 290 sound/isa/es1688/es1688.c struct snd_card *card = pnp_get_card_drvdata(pcard); pcard 296 sound/isa/es1688/es1688.c static int snd_es968_pnp_resume(struct pnp_card_link *pcard) pcard 298 sound/isa/es1688/es1688.c struct snd_card *card = pnp_get_card_drvdata(pcard); pcard 2324 sound/isa/es18xx.c static int snd_audiodrive_pnpc_detect(struct pnp_card_link *pcard, pcard 2338 sound/isa/es18xx.c res = snd_es18xx_card_new(&pcard->card->dev, dev, &card); pcard 2342 sound/isa/es18xx.c if ((res = snd_audiodrive_pnpc(dev, card->private_data, pcard, pid)) < 0) { pcard 2351 sound/isa/es18xx.c pnp_set_card_drvdata(pcard, card); pcard 2356 sound/isa/es18xx.c static void snd_audiodrive_pnpc_remove(struct pnp_card_link *pcard) pcard 2358 sound/isa/es18xx.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 2359 sound/isa/es18xx.c pnp_set_card_drvdata(pcard, NULL); pcard 2363 sound/isa/es18xx.c static int snd_audiodrive_pnpc_suspend(struct pnp_card_link *pcard, pm_message_t state) pcard 2365 sound/isa/es18xx.c return snd_es18xx_suspend(pnp_get_card_drvdata(pcard), state); pcard 2368 sound/isa/es18xx.c static int snd_audiodrive_pnpc_resume(struct pnp_card_link *pcard) pcard 2370 sound/isa/es18xx.c return snd_es18xx_resume(pnp_get_card_drvdata(pcard)); pcard 844 sound/isa/gus/interwave.c static int snd_interwave_pnp_detect(struct pnp_card_link *pcard, pcard 858 sound/isa/gus/interwave.c res = snd_interwave_card_new(&pcard->card->dev, dev, &card); pcard 862 sound/isa/gus/interwave.c if ((res = snd_interwave_pnp(dev, card->private_data, pcard, pid)) < 0) { pcard 870 sound/isa/gus/interwave.c pnp_set_card_drvdata(pcard, card); pcard 875 sound/isa/gus/interwave.c static void snd_interwave_pnp_remove(struct pnp_card_link *pcard) pcard 877 sound/isa/gus/interwave.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 878 sound/isa/gus/interwave.c pnp_set_card_drvdata(pcard, NULL); pcard 1068 sound/isa/msnd/msnd_pinnacle.c static int snd_msnd_pnp_detect(struct pnp_card_link *pcard, pcard 1088 sound/isa/msnd/msnd_pinnacle.c pnp_dev = pnp_request_card_device(pcard, pid->devs[0].id, NULL); pcard 1092 sound/isa/msnd/msnd_pinnacle.c mpu_dev = pnp_request_card_device(pcard, pid->devs[1].id, NULL); pcard 1110 sound/isa/msnd/msnd_pinnacle.c ret = snd_card_new(&pcard->card->dev, pcard 1163 sound/isa/msnd/msnd_pinnacle.c pnp_set_card_drvdata(pcard, card); pcard 1172 sound/isa/msnd/msnd_pinnacle.c static void snd_msnd_pnp_remove(struct pnp_card_link *pcard) pcard 1174 sound/isa/msnd/msnd_pinnacle.c snd_msnd_unload(pnp_get_card_drvdata(pcard)); pcard 1175 sound/isa/msnd/msnd_pinnacle.c pnp_set_card_drvdata(pcard, NULL); pcard 768 sound/isa/opl3sa2.c static int snd_opl3sa2_pnp_cdetect(struct pnp_card_link *pcard, pcard 776 sound/isa/opl3sa2.c pdev = pnp_request_card_device(pcard, id->devs[0].id, NULL); pcard 800 sound/isa/opl3sa2.c pnp_set_card_drvdata(pcard, card); pcard 805 sound/isa/opl3sa2.c static void snd_opl3sa2_pnp_cremove(struct pnp_card_link *pcard) pcard 807 sound/isa/opl3sa2.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 808 sound/isa/opl3sa2.c pnp_set_card_drvdata(pcard, NULL); pcard 812 sound/isa/opl3sa2.c static int snd_opl3sa2_pnp_csuspend(struct pnp_card_link *pcard, pm_message_t state) pcard 814 sound/isa/opl3sa2.c return snd_opl3sa2_suspend(pnp_get_card_drvdata(pcard), state); pcard 816 sound/isa/opl3sa2.c static int snd_opl3sa2_pnp_cresume(struct pnp_card_link *pcard) pcard 818 sound/isa/opl3sa2.c return snd_opl3sa2_resume(pnp_get_card_drvdata(pcard)); pcard 1565 sound/isa/opti9xx/miro.c static int snd_miro_pnp_probe(struct pnp_card_link *pcard, pcard 1576 sound/isa/opti9xx/miro.c err = snd_card_new(&pcard->card->dev, index, id, THIS_MODULE, pcard 1584 sound/isa/opti9xx/miro.c err = snd_card_miro_pnp(miro, pcard, pid); pcard 1609 sound/isa/opti9xx/miro.c pnp_set_card_drvdata(pcard, card); pcard 1614 sound/isa/opti9xx/miro.c static void snd_miro_pnp_remove(struct pnp_card_link *pcard) pcard 1616 sound/isa/opti9xx/miro.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 1617 sound/isa/opti9xx/miro.c pnp_set_card_drvdata(pcard, NULL); pcard 1086 sound/isa/opti9xx/opti92x-ad1848.c static int snd_opti9xx_pnp_probe(struct pnp_card_link *pcard, pcard 1097 sound/isa/opti9xx/opti92x-ad1848.c error = snd_opti9xx_card_new(&pcard->card->dev, &card); pcard 1102 sound/isa/opti9xx/opti92x-ad1848.c hw = snd_card_opti9xx_pnp(chip, pcard, pid); pcard 1132 sound/isa/opti9xx/opti92x-ad1848.c pnp_set_card_drvdata(pcard, card); pcard 1137 sound/isa/opti9xx/opti92x-ad1848.c static void snd_opti9xx_pnp_remove(struct pnp_card_link *pcard) pcard 1139 sound/isa/opti9xx/opti92x-ad1848.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 1140 sound/isa/opti9xx/opti92x-ad1848.c pnp_set_card_drvdata(pcard, NULL); pcard 1145 sound/isa/opti9xx/opti92x-ad1848.c static int snd_opti9xx_pnp_suspend(struct pnp_card_link *pcard, pcard 1148 sound/isa/opti9xx/opti92x-ad1848.c return snd_opti9xx_suspend(pnp_get_card_drvdata(pcard)); pcard 1151 sound/isa/opti9xx/opti92x-ad1848.c static int snd_opti9xx_pnp_resume(struct pnp_card_link *pcard) pcard 1153 sound/isa/opti9xx/opti92x-ad1848.c return snd_opti9xx_resume(pnp_get_card_drvdata(pcard)); pcard 590 sound/isa/sb/sb16.c static int snd_sb16_pnp_detect(struct pnp_card_link *pcard, pcard 600 sound/isa/sb/sb16.c res = snd_sb16_card_new(&pcard->card->dev, dev, &card); pcard 603 sound/isa/sb/sb16.c if ((res = snd_card_sb16_pnp(dev, card->private_data, pcard, pid)) < 0 || pcard 608 sound/isa/sb/sb16.c pnp_set_card_drvdata(pcard, card); pcard 616 sound/isa/sb/sb16.c static void snd_sb16_pnp_remove(struct pnp_card_link *pcard) pcard 618 sound/isa/sb/sb16.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 619 sound/isa/sb/sb16.c pnp_set_card_drvdata(pcard, NULL); pcard 623 sound/isa/sb/sb16.c static int snd_sb16_pnp_suspend(struct pnp_card_link *pcard, pm_message_t state) pcard 625 sound/isa/sb/sb16.c return snd_sb16_suspend(pnp_get_card_drvdata(pcard), state); pcard 627 sound/isa/sb/sb16.c static int snd_sb16_pnp_resume(struct pnp_card_link *pcard) pcard 629 sound/isa/sb/sb16.c return snd_sb16_resume(pnp_get_card_drvdata(pcard)); pcard 1213 sound/isa/sscape.c static int sscape_pnp_detect(struct pnp_card_link *pcard, pcard 1233 sound/isa/sscape.c dev = pnp_request_card_device(pcard, pid->devs[0].id, NULL); pcard 1248 sound/isa/sscape.c ret = snd_card_new(&pcard->card->dev, pcard 1289 sound/isa/sscape.c pnp_set_card_drvdata(pcard, card); pcard 1298 sound/isa/sscape.c static void sscape_pnp_remove(struct pnp_card_link *pcard) pcard 1300 sound/isa/sscape.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 1301 sound/isa/sscape.c pnp_set_card_drvdata(pcard, NULL); pcard 588 sound/isa/wavefront/wavefront.c static int snd_wavefront_pnp_detect(struct pnp_card_link *pcard, pcard 602 sound/isa/wavefront/wavefront.c res = snd_wavefront_card_new(&pcard->card->dev, dev, &card); pcard 606 sound/isa/wavefront/wavefront.c if (snd_wavefront_pnp (dev, card->private_data, pcard, pid) < 0) { pcard 617 sound/isa/wavefront/wavefront.c pnp_set_card_drvdata(pcard, card); pcard 622 sound/isa/wavefront/wavefront.c static void snd_wavefront_pnp_remove(struct pnp_card_link *pcard) pcard 624 sound/isa/wavefront/wavefront.c snd_card_free(pnp_get_card_drvdata(pcard)); pcard 625 sound/isa/wavefront/wavefront.c pnp_set_card_drvdata(pcard, NULL);