18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * This file is subject to the terms and conditions of the GNU General Public
38c2ecf20Sopenharmony_ci * License.  See the file "COPYING" in the main directory of this archive
48c2ecf20Sopenharmony_ci * for more details.
58c2ecf20Sopenharmony_ci */
68c2ecf20Sopenharmony_ci#ifndef __ASM_TXX9_PCI_H
78c2ecf20Sopenharmony_ci#define __ASM_TXX9_PCI_H
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci#include <linux/pci.h>
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ciextern struct pci_controller txx9_primary_pcic;
128c2ecf20Sopenharmony_cistruct pci_controller *
138c2ecf20Sopenharmony_citxx9_alloc_pci_controller(struct pci_controller *pcic,
148c2ecf20Sopenharmony_ci			  unsigned long mem_base, unsigned long mem_size,
158c2ecf20Sopenharmony_ci			  unsigned long io_base, unsigned long io_size);
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ciint txx9_pci66_check(struct pci_controller *hose, int top_bus,
188c2ecf20Sopenharmony_ci			int current_bus);
198c2ecf20Sopenharmony_ciextern int txx9_pci_mem_high __initdata;
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ciextern int txx9_pci_option;
228c2ecf20Sopenharmony_ci#define TXX9_PCI_OPT_PICMG	0x0002
238c2ecf20Sopenharmony_ci#define TXX9_PCI_OPT_CLK_33	0x0008
248c2ecf20Sopenharmony_ci#define TXX9_PCI_OPT_CLK_66	0x0010
258c2ecf20Sopenharmony_ci#define TXX9_PCI_OPT_CLK_MASK	\
268c2ecf20Sopenharmony_ci	(TXX9_PCI_OPT_CLK_33 | TXX9_PCI_OPT_CLK_66)
278c2ecf20Sopenharmony_ci#define TXX9_PCI_OPT_CLK_AUTO	TXX9_PCI_OPT_CLK_MASK
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_cienum txx9_pci_err_action {
308c2ecf20Sopenharmony_ci	TXX9_PCI_ERR_REPORT,
318c2ecf20Sopenharmony_ci	TXX9_PCI_ERR_IGNORE,
328c2ecf20Sopenharmony_ci	TXX9_PCI_ERR_PANIC,
338c2ecf20Sopenharmony_ci};
348c2ecf20Sopenharmony_ciextern enum txx9_pci_err_action txx9_pci_err_action;
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ciextern char * (*txx9_board_pcibios_setup)(char *str);
378c2ecf20Sopenharmony_cichar *txx9_pcibios_setup(char *str);
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci#endif /* __ASM_TXX9_PCI_H */
40