mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-04 06:54:27 -05:00 
			
		
		
		
	lantiq: * fixes ath5k eeprom handling * fixes sx76x * adds sx76x to userland api * minor style cleanups
Signed-of-by: Andrej Vlašić <andrej.vlasic0@gmail.com> SVN-Revision: 29292
This commit is contained in:
		
							parent
							
								
									aca5063d4e
								
							
						
					
					
						commit
						4982ca983c
					
				@ -92,8 +92,12 @@ ARV7525PW)
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
GIGASX76X)
 | 
			
		||||
	set_led_netdev "wifi" "wifi" "soc:green:wifi" "ath0"
 | 
			
		||||
	set_led_wlan "wifi" "wifi" "soc:green:wifi" "phy0radio"
 | 
			
		||||
	set_led_netdev "online" "online" "soc:green:online" "nas0"
 | 
			
		||||
	set_led_usbdev "usb" "USB" "soc:green:usb" "1-1"
 | 
			
		||||
	set_led_default "phone1" "fxs1" "soc:green:phone1" "0"
 | 
			
		||||
	set_led_default "phone2" "fxs2" "soc:green:phone2" "0"
 | 
			
		||||
	set_led_default "line" "line" "soc:green:line" "0"
 | 
			
		||||
	;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -115,6 +115,13 @@ dsl=$(lantiq_soc_has_adsl)
 | 
			
		||||
board=$(lantiq_board_name)
 | 
			
		||||
 | 
			
		||||
case "$board" in
 | 
			
		||||
GIGASX76X)
 | 
			
		||||
	set_interface_lan "eth0.1"
 | 
			
		||||
	add_switch "eth0" "1" "1"
 | 
			
		||||
	add_switch_vlan "eth0" "1" "1 2 3 4 5t"
 | 
			
		||||
	set_atm_wan "1" "32" "llc" "bridged"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
*)
 | 
			
		||||
	# custom foo goes here
 | 
			
		||||
	true
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
define Profile/GIGASX76X
 | 
			
		||||
  NAME:=GIGASX76X - Gigaset SX761,SX762,SX763
 | 
			
		||||
  PACKAGES:= kmod-usb-core kmod-usb-dwc-otg kmod-ledtrig-usbdev \
 | 
			
		||||
	 kmod-ltq-dsl-firmware-b-danube
 | 
			
		||||
	kmod-ath5k wpad-mini kmod-ltq-dsl-firmware-b-danube
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Profile/GIGASX76X/Description
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,33 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  Copyright (C) 2011 John Crispin <blogic@openwrt.org>
 | 
			
		||||
 *  Copyright (C) 2011 Andrej Vlašić <andrej.vlasic0@gmail.com>
 | 
			
		||||
 *
 | 
			
		||||
 *  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/init.h>
 | 
			
		||||
#include <linux/platform_device.h>
 | 
			
		||||
#include <linux/ath5k_platform.h>
 | 
			
		||||
#include <linux/pci.h>
 | 
			
		||||
 | 
			
		||||
#include "dev-wifi-ath5k.h"
 | 
			
		||||
 | 
			
		||||
extern int (*ltqpci_plat_dev_init)(struct pci_dev *dev);
 | 
			
		||||
struct ath5k_platform_data ath5k_pdata;
 | 
			
		||||
 | 
			
		||||
static int 
 | 
			
		||||
ath5k_pci_plat_dev_init(struct pci_dev *dev)
 | 
			
		||||
{
 | 
			
		||||
	dev->dev.platform_data = &ath5k_pdata;
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void __init
 | 
			
		||||
ltq_register_ath5k(u16 *eeprom_data, u8 *macaddr)
 | 
			
		||||
{
 | 
			
		||||
	ath5k_pdata.eeprom_data = eeprom_data;
 | 
			
		||||
	ath5k_pdata.macaddr = macaddr;
 | 
			
		||||
	ltqpci_plat_dev_init = ath5k_pci_plat_dev_init;
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,15 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  Copyright (C) 2011 John Crispin <blogic@openwrt.org>
 | 
			
		||||
 *  Copyright (C) 2011 Andrej Vlašić <andrej.vlasic0@gmail.com>
 | 
			
		||||
 *
 | 
			
		||||
 *  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 _DEV_WIFI_ATH5K_H__
 | 
			
		||||
#define _DEV_WIFI_ATH5K_H__
 | 
			
		||||
 | 
			
		||||
extern void ltq_register_ath5k(u16 *eeprom_data, u8 *macaddr);
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
@ -26,6 +26,7 @@
 | 
			
		||||
 | 
			
		||||
#include "../machtypes.h"
 | 
			
		||||
#include "dev-wifi-rt2x00.h"
 | 
			
		||||
#include "dev-wifi-ath5k.h"
 | 
			
		||||
#include "devices.h"
 | 
			
		||||
#include "dev-dwc_otg.h"
 | 
			
		||||
 | 
			
		||||
@ -177,11 +178,32 @@ arv4518pw_gpio_leds[] __initdata = {
 | 
			
		||||
	{ .name = "soc:green:fxo", .gpio = 103, .active_low = 1, .default_trigger = "default-on" },
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static struct gpio_button
 | 
			
		||||
arv4518pw_gpio_buttons[] __initdata = {
 | 
			
		||||
	{ .desc = "wifi", .type = EV_KEY, .code = BTN_0, .threshold = 3, .gpio = 28, .active_low = 1, },
 | 
			
		||||
	{ .desc = "wps", .type = EV_KEY, .code = BTN_1, .threshold = 3, .gpio = 29, .active_low = 1, },
 | 
			
		||||
	{ .desc = "reset", .type = EV_KEY, .code = BTN_2, .threshold = 3, .gpio = 30, .active_low = 1, },
 | 
			
		||||
static struct gpio_keys_button
 | 
			
		||||
arv4518pw_gpio_keys[] __initdata = {
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "wifi",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_0,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 28,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "reset",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_1,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 30,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "wps",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_2,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 29,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static struct gpio_led
 | 
			
		||||
@ -248,11 +270,32 @@ arv752dpw22_gpio_leds[] __initdata = {
 | 
			
		||||
	{ .name = "soc:green:eth4", .gpio = 114, .active_low = 1, .default_trigger = "default-on", },
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static struct gpio_button
 | 
			
		||||
arv752dpw22_gpio_buttons[] __initdata = {
 | 
			
		||||
	{ .desc = "btn0", .type = EV_KEY, .code = BTN_0, .threshold = 3, .gpio = 12, .active_low = 1, },
 | 
			
		||||
	{ .desc = "btn1", .type = EV_KEY, .code = BTN_1, .threshold = 3, .gpio = 13, .active_low = 1, },
 | 
			
		||||
	{ .desc = "btn2", .type = EV_KEY, .code = BTN_2, .threshold = 3, .gpio = 28, .active_low = 1, },
 | 
			
		||||
static struct gpio_keys_button
 | 
			
		||||
arv752dpw22_gpio_keys[] __initdata = {
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "btn0",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_0,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 12,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "btn1",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_1,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 13,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		.desc 		= "btn2",
 | 
			
		||||
		.type 		= EV_KEY,
 | 
			
		||||
		.code 		= BTN_2,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio 		= 28,
 | 
			
		||||
		.active_low 	= 1,
 | 
			
		||||
	},
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static struct gpio_led
 | 
			
		||||
@ -265,10 +308,36 @@ arv7518pw_gpio_leds[] __initdata = {
 | 
			
		||||
	{ .name = "soc:green:usb", .gpio = 19, .active_low = 1, },
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static struct gpio_button
 | 
			
		||||
arv7518pw_gpio_buttons[] __initdata = {
 | 
			
		||||
	{ .desc = "reset", .type = EV_KEY, .code = BTN_0, .threshold = 3, .gpio = 23, .active_low = 1, },
 | 
			
		||||
	{ .desc = "wifi", .type = EV_KEY, .code = BTN_1, .threshold = 3, .gpio = 25, .active_low = 1, },
 | 
			
		||||
static struct gpio_keys_button
 | 
			
		||||
arv7518pw_gpio_keys[] __initdata = {
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "reset",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_0,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 23,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "wifi",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_1,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 25,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static struct gpio_keys_button
 | 
			
		||||
arv7525pw_gpio_keys[] __initdata = {
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "restart",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_0,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 29,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
@ -299,26 +368,19 @@ bewan_register_ethernet(void)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static u16 arv45xx_ath5k_eeprom_data[ATH5K_PLAT_EEP_MAX_WORDS];
 | 
			
		||||
static struct ath5k_platform_data arv45xx_ath5k_platform_data;
 | 
			
		||||
static u8 arv45xx_ath5k_eeprom_mac[6];
 | 
			
		||||
 | 
			
		||||
/*static int arv45xx_pci_plat_dev_init(struct pci_dev *dev)
 | 
			
		||||
{
 | 
			
		||||
	dev->dev.platform_data = &arv45xx_ath5k_platform_data;
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
*/
 | 
			
		||||
void __init
 | 
			
		||||
arv45xx_register_ath5k(void)
 | 
			
		||||
{
 | 
			
		||||
#define ARV45XX_BRN_ATH		0x3f0478
 | 
			
		||||
	int i;
 | 
			
		||||
	unsigned char eeprom_mac[6];
 | 
			
		||||
	static u16 eeprom_data[ATH5K_PLAT_EEP_MAX_WORDS];
 | 
			
		||||
	u32 *p = (u32*)arv45xx_ath5k_eeprom_data;
 | 
			
		||||
 | 
			
		||||
	memcpy_fromio(eeprom_mac,
 | 
			
		||||
	memcpy_fromio(arv45xx_ath5k_eeprom_mac,
 | 
			
		||||
		(void *)KSEG1ADDR(LTQ_FLASH_START + ARV45XX_BRN_MAC), 6);
 | 
			
		||||
	eeprom_mac[5]++;
 | 
			
		||||
	arv45xx_ath5k_eeprom_mac[5]++;
 | 
			
		||||
	memcpy_fromio(arv45xx_ath5k_eeprom_data,
 | 
			
		||||
		(void *)KSEG1ADDR(LTQ_FLASH_START + ARV45XX_BRN_ATH), ATH5K_PLAT_EEP_MAX_WORDS);
 | 
			
		||||
	// swap eeprom bytes
 | 
			
		||||
@ -334,9 +396,6 @@ arv45xx_register_ath5k(void)
 | 
			
		||||
			p[i] |= 0x67;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	arv45xx_ath5k_platform_data.eeprom_data = arv45xx_ath5k_eeprom_data;
 | 
			
		||||
	arv45xx_ath5k_platform_data.macaddr = eeprom_mac;
 | 
			
		||||
	//lqpci_plat_dev_init = arv45xx_pci_plat_dev_init;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void __init
 | 
			
		||||
@ -381,14 +440,15 @@ arv4518pw_init(void)
 | 
			
		||||
 | 
			
		||||
	ltq_register_gpio_ebu(ARV4518PW_EBU);
 | 
			
		||||
	ltq_add_device_gpio_leds(-1, ARRAY_SIZE(arv4518pw_gpio_leds), arv4518pw_gpio_leds);
 | 
			
		||||
	ltq_register_gpio_buttons(arv4518pw_gpio_buttons, ARRAY_SIZE(arv4518pw_gpio_buttons));
 | 
			
		||||
	ltq_register_gpio_keys_polled(-1, LTQ_KEYS_POLL_INTERVAL,
 | 
			
		||||
				ARRAY_SIZE(arv4518pw_gpio_keys), arv4518pw_gpio_keys);
 | 
			
		||||
	ltq_register_nor(&arv45xx_flash_data);
 | 
			
		||||
	ltq_pci_data.gpio = PCI_GNT2 | PCI_REQ2;
 | 
			
		||||
	ltq_register_pci(<q_pci_data);
 | 
			
		||||
	ltq_register_madwifi_eep(ARV4518PW_MADWIFI_ADDR);
 | 
			
		||||
	ltq_register_ath5k(arv45xx_ath5k_eeprom_data, arv45xx_ath5k_eeprom_mac);
 | 
			
		||||
	xway_register_dwc(ARV4518PW_USB);
 | 
			
		||||
	arv45xx_register_ethernet();
 | 
			
		||||
	arv45xx_register_ath5k();
 | 
			
		||||
 | 
			
		||||
	gpio_request(ARV4518PW_SWITCH_RESET, "switch");
 | 
			
		||||
	gpio_direction_output(ARV4518PW_SWITCH_RESET, 1);
 | 
			
		||||
@ -480,18 +540,6 @@ MIPS_MACHINE(LANTIQ_MACH_ARV4525PW,
 | 
			
		||||
			"ARV4525PW - Speedport W502V",
 | 
			
		||||
			arv4525pw_init);
 | 
			
		||||
 | 
			
		||||
static struct gpio_keys_button
 | 
			
		||||
arv7525pw_gpio_keys[] __initdata = {
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "restart",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_0,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 29,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static void __init
 | 
			
		||||
arv7525pw_init(void)
 | 
			
		||||
{
 | 
			
		||||
@ -504,9 +552,9 @@ arv7525pw_init(void)
 | 
			
		||||
	ltq_pci_data.irq[14] = (INT_NUM_IM3_IRL0 + 31);
 | 
			
		||||
	ltq_register_pci(<q_pci_data);
 | 
			
		||||
	ltq_eth_data.mii_mode = PHY_INTERFACE_MODE_MII;
 | 
			
		||||
	arv45xx_register_ethernet();
 | 
			
		||||
	ltq_register_rt2x00("RT2860.eeprom");
 | 
			
		||||
	ltq_register_tapi();
 | 
			
		||||
	arv45xx_register_ethernet();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
MIPS_MACHINE(LANTIQ_MACH_ARV7525PW,
 | 
			
		||||
@ -522,7 +570,8 @@ arv7518pw_init(void)
 | 
			
		||||
 | 
			
		||||
	ltq_register_gpio_ebu(ARV7518PW_EBU);
 | 
			
		||||
	ltq_add_device_gpio_leds(-1, ARRAY_SIZE(arv7518pw_gpio_leds), arv7518pw_gpio_leds);
 | 
			
		||||
	ltq_register_gpio_buttons(arv7518pw_gpio_buttons, ARRAY_SIZE(arv7518pw_gpio_buttons));
 | 
			
		||||
	ltq_register_gpio_keys_polled(-1, LTQ_KEYS_POLL_INTERVAL,
 | 
			
		||||
				ARRAY_SIZE(arv7518pw_gpio_keys), arv7518pw_gpio_keys);
 | 
			
		||||
	ltq_register_nor(&arv75xx_flash_data);
 | 
			
		||||
	ltq_register_pci(<q_pci_data);
 | 
			
		||||
	ltq_register_tapi();
 | 
			
		||||
@ -545,7 +594,8 @@ arv752dpw22_init(void)
 | 
			
		||||
 | 
			
		||||
	ltq_register_gpio_ebu(ARV752DPW22_EBU);
 | 
			
		||||
	ltq_add_device_gpio_leds(-1, ARRAY_SIZE(arv752dpw22_gpio_leds), arv752dpw22_gpio_leds);
 | 
			
		||||
	ltq_register_gpio_buttons(arv752dpw22_gpio_buttons, ARRAY_SIZE(arv752dpw22_gpio_buttons));
 | 
			
		||||
	ltq_register_gpio_keys_polled(-1, LTQ_KEYS_POLL_INTERVAL,
 | 
			
		||||
				ARRAY_SIZE(arv752dpw22_gpio_keys), arv752dpw22_gpio_keys);
 | 
			
		||||
	ltq_register_nor(&arv75xx_flash_data);
 | 
			
		||||
	ltq_pci_data.irq[15] = (INT_NUM_IM3_IRL0 + 31);
 | 
			
		||||
	ltq_pci_data.gpio |= PCI_EXIN1 | PCI_REQ2;
 | 
			
		||||
 | 
			
		||||
@ -30,9 +30,12 @@
 | 
			
		||||
#include <dev-gpio-buttons.h>
 | 
			
		||||
 | 
			
		||||
#include "../machtypes.h"
 | 
			
		||||
#include "dev-wifi-ath5k.h"
 | 
			
		||||
#include "devices.h"
 | 
			
		||||
#include "dev-dwc_otg.h"
 | 
			
		||||
 | 
			
		||||
#include "mach-gigasx76x.h"
 | 
			
		||||
 | 
			
		||||
#define UBOOT_ENV_OFFSET	0x010000
 | 
			
		||||
#define UBOOT_ENV_SIZE		0x010000
 | 
			
		||||
 | 
			
		||||
@ -62,6 +65,7 @@ static struct mtd_partition gigasx76x_partitions[] =
 | 
			
		||||
 | 
			
		||||
static struct gpio_led
 | 
			
		||||
gigasx76x_gpio_leds[] __initdata = {
 | 
			
		||||
 | 
			
		||||
	{ .name = "soc:green:usb", .gpio = 202, },
 | 
			
		||||
	{ .name = "soc:green:wifi", .gpio = 203, },
 | 
			
		||||
	{ .name = "soc:green:phone2", .gpio = 204, },
 | 
			
		||||
@ -73,22 +77,22 @@ gigasx76x_gpio_leds[] __initdata = {
 | 
			
		||||
 | 
			
		||||
static struct gpio_keys_button
 | 
			
		||||
gigasx76x_gpio_keys[] __initdata = {
 | 
			
		||||
{
 | 
			
		||||
	.desc	= "restart",
 | 
			
		||||
	.type	= EV_KEY,
 | 
			
		||||
	.code	= KEY_RESTART,
 | 
			
		||||
	.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
	.gpio	= 14,
 | 
			
		||||
	.active_low	= 1,
 | 
			
		||||
},
 | 
			
		||||
{
 | 
			
		||||
	.desc	= "wps",
 | 
			
		||||
	.type	= EV_KEY,
 | 
			
		||||
	.code	= KEY_WPS_BUTTON,
 | 
			
		||||
	.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
	.gpio	= 22,
 | 
			
		||||
	.active_low	= 1,
 | 
			
		||||
},
 | 
			
		||||
	{
 | 
			
		||||
		.desc		= "wps",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_0,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 22,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},
 | 
			
		||||
	/*{
 | 
			
		||||
		.desc		= "factory",
 | 
			
		||||
		.type		= EV_KEY,
 | 
			
		||||
		.code		= BTN_1,
 | 
			
		||||
		.debounce_interval = LTQ_KEYS_DEBOUNCE_INTERVAL,
 | 
			
		||||
		.gpio		= 14,
 | 
			
		||||
		.active_low	= 1,
 | 
			
		||||
	},*/
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static struct physmap_flash_data gigasx76x_flash_data = {
 | 
			
		||||
@ -147,22 +151,31 @@ static int __init gigasx76x_parse_hex_byte(const char *b) {
 | 
			
		||||
	return (hi << 4) | lo;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static u16 gigasx76x_ath5k_eeprom_data[ATH5K_PLAT_EEP_MAX_WORDS];
 | 
			
		||||
static u8 gigasx76x_ath5k_eeprom_mac[6];
 | 
			
		||||
 | 
			
		||||
static int __init gigasx76x_register_ethernet(void) {
 | 
			
		||||
	u_int8_t addr[6];
 | 
			
		||||
	int i;
 | 
			
		||||
	char *uboot_env_page;
 | 
			
		||||
	char *mac;
 | 
			
		||||
	char *boardid;
 | 
			
		||||
 | 
			
		||||
	uboot_env_page = ioremap(LTQ_FLASH_START + UBOOT_ENV_OFFSET, UBOOT_ENV_SIZE);
 | 
			
		||||
	if (!uboot_env_page)
 | 
			
		||||
		return -ENOMEM;
 | 
			
		||||
 | 
			
		||||
	mac = get_uboot_env_var(uboot_env_page, UBOOT_ENV_SIZE, "\0ethaddr=", 9);
 | 
			
		||||
	boardid = get_uboot_env_var(uboot_env_page, UBOOT_ENV_SIZE, "\0boardid=", 9);
 | 
			
		||||
 | 
			
		||||
	if (!mac) {
 | 
			
		||||
	goto error_fail;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (!boardid) {
 | 
			
		||||
	goto error_fail;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/* Sanity check the string we're looking at */
 | 
			
		||||
	for (i = 0; i < 5; i++) {
 | 
			
		||||
	if (*(mac + (i * 3) + 2) != ':') {
 | 
			
		||||
@ -187,6 +200,19 @@ static int __init gigasx76x_register_ethernet(void) {
 | 
			
		||||
	memcpy(<q_eth_data.mac.sa_data, addr, 6);
 | 
			
		||||
	ltq_register_etop(<q_eth_data);
 | 
			
		||||
 | 
			
		||||
	memcpy(&gigasx76x_ath5k_eeprom_mac, addr, 6);
 | 
			
		||||
	gigasx76x_ath5k_eeprom_mac[5]++;
 | 
			
		||||
 | 
			
		||||
	if (strncmp(boardid, "sx763", 5) == 0) {
 | 
			
		||||
		printk("GIGASX76X: Board id is sx763.");
 | 
			
		||||
		memcpy(&gigasx76x_ath5k_eeprom_data, sx763_eeprom_data, ATH5K_PLAT_EEP_MAX_WORDS);
 | 
			
		||||
	} else if (strncmp(boardid, "sx762", 5) == 0) {
 | 
			
		||||
			printk("GIGASX76X: Board id is sx762.");
 | 
			
		||||
			memcpy(&gigasx76x_ath5k_eeprom_data, sx762_eeprom_data, ATH5K_PLAT_EEP_MAX_WORDS);
 | 
			
		||||
	} else {
 | 
			
		||||
		printk("GIGASX76X: Board id is unknown, fix uboot_env data.");
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
 | 
			
		||||
	error_fail:
 | 
			
		||||
@ -201,12 +227,13 @@ static void __init gigasx76x_init(void) {
 | 
			
		||||
	ltq_register_gpio_stp();
 | 
			
		||||
	ltq_register_nor(&gigasx76x_flash_data);
 | 
			
		||||
	ltq_register_pci(<q_pci_data);
 | 
			
		||||
	gigasx76x_register_ethernet();
 | 
			
		||||
	xway_register_dwc(GIGASX76X_USB);
 | 
			
		||||
	ltq_register_tapi();
 | 
			
		||||
	ltq_register_madwifi_eep(GIGASX76X_MADWIFI_ADDR);
 | 
			
		||||
	ltq_add_device_gpio_leds(-1, ARRAY_SIZE(gigasx76x_gpio_leds), gigasx76x_gpio_leds);
 | 
			
		||||
	ltq_register_gpio_keys_polled(-1, LTQ_KEYS_POLL_INTERVAL, ARRAY_SIZE(gigasx76x_gpio_keys), gigasx76x_gpio_keys);
 | 
			
		||||
	ltq_register_ath5k(gigasx76x_ath5k_eeprom_data, gigasx76x_ath5k_eeprom_mac);
 | 
			
		||||
	xway_register_dwc(GIGASX76X_USB);
 | 
			
		||||
	gigasx76x_register_ethernet();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
MIPS_MACHINE(LANTIQ_MACH_GIGASX76X, "GIGASX76X", "GIGASX76X - Gigaset SX761,SX762,SX763", gigasx76x_init);
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,203 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  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.
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (C) 2011 Andrej Vlašić
 | 
			
		||||
 *  Copyright (C) 2011 Luka Perkov
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
static u16 sx763_eeprom_data[ATH5K_PLAT_EEP_MAX_WORDS]=
 | 
			
		||||
{
 | 
			
		||||
0x5aa5,0x168c,0x0200,0x0001,0x0000,0x5001,0x0000,0x2051,0x2051,0x1c0a,0x0100,
 | 
			
		||||
0x0000,0x01c2,0x0002,0xc606,0x0001,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xf165,0x7fbe,0x0003,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x5aa5,0x0000,0x0000,0x0313,0x4943,
 | 
			
		||||
0x2053,0x7104,0x1202,0x0400,0x0306,0x0001,0x0000,0x0500,0x410e,0x39b1,0x1eb5,
 | 
			
		||||
0x4e2d,0x3056,0xffff,0xe902,0x0700,0x0106,0x0000,0x0100,0x1500,0x0752,0x4101,
 | 
			
		||||
0x6874,0x7265,0x736f,0x4320,0x6d6f,0x756d,0x696e,0x6163,0x6974,0x6e6f,0x2c73,
 | 
			
		||||
0x4920,0x636e,0x002e,0x5241,0x3035,0x3130,0x302d,0x3030,0x2d30,0x3030,0x3030,
 | 
			
		||||
0x5700,0x7269,0x6c65,0x7365,0x2073,0x414c,0x204e,0x6552,0x6566,0x6572,0x636e,
 | 
			
		||||
0x2065,0x6143,0x6472,0x3000,0x0030,0x00ff,0x2100,0x0602,0x2201,0x0205,0x8d80,
 | 
			
		||||
0x005b,0x0522,0x4002,0x8954,0x2200,0x0205,0x1b00,0x00b7,0x0522,0x8002,0x12a8,
 | 
			
		||||
0x2201,0x0205,0x3600,0x016e,0x0522,0x0002,0x2551,0x2202,0x0205,0x6c00,0x02dc,
 | 
			
		||||
0x0522,0x8002,0x37f9,0x2203,0x0205,0xa200,0x044a,0x0222,0x0803,0x0822,0x0604,
 | 
			
		||||
0x0300,0xbe7f,0x65f1,0x0222,0x0105,0x00ff,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0x0037,0x971f,0x5003,0x9a66,0x0001,0x81c4,0x016a,
 | 
			
		||||
0x02ff,0x84ff,0x15a3,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x2d2c,0x0000,0x0000,0x0000,0x0000,0xe028,0xa492,0x1c00,
 | 
			
		||||
0x000e,0xb8ca,0x0013,0x0000,0x0000,0x6b4b,0xc059,0x1571,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x2370,0x00a5,0x9618,0x419a,0x68a2,0xda35,0x001c,0x0007,0xb0ff,0x01b5,0x0000,
 | 
			
		||||
0x0000,0xff70,0x19ff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x3170,0x00a5,0x9618,0x419a,0x68a2,0xda35,
 | 
			
		||||
0x001c,0x000e,0xb0ff,0x21b5,0x0000,0x2fd8,0xff70,0x1226,0x19ff,0x07be,0x6201,
 | 
			
		||||
0x032e,0x0587,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1112,
 | 
			
		||||
0x1441,0x4231,0x3234,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x8000,0x0000,0x0000,0x0000,0x0000,0x8000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x4d31,0x7f54,0x3c93,0x1205,0x1931,
 | 
			
		||||
0x492d,0x7f50,0x3c93,0x0e01,0x192d,0x0070,0x0000,0x8140,0x724b,0x2ba9,0x3a09,
 | 
			
		||||
0x99d9,0x1949,0x0070,0x0000,0x80e0,0x624a,0x2af8,0x35c7,0x9d47,0x1938,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x7082,0x0820,0xb882,0x0820,0x7092,0x28a0,0x8992,
 | 
			
		||||
0x28a0,0xa292,0x28a0,0x70a2,0xa7ac,0x0000,0x0000,0x2464,0x6424,0x0000,0x0000,
 | 
			
		||||
0x70a2,0xa7ac,0x0000,0x0000,0x2464,0x6424,0x0000,0x0000,0x8989,0x0000,0x0000,
 | 
			
		||||
0x0000,0x2424,0x0000,0x0000,0x0000,0x7075,0xa2ac,0xb800,0x0000,0x2464,0x2424,
 | 
			
		||||
0x2400,0x0000,0x7075,0xa2ac,0x0000,0x0000,0x2464,0x2424,0x0000,0x0000,0x7075,
 | 
			
		||||
0xa7ac,0x0000,0x0000,0x2464,0x6424,0x0000,0x0000,0x7075,0xa7ac,0x0000,0x0000,
 | 
			
		||||
0x2464,0x6424,0x0000,0x0000,0x8989,0x0000,0x0000,0x0000,0x2424,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff};
 | 
			
		||||
 | 
			
		||||
static u16 sx762_eeprom_data[ATH5K_PLAT_EEP_MAX_WORDS]=
 | 
			
		||||
{
 | 
			
		||||
0x5aa5,0x168c,0x0200,0x0001,0x0000,0x5001,0x0000,0x2051,0x2051,0x1c0a,0x0100,
 | 
			
		||||
0x0000,0x01c2,0x0002,0xc606,0x0001,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xf165,0x7fbe,0x0003,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x5aa5,0x0000,0x0000,0x0313,0x4943,
 | 
			
		||||
0x2053,0x7104,0x1202,0x0400,0x0306,0x0001,0x0000,0x0500,0x410e,0x39b1,0x1eb5,
 | 
			
		||||
0x4e2d,0x3056,0xffff,0xe902,0x0700,0x0106,0x0000,0x0100,0x1500,0x0752,0x4101,
 | 
			
		||||
0x6874,0x7265,0x736f,0x4320,0x6d6f,0x756d,0x696e,0x6163,0x6974,0x6e6f,0x2c73,
 | 
			
		||||
0x4920,0x636e,0x002e,0x5241,0x3035,0x3130,0x302d,0x3030,0x2d30,0x3030,0x3030,
 | 
			
		||||
0x5700,0x7269,0x6c65,0x7365,0x2073,0x414c,0x204e,0x6552,0x6566,0x6572,0x636e,
 | 
			
		||||
0x2065,0x6143,0x6472,0x3000,0x0030,0x00ff,0x2100,0x0602,0x2201,0x0205,0x8d80,
 | 
			
		||||
0x005b,0x0522,0x4002,0x8954,0x2200,0x0205,0x1b00,0x00b7,0x0522,0x8002,0x12a8,
 | 
			
		||||
0x2201,0x0205,0x3600,0x016e,0x0522,0x0002,0x2551,0x2202,0x0205,0x6c00,0x02dc,
 | 
			
		||||
0x0522,0x8002,0x37f9,0x2203,0x0205,0xa200,0x044a,0x0222,0x0803,0x0822,0x0604,
 | 
			
		||||
0x0300,0xbe7f,0x65f1,0x0222,0x0105,0x00ff,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0x0037,0x6aaa,0x5003,0x9a66,0x0001,0x81c4,0x016a,
 | 
			
		||||
0x02ff,0x84ff,0x15a3,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x2d2c,0x0000,0x0000,0x0000,0x0000,0xe028,0xa492,0x1c00,
 | 
			
		||||
0x000e,0xb8ca,0x0013,0x0000,0x0000,0x6b4b,0xc059,0x1571,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x2370,0x00a5,0x9618,0x419a,0x68a2,0xda35,0x001c,0x0007,0xb0ff,0x01b5,0x0000,
 | 
			
		||||
0x0000,0xff70,0x19ff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x3170,0x00a5,0x9618,0x419a,0x68a2,0xda35,
 | 
			
		||||
0x001c,0x000e,0xb0ff,0x21b5,0x0000,0x2fd8,0xff70,0x1226,0x19ff,0x07fa,0x6201,
 | 
			
		||||
0x032e,0x0587,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1112,
 | 
			
		||||
0x1441,0x4231,0x3234,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x8000,0x0000,0x0000,0x0000,0x0000,0x8000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x4d31,0x7f54,0x3c93,0x1205,0x1931,
 | 
			
		||||
0x492d,0x7f50,0x3c93,0x0e01,0x192d,0x0070,0x0000,0x8180,0x724d,0xab59,0x3a08,
 | 
			
		||||
0xdd79,0x2559,0x0070,0x0000,0x81a0,0x6e4d,0x2b99,0x3a09,0x9989,0x2157,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0x0000,0x0000,0x7092,0x4924,0xb892,0x4924,0x7092,0x289e,0x8992,
 | 
			
		||||
0x289e,0xa292,0x289e,0x70a2,0xa7ac,0x0000,0x0000,0x2462,0x5e13,0x0000,0x0000,
 | 
			
		||||
0x70a2,0xa7ac,0x0000,0x0000,0x1e5c,0x5713,0x0000,0x0000,0x8989,0x0000,0x0000,
 | 
			
		||||
0x0000,0x2424,0x0000,0x0000,0x0000,0x7075,0xa2ac,0xb800,0x0000,0x2868,0x2828,
 | 
			
		||||
0x2800,0x0000,0x7075,0xa2ac,0x0000,0x0000,0x2868,0x2828,0x0000,0x0000,0x7075,
 | 
			
		||||
0xac00,0x0000,0x0000,0x2161,0x2100,0x0000,0x0000,0x7075,0xac00,0x0000,0x0000,
 | 
			
		||||
0x1b5b,0x1b00,0x0000,0x0000,0x8989,0x0000,0x0000,0x0000,0x2121,0x0000,0x0000,
 | 
			
		||||
0x0000,0x0000,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
 | 
			
		||||
0xffff,0xffff};
 | 
			
		||||
@ -49,7 +49,7 @@ Index: linux-3.1.1/arch/mips/lantiq/xway/Makefile
 | 
			
		||||
@@ -1,5 +1,7 @@
 | 
			
		||||
 obj-y := sysctrl.o reset.o gpio.o gpio_stp.o gpio_ebu.o devices.o dma.o nand.o timer.o
 | 
			
		||||
 
 | 
			
		||||
+obj-y += dev-dwc_otg.o dev-wifi-rt2x00.o
 | 
			
		||||
+obj-y += dev-dwc_otg.o dev-wifi-rt2x00.o dev-wifi-ath5k.o
 | 
			
		||||
+
 | 
			
		||||
 obj-$(CONFIG_SOC_XWAY) += clk-xway.o prom-xway.o
 | 
			
		||||
 obj-$(CONFIG_SOC_AMAZON_SE) += clk-ase.o prom-ase.o
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user