linux-stable/drivers/staging/csr/csr_wifi_hip_unifihw.h
Greg Kroah-Hartman 635d2b00e5 Staging: add CSR wifi module
This consists of two modules, the driver, and a "helper" module that is
just a wrapper around common kernel functions.  The wrapper module will
be removed soon, but for now it's needed.

These files were based on the csr-linux-wifi-5.0.3-oss.tar.gz package
provided by CSR and Blue Giga, and is covered under the license
specified in the LICENSE.txt file (basically dual BSD and GPLv2).  The
files were flattened out of the deep directory mess they were originally
in, and a few EXPORT_SYMBOL_GPL() were added in order for everything to
link properly with the helper module setup.

Cc: Mikko Virkkilä <mikko.virkkila@bluegiga.com>
Cc: Lauri Hintsala <Lauri.Hintsala@bluegiga.com>
Cc: Riku Mettälä <riku.mettala@bluegiga.com>
Cc: Veli-Pekka Peltola <veli-pekka.peltola@bluegiga.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-06-19 16:37:01 -07:00

67 lines
2.1 KiB
C

/*****************************************************************************
(c) Cambridge Silicon Radio Limited 2011
All rights reserved and confidential information of CSR
Refer to LICENSE.txt included with this source for details
on the license terms.
*****************************************************************************/
/*
* ---------------------------------------------------------------------------
*
* File: csr_wifi_hip_unifihw.h
*
* Definitions of various chip registers, addresses, values etc.
*
* ---------------------------------------------------------------------------
*/
#ifndef __UNIFIHW_H__
#define __UNIFIHW_H__ 1
#ifdef __cplusplus
extern "C" {
#endif
/* Symbol Look Up Table fingerprint. IDs are in sigs.h */
#define SLUT_FINGERPRINT 0xD397
/* Values of LoaderOperation */
#define UNIFI_LOADER_IDLE 0x00
#define UNIFI_LOADER_COPY 0x01
#define UNIFI_LOADER_ERROR_MASK 0xF0
/* Values of BootLoaderOperation */
#define UNIFI_BOOT_LOADER_IDLE 0x00
#define UNIFI_BOOT_LOADER_RESTART 0x01
#define UNIFI_BOOT_LOADER_PATCH 0x02
#define UNIFI_BOOT_LOADER_LOAD_STA 0x10
#define UNIFI_BOOT_LOADER_LOAD_PTEST 0x11
/* Memory spaces encoded in top byte of Generic Pointer type */
#define UNIFI_SH_DMEM 0x01 /* Shared Data Memory */
#define UNIFI_EXT_FLASH 0x02 /* External FLASH */
#define UNIFI_EXT_SRAM 0x03 /* External SRAM */
#define UNIFI_REGISTERS 0x04 /* Registers */
#define UNIFI_PHY_DMEM 0x10 /* PHY Data Memory */
#define UNIFI_PHY_PMEM 0x11 /* PHY Program Memory */
#define UNIFI_PHY_ROM 0x12 /* PHY ROM */
#define UNIFI_MAC_DMEM 0x20 /* MAC Data Memory */
#define UNIFI_MAC_PMEM 0x21 /* MAC Program Memory */
#define UNIFI_MAC_ROM 0x22 /* MAC ROM */
#define UNIFI_BT_DMEM 0x30 /* BT Data Memory */
#define UNIFI_BT_PMEM 0x31 /* BT Program Memory */
#define UNIFI_BT_ROM 0x32 /* BT ROM */
#define UNIFI_MAKE_GP(R, O) (((UNIFI_ ## R) << 24) | (O))
#define UNIFI_GP_OFFSET(GP) ((GP) & 0xFFFFFF)
#define UNIFI_GP_SPACE(GP) (((GP) >> 24) & 0xFF)
#ifdef __cplusplus
}
#endif
#endif /* __UNIFIHW_H__ */