Linux Kernel
3.7.1
|
Go to the source code of this file.
Data Structures | |
struct | mpc52xx_mmap_ctl |
struct | mpc52xx_sdram |
struct | mpc52xx_sdma |
struct | mpc52xx_gpt |
struct | mpc52xx_gpio |
struct | mpc52xx_gpio_wkup |
struct | mpc52xx_xlb |
struct | mpc52xx_cdm |
struct | mpc52xx_intr |
struct | mpc52xx_lpbfifo_request |
Macros | |
#define | MPC5200_SVR 0x80110010 |
#define | MPC5200_SVR_MASK 0xfffffff0 |
#define | MPC5200B_SVR 0x80110020 |
#define | MPC5200B_SVR_MASK 0xfffffff0 |
#define | MPC52xx_GPIO_PSC_CONFIG_UART_WITHOUT_CD 4 |
#define | MPC52xx_GPIO_PSC_CONFIG_UART_WITH_CD 5 |
#define | MPC52xx_GPIO_PCI_DIS (1<<15) |
#define | MPC52xx_XLB_CFG_PLDIS (1 << 31) |
#define | MPC52xx_XLB_CFG_SNOOP (1 << 15) |
#define | MPC52XX_LPBFIFO_FLAG_READ (0) |
#define | MPC52XX_LPBFIFO_FLAG_WRITE (1<<0) |
#define | MPC52XX_LPBFIFO_FLAG_NO_INCREMENT (1<<1) |
#define | MPC52XX_LPBFIFO_FLAG_NO_DMA (1<<2) |
#define | MPC52XX_LPBFIFO_FLAG_POLL_DMA (1<<3) |
Functions | |
void | mpc5200_setup_xlb_arbiter (void) |
void | mpc52xx_declare_of_platform_devices (void) |
int | mpc5200_psc_ac97_gpio_reset (int psc_number) |
void | mpc52xx_map_common_devices (void) |
int | mpc52xx_set_psc_clkdiv (int psc_id, int clkdiv) |
unsigned int | mpc52xx_get_xtal_freq (struct device_node *node) |
void | mpc52xx_restart (char *cmd) |
struct mpc52xx_gpt_priv * | mpc52xx_gpt_from_irq (int irq) |
int | mpc52xx_gpt_start_timer (struct mpc52xx_gpt_priv *gpt, u64 period, int continuous) |
u64 | mpc52xx_gpt_timer_period (struct mpc52xx_gpt_priv *gpt) |
int | mpc52xx_gpt_stop_timer (struct mpc52xx_gpt_priv *gpt) |
int | mpc52xx_lpbfifo_submit (struct mpc52xx_lpbfifo_request *req) |
void | mpc52xx_lpbfifo_abort (struct mpc52xx_lpbfifo_request *req) |
void | mpc52xx_lpbfifo_poll (void) |
int | mpc52xx_lpbfifo_start_xfer (struct mpc52xx_lpbfifo_request *req) |
void | mpc52xx_init_irq (void) |
unsigned int | mpc52xx_get_irq (void) |
mpc5200_psc_ac97_gpio_reset: Use gpio pins to reset the ac97 bus
: psc number to reset (only psc 1 and 2 support ac97)
Definition at line 279 of file mpc52xx_common.c.
Definition at line 57 of file mpc52xx_common.c.
mpc52xx_declare_of_platform_devices: register internal devices and children of the localplus bus to the of_platform bus.
Definition at line 101 of file mpc52xx_common.c.
mpc52xx_get_irq - Get pending interrupt number hook function
Called by the interrupt handler to determine what IRQ handler needs to be executed.
Status of pending interrupts is determined by reading the encoded status register. The encoded status register has three fields; one for each of the types of interrupts defined by the controller - 'critical', 'main' and 'peripheral'. This function reads the status register and returns the IRQ number associated with the highest priority pending interrupt. 'Critical' interrupts have the highest priority, followed by 'main' interrupts, and then 'peripheral'.
The mpc5200 interrupt controller can be configured to boost the priority of individual 'peripheral' interrupts. If this is the case then a special value will appear in either the crit or main fields indicating a high or medium priority peripheral irq has occurred.
This function checks each of the 3 irq request fields and returns the first pending interrupt that it finds.
This function also identifies a 4th type of interrupt; 'bestcomm'. Each bestcomm DMA task can raise the bestcomm peripheral interrupt. When this occurs at task-specific IRQ# is decoded so that each task can have its own IRQ handler.
Definition at line 487 of file mpc52xx_pic.c.
unsigned int mpc52xx_get_xtal_freq | ( | struct device_node * | node | ) |
mpc52xx_get_xtal_freq - Get SYS_XTAL_IN frequency for a device
: device node
Returns the frequency of the external oscillator clock connected to the SYS_XTAL_IN pin, or 0 if it cannot be determined.
Definition at line 214 of file mpc52xx_common.c.
|
read |
mpc52xx_gpt_from_irq - Return the GPT device associated with an IRQ number : irq of timer.
Definition at line 376 of file mpc52xx_gpt.c.
int mpc52xx_gpt_start_timer | ( | struct mpc52xx_gpt_priv * | gpt, |
u64 | period, | ||
int | continuous | ||
) |
mpc52xx_gpt_start_timer - Set and enable the GPT timer : Pointer to gpt private data structure : period of timer in ns; max. ~130s @ 33MHz IPB clock : set to 1 to make timer continuous free running
An interrupt will be generated every time the timer fires
Definition at line 466 of file mpc52xx_gpt.c.
int mpc52xx_gpt_stop_timer | ( | struct mpc52xx_gpt_priv * | gpt | ) |
mpc52xx_gpt_stop_timer - Stop a gpt : Pointer to gpt private data structure
Returns an error if attempting to stop a wdt
Definition at line 479 of file mpc52xx_gpt.c.
u64 mpc52xx_gpt_timer_period | ( | struct mpc52xx_gpt_priv * | gpt | ) |
mpc52xx_gpt_timer_period - Read the timer period : Pointer to gpt private data structure
Returns the timer period in ns
Definition at line 502 of file mpc52xx_gpt.c.
mpc52xx_init_irq - Initialize and register with the virq subsystem
Hook for setting up IRQs on an mpc5200 system. A pointer to this function is to be put into the machine definition structure.
This function searches the device tree for an MPC5200 interrupt controller, initializes it, and registers it with the virq subsystem.
Definition at line 402 of file mpc52xx_pic.c.
void mpc52xx_lpbfifo_abort | ( | struct mpc52xx_lpbfifo_request * | req | ) |
Definition at line 457 of file mpc52xx_lpbfifo.c.
mpc52xx_lpbfifo_bcom_poll - Poll for DMA completion
Definition at line 377 of file mpc52xx_lpbfifo.c.
int mpc52xx_lpbfifo_start_xfer | ( | struct mpc52xx_lpbfifo_request * | req | ) |
Definition at line 425 of file mpc52xx_lpbfifo.c.
int mpc52xx_lpbfifo_submit | ( | struct mpc52xx_lpbfifo_request * | req | ) |
mpc52xx_lpbfifo_submit - Submit an LPB FIFO transfer request. : Pointer to request structure
Definition at line 397 of file mpc52xx_lpbfifo.c.
mpc52xx_map_common_devices: iomap devices required by common code
Definition at line 135 of file mpc52xx_common.c.
mpc52xx_restart: ppc_md->restart hook for mpc5200 using the watchdog timer
Definition at line 247 of file mpc52xx_common.c.