Espressi esp8089 WIFI

1.modify copyright info for ESP8089 WIFI driver
2.update esp_premalloc driver to V2.5
This commit is contained in:
xxh 2015-03-10 09:44:22 +08:00 committed by xxh
parent b63ba74617
commit bcd5b6de91
43 changed files with 6760 additions and 7083 deletions

View File

@ -1,6 +1,13 @@
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#ifndef _ESP_CONF_H_
#define _ESP_CONF_H_
#define INIT_DATA_CONF_BUF "crystal_26M_en=1;test_xtal=0;sdio_configure=2;bt_configure=0;bt_protocol=0;dual_ant_configure=0;test_uart_configure=2;share_xtal=0;gpio_wake=0;no_auto_sleep=0;ext_rst=0;wakeup_gpio=12;ate_test=0;speed_suspend=1;$"
#define INIT_DATA_CONF_BUF "crystal_26M_en=0;test_xtal=0;sdio_configure=2;bt_configure=0;bt_protocol=0;dual_ant_configure=0;test_uart_configure=2;share_xtal=0;gpio_wake=0;no_auto_sleep=0;ext_rst=0;wakeup_gpio=12;ate_test=0;speed_suspend=1;$"
#endif /*_ESP_CONF_H_ */

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2009 - 2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* SIP ctrl packet parse and pack
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2009- 2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* SIP ctrl packet parse and pack
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2011-2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* esp debug interface
* - debugfs

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2011-2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* esp debug
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2010 -2013 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* extended gpio
* - interface for other driver or kernel

View File

@ -1,3 +1,10 @@
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#ifdef USE_EXT_GPIO
#ifndef _ESP_EXT_H_

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2010 -2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* file operation in kernel space
*

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2010 -2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* file operation in kernel space
*

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2010 -2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* init , call sdio_init or spi_init
*
@ -50,7 +54,7 @@ void esp_common_exit(void)
#endif
}
static int /*__init*/ esp_init(void)
static int __init esp_init(void)
{
u64 ver;
int edf_ret = 0;
@ -78,7 +82,7 @@ static int /*__init*/ esp_init(void)
return esp_common_init();
}
static void /*__exit */ esp_exit(void)
static void __exit esp_exit(void)
{
esp_debugfs_exit();
#ifdef ESP_CLASS
@ -88,20 +92,5 @@ static void /*__exit */ esp_exit(void)
esp_common_exit();
}
int rockchip_wifi_init_module_esp8089(void)
{
return esp_init();
}
void rockchip_wifi_exit_module_esp8089(void)
{
esp_exit();
}
EXPORT_SYMBOL(rockchip_wifi_init_module_esp8089);
EXPORT_SYMBOL(rockchip_wifi_exit_module_esp8089);
//module_init(esp_init);
//module_exit(esp_exit);
module_init(esp_init);
module_exit(esp_exit);

View File

@ -1 +1,8 @@
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
static char esp_init_data[] = {0x5,0x0,4,2,5,5,5,2,5,0,4,5,5,4,5,5,4,-2,-3,-1,-16,-16,-16,-32,-32,-32,204,1,0xff,0xff,0,0,0,0,82,78,74,68,64,56,0,0,1,1,2,3,4,5,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,240,10,0x0,0x0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2009 - 2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* IO interface
* - sdio/spi common i/f driver
* - target sdio hal

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2011-2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* MAC80211 support module
*/
@ -2389,7 +2393,7 @@ esp_pub_init_mac80211(struct esp_pub *epub)
int
esp_register_mac80211(struct esp_pub *epub)
{
int ret = 0;
int ret = 0;
u8 mac[ETH_ALEN];
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 35)) && defined(P2P_CONCURRENT)
u8 *wlan_addr;
@ -2397,7 +2401,7 @@ esp_register_mac80211(struct esp_pub *epub)
int idx;
#endif
esp_pub_init_mac80211(epub);
esp_pub_init_mac80211(epub);
printk("Wifi Efuse Mac => %02x:%02x:%02x:%02x:%02x:%02x\n", epub->mac_addr[0], epub->mac_addr[1],
epub->mac_addr[2], epub->mac_addr[3], epub->mac_addr[4], epub->mac_addr[5]);

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2011-2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* MAC80211 support module
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2010 - 2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* main routine
*/

View File

@ -1,3 +1,10 @@
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#ifndef _ESP_PATH_H_
#define _ESP_PATH_H_
#define FWPATH "/system/lib/modules"

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2010 -2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* power save control of system
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2011-2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* wlan device header file
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2011 - 2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* Serial I/F wrapper layer for eagle WLAN device,
* abstraction of buses like SDIO/SIP, and provides

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2009 - 2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* Serial Interconnctor Protocol
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2009- 2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* Serial Interconnctor Protocol
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2009 - 2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#include "linux/types.h"

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2011-2012 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#ifndef _ESP_UTILS_H_

View File

@ -1 +1 @@
#define DRIVER_VER 0xafdccfab1d6all
#define DRIVER_VER 0x8b6d429f0a53ll

View File

@ -1,3 +1,10 @@
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#ifndef _ESP_WL_H_
#define _ESP_WL_H_

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2011-2012 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* MAC header
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2010 -2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* sdio serial i/f driver
* - sdio device control routines

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2013 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* sdio stub code for RK
*/
@ -7,7 +11,7 @@
//#include <mach/gpio.h>
//#include <mach/iomux.h>
#define ESP8089_DRV_VERSION "2.20"
#define ESP8089_DRV_VERSION "2.25"
//extern int rk29sdk_wifi_power(int on); libing
extern int rockchip_wifi_power(int on);
//extern int rk29sdk_wifi_set_carddetect(int val); libing
@ -18,6 +22,17 @@ extern int rockchip_wifi_set_carddetect(int val);
extern int rk29sdk_wifi_power(int on);
extern int rk29sdk_wifi_set_carddetect(int val);
int rockchip_wifi_init_module_esp8089(void)
{
return esp_sdio_init();
}
void rockchip_wifi_exit_module_esp8089(void)
{
esp_sdio_exit();
}
void sif_platform_rescan_card(unsigned insert)
{
//rk29sdk_wifi_set_carddetect(insert); libing
@ -53,7 +68,7 @@ void sif_platform_target_poweroff(void)
printk("=======================================================\n");
printk("==== Dislaunching Wi-Fi driver! (Powered by Rockchip) ====\n");
printk("=======================================================\n");
printk("Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver1.9.1(01/30/2015),Drv: %s) exit.\n", ESP8089_DRV_VERSION);
printk("Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip,Ver %s) init.\n", ESP8089_DRV_VERSION);
//rk29sdk_wifi_set_carddetect(0);
if(sif_get_bt_config() != 1)
@ -66,7 +81,7 @@ void sif_platform_target_poweron(void)
printk("=======================================================\n");
printk("==== Launching Wi-Fi driver! (Powered by Rockchip) ====\n");
printk("=======================================================\n");
printk("Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver1.9.1(01/30/2015),Drv: %s) init.\n", ESP8089_DRV_VERSION);
printk("Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip,Ver %s) init.\n", ESP8089_DRV_VERSION);
if(sif_get_bt_config() == 1){
sif_platform_reset_target();
@ -104,3 +119,5 @@ void sif_platform_ack_interrupt(struct esp_pub *epub)
}
#endif //ESP_ACK_INTERRUPT
EXPORT_SYMBOL(rockchip_wifi_init_module_esp8089);
EXPORT_SYMBOL(rockchip_wifi_exit_module_esp8089);

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2010 - 2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* Common definitions of Serial Interconnctor Protocol
*

View File

@ -1,6 +1,9 @@
//Generated at 2012-10-23 20:11:08
/*
* Copyright (c) 2011 Espressif System
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
*/

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2010 -2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* spi serial i/f driver
* - sdio device control routines

View File

@ -1,5 +1,9 @@
/*
* Copyright (c) 2011-2014 Espressif System.
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
* test mode
*/

View File

@ -1,3 +1,10 @@
/* Copyright (c) 2008 -2014 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#ifndef __TEST_MODE
#define __TEST_MODE

View File

@ -9,16 +9,15 @@ MODPATH := $(shell pwd)
DRIVER_NAME := esp_prealloc
####################### NORMAL OPTION ########################################
EXTRA_CFLAGS += -DESP_PRE_MEM # normal mode, support SDIO
#EXTRA_CFLAGS += -DESP_PRE_MEM -DESP_SPI # normal mode, support SPI
#EXTRA_CFLAGS += -DESP_PRE_MEM # normal mode, support SDIO
EXTRA_CFLAGS += -DESP_PRE_MEM -DESP_SPI # normal mode, support SPI
##############################################################################
####################### ADVANCE OPTION ###########################
#EXTRA_CFLAGS += -DESP_SLAB # ex mode, most users unlikely use this mode, if someone use, please add this macro extractly
##############################################################################
obj-y:= $(DRIVER_NAME).o
obj-y:= $(DRIVER_NAME).o
$(DRIVER_NAME)-y += esp_mem.o
$(DRIVER_NAME)-y += esp_slab.o
$(DRIVER_NAME)-y += esp_mem_init.o

View File

@ -1,3 +1,11 @@
/* Copyright (c) 2014 - 2015 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
*/
#ifndef _ESP_LOG_H_
#define _ESP_LOG_H_

View File

@ -1,3 +1,11 @@
/* Copyright (c) 2014 - 2015 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
*/
#ifdef ESP_PRE_MEM
#include <linux/slab.h>

View File

@ -1,3 +1,11 @@
/* Copyright (c) 2014 - 2015 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
*/
#ifndef _ESP_MEM_H_
#define _ESP_MEM_H_

View File

@ -1,3 +1,11 @@
/* Copyright (c) 2014 - 2015 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
*/
#include <linux/module.h>
#include "esp_mem.h"
#include "esp_slab.h"

View File

@ -1,3 +1,11 @@
/* Copyright (c) 2014 - 2015 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
*/
#ifdef ESP_SLAB
#include <linux/spinlock.h>

View File

@ -1,3 +1,11 @@
/* Copyright (c) 2014 - 2015 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*
*/
#ifndef _ESP_SLAB_H_
#define _ESP_SLAB_H_

View File

@ -1,8 +1,16 @@
/* Copyright (c) 2014 - 2015 Espressif System.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#ifndef __VERSION_H__
#define __VERSION_H__
#define PREALLOC_VERSION "V2.4"
#define PREALLOC_VERSION "V2.5"
#endif /* __VERSION_H__ */