1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * This file is part of wl1271
4 *
5 * Copyright (C) 2008-2009 Nokia Corporation
6 *
7 * Contact: Luciano Coelho <luciano.coelho@nokia.com>
8 */
9
10#ifndef __BOOT_H__
11#define __BOOT_H__
12
13#include "wlcore.h"
14
15int wlcore_boot_upload_firmware(struct wl1271 *wl);
16int wlcore_boot_upload_nvs(struct wl1271 *wl);
17int wlcore_boot_run_firmware(struct wl1271 *wl);
18
19#define WL1271_NO_SUBBANDS 8
20#define WL1271_NO_POWER_LEVELS 4
21#define WL1271_FW_VERSION_MAX_LEN 20
22
23struct wl1271_static_data {
24	u8 mac_address[ETH_ALEN];
25	u8 padding[2];
26	u8 fw_version[WL1271_FW_VERSION_MAX_LEN];
27	u32 hw_version;
28	u8 tx_power_table[WL1271_NO_SUBBANDS][WL1271_NO_POWER_LEVELS];
29	u8 priv[];
30};
31
32/* number of times we try to read the INIT interrupt */
33#define INIT_LOOP 20000
34
35/* delay between retries */
36#define INIT_LOOP_DELAY 50
37
38#define WU_COUNTER_PAUSE_VAL 0x3FF
39#define WELP_ARM_COMMAND_VAL 0x4
40
41#endif
42