fsl/fman: move struct fman to header file
Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
0df49584ed
commit
ca58ce5766
|
@ -32,9 +32,6 @@
|
|||
|
||||
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
|
||||
|
||||
#include "fman.h"
|
||||
#include "fman_muram.h"
|
||||
|
||||
#include <linux/fsl/guts.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/delay.h>
|
||||
|
@ -46,6 +43,9 @@
|
|||
#include <linux/interrupt.h>
|
||||
#include <linux/libfdt_env.h>
|
||||
|
||||
#include "fman.h"
|
||||
#include "fman_muram.h"
|
||||
|
||||
/* General defines */
|
||||
#define FMAN_LIODN_TBL 64 /* size of LIODN table */
|
||||
#define MAX_NUM_OF_MACS 10
|
||||
|
@ -564,80 +564,6 @@ struct fman_cfg {
|
|||
u32 qmi_def_tnums_thresh;
|
||||
};
|
||||
|
||||
/* Structure that holds information received from device tree */
|
||||
struct fman_dts_params {
|
||||
void __iomem *base_addr; /* FMan virtual address */
|
||||
struct resource *res; /* FMan memory resource */
|
||||
u8 id; /* FMan ID */
|
||||
|
||||
int err_irq; /* FMan Error IRQ */
|
||||
|
||||
u16 clk_freq; /* FMan clock freq (In Mhz) */
|
||||
|
||||
u32 qman_channel_base; /* QMan channels base */
|
||||
u32 num_of_qman_channels; /* Number of QMan channels */
|
||||
|
||||
struct resource muram_res; /* MURAM resource */
|
||||
};
|
||||
|
||||
/** fman_exceptions_cb
|
||||
* fman - Pointer to FMan
|
||||
* exception - The exception.
|
||||
*
|
||||
* Exceptions user callback routine, will be called upon an exception
|
||||
* passing the exception identification.
|
||||
*
|
||||
* Return: irq status
|
||||
*/
|
||||
typedef irqreturn_t (fman_exceptions_cb)(struct fman *fman,
|
||||
enum fman_exceptions exception);
|
||||
|
||||
/** fman_bus_error_cb
|
||||
* fman - Pointer to FMan
|
||||
* port_id - Port id
|
||||
* addr - Address that caused the error
|
||||
* tnum - Owner of error
|
||||
* liodn - Logical IO device number
|
||||
*
|
||||
* Bus error user callback routine, will be called upon bus error,
|
||||
* passing parameters describing the errors and the owner.
|
||||
*
|
||||
* Return: IRQ status
|
||||
*/
|
||||
typedef irqreturn_t (fman_bus_error_cb)(struct fman *fman, u8 port_id,
|
||||
u64 addr, u8 tnum, u16 liodn);
|
||||
|
||||
struct fman {
|
||||
struct device *dev;
|
||||
void __iomem *base_addr;
|
||||
struct fman_intr_src intr_mng[FMAN_EV_CNT];
|
||||
|
||||
struct fman_fpm_regs __iomem *fpm_regs;
|
||||
struct fman_bmi_regs __iomem *bmi_regs;
|
||||
struct fman_qmi_regs __iomem *qmi_regs;
|
||||
struct fman_dma_regs __iomem *dma_regs;
|
||||
struct fman_hwp_regs __iomem *hwp_regs;
|
||||
fman_exceptions_cb *exception_cb;
|
||||
fman_bus_error_cb *bus_error_cb;
|
||||
/* Spinlock for FMan use */
|
||||
spinlock_t spinlock;
|
||||
struct fman_state_struct *state;
|
||||
|
||||
struct fman_cfg *cfg;
|
||||
struct muram_info *muram;
|
||||
/* cam section in muram */
|
||||
unsigned long cam_offset;
|
||||
size_t cam_size;
|
||||
/* Fifo in MURAM */
|
||||
unsigned long fifo_offset;
|
||||
size_t fifo_size;
|
||||
|
||||
u32 liodn_base[64];
|
||||
u32 liodn_offset[64];
|
||||
|
||||
struct fman_dts_params dts_params;
|
||||
};
|
||||
|
||||
static irqreturn_t fman_exceptions(struct fman *fman,
|
||||
enum fman_exceptions exception)
|
||||
{
|
||||
|
|
|
@ -34,6 +34,8 @@
|
|||
#define __FM_H
|
||||
|
||||
#include <linux/io.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/of_irq.h>
|
||||
|
||||
/* FM Frame descriptor macros */
|
||||
/* Frame queue Context Override */
|
||||
|
@ -274,6 +276,79 @@ struct fman_intr_src {
|
|||
void *src_handle;
|
||||
};
|
||||
|
||||
/** fman_exceptions_cb
|
||||
* fman - Pointer to FMan
|
||||
* exception - The exception.
|
||||
*
|
||||
* Exceptions user callback routine, will be called upon an exception
|
||||
* passing the exception identification.
|
||||
*
|
||||
* Return: irq status
|
||||
*/
|
||||
typedef irqreturn_t (fman_exceptions_cb)(struct fman *fman,
|
||||
enum fman_exceptions exception);
|
||||
/** fman_bus_error_cb
|
||||
* fman - Pointer to FMan
|
||||
* port_id - Port id
|
||||
* addr - Address that caused the error
|
||||
* tnum - Owner of error
|
||||
* liodn - Logical IO device number
|
||||
*
|
||||
* Bus error user callback routine, will be called upon bus error,
|
||||
* passing parameters describing the errors and the owner.
|
||||
*
|
||||
* Return: IRQ status
|
||||
*/
|
||||
typedef irqreturn_t (fman_bus_error_cb)(struct fman *fman, u8 port_id,
|
||||
u64 addr, u8 tnum, u16 liodn);
|
||||
|
||||
/* Structure that holds information received from device tree */
|
||||
struct fman_dts_params {
|
||||
void __iomem *base_addr; /* FMan virtual address */
|
||||
struct resource *res; /* FMan memory resource */
|
||||
u8 id; /* FMan ID */
|
||||
|
||||
int err_irq; /* FMan Error IRQ */
|
||||
|
||||
u16 clk_freq; /* FMan clock freq (In Mhz) */
|
||||
|
||||
u32 qman_channel_base; /* QMan channels base */
|
||||
u32 num_of_qman_channels; /* Number of QMan channels */
|
||||
|
||||
struct resource muram_res; /* MURAM resource */
|
||||
};
|
||||
|
||||
struct fman {
|
||||
struct device *dev;
|
||||
void __iomem *base_addr;
|
||||
struct fman_intr_src intr_mng[FMAN_EV_CNT];
|
||||
|
||||
struct fman_fpm_regs __iomem *fpm_regs;
|
||||
struct fman_bmi_regs __iomem *bmi_regs;
|
||||
struct fman_qmi_regs __iomem *qmi_regs;
|
||||
struct fman_dma_regs __iomem *dma_regs;
|
||||
struct fman_hwp_regs __iomem *hwp_regs;
|
||||
fman_exceptions_cb *exception_cb;
|
||||
fman_bus_error_cb *bus_error_cb;
|
||||
/* Spinlock for FMan use */
|
||||
spinlock_t spinlock;
|
||||
struct fman_state_struct *state;
|
||||
|
||||
struct fman_cfg *cfg;
|
||||
struct muram_info *muram;
|
||||
/* cam section in muram */
|
||||
unsigned long cam_offset;
|
||||
size_t cam_size;
|
||||
/* Fifo in MURAM */
|
||||
unsigned long fifo_offset;
|
||||
size_t fifo_size;
|
||||
|
||||
u32 liodn_base[64];
|
||||
u32 liodn_offset[64];
|
||||
|
||||
struct fman_dts_params dts_params;
|
||||
};
|
||||
|
||||
/* Structure for port-FM communication during fman_port_init. */
|
||||
struct fman_port_init_params {
|
||||
u8 port_id; /* port Id */
|
||||
|
|
|
@ -32,10 +32,6 @@
|
|||
|
||||
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
|
||||
|
||||
#include "fman_port.h"
|
||||
#include "fman.h"
|
||||
#include "fman_sp.h"
|
||||
|
||||
#include <linux/io.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/module.h>
|
||||
|
@ -45,6 +41,10 @@
|
|||
#include <linux/delay.h>
|
||||
#include <linux/libfdt_env.h>
|
||||
|
||||
#include "fman.h"
|
||||
#include "fman_port.h"
|
||||
#include "fman_sp.h"
|
||||
|
||||
/* Queue ID */
|
||||
#define DFLT_FQ_ID 0x00FFFFFF
|
||||
|
||||
|
|
Loading…
Reference in New Issue