Commit | Line | Data |
---|---|---|
9dd0b194 LB |
1 | #ifndef __ARCH_ORION5X_COMMON_H |
2 | #define __ARCH_ORION5X_COMMON_H | |
3 | ||
044f6c7c LB |
4 | struct mv643xx_eth_platform_data; |
5 | struct mv_sata_platform_data; | |
6 | ||
9dd0b194 LB |
7 | /* |
8 | * Basic Orion init functions used early by machine-setup. | |
9 | */ | |
9dd0b194 LB |
10 | void orion5x_map_io(void); |
11 | void orion5x_init_irq(void); | |
12 | void orion5x_init(void); | |
ebe35aff | 13 | extern int orion5x_tclk; |
9dd0b194 LB |
14 | extern struct sys_timer orion5x_timer; |
15 | ||
16 | /* | |
17 | * Enumerations and functions for Orion windows mapping. Used by Orion core | |
18 | * functions to map its interfaces and by the machine-setup to map its on- | |
19 | * board devices. Details in /mach-orion/addr-map.c | |
20 | */ | |
21 | extern struct mbus_dram_target_info orion5x_mbus_dram_info; | |
22 | void orion5x_setup_cpu_mbus_bridge(void); | |
23 | void orion5x_setup_dev_boot_win(u32 base, u32 size); | |
24 | void orion5x_setup_dev0_win(u32 base, u32 size); | |
25 | void orion5x_setup_dev1_win(u32 base, u32 size); | |
26 | void orion5x_setup_dev2_win(u32 base, u32 size); | |
27 | void orion5x_setup_pcie_wa_win(u32 base, u32 size); | |
9dd0b194 | 28 | |
044f6c7c LB |
29 | void orion5x_ehci0_init(void); |
30 | void orion5x_ehci1_init(void); | |
31 | void orion5x_eth_init(struct mv643xx_eth_platform_data *eth_data); | |
32 | void orion5x_i2c_init(void); | |
33 | void orion5x_sata_init(struct mv_sata_platform_data *sata_data); | |
d323ade1 | 34 | void orion5x_spi_init(void); |
044f6c7c LB |
35 | void orion5x_uart0_init(void); |
36 | void orion5x_uart1_init(void); | |
1d5a1a6e | 37 | void orion5x_xor_init(void); |
044f6c7c | 38 | |
9dd0b194 | 39 | /* |
044f6c7c | 40 | * PCIe/PCI functions. |
9dd0b194 | 41 | */ |
9dd0b194 | 42 | struct pci_bus; |
044f6c7c | 43 | struct pci_sys_data; |
9dd0b194 LB |
44 | |
45 | void orion5x_pcie_id(u32 *dev, u32 *rev); | |
7a6bb262 | 46 | void orion5x_pci_disable(void); |
da01bba3 | 47 | void orion5x_pci_set_cardbus_mode(void); |
9dd0b194 LB |
48 | int orion5x_pci_sys_setup(int nr, struct pci_sys_data *sys); |
49 | struct pci_bus *orion5x_pci_sys_scan_bus(int nr, struct pci_sys_data *sys); | |
92b913b0 | 50 | int orion5x_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin); |
9dd0b194 LB |
51 | |
52 | /* | |
53 | * Valid GPIO pins according to MPP setup, used by machine-setup. | |
54 | * (/mach-orion/gpio.c). | |
55 | */ | |
19cfd5c0 | 56 | void orion5x_gpio_set_valid(unsigned pin, int valid); |
9dd0b194 LB |
57 | void gpio_display(void); /* debug */ |
58 | ||
9dd0b194 LB |
59 | struct machine_desc; |
60 | struct meminfo; | |
61 | struct tag; | |
62 | extern void __init tag_fixup_mem32(struct machine_desc *, struct tag *, | |
63 | char **, struct meminfo *); | |
64 | ||
65 | ||
66 | #endif |