root/include/linux/ssb/ssb_driver_mips.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. ssb_mipscore_init
  2. ssb_mips_irq

#ifndef LINUX_SSB_MIPSCORE_H_
#define LINUX_SSB_MIPSCORE_H_

#ifdef CONFIG_SSB_DRIVER_MIPS

struct ssb_device;

struct ssb_serial_port {
        void *regs;
        unsigned long clockspeed;
        unsigned int irq;
        unsigned int baud_base;
        unsigned int reg_shift;
};

struct ssb_pflash {
        bool present;
        u8 buswidth;
        u32 window;
        u32 window_size;
};

#ifdef CONFIG_SSB_SFLASH
struct ssb_sflash {
        bool present;
        u32 window;
        u32 blocksize;
        u16 numblocks;
        u32 size;

        void *priv;
};
#endif

struct ssb_mipscore {
        struct ssb_device *dev;

        int nr_serial_ports;
        struct ssb_serial_port serial_ports[4];

        struct ssb_pflash pflash;
#ifdef CONFIG_SSB_SFLASH
        struct ssb_sflash sflash;
#endif
};

extern void ssb_mipscore_init(struct ssb_mipscore *mcore);
extern u32 ssb_cpu_clock(struct ssb_mipscore *mcore);

extern unsigned int ssb_mips_irq(struct ssb_device *dev);


#else /* CONFIG_SSB_DRIVER_MIPS */

struct ssb_mipscore {
};

static inline
void ssb_mipscore_init(struct ssb_mipscore *mcore)
{
}

static inline unsigned int ssb_mips_irq(struct ssb_device *dev)
{
        return 0;
}

#endif /* CONFIG_SSB_DRIVER_MIPS */

#endif /* LINUX_SSB_MIPSCORE_H_ */

/* [<][>][^][v][top][bottom][index][help] */