#define pr_fmt(fmt) …
#include <linux/delay.h>
#include <defs.h>
#include <chipcommon.h>
#include <brcmu_utils.h>
#include <brcm_hw_ids.h>
#include <soc.h>
#include "types.h"
#include "pub.h"
#include "pmu.h"
#include "aiutils.h"
#define SCC_SS_MASK …
#define SCC_SS_LPO …
#define SCC_SS_XTAL …
#define SCC_SS_PCI …
#define SCC_LF …
#define SCC_LP …
#define SCC_FS …
#define SCC_IP …
#define SCC_XC …
#define SCC_XP …
#define SCC_CD_MASK …
#define SCC_CD_SHIFT …
#define SYCC_IE …
#define SYCC_AE …
#define SYCC_FP …
#define SYCC_AR …
#define SYCC_HR …
#define SYCC_CD_MASK …
#define SYCC_CD_SHIFT …
#define CST4329_SPROM_OTP_SEL_MASK …
#define CST4329_DEFCIS_SEL …
#define CST4329_SPROM_SEL …
#define CST4329_OTP_SEL …
#define CST4329_OTP_PWRDN …
#define CST4329_SPI_SDIO_MODE_MASK …
#define CST4329_SPI_SDIO_MODE_SHIFT …
#define CCTRL43224_GPIO_TOGGLE …
#define CCTRL_43224A0_12MA_LED_DRIVE …
#define CCTRL_43224B0_12MA_LED_DRIVE …
#define CST43236_SFLASH_MASK …
#define CST43236_OTP_MASK …
#define CST43236_HSIC_MASK …
#define CST43236_BP_CLK …
#define CST43236_BOOT_MASK …
#define CST43236_BOOT_SHIFT …
#define CST43236_BOOT_FROM_SRAM …
#define CST43236_BOOT_FROM_ROM …
#define CST43236_BOOT_FROM_FLASH …
#define CST43236_BOOT_FROM_INVALID …
#define CCTRL4331_BT_COEXIST …
#define CCTRL4331_SECI …
#define CCTRL4331_EXT_LNA …
#define CCTRL4331_SPROM_GPIO13_15 …
#define CCTRL4331_EXTPA_EN …
#define CCTRL4331_GPIOCLK_ON_SPROMCS …
#define CCTRL4331_PCIE_MDIO_ON_SPROMCS …
#define CCTRL4331_EXTPA_ON_GPIO2_5 …
#define CCTRL4331_OVR_PIPEAUXCLKEN …
#define CCTRL4331_OVR_PIPEAUXPWRDOWN …
#define CCTRL4331_PCIE_AUXCLKEN …
#define CCTRL4331_PCIE_PIPE_PLLDOWN …
#define CCTRL4331_BT_SHD0_ON_GPIO4 …
#define CCTRL4331_BT_SHD1_ON_GPIO5 …
#define CST4331_XTAL_FREQ …
#define CST4331_SPROM_PRESENT …
#define CST4331_OTP_PRESENT …
#define CST4331_LDO_RF …
#define CST4331_LDO_PAR …
#define CST4319_SPI_CPULESSUSB …
#define CST4319_SPI_CLK_POL …
#define CST4319_SPI_CLK_PH …
#define CST4319_SPROM_OTP_SEL_MASK …
#define CST4319_SPROM_OTP_SEL_SHIFT …
#define CST4319_DEFCIS_SEL …
#define CST4319_SPROM_SEL …
#define CST4319_OTP_SEL …
#define CST4319_OTP_PWRDN …
#define CST4319_SDIO_USB_MODE …
#define CST4319_REMAP_SEL_MASK …
#define CST4319_ILPDIV_EN …
#define CST4319_XTAL_PD_POL …
#define CST4319_LPO_SEL …
#define CST4319_RES_INIT_MODE …
#define CST4319_PALDO_EXTPNP …
#define CST4319_CBUCK_MODE_MASK …
#define CST4319_CBUCK_MODE_BURST …
#define CST4319_CBUCK_MODE_LPBURST …
#define CST4319_RCAL_VALID …
#define CST4319_RCAL_VALUE_MASK …
#define CST4319_RCAL_VALUE_SHIFT …
#define CST4336_SPI_MODE_MASK …
#define CST4336_SPROM_PRESENT …
#define CST4336_OTP_PRESENT …
#define CST4336_ARMREMAP_0 …
#define CST4336_ILPDIV_EN_MASK …
#define CST4336_ILPDIV_EN_SHIFT …
#define CST4336_XTAL_PD_POL_MASK …
#define CST4336_XTAL_PD_POL_SHIFT …
#define CST4336_LPO_SEL_MASK …
#define CST4336_LPO_SEL_SHIFT …
#define CST4336_RES_INIT_MODE_MASK …
#define CST4336_RES_INIT_MODE_SHIFT …
#define CST4336_CBUCK_MODE_MASK …
#define CST4336_CBUCK_MODE_SHIFT …
#define CST4313_SPROM_PRESENT …
#define CST4313_OTP_PRESENT …
#define CST4313_SPROM_OTP_SEL_MASK …
#define CST4313_SPROM_OTP_SEL_SHIFT …
#define CCTRL_4313_12MA_LED_DRIVE …
#define MFGID_ARM …
#define MFGID_BRCM …
#define MFGID_MIPS …
#define ER_EROMENTRY …
#define ER_REMAPCONTROL …
#define ER_REMAPSELECT …
#define ER_MASTERSELECT …
#define ER_ITCR …
#define ER_ITIP …
#define ER_TAG …
#define ER_TAG1 …
#define ER_VALID …
#define ER_CI …
#define ER_MP …
#define ER_ADD …
#define ER_END …
#define ER_BAD …
#define CIA_MFG_MASK …
#define CIA_MFG_SHIFT …
#define CIA_CID_MASK …
#define CIA_CID_SHIFT …
#define CIA_CCL_MASK …
#define CIA_CCL_SHIFT …
#define CIB_REV_MASK …
#define CIB_REV_SHIFT …
#define CIB_NSW_MASK …
#define CIB_NSW_SHIFT …
#define CIB_NMW_MASK …
#define CIB_NMW_SHIFT …
#define CIB_NSP_MASK …
#define CIB_NSP_SHIFT …
#define CIB_NMP_MASK …
#define CIB_NMP_SHIFT …
#define AD_ADDR_MASK …
#define AD_SP_MASK …
#define AD_SP_SHIFT …
#define AD_ST_MASK …
#define AD_ST_SHIFT …
#define AD_ST_SLAVE …
#define AD_ST_BRIDGE …
#define AD_ST_SWRAP …
#define AD_ST_MWRAP …
#define AD_SZ_MASK …
#define AD_SZ_SHIFT …
#define AD_SZ_4K …
#define AD_SZ_8K …
#define AD_SZ_16K …
#define AD_SZ_SZD …
#define AD_AG32 …
#define AD_ADDR_ALIGN …
#define AD_SZ_BASE …
#define SD_SZ_MASK …
#define SD_SG32 …
#define SD_SZ_ALIGN …
#define PCI_CFG_GPIO_SCS …
#define PCI_CFG_GPIO_XTAL …
#define PCI_CFG_GPIO_PLL …
#define PLL_DELAY …
#define FREF_DELAY …
#define XTAL_ON_DELAY …
#define AIRC_RESET …
#define NOREV …
#define DEFAULT_GPIO_ONTIME …
#define DEFAULT_GPIO_OFFTIME …
#define SRC_START …
#define SRC_BUSY …
#define SRC_OPCODE …
#define SRC_OP_READ …
#define SRC_OP_WRITE …
#define SRC_OP_WRDIS …
#define SRC_OP_WREN …
#define SRC_OTPSEL …
#define SRC_LOCK …
#define SRC_SIZE_MASK …
#define SRC_SIZE_1K …
#define SRC_SIZE_4K …
#define SRC_SIZE_16K …
#define SRC_SIZE_SHIFT …
#define SRC_PRESENT …
#define GPIO_CTRL_EPA_EN_MASK …
#define DEFAULT_GPIOTIMERVAL …
#define BADIDX …
#define IS_SIM(chippkg) …
#define GOODCOREADDR(x, b) …
struct aidmp { … };
static bool
ai_buscore_setup(struct si_info *sii, struct bcma_device *cc)
{ … }
static struct si_info *ai_doattach(struct si_info *sii,
struct bcma_bus *pbus)
{ … }
struct si_pub *
ai_attach(struct bcma_bus *pbus)
{ … }
void ai_detach(struct si_pub *sih)
{ … }
uint ai_cc_reg(struct si_pub *sih, uint regoff, u32 mask, u32 val)
{ … }
static uint ai_slowclk_src(struct si_pub *sih, struct bcma_device *cc)
{ … }
static uint ai_slowclk_freq(struct si_pub *sih, bool max_freq,
struct bcma_device *cc)
{ … }
static void
ai_clkctl_setdelay(struct si_pub *sih, struct bcma_device *cc)
{ … }
void ai_clkctl_init(struct si_pub *sih)
{ … }
u16 ai_clkctl_fast_pwrup_delay(struct si_pub *sih)
{ … }
bool ai_clkctl_cc(struct si_pub *sih, enum bcma_clkmode mode)
{ … }
void ai_epa_4313war(struct si_pub *sih)
{ … }
bool ai_deviceremoved(struct si_pub *sih)
{ … }