mirror of https://github.com/hak5/openwrt-owl.git
parent
b88e08839a
commit
696c29fa4d
|
@ -9,12 +9,13 @@ include $(TOPDIR)/rules.mk
|
|||
ARCH:=mips
|
||||
BOARD:=ifxmips
|
||||
BOARDNAME:=Infineon Mips
|
||||
FEATURES:=squashfs jffs2
|
||||
FEATURES:=squashfs jffs2 atm
|
||||
|
||||
LINUX_VERSION:=2.6.28.10
|
||||
LINUX_VERSION:=2.6.30.5
|
||||
|
||||
include $(INCLUDE_DIR)/target.mk
|
||||
DEFAULT_PACKAGES+=uboot-ifxmips hostapd-mini
|
||||
DEFAULT_PACKAGES+=uboot-ifxmips kmod-pppoa ppp-mod-pppoa linux-atm atm-tools br2684ctl kmod-ifxmips-atm dwc_usb
|
||||
|
||||
|
||||
define Target/Description
|
||||
Build firmware images for Infineon Mips Controllers
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
config interface loopback
|
||||
option ifname lo
|
||||
option proto static
|
||||
option ipaddr 127.0.0.1
|
||||
option netmask 255.0.0.0
|
||||
|
||||
config interface lan
|
||||
option ifname eth0
|
||||
option type bridge
|
||||
option proto static
|
||||
option ipaddr 192.168.1.1
|
||||
option netmask 255.255.255.0
|
||||
|
||||
config atm-bridge
|
||||
option unit 0
|
||||
option encaps llc
|
||||
option vpi 1
|
||||
option vci 32
|
||||
option payload bridged # some ISPs need this set to 'routed'
|
||||
|
||||
config interface wan
|
||||
option ifname nas0
|
||||
option proto pppoe
|
||||
option username ""
|
||||
option password ""
|
||||
option defaultroute 0
|
||||
option unit 1
|
|
@ -1,191 +0,0 @@
|
|||
CONFIG_32BIT=y
|
||||
# CONFIG_64BIT is not set
|
||||
# CONFIG_8139TOO is not set
|
||||
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
|
||||
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
|
||||
CONFIG_ARCH_POPULATES_NODE_MAP=y
|
||||
# CONFIG_ARCH_SUPPORTS_MSI is not set
|
||||
CONFIG_ARCH_SUPPORTS_OPROFILE=y
|
||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
||||
# CONFIG_ATM is not set
|
||||
CONFIG_BASE_SMALL=0
|
||||
# CONFIG_BCM47XX is not set
|
||||
CONFIG_BITREVERSE=y
|
||||
CONFIG_CEVT_R4K=y
|
||||
CONFIG_CLASSIC_RCU=y
|
||||
CONFIG_CMDLINE="console=ttyS0,9600 rootfstype=squashfs,jffs2"
|
||||
CONFIG_CPU_BIG_ENDIAN=y
|
||||
CONFIG_CPU_HAS_LLSC=y
|
||||
CONFIG_CPU_HAS_PREFETCH=y
|
||||
CONFIG_CPU_HAS_SYNC=y
|
||||
# CONFIG_CPU_LITTLE_ENDIAN is not set
|
||||
# CONFIG_CPU_LOONGSON2 is not set
|
||||
CONFIG_CPU_MIPS32=y
|
||||
# CONFIG_CPU_MIPS32_R1 is not set
|
||||
CONFIG_CPU_MIPS32_R2=y
|
||||
# CONFIG_CPU_MIPS64_R1 is not set
|
||||
# CONFIG_CPU_MIPS64_R2 is not set
|
||||
CONFIG_CPU_MIPSR2=y
|
||||
# CONFIG_CPU_NEVADA is not set
|
||||
# CONFIG_CPU_R10000 is not set
|
||||
# CONFIG_CPU_R3000 is not set
|
||||
# CONFIG_CPU_R4300 is not set
|
||||
# CONFIG_CPU_R4X00 is not set
|
||||
# CONFIG_CPU_R5000 is not set
|
||||
# CONFIG_CPU_R5432 is not set
|
||||
# CONFIG_CPU_R6000 is not set
|
||||
# CONFIG_CPU_R8000 is not set
|
||||
# CONFIG_CPU_RM7000 is not set
|
||||
# CONFIG_CPU_RM9000 is not set
|
||||
# CONFIG_CPU_SB1 is not set
|
||||
CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
|
||||
CONFIG_CPU_SUPPORTS_HIGHMEM=y
|
||||
# CONFIG_CPU_TX39XX is not set
|
||||
# CONFIG_CPU_TX49XX is not set
|
||||
# CONFIG_CPU_VR41XX is not set
|
||||
CONFIG_CSRC_R4K=y
|
||||
CONFIG_DEVPORT=y
|
||||
# CONFIG_DM9000 is not set
|
||||
CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
||||
CONFIG_DMA_NONCOHERENT=y
|
||||
CONFIG_EARLY_PRINTK=y
|
||||
CONFIG_FS_POSIX_ACL=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
CONFIG_GENERIC_CMOS_UPDATE=y
|
||||
# CONFIG_GENERIC_FIND_FIRST_BIT is not set
|
||||
CONFIG_GENERIC_FIND_NEXT_BIT=y
|
||||
CONFIG_GENERIC_GPIO=y
|
||||
# CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set
|
||||
CONFIG_GPIO_DEVICE=y
|
||||
CONFIG_HAS_DMA=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT=y
|
||||
CONFIG_HAVE_ARCH_KGDB=y
|
||||
# CONFIG_HAVE_ARCH_TRACEHOOK is not set
|
||||
# CONFIG_HAVE_CLK is not set
|
||||
# CONFIG_HAVE_DMA_ATTRS is not set
|
||||
# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set
|
||||
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
|
||||
CONFIG_HAVE_IDE=y
|
||||
# CONFIG_HAVE_IOREMAP_PROT is not set
|
||||
# CONFIG_HAVE_KPROBES is not set
|
||||
# CONFIG_HAVE_KRETPROBES is not set
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
CONFIG_HAVE_STD_PC_SERIAL_PORT=y
|
||||
# CONFIG_HIGH_RES_TIMERS is not set
|
||||
CONFIG_HW_HAS_PCI=y
|
||||
CONFIG_HW_RANDOM=y
|
||||
# CONFIG_I2C is not set
|
||||
# CONFIG_IDE is not set
|
||||
CONFIG_IFXMIPS=y
|
||||
CONFIG_IFXMIPS_EEPROM=y
|
||||
CONFIG_IFXMIPS_GPIO_RST_BTN=y
|
||||
# CONFIG_IFXMIPS_MEI is not set
|
||||
CONFIG_IFXMIPS_MII0=y
|
||||
# CONFIG_IFXMIPS_PROM_ASC0 is not set
|
||||
CONFIG_IFXMIPS_PROM_ASC1=y
|
||||
CONFIG_IFXMIPS_SSC=y
|
||||
CONFIG_IFXMIPS_WDT=y
|
||||
# CONFIG_IMAGE_CMDLINE_HACK is not set
|
||||
CONFIG_INITRAMFS_SOURCE=""
|
||||
CONFIG_IRQ_CPU=y
|
||||
CONFIG_KALLSYMS=y
|
||||
CONFIG_LEDS_GPIO=y
|
||||
CONFIG_LEDS_IFXMIPS=y
|
||||
# CONFIG_LEMOTE_FULONG is not set
|
||||
# CONFIG_MACH_ALCHEMY is not set
|
||||
# CONFIG_MACH_DECSTATION is not set
|
||||
# CONFIG_MACH_JAZZ is not set
|
||||
# CONFIG_MACH_TX39XX is not set
|
||||
# CONFIG_MACH_TX49XX is not set
|
||||
# CONFIG_MACH_VR41XX is not set
|
||||
# CONFIG_MIKROTIK_RB532 is not set
|
||||
CONFIG_MIPS=y
|
||||
# CONFIG_MIPS_COBALT is not set
|
||||
CONFIG_MIPS_L1_CACHE_SHIFT=5
|
||||
# CONFIG_MIPS_MACHINE is not set
|
||||
# CONFIG_MIPS_MALTA is not set
|
||||
CONFIG_MIPS_MT_DISABLED=y
|
||||
# CONFIG_MIPS_MT_SMP is not set
|
||||
# CONFIG_MIPS_MT_SMTC is not set
|
||||
# CONFIG_MIPS_SIM is not set
|
||||
# CONFIG_MIPS_VPE_LOADER is not set
|
||||
CONFIG_MTD_CFI_ADV_OPTIONS=y
|
||||
CONFIG_MTD_CFI_GEOMETRY=y
|
||||
# CONFIG_MTD_CFI_INTELEXT is not set
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_MTD_IFXMIPS=y
|
||||
# CONFIG_MTD_MAP_BANK_WIDTH_1 is not set
|
||||
# CONFIG_MTD_MAP_BANK_WIDTH_4 is not set
|
||||
# CONFIG_NATSEMI is not set
|
||||
CONFIG_NF_CT_ACCT=y
|
||||
# CONFIG_NO_IOPORT is not set
|
||||
CONFIG_PAGEFLAGS_EXTENDED=y
|
||||
CONFIG_PCI=y
|
||||
CONFIG_PCI_DOMAINS=y
|
||||
# CONFIG_PCSPKR_PLATFORM is not set
|
||||
# CONFIG_PMC_MSP is not set
|
||||
# CONFIG_PMC_YOSEMITE is not set
|
||||
# CONFIG_PNX8550_JBS is not set
|
||||
# CONFIG_PNX8550_STB810 is not set
|
||||
# CONFIG_PROBE_INITRD_HEADER is not set
|
||||
# CONFIG_R6040 is not set
|
||||
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
||||
# CONFIG_SCSI_WAIT_SCAN is not set
|
||||
# CONFIG_SERIAL_8250 is not set
|
||||
CONFIG_SERIAL_IFXMIPS=y
|
||||
# CONFIG_SGI_IP22 is not set
|
||||
# CONFIG_SGI_IP27 is not set
|
||||
# CONFIG_SGI_IP28 is not set
|
||||
# CONFIG_SGI_IP32 is not set
|
||||
# CONFIG_SIBYTE_BIGSUR is not set
|
||||
# CONFIG_SIBYTE_CARMEL is not set
|
||||
# CONFIG_SIBYTE_CRHINE is not set
|
||||
# CONFIG_SIBYTE_CRHONE is not set
|
||||
# CONFIG_SIBYTE_LITTLESUR is not set
|
||||
# CONFIG_SIBYTE_RHONE is not set
|
||||
# CONFIG_SIBYTE_SENTOSA is not set
|
||||
# CONFIG_SIBYTE_SWARM is not set
|
||||
CONFIG_SWAP_IO_SPACE=y
|
||||
CONFIG_SYS_HAS_CPU_MIPS32_R1=y
|
||||
CONFIG_SYS_HAS_CPU_MIPS32_R2=y
|
||||
CONFIG_SYS_HAS_EARLY_PRINTK=y
|
||||
CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
|
||||
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
|
||||
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
|
||||
CONFIG_SYS_SUPPORTS_MULTITHREADING=y
|
||||
# CONFIG_TC35815 is not set
|
||||
# CONFIG_TICK_ONESHOT is not set
|
||||
CONFIG_TRAD_SIGNALS=y
|
||||
# CONFIG_USB is not set
|
||||
# CONFIG_USB_CDC_COMPOSITE is not set
|
||||
# CONFIG_USB_DWC_HCD is not set
|
||||
# CONFIG_USB_EHCI_HCD is not set
|
||||
# CONFIG_USB_ETH is not set
|
||||
# CONFIG_USB_FILE_STORAGE is not set
|
||||
# CONFIG_USB_GADGETFS is not set
|
||||
# CONFIG_USB_GADGET_AMD5536UDC is not set
|
||||
# CONFIG_USB_GADGET_AT91 is not set
|
||||
# CONFIG_USB_GADGET_ATMEL_USBA is not set
|
||||
# CONFIG_USB_GADGET_DUMMY_HCD is not set
|
||||
# CONFIG_USB_GADGET_FSL_USB2 is not set
|
||||
# CONFIG_USB_GADGET_GOKU is not set
|
||||
# CONFIG_USB_GADGET_LH7A40X is not set
|
||||
# CONFIG_USB_GADGET_M66592 is not set
|
||||
# CONFIG_USB_GADGET_MUSB_HDRC is not set
|
||||
# CONFIG_USB_GADGET_NET2280 is not set
|
||||
# CONFIG_USB_GADGET_OMAP is not set
|
||||
# CONFIG_USB_GADGET_PXA25X is not set
|
||||
# CONFIG_USB_GADGET_PXA27X is not set
|
||||
# CONFIG_USB_GADGET_S3C2410 is not set
|
||||
# CONFIG_USB_G_PRINTER is not set
|
||||
# CONFIG_USB_G_SERIAL is not set
|
||||
# CONFIG_USB_MIDI_GADGET is not set
|
||||
CONFIG_USB_SUPPORT=y
|
||||
# CONFIG_USB_UHCI_HCD is not set
|
||||
# CONFIG_USB_ZERO is not set
|
||||
# CONFIG_VGASTATE is not set
|
||||
# CONFIG_VIA_RHINE is not set
|
||||
# CONFIG_VIDEO_MEDIA is not set
|
||||
CONFIG_ZONE_DMA_FLAG=0
|
|
@ -1,6 +1,5 @@
|
|||
CONFIG_32BIT=y
|
||||
# CONFIG_64BIT is not set
|
||||
# CONFIG_8139TOO is not set
|
||||
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
|
||||
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
|
||||
CONFIG_ARCH_POPULATES_NODE_MAP=y
|
||||
|
@ -9,11 +8,15 @@ CONFIG_ARCH_SUPPORTS_OPROFILE=y
|
|||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
||||
CONFIG_BASE_SMALL=0
|
||||
# CONFIG_BCM47XX is not set
|
||||
# CONFIG_BINARY_PRINTF is not set
|
||||
CONFIG_BITREVERSE=y
|
||||
# CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set
|
||||
# CONFIG_CAVIUM_OCTEON_SIMULATOR is not set
|
||||
CONFIG_CEVT_R4K=y
|
||||
CONFIG_CLASSIC_RCU=y
|
||||
CONFIG_CEVT_R4K_LIB=y
|
||||
CONFIG_CMDLINE="console=ttyS0,9600 rootfstype=squashfs,jffs2"
|
||||
CONFIG_CPU_BIG_ENDIAN=y
|
||||
# CONFIG_CPU_CAVIUM_OCTEON is not set
|
||||
CONFIG_CPU_HAS_LLSC=y
|
||||
CONFIG_CPU_HAS_PREFETCH=y
|
||||
CONFIG_CPU_HAS_SYNC=y
|
||||
|
@ -44,6 +47,8 @@ CONFIG_CPU_SUPPORTS_HIGHMEM=y
|
|||
# CONFIG_CPU_TX49XX is not set
|
||||
# CONFIG_CPU_VR41XX is not set
|
||||
CONFIG_CSRC_R4K=y
|
||||
CONFIG_CSRC_R4K_LIB=y
|
||||
CONFIG_DECOMPRESS_LZMA=y
|
||||
CONFIG_DEVPORT=y
|
||||
# CONFIG_DM9000 is not set
|
||||
CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
||||
|
@ -52,10 +57,10 @@ CONFIG_EARLY_PRINTK=y
|
|||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
CONFIG_GENERIC_CMOS_UPDATE=y
|
||||
CONFIG_GENERIC_FIND_LAST_BIT=y
|
||||
CONFIG_GENERIC_FIND_NEXT_BIT=y
|
||||
CONFIG_GENERIC_GPIO=y
|
||||
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
|
||||
CONFIG_GPIO_DEVICE=y
|
||||
CONFIG_HARDWARE_WATCHPOINTS=y
|
||||
CONFIG_HAS_DMA=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
|
@ -63,7 +68,9 @@ CONFIG_HAS_IOPORT=y
|
|||
CONFIG_HAVE_ARCH_KGDB=y
|
||||
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
|
||||
CONFIG_HAVE_IDE=y
|
||||
CONFIG_HAVE_MLOCK=y
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
CONFIG_HAVE_STD_PC_SERIAL_PORT=y
|
||||
# CONFIG_HIGH_RES_TIMERS is not set
|
||||
CONFIG_HW_HAS_PCI=y
|
||||
CONFIG_HW_RANDOM=y
|
||||
|
@ -71,17 +78,15 @@ CONFIG_HZ=250
|
|||
# CONFIG_HZ_100 is not set
|
||||
CONFIG_HZ_250=y
|
||||
# CONFIG_I2C is not set
|
||||
# CONFIG_IDE is not set
|
||||
CONFIG_IFXMIPS=y
|
||||
CONFIG_IFXMIPS_EEPROM=y
|
||||
# CONFIG_IFXMIPS_EEPROM is not set
|
||||
CONFIG_IFXMIPS_GPIO_RST_BTN=y
|
||||
# CONFIG_IFXMIPS_MEI is not set
|
||||
CONFIG_IFXMIPS_MII0=y
|
||||
# CONFIG_IFXMIPS_PROM_ASC0 is not set
|
||||
CONFIG_IFXMIPS_PROM_ASC1=y
|
||||
CONFIG_IFXMIPS_SSC=y
|
||||
# CONFIG_IFXMIPS_SSC is not set
|
||||
CONFIG_IFXMIPS_WDT=y
|
||||
# CONFIG_IMAGE_CMDLINE_HACK is not set
|
||||
CONFIG_INITRAMFS_SOURCE=""
|
||||
CONFIG_IRQ_CPU=y
|
||||
CONFIG_KALLSYMS=y
|
||||
|
@ -90,7 +95,6 @@ CONFIG_LEDS_IFXMIPS=y
|
|||
# CONFIG_LEMOTE_FULONG is not set
|
||||
# CONFIG_MACH_ALCHEMY is not set
|
||||
# CONFIG_MACH_DECSTATION is not set
|
||||
# CONFIG_MACH_EMMA is not set
|
||||
# CONFIG_MACH_JAZZ is not set
|
||||
# CONFIG_MACH_TX39XX is not set
|
||||
# CONFIG_MACH_TX49XX is not set
|
||||
|
@ -98,6 +102,7 @@ CONFIG_LEDS_IFXMIPS=y
|
|||
# CONFIG_MIKROTIK_RB532 is not set
|
||||
CONFIG_MIPS=y
|
||||
# CONFIG_MIPS_COBALT is not set
|
||||
# CONFIG_MIPS_FPU_EMU is not set
|
||||
CONFIG_MIPS_L1_CACHE_SHIFT=5
|
||||
# CONFIG_MIPS_MACHINE is not set
|
||||
# CONFIG_MIPS_MALTA is not set
|
||||
|
@ -105,6 +110,7 @@ CONFIG_MIPS_MT_DISABLED=y
|
|||
# CONFIG_MIPS_MT_SMP is not set
|
||||
# CONFIG_MIPS_MT_SMTC is not set
|
||||
# CONFIG_MIPS_SIM is not set
|
||||
# CONFIG_MIPS_VPE_LOADER is not set
|
||||
CONFIG_MTD_CFI_ADV_OPTIONS=y
|
||||
CONFIG_MTD_CFI_GEOMETRY=y
|
||||
# CONFIG_MTD_CFI_INTELEXT is not set
|
||||
|
@ -125,8 +131,8 @@ CONFIG_PCI_DOMAINS=y
|
|||
# CONFIG_PNX8550_JBS is not set
|
||||
# CONFIG_PNX8550_STB810 is not set
|
||||
# CONFIG_PROBE_INITRD_HEADER is not set
|
||||
# CONFIG_R6040 is not set
|
||||
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
||||
# CONFIG_PROM_EMU is not set
|
||||
CONFIG_SCHED_OMIT_FRAME_POINTER=y
|
||||
# CONFIG_SCSI_DMA is not set
|
||||
# CONFIG_SERIAL_8250 is not set
|
||||
CONFIG_SERIAL_IFXMIPS=y
|
||||
|
@ -142,6 +148,7 @@ CONFIG_SERIAL_IFXMIPS=y
|
|||
# CONFIG_SIBYTE_RHONE is not set
|
||||
# CONFIG_SIBYTE_SENTOSA is not set
|
||||
# CONFIG_SIBYTE_SWARM is not set
|
||||
# CONFIG_SLOW_WORK is not set
|
||||
CONFIG_SWAP_IO_SPACE=y
|
||||
CONFIG_SYS_HAS_CPU_MIPS32_R1=y
|
||||
CONFIG_SYS_HAS_CPU_MIPS32_R2=y
|
||||
|
@ -149,9 +156,9 @@ CONFIG_SYS_HAS_EARLY_PRINTK=y
|
|||
CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
|
||||
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
|
||||
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
|
||||
CONFIG_SYS_SUPPORTS_MULTITHREADING=y
|
||||
# CONFIG_TC35815 is not set
|
||||
CONFIG_TRACING_SUPPORT=y
|
||||
CONFIG_TRAD_SIGNALS=y
|
||||
CONFIG_USB_SUPPORT=y
|
||||
# CONFIG_VGASTATE is not set
|
||||
# CONFIG_VIA_RHINE is not set
|
||||
CONFIG_ZONE_DMA_FLAG=0
|
|
@ -34,6 +34,7 @@
|
|||
#include <asm/bootinfo.h>
|
||||
#include <asm/irq.h>
|
||||
#include <asm/ifxmips/ifxmips.h>
|
||||
#include <asm/ifxmips/ifxmips_irq.h>
|
||||
|
||||
#define MAX_BOARD_NAME_LEN 32
|
||||
#define MAX_IFXMIPS_DEVS 9
|
||||
|
@ -132,6 +133,7 @@ static struct gpio_led arv4519_gpio_leds[] = {
|
|||
{ .name = "ifx:green:internet", .gpio = 5, .active_low = 1, },
|
||||
{ .name = "ifx:red:internet", .gpio = 8, .active_low = 1, },
|
||||
{ .name = "ifx:green:wlan", .gpio = 6, .active_low = 1, },
|
||||
{ .name = "ifx:green:usbpwr", .gpio = 14, .active_low = 1, },
|
||||
{ .name = "ifx:green:usb", .gpio = 19, .active_low = 1, },
|
||||
};
|
||||
|
||||
|
@ -146,18 +148,41 @@ static struct platform_device ifxmips_gpio_leds = {
|
|||
};
|
||||
#endif
|
||||
|
||||
static struct resource dwc_usb_res[] = {
|
||||
{
|
||||
.name = "dwc_usb_membase",
|
||||
.flags = IORESOURCE_MEM,
|
||||
.start = 0x1E101000,
|
||||
.end = 0x1E101FFF
|
||||
},
|
||||
{
|
||||
.name = "dwc_usb_irq",
|
||||
.flags = IORESOURCE_IRQ,
|
||||
.start = IFXMIPS_USB_INT,
|
||||
}
|
||||
};
|
||||
|
||||
static struct platform_device dwc_usb =
|
||||
{
|
||||
.id = 0,
|
||||
.name = "dwc_usb",
|
||||
.resource = dwc_usb_res,
|
||||
.num_resources = ARRAY_SIZE(dwc_usb_res),
|
||||
};
|
||||
|
||||
struct platform_device *easy50712_devs[] = {
|
||||
&ifxmips_led, &ifxmips_gpio, &ifxmips_mii,
|
||||
&ifxmips_mtd, &ifxmips_wdt, &ifxmips_gpio_dev
|
||||
&ifxmips_mtd, &ifxmips_wdt, &ifxmips_gpio_dev, &dwc_usb
|
||||
};
|
||||
|
||||
struct platform_device *easy4010_devs[] = {
|
||||
&ifxmips_led, &ifxmips_gpio, &ifxmips_mii,
|
||||
&ifxmips_mtd, &ifxmips_wdt, &ifxmips_gpio_dev
|
||||
&ifxmips_mtd, &ifxmips_wdt, &ifxmips_gpio_dev, &dwc_usb
|
||||
};
|
||||
|
||||
struct platform_device *arv5419_devs[] = {
|
||||
&ifxmips_gpio, &ifxmips_mii, &ifxmips_mtd, &ifxmips_wdt,
|
||||
&ifxmips_gpio, &ifxmips_mii, &ifxmips_mtd,
|
||||
&ifxmips_gpio_dev, &ifxmips_wdt, &dwc_usb,
|
||||
#ifdef CONFIG_LEDS_GPIO
|
||||
&ifxmips_gpio_leds,
|
||||
#endif
|
||||
|
|
|
@ -30,40 +30,7 @@
|
|||
#include <asm/div64.h>
|
||||
#include <linux/errno.h>
|
||||
#include <asm/ifxmips/ifxmips.h>
|
||||
|
||||
#define BASIC_INPUT_CLOCK_FREQUENCY_1 35328000
|
||||
#define BASIC_INPUT_CLOCK_FREQUENCY_2 36000000
|
||||
|
||||
#define BASIS_INPUT_CRYSTAL_USB 12000000
|
||||
|
||||
#define GET_BITS(x, msb, lsb) (((x) & ((1 << ((msb) + 1)) - 1)) >> (lsb))
|
||||
|
||||
|
||||
#define CGU_PLL0_PHASE_DIVIDER_ENABLE (ifxmips_r32(IFXMIPS_CGU_PLL0_CFG) & (1 << 31))
|
||||
#define CGU_PLL0_BYPASS (ifxmips_r32(IFXMIPS_CGU_PLL0_CFG) & (1 << 30))
|
||||
#define CGU_PLL0_CFG_DSMSEL (ifxmips_r32(IFXMIPS_CGU_PLL0_CFG) & (1 << 28))
|
||||
#define CGU_PLL0_CFG_FRAC_EN (ifxmips_r32(IFXMIPS_CGU_PLL0_CFG) & (1 << 27))
|
||||
#define CGU_PLL1_SRC (ifxmips_r32(IFXMIPS_CGU_PLL1_CFG) & (1 << 31))
|
||||
#define CGU_PLL1_BYPASS (ifxmips_r32(IFXMIPS_CGU_PLL1_CFG) & (1 << 30))
|
||||
#define CGU_PLL1_CFG_DSMSEL (ifxmips_r32(IFXMIPS_CGU_PLL1_CFG) & (1 << 28))
|
||||
#define CGU_PLL1_CFG_FRAC_EN (ifxmips_r32(IFXMIPS_CGU_PLL1_CFG) & (1 << 27))
|
||||
#define CGU_PLL2_PHASE_DIVIDER_ENABLE (ifxmips_r32(IFXMIPS_CGU_PLL2_CFG) & (1 << 20))
|
||||
#define CGU_PLL2_BYPASS (ifxmips_r32(IFXMIPS_CGU_PLL2_CFG) & (1 << 19))
|
||||
#define CGU_SYS_FPI_SEL (1 << 6)
|
||||
#define CGU_SYS_DDR_SEL 0x3
|
||||
#define CGU_PLL0_SRC (1 << 29)
|
||||
|
||||
#define CGU_PLL0_CFG_PLLK GET_BITS(*IFXMIPS_CGU_PLL0_CFG, 26, 17)
|
||||
#define CGU_PLL0_CFG_PLLN GET_BITS(*IFXMIPS_CGU_PLL0_CFG, 12, 6)
|
||||
#define CGU_PLL0_CFG_PLLM GET_BITS(*IFXMIPS_CGU_PLL0_CFG, 5, 2)
|
||||
#define CGU_PLL1_CFG_PLLK GET_BITS(*IFXMIPS_CGU_PLL1_CFG, 26, 17)
|
||||
#define CGU_PLL1_CFG_PLLN GET_BITS(*IFXMIPS_CGU_PLL1_CFG, 12, 6)
|
||||
#define CGU_PLL1_CFG_PLLM GET_BITS(*IFXMIPS_CGU_PLL1_CFG, 5, 2)
|
||||
#define CGU_PLL2_SRC GET_BITS(*IFXMIPS_CGU_PLL2_CFG, 18, 17)
|
||||
#define CGU_PLL2_CFG_INPUT_DIV GET_BITS(*IFXMIPS_CGU_PLL2_CFG, 16, 13)
|
||||
#define CGU_PLL2_CFG_PLLN GET_BITS(*IFXMIPS_CGU_PLL2_CFG, 12, 6)
|
||||
#define CGU_PLL2_CFG_PLLM GET_BITS(*IFXMIPS_CGU_PLL2_CFG, 5, 2)
|
||||
#define CGU_IF_CLK_PCI_CLK GET_BITS(*IFXMIPS_CGU_IF_CLK, 23, 20)
|
||||
#include <asm/mach-ifxmips/cgu.h>
|
||||
|
||||
static unsigned int cgu_get_pll0_fdiv(void);
|
||||
unsigned int ifxmips_clocks[] = {CLOCK_167M, CLOCK_133M, CLOCK_111M, CLOCK_83M };
|
||||
|
@ -185,14 +152,6 @@ unsigned int cgu_get_io_region_clock(void)
|
|||
}
|
||||
}
|
||||
|
||||
unsigned int cgu_get_fpi_bus_clock(int fpi)
|
||||
{
|
||||
unsigned int ret = cgu_get_io_region_clock();
|
||||
if ((fpi == 2) && (ifxmips_r32(IFXMIPS_CGU_SYS) & CGU_SYS_FPI_SEL))
|
||||
ret >>= 1;
|
||||
return ret;
|
||||
}
|
||||
|
||||
void cgu_setup_pci_clk(int external_clock)
|
||||
{
|
||||
/* set clock to 33Mhz */
|
||||
|
@ -200,7 +159,7 @@ void cgu_setup_pci_clk(int external_clock)
|
|||
IFXMIPS_CGU_IFCCR);
|
||||
ifxmips_w32(ifxmips_r32(IFXMIPS_CGU_IFCCR) | 0x800000,
|
||||
IFXMIPS_CGU_IFCCR);
|
||||
if (external_clock) {
|
||||
if (external_clock) {
|
||||
ifxmips_w32(ifxmips_r32(IFXMIPS_CGU_IFCCR) & ~(1 << 16),
|
||||
IFXMIPS_CGU_IFCCR);
|
||||
ifxmips_w32((1 << 30), IFXMIPS_CGU_PCICR);
|
||||
|
@ -211,6 +170,15 @@ void cgu_setup_pci_clk(int external_clock)
|
|||
}
|
||||
}
|
||||
|
||||
unsigned int cgu_get_fpi_bus_clock(int fpi)
|
||||
{
|
||||
unsigned int ret = cgu_get_io_region_clock();
|
||||
if ((fpi == 2) && (ifxmips_r32(IFXMIPS_CGU_SYS) & CGU_SYS_FPI_SEL))
|
||||
ret >>= 1;
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL(cgu_get_fpi_bus_clock);
|
||||
|
||||
unsigned int ifxmips_get_cpu_hz(void)
|
||||
{
|
||||
unsigned int ddr_clock = DDR_HZ;
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
#include <asm/ifxmips/ifxmips.h>
|
||||
#include <asm/ifxmips/ifxmips_irq.h>
|
||||
#include <asm/ifxmips/ifxmips_pmu.h>
|
||||
#include <asm/ifxmips/ifxmips_cgu.h>
|
||||
#include <asm/mach-ifxmips/cgu.h>
|
||||
#include <asm/ifxmips/ifxmips_prom.h>
|
||||
|
||||
static unsigned int r4k_offset;
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
#include <asm/ifxmips/ifxmips.h>
|
||||
#include <asm/ifxmips/ifxmips_irq.h>
|
||||
#include <asm/ifxmips/ifxmips_cgu.h>
|
||||
#include <asm/mach-ifxmips/cgu.h>
|
||||
#include <asm/ifxmips/ifxmips_gptu.h>
|
||||
#include <asm/ifxmips/ifxmips_pmu.h>
|
||||
|
||||
|
|
|
@ -63,6 +63,8 @@
|
|||
#define IFXMIPS_DMA_CH18_INT (INT_NUM_IM2_IRL0 + 16)
|
||||
#define IFXMIPS_DMA_CH19_INT (INT_NUM_IM2_IRL0 + 21)
|
||||
|
||||
#define IFXMIPS_PPE_MBOX_INT (INT_NUM_IM2_IRL0 + 24)
|
||||
|
||||
#define IFXMIPS_USB_INT (INT_NUM_IM4_IRL0 + 22)
|
||||
#define IFXMIPS_USB_OC_INT (INT_NUM_IM4_IRL0 + 23)
|
||||
|
|
@ -18,8 +18,10 @@
|
|||
#ifndef _IFXMIPS_PMU_H__
|
||||
#define _IFXMIPS_PMU_H__
|
||||
|
||||
#define IFXMIPS_PMU_PWDCR_DMA 0x20
|
||||
#define IFXMIPS_PMU_PWDCR_LED 0x800
|
||||
|
||||
#define IFXMIPS_PMU_PWDCR_DMA 0x0020
|
||||
#define IFXMIPS_PMU_PWDCR_USB 0x8041
|
||||
#define IFXMIPS_PMU_PWDCR_LED 0x0800
|
||||
#define IFXMIPS_PMU_PWDCR_GPT 0x1000
|
||||
#define IFXMIPS_PMU_PWDCR_PPE 0x2000
|
||||
#define IFXMIPS_PMU_PWDCR_FPI 0x4000
|
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Copyright (C) 2007 John Crispin <blogic@openwrt.org>
|
||||
*/
|
||||
|
||||
#ifndef _IFXMIPS_CGU_H__
|
||||
#define _IFXMIPS_CGU_H__
|
||||
|
||||
#define BASIC_INPUT_CLOCK_FREQUENCY_1 35328000
|
||||
#define BASIC_INPUT_CLOCK_FREQUENCY_2 36000000
|
||||
|
||||
#define BASIS_INPUT_CRYSTAL_USB 12000000
|
||||
|
||||
#define GET_BITS(x, msb, lsb) (((x) & ((1 << ((msb) + 1)) - 1)) >> (lsb))
|
||||
|
||||
#define CGU_PLL0_PHASE_DIVIDER_ENABLE (ifxmips_r32(IFXMIPS_CGU_PLL0_CFG) & (1 << 31))
|
||||
#define CGU_PLL0_BYPASS (ifxmips_r32(IFXMIPS_CGU_PLL0_CFG) & (1 << 30))
|
||||
#define CGU_PLL0_CFG_DSMSEL (ifxmips_r32(IFXMIPS_CGU_PLL0_CFG) & (1 << 28))
|
||||
#define CGU_PLL0_CFG_FRAC_EN (ifxmips_r32(IFXMIPS_CGU_PLL0_CFG) & (1 << 27))
|
||||
#define CGU_PLL1_SRC (ifxmips_r32(IFXMIPS_CGU_PLL1_CFG) & (1 << 31))
|
||||
#define CGU_PLL1_BYPASS (ifxmips_r32(IFXMIPS_CGU_PLL1_CFG) & (1 << 30))
|
||||
#define CGU_PLL1_CFG_DSMSEL (ifxmips_r32(IFXMIPS_CGU_PLL1_CFG) & (1 << 28))
|
||||
#define CGU_PLL1_CFG_FRAC_EN (ifxmips_r32(IFXMIPS_CGU_PLL1_CFG) & (1 << 27))
|
||||
#define CGU_PLL2_PHASE_DIVIDER_ENABLE (ifxmips_r32(IFXMIPS_CGU_PLL2_CFG) & (1 << 20))
|
||||
#define CGU_PLL2_BYPASS (ifxmips_r32(IFXMIPS_CGU_PLL2_CFG) & (1 << 19))
|
||||
#define CGU_SYS_FPI_SEL (1 << 6)
|
||||
#define CGU_SYS_DDR_SEL 0x3
|
||||
#define CGU_PLL0_SRC (1 << 29)
|
||||
|
||||
#define CGU_PLL0_CFG_PLLK GET_BITS(*IFXMIPS_CGU_PLL0_CFG, 26, 17)
|
||||
#define CGU_PLL0_CFG_PLLN GET_BITS(*IFXMIPS_CGU_PLL0_CFG, 12, 6)
|
||||
#define CGU_PLL0_CFG_PLLM GET_BITS(*IFXMIPS_CGU_PLL0_CFG, 5, 2)
|
||||
#define CGU_PLL1_CFG_PLLK GET_BITS(*IFXMIPS_CGU_PLL1_CFG, 26, 17)
|
||||
#define CGU_PLL1_CFG_PLLN GET_BITS(*IFXMIPS_CGU_PLL1_CFG, 12, 6)
|
||||
#define CGU_PLL1_CFG_PLLM GET_BITS(*IFXMIPS_CGU_PLL1_CFG, 5, 2)
|
||||
#define CGU_PLL2_SRC GET_BITS(*IFXMIPS_CGU_PLL2_CFG, 18, 17)
|
||||
#define CGU_PLL2_CFG_INPUT_DIV GET_BITS(*IFXMIPS_CGU_PLL2_CFG, 16, 13)
|
||||
#define CGU_PLL2_CFG_PLLN GET_BITS(*IFXMIPS_CGU_PLL2_CFG, 12, 6)
|
||||
#define CGU_PLL2_CFG_PLLM GET_BITS(*IFXMIPS_CGU_PLL2_CFG, 5, 2)
|
||||
#define CGU_IF_CLK_PCI_CLK GET_BITS(*IFXMIPS_CGU_IF_CLK, 23, 20)
|
||||
|
||||
|
||||
unsigned int cgu_get_mips_clock(int cpu);
|
||||
unsigned int cgu_get_io_region_clock(void);
|
||||
unsigned int cgu_get_fpi_bus_clock(int fpi);
|
||||
void cgu_setup_pci_clk(int internal_clock);
|
||||
unsigned int ifxmips_get_ddr_hz(void);
|
||||
unsigned int ifxmips_get_fpi_hz(void);
|
||||
unsigned int ifxmips_get_cpu_hz(void);
|
||||
|
||||
#endif
|
|
@ -99,7 +99,7 @@ static inline void gpio_set_value_cansleep(unsigned gpio, int value)
|
|||
|
||||
static inline int gpio_is_valid(int number)
|
||||
{
|
||||
return ((unsigned)number) < 8;
|
||||
return ((unsigned)number) < 16;
|
||||
}
|
||||
|
||||
#endif
|
|
@ -6,7 +6,7 @@
|
|||
#include <linux/mm.h>
|
||||
#include <asm/ifxmips/ifxmips.h>
|
||||
#include <asm/ifxmips/ifxmips_irq.h>
|
||||
#include <asm/ifxmips/ifxmips_cgu.h>
|
||||
#include <asm/mach-ifxmips/cgu.h>
|
||||
#include <asm/addrspace.h>
|
||||
#include <linux/vmalloc.h>
|
||||
|
||||
|
|
|
@ -134,8 +134,8 @@ int find_uImage_size(unsigned long start_offset)
|
|||
unsigned long magic;
|
||||
unsigned long temp;
|
||||
ifxmips_copy_from(&ifxmips_map, &magic, start_offset, 4);
|
||||
if (!(ntohl(magic) == 0x27051956)) {
|
||||
printk(KERN_INFO "ifxmips_mtd: invalid magic (0x%08X) of kernel at 0x%08lx \n", ntohl(magic), start_offset);
|
||||
if (le32_to_cpu(magic) != 0x56190527) {
|
||||
printk(KERN_INFO "ifxmips_mtd: invalid magic (0x%08X) of kernel at 0x%08lx \n", le32_to_cpu(magic), start_offset);
|
||||
return 0;
|
||||
}
|
||||
ifxmips_copy_from(&ifxmips_map, &temp, start_offset + 12, 4);
|
||||
|
@ -159,7 +159,7 @@ int detect_squashfs_partition(unsigned long start_offset)
|
|||
{
|
||||
unsigned long temp;
|
||||
ifxmips_copy_from(&ifxmips_map, &temp, start_offset, 4);
|
||||
return temp == SQUASHFS_MAGIC;
|
||||
return le32_to_cpu(temp) == SQUASHFS_MAGIC;
|
||||
}
|
||||
|
||||
static int ifxmips_mtd_probe(struct platform_device *dev)
|
||||
|
|
|
@ -79,7 +79,7 @@ EXPORT_SYMBOL(ifxmips_read_mdio);
|
|||
|
||||
int ifxmips_ifxmips_mii_open(struct net_device *dev)
|
||||
{
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)dev->priv;
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)netdev_priv(dev);
|
||||
struct dma_device_info *dma_dev = priv->dma_device;
|
||||
int i;
|
||||
|
||||
|
@ -93,7 +93,7 @@ int ifxmips_ifxmips_mii_open(struct net_device *dev)
|
|||
|
||||
int ifxmips_mii_release(struct net_device *dev)
|
||||
{
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)dev->priv;
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)netdev_priv(dev);
|
||||
struct dma_device_info *dma_dev = priv->dma_device;
|
||||
int i;
|
||||
|
||||
|
@ -105,7 +105,7 @@ int ifxmips_mii_release(struct net_device *dev)
|
|||
|
||||
int ifxmips_mii_hw_receive(struct net_device *dev, struct dma_device_info *dma_dev)
|
||||
{
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)dev->priv;
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)netdev_priv(dev);
|
||||
unsigned char *buf = NULL;
|
||||
struct sk_buff *skb = NULL;
|
||||
int len = 0;
|
||||
|
@ -154,7 +154,7 @@ ifxmips_mii_hw_receive_err_exit:
|
|||
int ifxmips_mii_hw_tx(char *buf, int len, struct net_device *dev)
|
||||
{
|
||||
int ret = 0;
|
||||
struct ifxmips_mii_priv *priv = dev->priv;
|
||||
struct ifxmips_mii_priv *priv = netdev_priv(dev);
|
||||
struct dma_device_info *dma_dev = priv->dma_device;
|
||||
ret = dma_device_write(dma_dev, buf, len, priv->skb);
|
||||
return ret;
|
||||
|
@ -164,7 +164,7 @@ int ifxmips_mii_tx(struct sk_buff *skb, struct net_device *dev)
|
|||
{
|
||||
int len;
|
||||
char *data;
|
||||
struct ifxmips_mii_priv *priv = dev->priv;
|
||||
struct ifxmips_mii_priv *priv = netdev_priv(dev);
|
||||
struct dma_device_info *dma_dev = priv->dma_device;
|
||||
|
||||
len = skb->len < ETH_ZLEN ? ETH_ZLEN : skb->len;
|
||||
|
@ -192,7 +192,7 @@ int ifxmips_mii_tx(struct sk_buff *skb, struct net_device *dev)
|
|||
void ifxmips_mii_tx_timeout(struct net_device *dev)
|
||||
{
|
||||
int i;
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)dev->priv;
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)netdev_priv(dev);
|
||||
|
||||
priv->stats.tx_errors++;
|
||||
for (i = 0; i < priv->dma_device->max_tx_chan_num; i++)
|
||||
|
@ -261,14 +261,13 @@ void ifxmips_etop_dma_buffer_free(unsigned char *dataptr, void *opt)
|
|||
|
||||
static struct net_device_stats *ifxmips_get_stats(struct net_device *dev)
|
||||
{
|
||||
return (struct net_device_stats *)dev->priv;
|
||||
return &((struct ifxmips_mii_priv *)netdev_priv(dev))->stats;
|
||||
}
|
||||
|
||||
static int ifxmips_mii_dev_init(struct net_device *dev)
|
||||
{
|
||||
int i;
|
||||
struct ifxmips_mii_priv *priv;
|
||||
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)netdev_priv(dev);
|
||||
ether_setup(dev);
|
||||
printk(KERN_INFO "ifxmips_mii0: %s is up\n", dev->name);
|
||||
dev->open = ifxmips_ifxmips_mii_open;
|
||||
|
@ -277,8 +276,7 @@ static int ifxmips_mii_dev_init(struct net_device *dev)
|
|||
dev->get_stats = ifxmips_get_stats;
|
||||
dev->tx_timeout = ifxmips_mii_tx_timeout;
|
||||
dev->watchdog_timeo = 10 * HZ;
|
||||
memset(dev->priv, 0, sizeof(struct ifxmips_mii_priv));
|
||||
priv = dev->priv;
|
||||
memset(priv, 0, sizeof(struct ifxmips_mii_priv));
|
||||
priv->dma_device = dma_device_reserve("PPE");
|
||||
if (!priv->dma_device) {
|
||||
BUG();
|
||||
|
@ -347,14 +345,13 @@ out:
|
|||
|
||||
static int ifxmips_mii_remove(struct platform_device *dev)
|
||||
{
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)ifxmips_mii0_dev->priv;
|
||||
struct ifxmips_mii_priv *priv = (struct ifxmips_mii_priv *)netdev_priv(ifxmips_mii0_dev);
|
||||
|
||||
printk(KERN_INFO "ifxmips_mii0: ifxmips_mii0 cleanup\n");
|
||||
|
||||
dma_device_unregister(priv->dma_device);
|
||||
dma_device_release(priv->dma_device);
|
||||
kfree(priv->dma_device);
|
||||
kfree(ifxmips_mii0_dev->priv);
|
||||
unregister_netdev(ifxmips_mii0_dev);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
#include <linux/platform_device.h>
|
||||
#include <linux/uaccess.h>
|
||||
|
||||
#include <asm/ifxmips/ifxmips_cgu.h>
|
||||
#include <asm/mach-ifxmips/cgu.h>
|
||||
#include <asm/ifxmips/ifxmips.h>
|
||||
|
||||
#define IFXMIPS_WDT_PW1 0x00BE0000
|
||||
|
|
|
@ -1,29 +0,0 @@
|
|||
/*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Copyright (C) 2007 John Crispin <blogic@openwrt.org>
|
||||
*/
|
||||
#ifndef _IFXMIPS_CGU_H__
|
||||
#define _IFXMIPS_CGU_H__
|
||||
|
||||
unsigned int cgu_get_mips_clock(int cpu);
|
||||
unsigned int cgu_get_io_region_clock(void);
|
||||
unsigned int cgu_get_fpi_bus_clock(int fpi);
|
||||
void cgu_setup_pci_clk(int internal_clock);
|
||||
unsigned int ifxmips_get_ddr_hz(void);
|
||||
unsigned int ifxmips_get_fpi_hz(void);
|
||||
unsigned int ifxmips_get_cpu_hz(void);
|
||||
|
||||
#endif
|
|
@ -1,33 +0,0 @@
|
|||
--- a/arch/mips/kernel/cevt-r4k.c
|
||||
+++ b/arch/mips/kernel/cevt-r4k.c
|
||||
@@ -21,6 +21,22 @@
|
||||
|
||||
#ifndef CONFIG_MIPS_MT_SMTC
|
||||
|
||||
+/*
|
||||
+ * Compare interrupt can be routed and latched outside the core,
|
||||
+ * so a single execution hazard barrier may not be enough to give
|
||||
+ * it time to clear as seen in the Cause register. 4 time the
|
||||
+ * pipeline depth seems reasonably conservative, and empirically
|
||||
+ * works better in configurations with high CPU/bus clock ratios.
|
||||
+ */
|
||||
+
|
||||
+#define compare_change_hazard() \
|
||||
+ do { \
|
||||
+ irq_disable_hazard(); \
|
||||
+ irq_disable_hazard(); \
|
||||
+ irq_disable_hazard(); \
|
||||
+ irq_disable_hazard(); \
|
||||
+ } while (0)
|
||||
+
|
||||
static int mips_next_event(unsigned long delta,
|
||||
struct clock_event_device *evt)
|
||||
{
|
||||
@@ -30,6 +46,7 @@ static int mips_next_event(unsigned long
|
||||
cnt = read_c0_count();
|
||||
cnt += delta;
|
||||
write_c0_compare(cnt);
|
||||
+ compare_change_hazard();
|
||||
res = ((int)(read_c0_count() - cnt) > 0) ? -ETIME : 0;
|
||||
return res;
|
||||
}
|
|
@ -1,72 +0,0 @@
|
|||
--- a/arch/mips/Kconfig
|
||||
+++ b/arch/mips/Kconfig
|
||||
@@ -78,6 +78,23 @@ config MIPS_COBALT
|
||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||
select GENERIC_HARDIRQS_NO__DO_IRQ
|
||||
|
||||
+config IFXMIPS
|
||||
+ bool "Infineon Twinpass, Danube, Amazon-SE"
|
||||
+ select DMA_NONCOHERENT
|
||||
+ select IRQ_CPU
|
||||
+ select CEVT_R4K
|
||||
+ select CSRC_R4K
|
||||
+ select SYS_HAS_CPU_MIPS32_R1
|
||||
+ select SYS_HAS_CPU_MIPS32_R2
|
||||
+ select HAVE_STD_PC_SERIAL_PORT
|
||||
+ select SYS_SUPPORTS_BIG_ENDIAN
|
||||
+ select SYS_SUPPORTS_32BIT_KERNEL
|
||||
+ select SYS_SUPPORTS_MULTITHREADING
|
||||
+ select SYS_HAS_EARLY_PRINTK
|
||||
+ select HW_HAS_PCI
|
||||
+ select GENERIC_GPIO
|
||||
+ select SWAP_IO_SPACE
|
||||
+
|
||||
config MACH_DECSTATION
|
||||
bool "DECstations"
|
||||
select BOOT_ELF32
|
||||
@@ -607,6 +624,7 @@ source "arch/mips/sgi-ip27/Kconfig"
|
||||
source "arch/mips/sibyte/Kconfig"
|
||||
source "arch/mips/txx9/Kconfig"
|
||||
source "arch/mips/vr41xx/Kconfig"
|
||||
+source "arch/mips/ifxmips/Kconfig"
|
||||
|
||||
endmenu
|
||||
|
||||
--- a/arch/mips/Makefile
|
||||
+++ b/arch/mips/Makefile
|
||||
@@ -283,6 +283,13 @@ cflags-$(CONFIG_MIPS_COBALT) += -Iinclud
|
||||
load-$(CONFIG_MIPS_COBALT) += 0xffffffff80080000
|
||||
|
||||
#
|
||||
+# Infineon IFXMIPS
|
||||
+#
|
||||
+core-$(CONFIG_IFXMIPS) += arch/mips/ifxmips/
|
||||
+cflags-$(CONFIG_IFXMIPS) += -Iinclude/asm-mips/mach-ifxmips
|
||||
+load-$(CONFIG_IFXMIPS) += 0xffffffff80002000
|
||||
+
|
||||
+#
|
||||
# DECstation family
|
||||
#
|
||||
core-$(CONFIG_MACH_DECSTATION) += arch/mips/dec/
|
||||
--- a/include/asm-mips/bootinfo.h
|
||||
+++ b/include/asm-mips/bootinfo.h
|
||||
@@ -57,6 +57,12 @@
|
||||
#define MACH_MIKROTIK_RB532 0 /* Mikrotik RouterBoard 532 */
|
||||
#define MACH_MIKROTIK_RB532A 1 /* Mikrotik RouterBoard 532A */
|
||||
|
||||
+/*
|
||||
+ * Valid machtype for group IFXMIPS
|
||||
+ */
|
||||
+#define MACH_GROUP_IFXMIPS 29
|
||||
+#define MACH_INFINEON_IFXMIPS 0
|
||||
+
|
||||
#define CL_SIZE COMMAND_LINE_SIZE
|
||||
|
||||
extern char *system_type;
|
||||
--- a/arch/mips/pci/Makefile
|
||||
+++ b/arch/mips/pci/Makefile
|
||||
@@ -51,3 +51,4 @@ obj-$(CONFIG_VICTOR_MPC30X) += fixup-mpc
|
||||
obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capcella.o
|
||||
obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o
|
||||
obj-$(CONFIG_MIKROTIK_RB532) += pci-rc32434.o ops-rc32434.o fixup-rc32434.o
|
||||
+obj-$(CONFIG_IFXMIPS) += pci-ifxmips.o ops-ifxmips.o
|
|
@ -1,152 +0,0 @@
|
|||
--- a/drivers/char/Makefile
|
||||
+++ b/drivers/char/Makefile
|
||||
@@ -112,6 +112,10 @@ obj-$(CONFIG_PS3_FLASH) += ps3flash.o
|
||||
obj-$(CONFIG_JS_RTC) += js-rtc.o
|
||||
js-rtc-y = rtc.o
|
||||
|
||||
+obj-$(CONFIG_IFXMIPS_SSC) += ifxmips_ssc.o
|
||||
+obj-$(CONFIG_IFXMIPS_EEPROM) += ifxmips_eeprom.o
|
||||
+obj-$(CONFIG_IFXMIPS_MEI) += ifxmips_mei_core.o
|
||||
+
|
||||
# Files generated that shall be removed upon make clean
|
||||
clean-files := consolemap_deftbl.c defkeymap.c
|
||||
|
||||
--- a/drivers/mtd/maps/Makefile
|
||||
+++ b/drivers/mtd/maps/Makefile
|
||||
@@ -56,6 +56,7 @@ obj-$(CONFIG_MTD_WALNUT) += walnu
|
||||
obj-$(CONFIG_MTD_H720X) += h720x-flash.o
|
||||
obj-$(CONFIG_MTD_SBC8240) += sbc8240.o
|
||||
obj-$(CONFIG_MTD_NOR_TOTO) += omap-toto-flash.o
|
||||
+obj-$(CONFIG_MTD_IFXMIPS) += ifxmips.o
|
||||
obj-$(CONFIG_MTD_IXP4XX) += ixp4xx.o
|
||||
obj-$(CONFIG_MTD_IXP2000) += ixp2000.o
|
||||
obj-$(CONFIG_MTD_WRSBC8260) += wr_sbc82xx_flash.o
|
||||
--- a/drivers/net/Kconfig
|
||||
+++ b/drivers/net/Kconfig
|
||||
@@ -343,6 +343,12 @@ config MACB
|
||||
|
||||
source "drivers/net/arm/Kconfig"
|
||||
|
||||
+config IFXMIPS_MII0
|
||||
+ tristate "Infineon IFXMips eth0 driver"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Support for the MII0 inside the IFXMips SOC
|
||||
+
|
||||
config AX88796
|
||||
tristate "ASIX AX88796 NE2000 clone support"
|
||||
depends on ARM || MIPS || SUPERH
|
||||
--- a/drivers/serial/Kconfig
|
||||
+++ b/drivers/serial/Kconfig
|
||||
@@ -1353,6 +1353,14 @@ config SERIAL_OF_PLATFORM
|
||||
Currently, only 8250 compatible ports are supported, but
|
||||
others can easily be added.
|
||||
|
||||
+config SERIAL_IFXMIPS
|
||||
+ bool "IFXMips serial driver"
|
||||
+ depends on IFXMIPS
|
||||
+ select SERIAL_CORE
|
||||
+ select SERIAL_CORE_CONSOLE
|
||||
+ help
|
||||
+ Driver for the ifxmipss built in ASC hardware
|
||||
+
|
||||
config SERIAL_QE
|
||||
tristate "Freescale QUICC Engine serial port support"
|
||||
depends on QUICC_ENGINE
|
||||
--- a/drivers/serial/Makefile
|
||||
+++ b/drivers/serial/Makefile
|
||||
@@ -69,3 +69,4 @@ obj-$(CONFIG_SERIAL_OF_PLATFORM) += of_s
|
||||
obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o
|
||||
obj-$(CONFIG_KGDB_SERIAL_CONSOLE) += kgdboc.o
|
||||
obj-$(CONFIG_SERIAL_QE) += ucc_uart.o
|
||||
+obj-$(CONFIG_SERIAL_IFXMIPS) += ifxmips_asc.o
|
||||
--- a/drivers/watchdog/Makefile
|
||||
+++ b/drivers/watchdog/Makefile
|
||||
@@ -102,6 +102,7 @@ obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
|
||||
obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
|
||||
obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
|
||||
obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
|
||||
+obj-$(CONFIG_IFXMIPS_WDT) += ifxmips_wdt.o
|
||||
|
||||
# PARISC Architecture
|
||||
|
||||
--- a/drivers/net/Makefile
|
||||
+++ b/drivers/net/Makefile
|
||||
@@ -256,4 +256,4 @@ obj-$(CONFIG_NETXEN_NIC) += netxen/
|
||||
obj-$(CONFIG_NIU) += niu.o
|
||||
obj-$(CONFIG_VIRTIO_NET) += virtio_net.o
|
||||
obj-$(CONFIG_SFC) += sfc/
|
||||
-
|
||||
+obj-$(CONFIG_IFXMIPS_MII0) += ifxmips_mii0.o
|
||||
--- a/drivers/crypto/Kconfig
|
||||
+++ b/drivers/crypto/Kconfig
|
||||
@@ -9,6 +9,9 @@ menuconfig CRYPTO_HW
|
||||
If you say N, all options in this submenu will be skipped and disabled.
|
||||
|
||||
if CRYPTO_HW
|
||||
+config CRYPTO_DEV_IFXMIPS
|
||||
+ tristate "Support for IFXMIPS Data Encryption Unit"
|
||||
+ depends on IFXMIPS
|
||||
|
||||
config CRYPTO_DEV_PADLOCK
|
||||
tristate "Support for VIA PadLock ACE"
|
||||
--- a/drivers/crypto/Makefile
|
||||
+++ b/drivers/crypto/Makefile
|
||||
@@ -4,3 +4,4 @@ obj-$(CONFIG_CRYPTO_DEV_GEODE) += geode-
|
||||
obj-$(CONFIG_CRYPTO_DEV_HIFN_795X) += hifn_795x.o
|
||||
obj-$(CONFIG_CRYPTO_DEV_TALITOS) += talitos.o
|
||||
obj-$(CONFIG_CRYPTO_DEV_IXP4XX) += ixp4xx_crypto.o
|
||||
+obj-$(CONFIG_CRYPTO_DEV_IFXMIPS) += ifxdeu-aes.o ifxdeu-des.o ifxdeu-dma.o ifxdeu-generic.o ifxdeu-md5.o ifxdeu-sha1.o
|
||||
--- a/drivers/usb/host/Kconfig
|
||||
+++ b/drivers/usb/host/Kconfig
|
||||
@@ -305,3 +305,10 @@ config SUPERH_ON_CHIP_R8A66597
|
||||
help
|
||||
This driver enables support for the on-chip R8A66597 in the
|
||||
SH7366 and SH7723 processors.
|
||||
+
|
||||
+config USB_DWC_HCD
|
||||
+ tristate "IFXMIPS USB Host Controller Driver"
|
||||
+ depends on USB && IFXMIPS
|
||||
+ default y
|
||||
+ help
|
||||
+ Danube USB Host Controller
|
||||
--- a/drivers/leds/Kconfig
|
||||
+++ b/drivers/leds/Kconfig
|
||||
@@ -169,6 +169,12 @@ config LEDS_PCA955X
|
||||
LED driver chips accessed via the I2C bus. Supported
|
||||
devices include PCA9550, PCA9551, PCA9552, and PCA9553.
|
||||
|
||||
+config LEDS_IFXMIPS
|
||||
+ tristate "LED Support for IFXMIPS LEDs"
|
||||
+ depends on LEDS_CLASS && IFXMIPS
|
||||
+ help
|
||||
+ This option enables support for the CM-X270 LEDs.
|
||||
+
|
||||
comment "LED Triggers"
|
||||
|
||||
config LEDS_TRIGGERS
|
||||
--- a/drivers/leds/Makefile
|
||||
+++ b/drivers/leds/Makefile
|
||||
@@ -24,6 +24,7 @@ obj-$(CONFIG_LEDS_CLEVO_MAIL) += leds-c
|
||||
obj-$(CONFIG_LEDS_HP6XX) += leds-hp6xx.o
|
||||
obj-$(CONFIG_LEDS_FSG) += leds-fsg.o
|
||||
obj-$(CONFIG_LEDS_PCA955X) += leds-pca955x.o
|
||||
+obj-$(CONFIG_LEDS_IFXMIPS) += leds-ifxmips.o
|
||||
|
||||
# LED Triggers
|
||||
obj-$(CONFIG_LEDS_TRIGGER_TIMER) += ledtrig-timer.o
|
||||
--- a/drivers/watchdog/Kconfig
|
||||
+++ b/drivers/watchdog/Kconfig
|
||||
@@ -704,6 +704,12 @@ config TXX9_WDT
|
||||
help
|
||||
Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
|
||||
|
||||
+config IFXMIPS_WDT
|
||||
+ bool "IFXMips watchdog"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Hardware driver for the IFXMIPS Watchdog Timer.
|
||||
+
|
||||
# PARISC Architecture
|
||||
|
||||
# POWERPC Architecture
|
|
@ -1,13 +0,0 @@
|
|||
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
@@ -1025,7 +1025,9 @@ static int __xipram do_write_oneword(str
|
||||
int retry_cnt = 0;
|
||||
|
||||
adr += chip->start;
|
||||
-
|
||||
+#ifdef CONFIG_IFXMIPS
|
||||
+ adr ^= 2;
|
||||
+#endif
|
||||
spin_lock(chip->mutex);
|
||||
ret = get_chip(map, chip, adr, FL_WRITING);
|
||||
if (ret) {
|
|
@ -1,11 +0,0 @@
|
|||
--- a/arch/mips/mm/cache.c
|
||||
+++ b/arch/mips/mm/cache.c
|
||||
@@ -51,6 +51,8 @@ void (*_dma_cache_wback)(unsigned long s
|
||||
void (*_dma_cache_inv)(unsigned long start, unsigned long size);
|
||||
|
||||
EXPORT_SYMBOL(_dma_cache_wback_inv);
|
||||
+EXPORT_SYMBOL(_dma_cache_wback);
|
||||
+EXPORT_SYMBOL(_dma_cache_inv);
|
||||
|
||||
#endif /* CONFIG_DMA_NONCOHERENT */
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
--- a/kernel/irq/chip.c
|
||||
+++ b/kernel/irq/chip.c
|
||||
@@ -526,6 +526,9 @@ handle_percpu_irq(unsigned int irq, stru
|
||||
|
||||
kstat_this_cpu.irqs[irq]++;
|
||||
|
||||
+ if (unlikely(!desc->action || (desc->status & IRQ_DISABLED)))
|
||||
+ return;
|
||||
+
|
||||
if (desc->chip->ack)
|
||||
desc->chip->ack(irq);
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
--- a/arch/mips/kernel/traps.c
|
||||
+++ b/arch/mips/kernel/traps.c
|
||||
@@ -1514,7 +1514,16 @@ void __cpuinit per_cpu_trap_init(void)
|
||||
*/
|
||||
if (cpu_has_mips_r2) {
|
||||
cp0_compare_irq = (read_c0_intctl() >> 29) & 7;
|
||||
+ if (!cp0_compare_irq)
|
||||
+ cp0_compare_irq = CP0_LEGACY_COMPARE_IRQ;
|
||||
+
|
||||
cp0_perfcount_irq = (read_c0_intctl() >> 26) & 7;
|
||||
+ if (!cp0_perfcount_irq)
|
||||
+ cp0_perfcount_irq = CP0_LEGACY_PERFCNT_IRQ;
|
||||
+
|
||||
+ if (arch_fixup_c0_irqs)
|
||||
+ arch_fixup_c0_irqs();
|
||||
+
|
||||
if (cp0_perfcount_irq == cp0_compare_irq)
|
||||
cp0_perfcount_irq = -1;
|
||||
} else {
|
||||
--- a/arch/mips/include/asm/irq.h
|
||||
+++ b/arch/mips/include/asm/irq.h
|
||||
@@ -156,8 +156,12 @@ extern void free_irqno(unsigned int irq)
|
||||
* IE7. Since R2 their number has to be read from the c0_intctl register.
|
||||
*/
|
||||
#define CP0_LEGACY_COMPARE_IRQ 7
|
||||
+#define CP0_LEGACY_PERFCNT_IRQ 7
|
||||
|
||||
extern int cp0_compare_irq;
|
||||
extern int cp0_perfcount_irq;
|
||||
|
||||
+extern void __weak arch_fixup_c0_irqs(void);
|
||||
+
|
||||
+
|
||||
#endif /* _ASM_IRQ_H */
|
|
@ -1,71 +0,0 @@
|
|||
--- a/arch/mips/Kconfig
|
||||
+++ b/arch/mips/Kconfig
|
||||
@@ -79,6 +79,22 @@ config MIPS_COBALT
|
||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||
select GENERIC_HARDIRQS_NO__DO_IRQ
|
||||
|
||||
+config IFXMIPS
|
||||
+ bool "Infineon Twinpass, Danube, Amazon-SE"
|
||||
+ select DMA_NONCOHERENT
|
||||
+ select IRQ_CPU
|
||||
+ select CEVT_R4K
|
||||
+ select CSRC_R4K
|
||||
+ select SYS_HAS_CPU_MIPS32_R1
|
||||
+ select SYS_HAS_CPU_MIPS32_R2
|
||||
+ select SYS_SUPPORTS_BIG_ENDIAN
|
||||
+ select SYS_SUPPORTS_32BIT_KERNEL
|
||||
+ select SYS_HAS_EARLY_PRINTK
|
||||
+ select HW_HAS_PCI
|
||||
+ select GENERIC_GPIO
|
||||
+ select SWAP_IO_SPACE
|
||||
+ select GENERIC_HARDIRQS_NO__DO_IRQ
|
||||
+
|
||||
config MACH_DECSTATION
|
||||
bool "DECstations"
|
||||
select BOOT_ELF32
|
||||
@@ -607,6 +623,7 @@ source "arch/mips/sgi-ip27/Kconfig"
|
||||
source "arch/mips/sibyte/Kconfig"
|
||||
source "arch/mips/txx9/Kconfig"
|
||||
source "arch/mips/vr41xx/Kconfig"
|
||||
+source "arch/mips/ifxmips/Kconfig"
|
||||
|
||||
endmenu
|
||||
|
||||
--- a/arch/mips/Makefile
|
||||
+++ b/arch/mips/Makefile
|
||||
@@ -285,6 +285,13 @@ cflags-$(CONFIG_MIPS_COBALT) += -I$(srct
|
||||
load-$(CONFIG_MIPS_COBALT) += 0xffffffff80080000
|
||||
|
||||
#
|
||||
+# Infineon IFXMIPS
|
||||
+#
|
||||
+core-$(CONFIG_IFXMIPS) += arch/mips/ifxmips/
|
||||
+cflags-$(CONFIG_IFXMIPS) += -I$(srctree)/arch/mips/include/asm/mach-ifxmips
|
||||
+load-$(CONFIG_IFXMIPS) += 0xffffffff80002000
|
||||
+
|
||||
+#
|
||||
# DECstation family
|
||||
#
|
||||
core-$(CONFIG_MACH_DECSTATION) += arch/mips/dec/
|
||||
--- a/arch/mips/include/asm/bootinfo.h
|
||||
+++ b/arch/mips/include/asm/bootinfo.h
|
||||
@@ -57,6 +57,12 @@
|
||||
#define MACH_MIKROTIK_RB532 0 /* Mikrotik RouterBoard 532 */
|
||||
#define MACH_MIKROTIK_RB532A 1 /* Mikrotik RouterBoard 532A */
|
||||
|
||||
+/*
|
||||
+ * Valid machtype for group IFXMIPS
|
||||
+ */
|
||||
+#define MACH_GROUP_IFXMIPS 29
|
||||
+#define MACH_INFINEON_IFXMIPS 0
|
||||
+
|
||||
#define CL_SIZE COMMAND_LINE_SIZE
|
||||
|
||||
extern char *system_type;
|
||||
--- a/arch/mips/pci/Makefile
|
||||
+++ b/arch/mips/pci/Makefile
|
||||
@@ -52,3 +52,4 @@ obj-$(CONFIG_VICTOR_MPC30X) += fixup-mpc
|
||||
obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capcella.o
|
||||
obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o
|
||||
obj-$(CONFIG_MIKROTIK_RB532) += pci-rc32434.o ops-rc32434.o fixup-rc32434.o
|
||||
+obj-$(CONFIG_IFXMIPS) += pci-ifxmips.o ops-ifxmips.o
|
|
@ -1,152 +0,0 @@
|
|||
--- a/drivers/char/Makefile
|
||||
+++ b/drivers/char/Makefile
|
||||
@@ -110,6 +110,10 @@ obj-$(CONFIG_PS3_FLASH) += ps3flash.o
|
||||
obj-$(CONFIG_JS_RTC) += js-rtc.o
|
||||
js-rtc-y = rtc.o
|
||||
|
||||
+obj-$(CONFIG_IFXMIPS_SSC) += ifxmips_ssc.o
|
||||
+obj-$(CONFIG_IFXMIPS_EEPROM) += ifxmips_eeprom.o
|
||||
+obj-$(CONFIG_IFXMIPS_MEI) += ifxmips_mei_core.o
|
||||
+
|
||||
# Files generated that shall be removed upon make clean
|
||||
clean-files := consolemap_deftbl.c defkeymap.c
|
||||
|
||||
--- a/drivers/mtd/maps/Makefile
|
||||
+++ b/drivers/mtd/maps/Makefile
|
||||
@@ -52,6 +52,7 @@ obj-$(CONFIG_MTD_NETtel) += nettel.o
|
||||
obj-$(CONFIG_MTD_SCB2_FLASH) += scb2_flash.o
|
||||
obj-$(CONFIG_MTD_H720X) += h720x-flash.o
|
||||
obj-$(CONFIG_MTD_SBC8240) += sbc8240.o
|
||||
+obj-$(CONFIG_MTD_IFXMIPS) += ifxmips.o
|
||||
obj-$(CONFIG_MTD_IXP4XX) += ixp4xx.o
|
||||
obj-$(CONFIG_MTD_IXP2000) += ixp2000.o
|
||||
obj-$(CONFIG_MTD_WRSBC8260) += wr_sbc82xx_flash.o
|
||||
--- a/drivers/net/Kconfig
|
||||
+++ b/drivers/net/Kconfig
|
||||
@@ -343,6 +343,12 @@ config MACB
|
||||
|
||||
source "drivers/net/arm/Kconfig"
|
||||
|
||||
+config IFXMIPS_MII0
|
||||
+ tristate "Infineon IFXMips eth0 driver"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Support for the MII0 inside the IFXMips SOC
|
||||
+
|
||||
config AX88796
|
||||
tristate "ASIX AX88796 NE2000 clone support"
|
||||
depends on ARM || MIPS || SUPERH
|
||||
--- a/drivers/serial/Kconfig
|
||||
+++ b/drivers/serial/Kconfig
|
||||
@@ -1304,6 +1304,14 @@ config SERIAL_OF_PLATFORM
|
||||
Currently, only 8250 compatible ports are supported, but
|
||||
others can easily be added.
|
||||
|
||||
+config SERIAL_IFXMIPS
|
||||
+ bool "IFXMips serial driver"
|
||||
+ depends on IFXMIPS
|
||||
+ select SERIAL_CORE
|
||||
+ select SERIAL_CORE_CONSOLE
|
||||
+ help
|
||||
+ Driver for the ifxmipss built in ASC hardware
|
||||
+
|
||||
config SERIAL_QE
|
||||
tristate "Freescale QUICC Engine serial port support"
|
||||
depends on QUICC_ENGINE
|
||||
--- a/drivers/serial/Makefile
|
||||
+++ b/drivers/serial/Makefile
|
||||
@@ -73,3 +73,4 @@ obj-$(CONFIG_SERIAL_OF_PLATFORM) += of_s
|
||||
obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o
|
||||
obj-$(CONFIG_KGDB_SERIAL_CONSOLE) += kgdboc.o
|
||||
obj-$(CONFIG_SERIAL_QE) += ucc_uart.o
|
||||
+obj-$(CONFIG_SERIAL_IFXMIPS) += ifxmips_asc.o
|
||||
--- a/drivers/watchdog/Makefile
|
||||
+++ b/drivers/watchdog/Makefile
|
||||
@@ -106,6 +106,7 @@ obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
|
||||
obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
|
||||
obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
|
||||
obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
|
||||
+obj-$(CONFIG_IFXMIPS_WDT) += ifxmips_wdt.o
|
||||
|
||||
# PARISC Architecture
|
||||
|
||||
--- a/drivers/net/Makefile
|
||||
+++ b/drivers/net/Makefile
|
||||
@@ -262,4 +262,4 @@ obj-$(CONFIG_NETXEN_NIC) += netxen/
|
||||
obj-$(CONFIG_NIU) += niu.o
|
||||
obj-$(CONFIG_VIRTIO_NET) += virtio_net.o
|
||||
obj-$(CONFIG_SFC) += sfc/
|
||||
-
|
||||
+obj-$(CONFIG_IFXMIPS_MII0) += ifxmips_mii0.o
|
||||
--- a/drivers/crypto/Kconfig
|
||||
+++ b/drivers/crypto/Kconfig
|
||||
@@ -9,6 +9,9 @@ menuconfig CRYPTO_HW
|
||||
If you say N, all options in this submenu will be skipped and disabled.
|
||||
|
||||
if CRYPTO_HW
|
||||
+config CRYPTO_DEV_IFXMIPS
|
||||
+ tristate "Support for IFXMIPS Data Encryption Unit"
|
||||
+ depends on IFXMIPS
|
||||
|
||||
config CRYPTO_DEV_PADLOCK
|
||||
tristate "Support for VIA PadLock ACE"
|
||||
--- a/drivers/crypto/Makefile
|
||||
+++ b/drivers/crypto/Makefile
|
||||
@@ -4,3 +4,4 @@ obj-$(CONFIG_CRYPTO_DEV_GEODE) += geode-
|
||||
obj-$(CONFIG_CRYPTO_DEV_HIFN_795X) += hifn_795x.o
|
||||
obj-$(CONFIG_CRYPTO_DEV_TALITOS) += talitos.o
|
||||
obj-$(CONFIG_CRYPTO_DEV_IXP4XX) += ixp4xx_crypto.o
|
||||
+obj-$(CONFIG_CRYPTO_DEV_IFXMIPS) += ifxdeu-aes.o ifxdeu-des.o ifxdeu-dma.o ifxdeu-generic.o ifxdeu-md5.o ifxdeu-sha1.o
|
||||
--- a/drivers/usb/host/Kconfig
|
||||
+++ b/drivers/usb/host/Kconfig
|
||||
@@ -321,3 +321,10 @@ config USB_HWA_HCD
|
||||
|
||||
To compile this driver a module, choose M here: the module
|
||||
will be called "hwa-hc".
|
||||
+
|
||||
+config USB_DWC_HCD
|
||||
+ tristate "IFXMIPS USB Host Controller Driver"
|
||||
+ depends on USB && IFXMIPS
|
||||
+ default y
|
||||
+ help
|
||||
+ Danube USB Host Controller
|
||||
--- a/drivers/leds/Kconfig
|
||||
+++ b/drivers/leds/Kconfig
|
||||
@@ -171,6 +171,12 @@ config LEDS_DA903X
|
||||
This option enables support for on-chip LED drivers found
|
||||
on Dialog Semiconductor DA9030/DA9034 PMICs.
|
||||
|
||||
+config LEDS_IFXMIPS
|
||||
+ tristate "LED Support for IFXMIPS LEDs"
|
||||
+ depends on LEDS_CLASS && IFXMIPS
|
||||
+ help
|
||||
+ This option enables support for the IFXMIPS LEDs.
|
||||
+
|
||||
comment "LED Triggers"
|
||||
|
||||
config LEDS_TRIGGERS
|
||||
--- a/drivers/leds/Makefile
|
||||
+++ b/drivers/leds/Makefile
|
||||
@@ -24,6 +24,7 @@ obj-$(CONFIG_LEDS_FSG) += leds-fsg.o
|
||||
obj-$(CONFIG_LEDS_PCA955X) += leds-pca955x.o
|
||||
obj-$(CONFIG_LEDS_DA903X) += leds-da903x.o
|
||||
obj-$(CONFIG_LEDS_HP_DISK) += leds-hp-disk.o
|
||||
+obj-$(CONFIG_LEDS_IFXMIPS) += leds-ifxmips.o
|
||||
|
||||
# LED Triggers
|
||||
obj-$(CONFIG_LEDS_TRIGGER_TIMER) += ledtrig-timer.o
|
||||
--- a/drivers/watchdog/Kconfig
|
||||
+++ b/drivers/watchdog/Kconfig
|
||||
@@ -747,6 +747,12 @@ config TXX9_WDT
|
||||
help
|
||||
Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
|
||||
|
||||
+config IFXMIPS_WDT
|
||||
+ bool "IFXMips watchdog"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Hardware driver for the IFXMIPS Watchdog Timer.
|
||||
+
|
||||
# PARISC Architecture
|
||||
|
||||
# POWERPC Architecture
|
|
@ -1,13 +0,0 @@
|
|||
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
@@ -1069,7 +1069,9 @@ static int __xipram do_write_oneword(str
|
||||
int retry_cnt = 0;
|
||||
|
||||
adr += chip->start;
|
||||
-
|
||||
+#ifdef CONFIG_IFXMIPS
|
||||
+ adr ^= 2;
|
||||
+#endif
|
||||
spin_lock(chip->mutex);
|
||||
ret = get_chip(map, chip, adr, FL_WRITING);
|
||||
if (ret) {
|
|
@ -1,11 +0,0 @@
|
|||
--- a/arch/mips/mm/cache.c
|
||||
+++ b/arch/mips/mm/cache.c
|
||||
@@ -51,6 +51,8 @@ void (*_dma_cache_wback)(unsigned long s
|
||||
void (*_dma_cache_inv)(unsigned long start, unsigned long size);
|
||||
|
||||
EXPORT_SYMBOL(_dma_cache_wback_inv);
|
||||
+EXPORT_SYMBOL(_dma_cache_wback);
|
||||
+EXPORT_SYMBOL(_dma_cache_inv);
|
||||
|
||||
#endif /* CONFIG_DMA_NONCOHERENT */
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
--- a/kernel/irq/chip.c
|
||||
+++ b/kernel/irq/chip.c
|
||||
@@ -524,6 +524,9 @@ handle_percpu_irq(unsigned int irq, stru
|
||||
|
||||
kstat_incr_irqs_this_cpu(irq, desc);
|
||||
|
||||
+ if (unlikely(!desc->action || (desc->status & IRQ_DISABLED)))
|
||||
+ return;
|
||||
+
|
||||
if (desc->chip->ack)
|
||||
desc->chip->ack(irq);
|
||||
|
|
@ -1,6 +1,8 @@
|
|||
--- a/arch/mips/kernel/traps.c
|
||||
+++ b/arch/mips/kernel/traps.c
|
||||
@@ -1484,7 +1484,16 @@ void __cpuinit per_cpu_trap_init(void)
|
||||
Index: linux-2.6.30.5/arch/mips/kernel/traps.c
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/arch/mips/kernel/traps.c 2009-08-16 23:19:38.000000000 +0200
|
||||
+++ linux-2.6.30.5/arch/mips/kernel/traps.c 2009-09-02 18:23:37.000000000 +0200
|
||||
@@ -1542,7 +1542,16 @@
|
||||
*/
|
||||
if (cpu_has_mips_r2) {
|
||||
cp0_compare_irq = (read_c0_intctl() >> 29) & 7;
|
||||
|
@ -17,9 +19,11 @@
|
|||
if (cp0_perfcount_irq == cp0_compare_irq)
|
||||
cp0_perfcount_irq = -1;
|
||||
} else {
|
||||
--- a/include/asm-mips/irq.h
|
||||
+++ b/include/asm-mips/irq.h
|
||||
@@ -156,8 +156,12 @@ extern void free_irqno(unsigned int irq)
|
||||
Index: linux-2.6.30.5/arch/mips/include/asm/irq.h
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/arch/mips/include/asm/irq.h 2009-09-02 18:24:49.000000000 +0200
|
||||
+++ linux-2.6.30.5/arch/mips/include/asm/irq.h 2009-09-02 18:26:05.000000000 +0200
|
||||
@@ -157,8 +157,10 @@
|
||||
* IE7. Since R2 their number has to be read from the c0_intctl register.
|
||||
*/
|
||||
#define CP0_LEGACY_COMPARE_IRQ 7
|
||||
|
@ -27,8 +31,6 @@
|
|||
|
||||
extern int cp0_compare_irq;
|
||||
extern int cp0_perfcount_irq;
|
||||
|
||||
+extern void __weak arch_fixup_c0_irqs(void);
|
||||
+
|
||||
+
|
||||
|
||||
#endif /* _ASM_IRQ_H */
|
|
@ -1,5 +1,7 @@
|
|||
--- a/arch/mips/kernel/cevt-r4k.c
|
||||
+++ b/arch/mips/kernel/cevt-r4k.c
|
||||
Index: linux-2.6.30.5/arch/mips/kernel/cevt-r4k.c
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/arch/mips/kernel/cevt-r4k.c 2009-08-16 23:19:38.000000000 +0200
|
||||
+++ linux-2.6.30.5/arch/mips/kernel/cevt-r4k.c 2009-09-02 18:26:26.000000000 +0200
|
||||
@@ -21,6 +21,22 @@
|
||||
|
||||
#ifndef CONFIG_MIPS_MT_SMTC
|
||||
|
@ -23,7 +25,7 @@
|
|||
static int mips_next_event(unsigned long delta,
|
||||
struct clock_event_device *evt)
|
||||
{
|
||||
@@ -30,6 +46,7 @@ static int mips_next_event(unsigned long
|
||||
@@ -30,6 +46,7 @@
|
||||
cnt = read_c0_count();
|
||||
cnt += delta;
|
||||
write_c0_compare(cnt);
|
|
@ -0,0 +1,77 @@
|
|||
Index: linux-2.6.30.5/arch/mips/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/arch/mips/Kconfig 2009-09-02 22:12:48.000000000 +0200
|
||||
+++ linux-2.6.30.5/arch/mips/Kconfig 2009-09-03 01:18:31.000000000 +0200
|
||||
@@ -79,6 +79,24 @@
|
||||
select SYS_SUPPORTS_64BIT_KERNEL
|
||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||
|
||||
+config IFXMIPS
|
||||
+ bool "Infineon Twinpass, Danube, Amazon-SE"
|
||||
+ select DMA_NONCOHERENT
|
||||
+ select IRQ_CPU
|
||||
+ select CEVT_R4K
|
||||
+ select CSRC_R4K
|
||||
+ select SYS_HAS_CPU_MIPS32_R1
|
||||
+ select SYS_HAS_CPU_MIPS32_R2
|
||||
+ select HAVE_STD_PC_SERIAL_PORT
|
||||
+ select SYS_SUPPORTS_BIG_ENDIAN
|
||||
+ select SYS_SUPPORTS_32BIT_KERNEL
|
||||
+ select SYS_SUPPORTS_MULTITHREADING
|
||||
+ select SYS_HAS_EARLY_PRINTK
|
||||
+ select HW_HAS_PCI
|
||||
+ select GENERIC_GPIO
|
||||
+ select ARCH_WANT_OPTIONAL_GPIOLIB
|
||||
+ select SWAP_IO_SPACE
|
||||
+
|
||||
config MACH_DECSTATION
|
||||
bool "DECstations"
|
||||
select BOOT_ELF32
|
||||
@@ -643,6 +661,7 @@
|
||||
source "arch/mips/txx9/Kconfig"
|
||||
source "arch/mips/vr41xx/Kconfig"
|
||||
source "arch/mips/cavium-octeon/Kconfig"
|
||||
+source "arch/mips/ifxmips/Kconfig"
|
||||
|
||||
endmenu
|
||||
|
||||
Index: linux-2.6.30.5/arch/mips/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/arch/mips/Makefile 2009-09-02 22:12:48.000000000 +0200
|
||||
+++ linux-2.6.30.5/arch/mips/Makefile 2009-09-02 22:12:53.000000000 +0200
|
||||
@@ -290,6 +290,13 @@
|
||||
load-$(CONFIG_MIPS_COBALT) += 0xffffffff80080000
|
||||
|
||||
#
|
||||
+# Infineon IFXMIPS
|
||||
+#
|
||||
+core-$(CONFIG_IFXMIPS) += arch/mips/ifxmips/
|
||||
+cflags-$(CONFIG_IFXMIPS) += -I$(srctree)/arch/mips/include/asm/mach-ifxmips
|
||||
+load-$(CONFIG_IFXMIPS) += 0xffffffff80002000
|
||||
+
|
||||
+#
|
||||
# DECstation family
|
||||
#
|
||||
core-$(CONFIG_MACH_DECSTATION) += arch/mips/dec/
|
||||
Index: linux-2.6.30.5/arch/mips/pci/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/arch/mips/pci/Makefile 2009-09-02 22:12:48.000000000 +0200
|
||||
+++ linux-2.6.30.5/arch/mips/pci/Makefile 2009-09-02 22:12:53.000000000 +0200
|
||||
@@ -52,3 +52,4 @@
|
||||
obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capcella.o
|
||||
obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o
|
||||
obj-$(CONFIG_MIKROTIK_RB532) += pci-rc32434.o ops-rc32434.o fixup-rc32434.o
|
||||
+obj-$(CONFIG_IFXMIPS) += pci-ifxmips.o ops-ifxmips.o
|
||||
Index: linux-2.6.30.5/arch/mips/include/asm/bootinfo.h
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/arch/mips/include/asm/bootinfo.h 2009-09-02 22:12:48.000000000 +0200
|
||||
+++ linux-2.6.30.5/arch/mips/include/asm/bootinfo.h 2009-09-02 22:13:05.000000000 +0200
|
||||
@@ -57,6 +57,8 @@
|
||||
#define MACH_MIKROTIK_RB532 0 /* Mikrotik RouterBoard 532 */
|
||||
#define MACH_MIKROTIK_RB532A 1 /* Mikrotik RouterBoard 532A */
|
||||
|
||||
+#define MACH_INFINEON_IFXMIPS 0
|
||||
+
|
||||
#define CL_SIZE COMMAND_LINE_SIZE
|
||||
|
||||
extern char *system_type;
|
|
@ -0,0 +1,162 @@
|
|||
Index: linux-2.6.30.5/drivers/char/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/char/Makefile 2009-09-02 18:22:49.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/char/Makefile 2009-09-02 18:29:51.000000000 +0200
|
||||
@@ -112,6 +112,10 @@
|
||||
obj-$(CONFIG_JS_RTC) += js-rtc.o
|
||||
js-rtc-y = rtc.o
|
||||
|
||||
+obj-$(CONFIG_IFXMIPS_SSC) += ifxmips_ssc.o
|
||||
+obj-$(CONFIG_IFXMIPS_EEPROM) += ifxmips_eeprom.o
|
||||
+obj-$(CONFIG_IFXMIPS_MEI) += ifxmips_mei_core.o
|
||||
+
|
||||
# Files generated that shall be removed upon make clean
|
||||
clean-files := consolemap_deftbl.c defkeymap.c
|
||||
|
||||
Index: linux-2.6.30.5/drivers/mtd/maps/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/mtd/maps/Makefile 2009-08-16 23:19:38.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/mtd/maps/Makefile 2009-09-02 18:30:09.000000000 +0200
|
||||
@@ -62,3 +62,4 @@
|
||||
obj-$(CONFIG_MTD_BFIN_ASYNC) += bfin-async-flash.o
|
||||
obj-$(CONFIG_MTD_RBTX4939) += rbtx4939-flash.o
|
||||
obj-$(CONFIG_MTD_VMU) += vmu-flash.o
|
||||
+obj-$(CONFIG_MTD_IFXMIPS) += ifxmips.o
|
||||
Index: linux-2.6.30.5/drivers/net/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/net/Kconfig 2009-09-02 18:22:49.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/net/Kconfig 2009-09-02 18:29:51.000000000 +0200
|
||||
@@ -353,6 +353,12 @@
|
||||
|
||||
source "drivers/net/arm/Kconfig"
|
||||
|
||||
+config IFXMIPS_MII0
|
||||
+ tristate "Infineon IFXMips eth0 driver"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Support for the MII0 inside the IFXMips SOC
|
||||
+
|
||||
config AX88796
|
||||
tristate "ASIX AX88796 NE2000 clone support"
|
||||
depends on ARM || MIPS || SUPERH
|
||||
Index: linux-2.6.30.5/drivers/serial/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/serial/Kconfig 2009-08-16 23:19:38.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/serial/Kconfig 2009-09-02 18:29:51.000000000 +0200
|
||||
@@ -1365,6 +1365,14 @@
|
||||
help
|
||||
Support for Console on the NWP serial ports.
|
||||
|
||||
+config SERIAL_IFXMIPS
|
||||
+ bool "IFXMips serial driver"
|
||||
+ depends on IFXMIPS
|
||||
+ select SERIAL_CORE
|
||||
+ select SERIAL_CORE_CONSOLE
|
||||
+ help
|
||||
+ Driver for the ifxmipss built in ASC hardware
|
||||
+
|
||||
config SERIAL_QE
|
||||
tristate "Freescale QUICC Engine serial port support"
|
||||
depends on QUICC_ENGINE
|
||||
Index: linux-2.6.30.5/drivers/serial/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/serial/Makefile 2009-08-16 23:19:38.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/serial/Makefile 2009-09-02 18:29:51.000000000 +0200
|
||||
@@ -77,3 +77,4 @@
|
||||
obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o
|
||||
obj-$(CONFIG_KGDB_SERIAL_CONSOLE) += kgdboc.o
|
||||
obj-$(CONFIG_SERIAL_QE) += ucc_uart.o
|
||||
+obj-$(CONFIG_SERIAL_IFXMIPS) += ifxmips_asc.o
|
||||
Index: linux-2.6.30.5/drivers/watchdog/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/watchdog/Makefile 2009-08-16 23:19:38.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/watchdog/Makefile 2009-09-02 18:29:51.000000000 +0200
|
||||
@@ -105,6 +105,7 @@
|
||||
obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
|
||||
obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
|
||||
obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
|
||||
+obj-$(CONFIG_IFXMIPS_WDT) += ifxmips_wdt.o
|
||||
|
||||
# PARISC Architecture
|
||||
|
||||
Index: linux-2.6.30.5/drivers/net/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/net/Makefile 2009-09-02 18:22:49.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/net/Makefile 2009-09-02 18:30:37.000000000 +0200
|
||||
@@ -234,6 +234,7 @@
|
||||
obj-$(CONFIG_MLX4_CORE) += mlx4/
|
||||
obj-$(CONFIG_ENC28J60) += enc28j60.o
|
||||
obj-$(CONFIG_ETHOC) += ethoc.o
|
||||
+obj-$(CONFIG_IFXMIPS_MII0) += ifxmips_mii0.o
|
||||
|
||||
obj-$(CONFIG_XTENSA_XT2000_SONIC) += xtsonic.o
|
||||
|
||||
Index: linux-2.6.30.5/drivers/crypto/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/crypto/Kconfig 2009-08-16 23:19:38.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/crypto/Kconfig 2009-09-02 18:29:51.000000000 +0200
|
||||
@@ -9,6 +9,9 @@
|
||||
If you say N, all options in this submenu will be skipped and disabled.
|
||||
|
||||
if CRYPTO_HW
|
||||
+config CRYPTO_DEV_IFXMIPS
|
||||
+ tristate "Support for IFXMIPS Data Encryption Unit"
|
||||
+ depends on IFXMIPS
|
||||
|
||||
config CRYPTO_DEV_PADLOCK
|
||||
tristate "Support for VIA PadLock ACE"
|
||||
Index: linux-2.6.30.5/drivers/crypto/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/crypto/Makefile 2009-08-16 23:19:38.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/crypto/Makefile 2009-09-02 18:30:55.000000000 +0200
|
||||
@@ -5,3 +5,4 @@
|
||||
obj-$(CONFIG_CRYPTO_DEV_TALITOS) += talitos.o
|
||||
obj-$(CONFIG_CRYPTO_DEV_IXP4XX) += ixp4xx_crypto.o
|
||||
obj-$(CONFIG_CRYPTO_DEV_PPC4XX) += amcc/
|
||||
+obj-$(CONFIG_CRYPTO_DEV_IFXMIPS) += ifxdeu-aes.o ifxdeu-des.o ifxdeu-dma.o ifxdeu-generic.o ifxdeu-md5.o ifxdeu-sha1.o
|
||||
Index: linux-2.6.30.5/drivers/leds/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/leds/Kconfig 2009-09-02 18:22:49.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/leds/Kconfig 2009-09-02 18:29:51.000000000 +0200
|
||||
@@ -227,6 +227,12 @@
|
||||
This option enables support for BD2802GU RGB LED driver chips
|
||||
accessed via the I2C bus.
|
||||
|
||||
+config LEDS_IFXMIPS
|
||||
+ tristate "LED Support for IFXMIPS LEDs"
|
||||
+ depends on LEDS_CLASS && IFXMIPS
|
||||
+ help
|
||||
+ This option enables support for the CM-X270 LEDs.
|
||||
+
|
||||
comment "LED Triggers"
|
||||
|
||||
config LEDS_TRIGGERS
|
||||
Index: linux-2.6.30.5/drivers/leds/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/leds/Makefile 2009-09-02 18:22:49.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/leds/Makefile 2009-09-02 18:31:23.000000000 +0200
|
||||
@@ -27,6 +27,7 @@
|
||||
obj-$(CONFIG_LEDS_DA903X) += leds-da903x.o
|
||||
obj-$(CONFIG_LEDS_WM8350) += leds-wm8350.o
|
||||
obj-$(CONFIG_LEDS_PWM) += leds-pwm.o
|
||||
+obj-$(CONFIG_LEDS_IFXMIPS) += leds-ifxmips.o
|
||||
|
||||
# LED SPI Drivers
|
||||
obj-$(CONFIG_LEDS_DAC124S085) += leds-dac124s085.o
|
||||
Index: linux-2.6.30.5/drivers/watchdog/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/watchdog/Kconfig 2009-08-16 23:19:38.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/watchdog/Kconfig 2009-09-02 18:29:51.000000000 +0200
|
||||
@@ -764,6 +764,12 @@
|
||||
help
|
||||
Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
|
||||
|
||||
+config IFXMIPS_WDT
|
||||
+ bool "IFXMips watchdog"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Hardware driver for the IFXMIPS Watchdog Timer.
|
||||
+
|
||||
# PARISC Architecture
|
||||
|
||||
# POWERPC Architecture
|
|
@ -0,0 +1,15 @@
|
|||
Index: linux-2.6.30.5/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/drivers/mtd/chips/cfi_cmdset_0002.c 2009-09-02 18:22:49.000000000 +0200
|
||||
+++ linux-2.6.30.5/drivers/mtd/chips/cfi_cmdset_0002.c 2009-09-02 18:31:31.000000000 +0200
|
||||
@@ -1090,7 +1090,9 @@
|
||||
int retry_cnt = 0;
|
||||
|
||||
adr += chip->start;
|
||||
-
|
||||
+#ifdef CONFIG_IFXMIPS
|
||||
+ adr ^= 2;
|
||||
+#endif
|
||||
spin_lock(chip->mutex);
|
||||
ret = get_chip(map, chip, adr, FL_WRITING);
|
||||
if (ret) {
|
|
@ -0,0 +1,13 @@
|
|||
Index: linux-2.6.30.5/arch/mips/mm/cache.c
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/arch/mips/mm/cache.c 2009-09-02 18:31:37.000000000 +0200
|
||||
+++ linux-2.6.30.5/arch/mips/mm/cache.c 2009-09-02 18:31:42.000000000 +0200
|
||||
@@ -52,6 +52,8 @@
|
||||
void (*_dma_cache_inv)(unsigned long start, unsigned long size);
|
||||
|
||||
EXPORT_SYMBOL(_dma_cache_wback_inv);
|
||||
+EXPORT_SYMBOL(_dma_cache_wback);
|
||||
+EXPORT_SYMBOL(_dma_cache_inv);
|
||||
|
||||
#endif /* CONFIG_DMA_NONCOHERENT */
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
Index: linux-2.6.30.5/kernel/irq/chip.c
|
||||
===================================================================
|
||||
--- linux-2.6.30.5.orig/kernel/irq/chip.c 2009-09-02 20:09:15.000000000 +0200
|
||||
+++ linux-2.6.30.5/kernel/irq/chip.c 2009-09-02 20:09:25.000000000 +0200
|
||||
@@ -537,6 +537,9 @@
|
||||
|
||||
kstat_incr_irqs_this_cpu(irq, desc);
|
||||
|
||||
+ if (unlikely(!desc->action || (desc->status & IRQ_DISABLED)))
|
||||
+ return;
|
||||
+
|
||||
if (desc->chip->ack)
|
||||
desc->chip->ack(irq);
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
Index: linux-2.6.28.10/include/linux/atm.h
|
||||
===================================================================
|
||||
--- linux-2.6.28.10.orig/include/linux/atm.h 2009-05-02 20:54:43.000000000 +0200
|
||||
+++ linux-2.6.28.10/include/linux/atm.h 2009-09-02 15:00:30.000000000 +0200
|
||||
@@ -139,6 +139,9 @@
|
||||
int min_pcr; /* minimum PCR in cells per second */
|
||||
int max_cdv; /* maximum CDV in microseconds */
|
||||
int max_sdu; /* maximum SDU in bytes */
|
||||
+ int scr; /* sustained rate in cells per second */
|
||||
+ int mbs; /* maximum burst size (MBS) in cells */
|
||||
+ int cdv; /* Cell delay varition */
|
||||
/* extra params for ABR */
|
||||
unsigned int icr; /* Initial Cell Rate (24-bit) */
|
||||
unsigned int tbe; /* Transient Buffer Exposure (24-bit) */
|
||||
Index: linux-2.6.28.10/kernel/time/timekeeping.c
|
||||
===================================================================
|
||||
--- linux-2.6.28.10.orig/kernel/time/timekeeping.c 2009-09-02 15:41:06.000000000 +0200
|
||||
+++ linux-2.6.28.10/kernel/time/timekeeping.c 2009-09-02 15:41:23.000000000 +0200
|
||||
@@ -43,6 +43,7 @@
|
||||
* used instead.
|
||||
*/
|
||||
struct timespec xtime __attribute__ ((aligned (16)));
|
||||
+EXPORT_SYMBOL(xtime);
|
||||
struct timespec wall_to_monotonic __attribute__ ((aligned (16)));
|
||||
static unsigned long total_sleep_time; /* seconds */
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
--- a/arch/mips/kernel/traps.c
|
||||
+++ b/arch/mips/kernel/traps.c
|
||||
@@ -1464,7 +1464,16 @@ void __cpuinit per_cpu_trap_init(void)
|
||||
*/
|
||||
if (cpu_has_mips_r2) {
|
||||
cp0_compare_irq = (read_c0_intctl() >> 29) & 7;
|
||||
+ if (!cp0_compare_irq)
|
||||
+ cp0_compare_irq = CP0_LEGACY_COMPARE_IRQ;
|
||||
+
|
||||
cp0_perfcount_irq = (read_c0_intctl() >> 26) & 7;
|
||||
+ if (!cp0_perfcount_irq)
|
||||
+ cp0_perfcount_irq = CP0_LEGACY_PERFCNT_IRQ;
|
||||
+
|
||||
+ if (arch_fixup_c0_irqs)
|
||||
+ arch_fixup_c0_irqs();
|
||||
+
|
||||
if (cp0_perfcount_irq == cp0_compare_irq)
|
||||
cp0_perfcount_irq = -1;
|
||||
} else {
|
||||
--- a/include/asm-mips/irq.h
|
||||
+++ b/include/asm-mips/irq.h
|
||||
@@ -156,8 +156,12 @@ extern void free_irqno(unsigned int irq)
|
||||
* IE7. Since R2 their number has to be read from the c0_intctl register.
|
||||
*/
|
||||
#define CP0_LEGACY_COMPARE_IRQ 7
|
||||
+#define CP0_LEGACY_PERFCNT_IRQ 7
|
||||
|
||||
extern int cp0_compare_irq;
|
||||
extern int cp0_perfcount_irq;
|
||||
|
||||
+extern void __weak arch_fixup_c0_irqs(void);
|
||||
+
|
||||
+
|
||||
#endif /* _ASM_IRQ_H */
|
|
@ -1,65 +0,0 @@
|
|||
--- a/arch/mips/kernel/cevt-r4k.c
|
||||
+++ b/arch/mips/kernel/cevt-r4k.c
|
||||
@@ -13,6 +13,22 @@
|
||||
#include <asm/smtc_ipi.h>
|
||||
#include <asm/time.h>
|
||||
|
||||
+/*
|
||||
+ * Compare interrupt can be routed and latched outside the core,
|
||||
+ * so a single execution hazard barrier may not be enough to give
|
||||
+ * it time to clear as seen in the Cause register. 4 time the
|
||||
+ * pipeline depth seems reasonably conservative, and empirically
|
||||
+ * works better in configurations with high CPU/bus clock ratios.
|
||||
+ */
|
||||
+
|
||||
+#define compare_change_hazard() \
|
||||
+ do { \
|
||||
+ irq_disable_hazard(); \
|
||||
+ irq_disable_hazard(); \
|
||||
+ irq_disable_hazard(); \
|
||||
+ irq_disable_hazard(); \
|
||||
+ } while (0)
|
||||
+
|
||||
static int mips_next_event(unsigned long delta,
|
||||
struct clock_event_device *evt)
|
||||
{
|
||||
@@ -28,6 +44,7 @@ static int mips_next_event(unsigned long
|
||||
cnt = read_c0_count();
|
||||
cnt += delta;
|
||||
write_c0_compare(cnt);
|
||||
+ compare_change_hazard();
|
||||
res = ((int)(read_c0_count() - cnt) > 0) ? -ETIME : 0;
|
||||
#ifdef CONFIG_MIPS_MT_SMTC
|
||||
evpe(vpflags);
|
||||
@@ -187,7 +204,7 @@ static int c0_compare_int_usable(void)
|
||||
*/
|
||||
if (c0_compare_int_pending()) {
|
||||
write_c0_compare(read_c0_count());
|
||||
- irq_disable_hazard();
|
||||
+ compare_change_hazard();
|
||||
if (c0_compare_int_pending())
|
||||
return 0;
|
||||
}
|
||||
@@ -196,7 +213,7 @@ static int c0_compare_int_usable(void)
|
||||
cnt = read_c0_count();
|
||||
cnt += delta;
|
||||
write_c0_compare(cnt);
|
||||
- irq_disable_hazard();
|
||||
+ compare_change_hazard();
|
||||
if ((int)(read_c0_count() - cnt) < 0)
|
||||
break;
|
||||
/* increase delta if the timer was already expired */
|
||||
@@ -205,11 +222,12 @@ static int c0_compare_int_usable(void)
|
||||
while ((int)(read_c0_count() - cnt) <= 0)
|
||||
; /* Wait for expiry */
|
||||
|
||||
+ compare_change_hazard();
|
||||
if (!c0_compare_int_pending())
|
||||
return 0;
|
||||
|
||||
write_c0_compare(read_c0_count());
|
||||
- irq_disable_hazard();
|
||||
+ compare_change_hazard();
|
||||
if (c0_compare_int_pending())
|
||||
return 0;
|
||||
|
|
@ -1,72 +0,0 @@
|
|||
--- a/arch/mips/Kconfig
|
||||
+++ b/arch/mips/Kconfig
|
||||
@@ -78,6 +78,23 @@ config MIPS_COBALT
|
||||
select SYS_SUPPORTS_LITTLE_ENDIAN
|
||||
select GENERIC_HARDIRQS_NO__DO_IRQ
|
||||
|
||||
+config IFXMIPS
|
||||
+ bool "Infineon Twinpass, Danube, Amazon-SE"
|
||||
+ select DMA_NONCOHERENT
|
||||
+ select IRQ_CPU
|
||||
+ select CEVT_R4K
|
||||
+ select CSRC_R4K
|
||||
+ select SYS_HAS_CPU_MIPS32_R1
|
||||
+ select SYS_HAS_CPU_MIPS32_R2
|
||||
+ select HAVE_STD_PC_SERIAL_PORT
|
||||
+ select SYS_SUPPORTS_BIG_ENDIAN
|
||||
+ select SYS_SUPPORTS_32BIT_KERNEL
|
||||
+ select SYS_SUPPORTS_MULTITHREADING
|
||||
+ select SYS_HAS_EARLY_PRINTK
|
||||
+ select HW_HAS_PCI
|
||||
+ select GENERIC_GPIO
|
||||
+ select SWAP_IO_SPACE
|
||||
+
|
||||
config MACH_DECSTATION
|
||||
bool "DECstations"
|
||||
select BOOT_ELF32
|
||||
@@ -697,6 +714,7 @@ source "arch/mips/sibyte/Kconfig"
|
||||
source "arch/mips/tx4927/Kconfig"
|
||||
source "arch/mips/tx4938/Kconfig"
|
||||
source "arch/mips/vr41xx/Kconfig"
|
||||
+source "arch/mips/ifxmips/Kconfig"
|
||||
|
||||
endmenu
|
||||
|
||||
--- a/arch/mips/Makefile
|
||||
+++ b/arch/mips/Makefile
|
||||
@@ -283,6 +283,13 @@ cflags-$(CONFIG_MIPS_COBALT) += -Iinclud
|
||||
load-$(CONFIG_MIPS_COBALT) += 0xffffffff80080000
|
||||
|
||||
#
|
||||
+# Infineon IFXMIPS
|
||||
+#
|
||||
+core-$(CONFIG_IFXMIPS) += arch/mips/ifxmips/
|
||||
+cflags-$(CONFIG_IFXMIPS) += -Iinclude/asm-mips/mach-ifxmips
|
||||
+load-$(CONFIG_IFXMIPS) += 0xffffffff80002000
|
||||
+
|
||||
+#
|
||||
# DECstation family
|
||||
#
|
||||
core-$(CONFIG_MACH_DECSTATION) += arch/mips/dec/
|
||||
--- a/include/asm-mips/bootinfo.h
|
||||
+++ b/include/asm-mips/bootinfo.h
|
||||
@@ -94,6 +94,12 @@
|
||||
#define MACH_MSP7120_FPGA 5 /* PMC-Sierra MSP7120 Emulation */
|
||||
#define MACH_MSP_OTHER 255 /* PMC-Sierra unknown board type */
|
||||
|
||||
+/*
|
||||
+ * Valid machtype for group IFXMIPS
|
||||
+ */
|
||||
+#define MACH_GROUP_IFXMIPS 29
|
||||
+#define MACH_INFINEON_IFXMIPS 0
|
||||
+
|
||||
#define CL_SIZE COMMAND_LINE_SIZE
|
||||
|
||||
extern char *system_type;
|
||||
--- a/arch/mips/pci/Makefile
|
||||
+++ b/arch/mips/pci/Makefile
|
||||
@@ -48,3 +48,4 @@ obj-$(CONFIG_TOSHIBA_RBTX4938) += fixup-
|
||||
obj-$(CONFIG_VICTOR_MPC30X) += fixup-mpc30x.o
|
||||
obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capcella.o
|
||||
obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o
|
||||
+obj-$(CONFIG_IFXMIPS) += pci-ifxmips.o ops-ifxmips.o
|
|
@ -1,149 +0,0 @@
|
|||
--- a/drivers/char/Makefile
|
||||
+++ b/drivers/char/Makefile
|
||||
@@ -114,6 +114,10 @@ obj-$(CONFIG_PS3_FLASH) += ps3flash.o
|
||||
obj-$(CONFIG_JS_RTC) += js-rtc.o
|
||||
js-rtc-y = rtc.o
|
||||
|
||||
+obj-$(CONFIG_IFXMIPS_SSC) += ifxmips_ssc.o
|
||||
+obj-$(CONFIG_IFXMIPS_EEPROM) += ifxmips_eeprom.o
|
||||
+obj-$(CONFIG_IFXMIPS_MEI) += ifxmips_mei_core.o
|
||||
+
|
||||
# Files generated that shall be removed upon make clean
|
||||
clean-files := consolemap_deftbl.c defkeymap.c
|
||||
|
||||
--- a/drivers/mtd/maps/Makefile
|
||||
+++ b/drivers/mtd/maps/Makefile
|
||||
@@ -67,3 +67,4 @@ obj-$(CONFIG_MTD_PLATRAM) += plat-ram.o
|
||||
obj-$(CONFIG_MTD_OMAP_NOR) += omap_nor.o
|
||||
obj-$(CONFIG_MTD_MTX1) += mtx-1_flash.o
|
||||
obj-$(CONFIG_MTD_INTEL_VR_NOR) += intel_vr_nor.o
|
||||
+obj-$(CONFIG_MTD_IFXMIPS) += ifxmips.o
|
||||
--- a/drivers/net/Kconfig
|
||||
+++ b/drivers/net/Kconfig
|
||||
@@ -351,6 +351,12 @@ config MACB
|
||||
|
||||
source "drivers/net/arm/Kconfig"
|
||||
|
||||
+config IFXMIPS_MII0
|
||||
+ tristate "Infineon IFXMips eth0 driver"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Support for the MII0 inside the IFXMips SOC
|
||||
+
|
||||
config AX88796
|
||||
tristate "ASIX AX88796 NE2000 clone support"
|
||||
depends on ARM || MIPS || SUPERH
|
||||
--- a/drivers/serial/Kconfig
|
||||
+++ b/drivers/serial/Kconfig
|
||||
@@ -1334,6 +1334,14 @@ config SERIAL_OF_PLATFORM
|
||||
Currently, only 8250 compatible ports are supported, but
|
||||
others can easily be added.
|
||||
|
||||
+config SERIAL_IFXMIPS
|
||||
+ bool "IFXMips serial driver"
|
||||
+ depends on IFXMIPS
|
||||
+ select SERIAL_CORE
|
||||
+ select SERIAL_CORE_CONSOLE
|
||||
+ help
|
||||
+ Driver for the ifxmipss built in ASC hardware
|
||||
+
|
||||
config SERIAL_QE
|
||||
tristate "Freescale QUICC Engine serial port support"
|
||||
depends on QUICC_ENGINE
|
||||
--- a/drivers/serial/Makefile
|
||||
+++ b/drivers/serial/Makefile
|
||||
@@ -68,3 +68,4 @@ obj-$(CONFIG_SERIAL_OF_PLATFORM) += of_s
|
||||
obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o
|
||||
obj-$(CONFIG_KGDB_SERIAL_CONSOLE) += kgdboc.o
|
||||
obj-$(CONFIG_SERIAL_QE) += ucc_uart.o
|
||||
+obj-$(CONFIG_SERIAL_IFXMIPS) += ifxmips_asc.o
|
||||
--- a/drivers/watchdog/Makefile
|
||||
+++ b/drivers/watchdog/Makefile
|
||||
@@ -97,6 +97,7 @@ obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
|
||||
obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
|
||||
obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
|
||||
obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
|
||||
+obj-$(CONFIG_IFXMIPS_WDT) += ifxmips_wdt.o
|
||||
|
||||
# PARISC Architecture
|
||||
|
||||
--- a/drivers/net/Makefile
|
||||
+++ b/drivers/net/Makefile
|
||||
@@ -256,4 +256,4 @@ obj-$(CONFIG_NETXEN_NIC) += netxen/
|
||||
obj-$(CONFIG_NIU) += niu.o
|
||||
obj-$(CONFIG_VIRTIO_NET) += virtio_net.o
|
||||
obj-$(CONFIG_SFC) += sfc/
|
||||
-
|
||||
+obj-$(CONFIG_IFXMIPS_MII0) += ifxmips_mii0.o
|
||||
--- a/drivers/crypto/Kconfig
|
||||
+++ b/drivers/crypto/Kconfig
|
||||
@@ -9,6 +9,9 @@ menuconfig CRYPTO_HW
|
||||
If you say N, all options in this submenu will be skipped and disabled.
|
||||
|
||||
if CRYPTO_HW
|
||||
+config CRYPTO_DEV_IFXMIPS
|
||||
+ tristate "Support for IFXMIPS Data Encryption Unit"
|
||||
+ depends on IFXMIPS
|
||||
|
||||
config CRYPTO_DEV_PADLOCK
|
||||
tristate "Support for VIA PadLock ACE"
|
||||
--- a/drivers/crypto/Makefile
|
||||
+++ b/drivers/crypto/Makefile
|
||||
@@ -4,3 +4,4 @@ obj-$(CONFIG_CRYPTO_DEV_GEODE) += geode-
|
||||
obj-$(CONFIG_CRYPTO_DEV_HIFN_795X) += hifn_795x.o
|
||||
obj-$(CONFIG_CRYPTO_DEV_TALITOS) += talitos.o
|
||||
obj-$(CONFIG_CRYPTO_DEV_IXP4XX) += ixp4xx_crypto.o
|
||||
+obj-$(CONFIG_CRYPTO_DEV_IFXMIPS) += ifxdeu-aes.o ifxdeu-des.o ifxdeu-dma.o ifxdeu-generic.o ifxdeu-md5.o ifxdeu-sha1.o
|
||||
--- a/drivers/usb/host/Kconfig
|
||||
+++ b/drivers/usb/host/Kconfig
|
||||
@@ -305,3 +305,10 @@ config SUPERH_ON_CHIP_R8A66597
|
||||
help
|
||||
This driver enables support for the on-chip R8A66597 in the
|
||||
SH7366 and SH7723 processors.
|
||||
+
|
||||
+config USB_DWC_HCD
|
||||
+ tristate "IFXMIPS USB Host Controller Driver"
|
||||
+ depends on USB && IFXMIPS
|
||||
+ default y
|
||||
+ help
|
||||
+ Danube USB Host Controller
|
||||
--- a/drivers/leds/Kconfig
|
||||
+++ b/drivers/leds/Kconfig
|
||||
@@ -153,6 +153,12 @@ config LEDS_CLEVO_MAIL
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called leds-clevo-mail.
|
||||
|
||||
+config LEDS_IFXMIPS
|
||||
+ tristate "LED Support for IFXMIPS LEDs"
|
||||
+ depends on LEDS_CLASS && IFXMIPS
|
||||
+ help
|
||||
+ This option enables support for the CM-X270 LEDs.
|
||||
+
|
||||
comment "LED Triggers"
|
||||
|
||||
config LEDS_TRIGGERS
|
||||
--- a/drivers/leds/Makefile
|
||||
+++ b/drivers/leds/Makefile
|
||||
@@ -22,6 +22,7 @@ obj-$(CONFIG_LEDS_CM_X270)
|
||||
obj-$(CONFIG_LEDS_CLEVO_MAIL) += leds-clevo-mail.o
|
||||
obj-$(CONFIG_LEDS_HP6XX) += leds-hp6xx.o
|
||||
obj-$(CONFIG_LEDS_FSG) += leds-fsg.o
|
||||
+obj-$(CONFIG_LEDS_IFXMIPS) += leds-ifxmips.o
|
||||
|
||||
# LED Triggers
|
||||
obj-$(CONFIG_LEDS_TRIGGER_TIMER) += ledtrig-timer.o
|
||||
--- a/drivers/watchdog/Kconfig
|
||||
+++ b/drivers/watchdog/Kconfig
|
||||
@@ -683,6 +683,12 @@ config TXX9_WDT
|
||||
help
|
||||
Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
|
||||
|
||||
+config IFXMIPS_WDT
|
||||
+ bool "IFXMips watchdog"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Hardware driver for the IFXMIPS Watchdog Timer.
|
||||
+
|
||||
# PARISC Architecture
|
||||
|
||||
# POWERPC Architecture
|
|
@ -1,13 +0,0 @@
|
|||
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
@@ -1041,7 +1041,9 @@ static int __xipram do_write_oneword(str
|
||||
int retry_cnt = 0;
|
||||
|
||||
adr += chip->start;
|
||||
-
|
||||
+#ifdef CONFIG_IFXMIPS
|
||||
+ adr ^= 2;
|
||||
+#endif
|
||||
spin_lock(chip->mutex);
|
||||
ret = get_chip(map, chip, adr, FL_WRITING);
|
||||
if (ret) {
|
|
@ -1,11 +0,0 @@
|
|||
--- a/arch/mips/mm/cache.c
|
||||
+++ b/arch/mips/mm/cache.c
|
||||
@@ -50,6 +50,8 @@ void (*_dma_cache_wback)(unsigned long s
|
||||
void (*_dma_cache_inv)(unsigned long start, unsigned long size);
|
||||
|
||||
EXPORT_SYMBOL(_dma_cache_wback_inv);
|
||||
+EXPORT_SYMBOL(_dma_cache_wback);
|
||||
+EXPORT_SYMBOL(_dma_cache_inv);
|
||||
|
||||
#endif /* CONFIG_DMA_NONCOHERENT */
|
||||
|
Loading…
Reference in New Issue