162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */
262306a36Sopenharmony_ci/*******************************************************************************
362306a36Sopenharmony_ci
462306a36Sopenharmony_ci    AudioScience HPI driver
562306a36Sopenharmony_ci    Copyright (C) 1997-2011  AudioScience Inc. <support@audioscience.com>
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci
862306a36Sopenharmony_ciLinux HPI ioctl, and shared module init functions
962306a36Sopenharmony_ci*******************************************************************************/
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ciint asihpi_adapter_probe(struct pci_dev *pci_dev,
1262306a36Sopenharmony_ci			 const struct pci_device_id *pci_id);
1362306a36Sopenharmony_civoid asihpi_adapter_remove(struct pci_dev *pci_dev);
1462306a36Sopenharmony_civoid __init asihpi_init(void);
1562306a36Sopenharmony_civoid __exit asihpi_exit(void);
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ciint asihpi_hpi_release(struct file *file);
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_cilong asihpi_hpi_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci/* This is called from hpifunc.c functions, called by ALSA
2262306a36Sopenharmony_ci * (or other kernel process) In this case there is no file descriptor
2362306a36Sopenharmony_ci * available for the message cache code
2462306a36Sopenharmony_ci */
2562306a36Sopenharmony_civoid hpi_send_recv(struct hpi_message *phm, struct hpi_response *phr);
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci#define HOWNER_KERNEL ((void *)-1)
28