1 /******************************************************************************* 2 * 3 * "cs46xxpm-24.h" -- Cirrus Logic-Crystal CS46XX linux audio driver. 4 * 5 * Copyright (C) 2000,2001 Cirrus Logic Corp. 6 * -- tom woller (twoller@crystal.cirrus.com) or 7 * (pcaudio@crystal.cirrus.com). 8 * 9 * This program is free software; you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License as published by 11 * the Free Software Foundation; either version 2 of the License, or 12 * (at your option) any later version. 13 * 14 * This program is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with this program; if not, write to the Free Software 21 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 22 * 23 * 12/22/00 trw - new file. 24 * 25 *******************************************************************************/ 26 #ifndef __CS46XXPM24_H 27 #define __CS46XXPM24_H 28 29 #include <linux/pm.h> 30 #include "cs46xxpm.h" 31 32 33 #define CS46XX_ACPI_SUPPORT 1 34 #ifdef CS46XX_ACPI_SUPPORT 35 /* 36 * for now (12/22/00) only enable the pm_register PM support. 37 * allow these table entries to be null. 38 */ 39 static int cs46xx_suspend_tbl(struct pci_dev *pcidev, u32 state); 40 static int cs46xx_resume_tbl(struct pci_dev *pcidev); 41 #define cs_pm_register(a, b, c) 0 42 #define cs_pm_unregister_all(a) 43 #define CS46XX_SUSPEND_TBL cs46xx_suspend_tbl 44 #define CS46XX_RESUME_TBL cs46xx_resume_tbl 45 #else 46 #define cs_pm_register(a, b, c) pm_register((a), (b), (c)); 47 #define cs_pm_unregister_all(a) pm_unregister_all((a)); 48 #define CS46XX_SUSPEND_TBL cs46xx_null 49 #define CS46XX_RESUME_TBL cs46xx_null 50 #endif 51 int cs46xx_pm_callback(struct pm_dev *dev, pm_request_t rqst, void *data); 52 53 #endif 54