Blame view
include/linux/fsl_devices.h
3.77 KB
1da177e4c Linux-2.6.12-rc2 |
1 2 3 4 5 6 |
/* * include/linux/fsl_devices.h * * Definitions for any platform device related flags or structures for * Freescale processor devices * |
4c8d3d997 [PATCH] Update em... |
7 |
* Maintainer: Kumar Gala <galak@kernel.crashing.org> |
1da177e4c Linux-2.6.12-rc2 |
8 9 10 11 12 13 14 15 |
* * Copyright 2004 Freescale Semiconductor, Inc * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. */ |
1da177e4c Linux-2.6.12-rc2 |
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
#ifndef _FSL_DEVICE_H_ #define _FSL_DEVICE_H_ #include <linux/types.h> /* * Some conventions on how we handle peripherals on Freescale chips * * unique device: a platform_device entry in fsl_plat_devs[] plus * associated device information in its platform_data structure. * * A chip is described by a set of unique devices. * * Each sub-arch has its own master list of unique devices and * enumerates them by enum fsl_devices in a sub-arch specific header * * The platform data structure is broken into two parts. The * first is device specific information that help identify any * unique features of a peripheral. The second is any * information that may be defined by the board or how the device * is connected externally of the chip. * * naming conventions: * - platform data structures: <driver>_platform_data * - platform data device flags: FSL_<driver>_DEV_<FLAG> * - platform data board flags: FSL_<driver>_BRD_<FLAG> * */ |
80cb9aee0 [PATCH] USB: EHCI... |
44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
enum fsl_usb2_operating_modes { FSL_USB2_MPH_HOST, FSL_USB2_DR_HOST, FSL_USB2_DR_DEVICE, FSL_USB2_DR_OTG, }; enum fsl_usb2_phy_modes { FSL_USB2_PHY_NONE, FSL_USB2_PHY_ULPI, FSL_USB2_PHY_UTMI, FSL_USB2_PHY_UTMI_WIDE, FSL_USB2_PHY_SERIAL, }; |
230f7ede6 USB: add USB EHCI... |
58 59 |
struct clk; struct platform_device; |
80cb9aee0 [PATCH] USB: EHCI... |
60 61 |
struct fsl_usb2_platform_data { /* board specific information */ |
986585385 [POWERPC] Add QUI... |
62 63 64 |
enum fsl_usb2_operating_modes operating_mode; enum fsl_usb2_phy_modes phy_mode; unsigned int port_enables; |
69cb1ec4c mxc_udc: add work... |
65 |
unsigned int workaround; |
230f7ede6 USB: add USB EHCI... |
66 67 68 69 70 |
int (*init)(struct platform_device *); void (*exit)(struct platform_device *); void __iomem *regs; /* ioremap'd register base */ struct clk *clk; |
83722bc94 USB: extend ehci-... |
71 |
unsigned power_budget; /* hcd->power_budget */ |
230f7ede6 USB: add USB EHCI... |
72 73 74 75 76 77 78 |
unsigned big_endian_mmio:1; unsigned big_endian_desc:1; unsigned es:1; /* need USBMODE:ES */ unsigned le_setup_buf:1; unsigned have_sysif_regs:1; unsigned invert_drvvbus:1; unsigned invert_pwr_fault:1; |
13b7ee2a9 USB: ehci-fsl: ad... |
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
unsigned suspended:1; unsigned already_suspended:1; /* register save area for suspend/resume */ u32 pm_command; u32 pm_status; u32 pm_intr_enable; u32 pm_frame_index; u32 pm_segment; u32 pm_frame_list; u32 pm_async_next; u32 pm_configured_flag; u32 pm_portsc; u32 pm_usbgenctrl; |
80cb9aee0 [PATCH] USB: EHCI... |
94 95 96 97 98 |
}; /* Flags in fsl_usb2_mph_platform_data */ #define FSL_USB2_PORT0_ENABLED 0x00000001 #define FSL_USB2_PORT1_ENABLED 0x00000002 |
69cb1ec4c mxc_udc: add work... |
99 |
#define FLS_USB2_WORKAROUND_ENGCM09152 (1 << 0) |
364fdbc00 spi_mpc83xx: rewo... |
100 |
struct spi_device; |
ccf06998f [PATCH] spi: add ... |
101 102 |
struct fsl_spi_platform_data { u32 initial_spmode; /* initial SPMODE value */ |
35b4b3c0c spi_mpc83xx: add ... |
103 |
s16 bus_num; |
87ec0e98c spi_mpc8xxx: Turn... |
104 |
unsigned int flags; |
7d6709a20 powerpc: Fix buil... |
105 106 107 108 109 |
#define SPI_QE_CPU_MODE (1 << 0) /* QE CPU ("PIO") mode */ #define SPI_CPM_MODE (1 << 1) /* CPM/QE ("DMA") mode */ #define SPI_CPM1 (1 << 2) /* SPI unit is in CPM1 block */ #define SPI_CPM2 (1 << 3) /* SPI unit is in CPM2 block */ #define SPI_QE (1 << 4) /* SPI unit is in QE block */ |
ccf06998f [PATCH] spi: add ... |
110 111 |
/* board specific information */ u16 max_chipselect; |
364fdbc00 spi_mpc83xx: rewo... |
112 |
void (*cs_control)(struct spi_device *spi, bool on); |
ccf06998f [PATCH] spi: add ... |
113 114 |
u32 sysclk; }; |
80128ff79 [POWERPC] 8xx: mp... |
115 116 117 118 |
struct mpc8xx_pcmcia_ops { void(*hw_ctrl)(int slot, int enable); int(*voltage_set)(int slot, int vcc, int vpp); }; |
d49747bdf powerpc/mpc83xx: ... |
119 120 121 122 |
/* Returns non-zero if the current suspend operation would * lead to a deep sleep (i.e. power removed from the core, * instead of just the clock). */ |
2e9d546ed powerpc/fsl: Make... |
123 |
#if defined(CONFIG_PPC_83xx) && defined(CONFIG_SUSPEND) |
d49747bdf powerpc/mpc83xx: ... |
124 |
int fsl_deep_sleep(void); |
2e9d546ed powerpc/fsl: Make... |
125 126 127 |
#else static inline int fsl_deep_sleep(void) { return 0; } #endif |
d49747bdf powerpc/mpc83xx: ... |
128 |
|
986585385 [POWERPC] Add QUI... |
129 |
#endif /* _FSL_DEVICE_H_ */ |