Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Toshiba TC6393XB SoC support
4 *
5 * Copyright(c) 2005-2006 Chris Humbert
6 * Copyright(c) 2005 Dirk Opfer
7 * Copyright(c) 2005 Ian Molton <spyro@f2s.com>
8 * Copyright(c) 2007 Dmitry Baryshkov
9 *
10 * Based on code written by Sharp/Lineo for 2.4 kernels
11 * Based on locomo.c
12 */
13
14#ifndef MFD_TC6393XB_H
15#define MFD_TC6393XB_H
16
17#include <linux/fb.h>
18
19/* Also one should provide the CK3P6MI clock */
20struct tc6393xb_platform_data {
21 u16 scr_pll2cr; /* PLL2 Control */
22 u16 scr_gper; /* GP Enable */
23
24 int (*enable)(struct platform_device *dev);
25 void (*disable)(struct platform_device *dev);
26 int (*suspend)(struct platform_device *dev);
27 int (*resume)(struct platform_device *dev);
28
29 int irq_base; /* base for subdevice irqs */
30
31 struct tmio_nand_data *nand_data;
32 struct tmio_fb_data *fb_data;
33
34 unsigned resume_restore : 1; /* make special actions
35 to preserve the state
36 on suspend/resume */
37};
38
39extern int tc6393xb_lcd_mode(struct platform_device *fb,
40 const struct fb_videomode *mode);
41extern int tc6393xb_lcd_set_power(struct platform_device *fb, bool on);
42
43/*
44 * Relative to irq_base
45 */
46#define IRQ_TC6393_NAND 0
47#define IRQ_TC6393_MMC 1
48#define IRQ_TC6393_OHCI 2
49#define IRQ_TC6393_FB 4
50
51#define TC6393XB_NR_IRQS 8
52
53#endif