Loading...
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __PPC_FSL_SOC_H
3#define __PPC_FSL_SOC_H
4#ifdef __KERNEL__
5
6#include <asm/mmu.h>
7
8struct spi_device;
9
10extern phys_addr_t get_immrbase(void);
11#if defined(CONFIG_CPM) || defined(CONFIG_QUICC_ENGINE)
12extern u32 get_brgfreq(void);
13extern u32 get_baudrate(void);
14#else
15static inline u32 get_brgfreq(void) { return -1; }
16static inline u32 get_baudrate(void) { return -1; }
17#endif
18extern u32 fsl_get_sys_freq(void);
19
20struct spi_board_info;
21struct device_node;
22
23/* The different ports that the DIU can be connected to */
24enum fsl_diu_monitor_port {
25 FSL_DIU_PORT_DVI, /* DVI */
26 FSL_DIU_PORT_LVDS, /* Single-link LVDS */
27 FSL_DIU_PORT_DLVDS /* Dual-link LVDS */
28};
29
30struct platform_diu_data_ops {
31 u32 (*get_pixel_format)(enum fsl_diu_monitor_port port,
32 unsigned int bpp);
33 void (*set_gamma_table)(enum fsl_diu_monitor_port port,
34 char *gamma_table_base);
35 void (*set_monitor_port)(enum fsl_diu_monitor_port port);
36 void (*set_pixel_clock)(unsigned int pixclock);
37 enum fsl_diu_monitor_port (*valid_monitor_port)
38 (enum fsl_diu_monitor_port port);
39 void (*release_bootmem)(void);
40};
41
42extern struct platform_diu_data_ops diu_ops;
43
44void __noreturn fsl_hv_restart(char *cmd);
45void __noreturn fsl_hv_halt(void);
46
47#endif
48#endif
1#ifndef __PPC_FSL_SOC_H
2#define __PPC_FSL_SOC_H
3#ifdef __KERNEL__
4
5#include <asm/mmu.h>
6
7struct spi_device;
8
9extern phys_addr_t get_immrbase(void);
10#if defined(CONFIG_CPM2) || defined(CONFIG_QUICC_ENGINE) || defined(CONFIG_8xx)
11extern u32 get_brgfreq(void);
12extern u32 get_baudrate(void);
13#else
14static inline u32 get_brgfreq(void) { return -1; }
15static inline u32 get_baudrate(void) { return -1; }
16#endif
17extern u32 fsl_get_sys_freq(void);
18
19struct spi_board_info;
20struct device_node;
21
22extern void fsl_rstcr_restart(char *cmd);
23
24#if defined(CONFIG_FB_FSL_DIU) || defined(CONFIG_FB_FSL_DIU_MODULE)
25struct platform_diu_data_ops {
26 unsigned int (*get_pixel_format) (unsigned int bits_per_pixel,
27 int monitor_port);
28 void (*set_gamma_table) (int monitor_port, char *gamma_table_base);
29 void (*set_monitor_port) (int monitor_port);
30 void (*set_pixel_clock) (unsigned int pixclock);
31 ssize_t (*show_monitor_port) (int monitor_port, char *buf);
32 int (*set_sysfs_monitor_port) (int val);
33 void (*release_bootmem) (void);
34};
35
36extern struct platform_diu_data_ops diu_ops;
37#endif
38
39void fsl_hv_restart(char *cmd);
40void fsl_hv_halt(void);
41
42#endif
43#endif