xref: /openbmc/linux/arch/powerpc/sysdev/fsl_soc.h (revision 384740dc)
1 #ifndef __PPC_FSL_SOC_H
2 #define __PPC_FSL_SOC_H
3 #ifdef __KERNEL__
4 
5 #include <asm/mmu.h>
6 
7 extern phys_addr_t get_immrbase(void);
8 extern u32 get_brgfreq(void);
9 extern u32 get_baudrate(void);
10 extern u32 fsl_get_sys_freq(void);
11 
12 struct spi_board_info;
13 struct device_node;
14 
15 extern int fsl_spi_init(struct spi_board_info *board_infos,
16 			unsigned int num_board_infos,
17 			void (*activate_cs)(u8 cs, u8 polarity),
18 			void (*deactivate_cs)(u8 cs, u8 polarity));
19 
20 extern void fsl_rstcr_restart(char *cmd);
21 
22 #if defined(CONFIG_FB_FSL_DIU) || defined(CONFIG_FB_FSL_DIU_MODULE)
23 #include <linux/bootmem.h>
24 #include <asm/rheap.h>
25 struct platform_diu_data_ops {
26 	rh_block_t diu_rh_block[16];
27 	rh_info_t diu_rh_info;
28 	unsigned long diu_size;
29 	void *diu_mem;
30 
31 	unsigned int (*get_pixel_format) (unsigned int bits_per_pixel,
32 		int monitor_port);
33 	void (*set_gamma_table) (int monitor_port, char *gamma_table_base);
34 	void (*set_monitor_port) (int monitor_port);
35 	void (*set_pixel_clock) (unsigned int pixclock);
36 	ssize_t (*show_monitor_port) (int monitor_port, char *buf);
37 	int (*set_sysfs_monitor_port) (int val);
38 };
39 
40 extern struct platform_diu_data_ops diu_ops;
41 int __init preallocate_diu_videomemory(void);
42 #endif
43 
44 #endif
45 #endif
46