···11+#22+# Automatically generated make config: don't edit33+# Linux kernel version: 2.6.2544+# Mon Apr 28 12:24:17 200855+#66+CONFIG_MIPS=y77+88+#99+# Machine selection1010+#1111+# CONFIG_MACH_ALCHEMY is not set1212+# CONFIG_BASLER_EXCITE is not set1313+# CONFIG_BCM47XX is not set1414+# CONFIG_MIPS_COBALT is not set1515+# CONFIG_MACH_DECSTATION is not set1616+# CONFIG_MACH_JAZZ is not set1717+# CONFIG_LASAT is not set1818+# CONFIG_LEMOTE_FULONG is not set1919+# CONFIG_MIPS_ATLAS is not set2020+# CONFIG_MIPS_MALTA is not set2121+# CONFIG_MIPS_SEAD is not set2222+# CONFIG_MIPS_SIM is not set2323+# CONFIG_MARKEINS is not set2424+# CONFIG_MACH_VR41XX is not set2525+# CONFIG_PNX8550_JBS is not set2626+# CONFIG_PNX8550_STB810 is not set2727+# CONFIG_PMC_MSP is not set2828+# CONFIG_PMC_YOSEMITE is not set2929+# CONFIG_SGI_IP22 is not set3030+# CONFIG_SGI_IP27 is not set3131+# CONFIG_SGI_IP28 is not set3232+# CONFIG_SGI_IP32 is not set3333+# CONFIG_SIBYTE_CRHINE is not set3434+# CONFIG_SIBYTE_CARMEL is not set3535+# CONFIG_SIBYTE_CRHONE is not set3636+# CONFIG_SIBYTE_RHONE is not set3737+# CONFIG_SIBYTE_SWARM is not set3838+# CONFIG_SIBYTE_LITTLESUR is not set3939+# CONFIG_SIBYTE_SENTOSA is not set4040+# CONFIG_SIBYTE_BIGSUR is not set4141+# CONFIG_SNI_RM is not set4242+# CONFIG_TOSHIBA_JMR3927 is not set4343+CONFIG_MIKROTIK_RB532=y4444+# CONFIG_TOSHIBA_RBTX4927 is not set4545+# CONFIG_TOSHIBA_RBTX4938 is not set4646+# CONFIG_WR_PPMC is not set4747+CONFIG_RWSEM_GENERIC_SPINLOCK=y4848+# CONFIG_ARCH_HAS_ILOG2_U32 is not set4949+# CONFIG_ARCH_HAS_ILOG2_U64 is not set5050+CONFIG_ARCH_SUPPORTS_OPROFILE=y5151+CONFIG_GENERIC_FIND_NEXT_BIT=y5252+CONFIG_GENERIC_HWEIGHT=y5353+CONFIG_GENERIC_CALIBRATE_DELAY=y5454+CONFIG_GENERIC_CLOCKEVENTS=y5555+CONFIG_GENERIC_TIME=y5656+CONFIG_GENERIC_CMOS_UPDATE=y5757+CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y5858+CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y5959+CONFIG_BOOT_RAW=y6060+CONFIG_CEVT_R4K=y6161+CONFIG_CSRC_R4K=y6262+CONFIG_DMA_NONCOHERENT=y6363+CONFIG_DMA_NEED_PCI_MAP_STATE=y6464+# CONFIG_HOTPLUG_CPU is not set6565+# CONFIG_NO_IOPORT is not set6666+CONFIG_GENERIC_GPIO=y6767+# CONFIG_CPU_BIG_ENDIAN is not set6868+CONFIG_CPU_LITTLE_ENDIAN=y6969+CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y7070+CONFIG_IRQ_CPU=y7171+CONFIG_SWAP_IO_SPACE=y7272+CONFIG_MIPS_L1_CACHE_SHIFT=47373+7474+#7575+# CPU selection7676+#7777+# CONFIG_CPU_LOONGSON2 is not set7878+CONFIG_CPU_MIPS32_R1=y7979+# CONFIG_CPU_MIPS32_R2 is not set8080+# CONFIG_CPU_MIPS64_R1 is not set8181+# CONFIG_CPU_MIPS64_R2 is not set8282+# CONFIG_CPU_R3000 is not set8383+# CONFIG_CPU_TX39XX is not set8484+# CONFIG_CPU_VR41XX is not set8585+# CONFIG_CPU_R4300 is not set8686+# CONFIG_CPU_R4X00 is not set8787+# CONFIG_CPU_TX49XX is not set8888+# CONFIG_CPU_R5000 is not set8989+# CONFIG_CPU_R5432 is not set9090+# CONFIG_CPU_R6000 is not set9191+# CONFIG_CPU_NEVADA is not set9292+# CONFIG_CPU_R8000 is not set9393+# CONFIG_CPU_R10000 is not set9494+# CONFIG_CPU_RM7000 is not set9595+# CONFIG_CPU_RM9000 is not set9696+# CONFIG_CPU_SB1 is not set9797+CONFIG_SYS_HAS_CPU_MIPS32_R1=y9898+CONFIG_CPU_MIPS32=y9999+CONFIG_CPU_MIPSR1=y100100+CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y101101+CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y102102+103103+#104104+# Kernel type105105+#106106+CONFIG_32BIT=y107107+# CONFIG_64BIT is not set108108+CONFIG_PAGE_SIZE_4KB=y109109+# CONFIG_PAGE_SIZE_8KB is not set110110+# CONFIG_PAGE_SIZE_16KB is not set111111+# CONFIG_PAGE_SIZE_64KB is not set112112+CONFIG_CPU_HAS_PREFETCH=y113113+CONFIG_MIPS_MT_DISABLED=y114114+# CONFIG_MIPS_MT_SMP is not set115115+# CONFIG_MIPS_MT_SMTC is not set116116+CONFIG_CPU_HAS_LLSC=y117117+CONFIG_CPU_HAS_SYNC=y118118+CONFIG_GENERIC_HARDIRQS=y119119+CONFIG_GENERIC_IRQ_PROBE=y120120+CONFIG_CPU_SUPPORTS_HIGHMEM=y121121+CONFIG_ARCH_FLATMEM_ENABLE=y122122+CONFIG_ARCH_POPULATES_NODE_MAP=y123123+CONFIG_SELECT_MEMORY_MODEL=y124124+CONFIG_FLATMEM_MANUAL=y125125+# CONFIG_DISCONTIGMEM_MANUAL is not set126126+# CONFIG_SPARSEMEM_MANUAL is not set127127+CONFIG_FLATMEM=y128128+CONFIG_FLAT_NODE_MEM_MAP=y129129+# CONFIG_SPARSEMEM_STATIC is not set130130+# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set131131+CONFIG_SPLIT_PTLOCK_CPUS=4132132+# CONFIG_RESOURCES_64BIT is not set133133+CONFIG_ZONE_DMA_FLAG=0134134+CONFIG_VIRT_TO_BUS=y135135+CONFIG_TICK_ONESHOT=y136136+CONFIG_NO_HZ=y137137+CONFIG_HIGH_RES_TIMERS=y138138+CONFIG_GENERIC_CLOCKEVENTS_BUILD=y139139+# CONFIG_HZ_48 is not set140140+CONFIG_HZ_100=y141141+# CONFIG_HZ_128 is not set142142+# CONFIG_HZ_250 is not set143143+# CONFIG_HZ_256 is not set144144+# CONFIG_HZ_1000 is not set145145+# CONFIG_HZ_1024 is not set146146+CONFIG_SYS_SUPPORTS_ARBIT_HZ=y147147+CONFIG_HZ=100148148+CONFIG_PREEMPT_NONE=y149149+# CONFIG_PREEMPT_VOLUNTARY is not set150150+# CONFIG_PREEMPT is not set151151+# CONFIG_KEXEC is not set152152+# CONFIG_SECCOMP is not set153153+CONFIG_LOCKDEP_SUPPORT=y154154+CONFIG_STACKTRACE_SUPPORT=y155155+CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"156156+157157+#158158+# General setup159159+#160160+CONFIG_EXPERIMENTAL=y161161+CONFIG_BROKEN_ON_SMP=y162162+CONFIG_INIT_ENV_ARG_LIMIT=32163163+CONFIG_LOCALVERSION=""164164+# CONFIG_LOCALVERSION_AUTO is not set165165+CONFIG_SWAP=y166166+CONFIG_SYSVIPC=y167167+CONFIG_SYSVIPC_SYSCTL=y168168+# CONFIG_POSIX_MQUEUE is not set169169+CONFIG_BSD_PROCESS_ACCT=y170170+# CONFIG_BSD_PROCESS_ACCT_V3 is not set171171+# CONFIG_TASKSTATS is not set172172+# CONFIG_AUDIT is not set173173+CONFIG_IKCONFIG=y174174+CONFIG_IKCONFIG_PROC=y175175+CONFIG_LOG_BUF_SHIFT=14176176+# CONFIG_CGROUPS is not set177177+CONFIG_GROUP_SCHED=y178178+CONFIG_FAIR_GROUP_SCHED=y179179+# CONFIG_RT_GROUP_SCHED is not set180180+CONFIG_USER_SCHED=y181181+# CONFIG_CGROUP_SCHED is not set182182+CONFIG_SYSFS_DEPRECATED=y183183+CONFIG_SYSFS_DEPRECATED_V2=y184184+# CONFIG_RELAY is not set185185+# CONFIG_NAMESPACES is not set186186+CONFIG_BLK_DEV_INITRD=y187187+CONFIG_INITRAMFS_SOURCE=""188188+CONFIG_CC_OPTIMIZE_FOR_SIZE=y189189+CONFIG_SYSCTL=y190190+CONFIG_EMBEDDED=y191191+CONFIG_SYSCTL_SYSCALL=y192192+# CONFIG_KALLSYMS is not set193193+CONFIG_HOTPLUG=y194194+CONFIG_PRINTK=y195195+CONFIG_BUG=y196196+# CONFIG_ELF_CORE is not set197197+CONFIG_COMPAT_BRK=y198198+CONFIG_BASE_FULL=y199199+CONFIG_FUTEX=y200200+CONFIG_ANON_INODES=y201201+CONFIG_EPOLL=y202202+CONFIG_SIGNALFD=y203203+CONFIG_TIMERFD=y204204+CONFIG_EVENTFD=y205205+CONFIG_SHMEM=y206206+# CONFIG_VM_EVENT_COUNTERS is not set207207+CONFIG_SLAB=y208208+# CONFIG_SLUB is not set209209+# CONFIG_SLOB is not set210210+# CONFIG_PROFILING is not set211211+# CONFIG_MARKERS is not set212212+CONFIG_HAVE_OPROFILE=y213213+# CONFIG_HAVE_KPROBES is not set214214+# CONFIG_HAVE_KRETPROBES is not set215215+CONFIG_PROC_PAGE_MONITOR=y216216+CONFIG_SLABINFO=y217217+CONFIG_RT_MUTEXES=y218218+# CONFIG_TINY_SHMEM is not set219219+CONFIG_BASE_SMALL=0220220+CONFIG_MODULES=y221221+CONFIG_MODULE_UNLOAD=y222222+# CONFIG_MODULE_FORCE_UNLOAD is not set223223+# CONFIG_MODVERSIONS is not set224224+# CONFIG_MODULE_SRCVERSION_ALL is not set225225+# CONFIG_KMOD is not set226226+CONFIG_BLOCK=y227227+# CONFIG_LBD is not set228228+# CONFIG_BLK_DEV_IO_TRACE is not set229229+# CONFIG_LSF is not set230230+# CONFIG_BLK_DEV_BSG is not set231231+232232+#233233+# IO Schedulers234234+#235235+CONFIG_IOSCHED_NOOP=y236236+# CONFIG_IOSCHED_AS is not set237237+CONFIG_IOSCHED_DEADLINE=y238238+# CONFIG_IOSCHED_CFQ is not set239239+# CONFIG_DEFAULT_AS is not set240240+CONFIG_DEFAULT_DEADLINE=y241241+# CONFIG_DEFAULT_CFQ is not set242242+# CONFIG_DEFAULT_NOOP is not set243243+CONFIG_DEFAULT_IOSCHED="deadline"244244+CONFIG_CLASSIC_RCU=y245245+246246+#247247+# Bus options (PCI, PCMCIA, EISA, ISA, TC)248248+#249249+CONFIG_HW_HAS_PCI=y250250+CONFIG_PCI=y251251+CONFIG_PCI_DOMAINS=y252252+# CONFIG_ARCH_SUPPORTS_MSI is not set253253+CONFIG_PCI_LEGACY=y254254+CONFIG_MMU=y255255+# CONFIG_PCCARD is not set256256+# CONFIG_HOTPLUG_PCI is not set257257+258258+#259259+# Executable file formats260260+#261261+CONFIG_BINFMT_ELF=y262262+# CONFIG_BINFMT_MISC is not set263263+CONFIG_TRAD_SIGNALS=y264264+265265+#266266+# Power management options267267+#268268+CONFIG_ARCH_SUSPEND_POSSIBLE=y269269+# CONFIG_PM is not set270270+271271+#272272+# Networking273273+#274274+CONFIG_NET=y275275+276276+#277277+# Networking options278278+#279279+CONFIG_PACKET=y280280+CONFIG_PACKET_MMAP=y281281+CONFIG_UNIX=y282282+# CONFIG_NET_KEY is not set283283+CONFIG_INET=y284284+CONFIG_IP_MULTICAST=y285285+CONFIG_IP_ADVANCED_ROUTER=y286286+CONFIG_ASK_IP_FIB_HASH=y287287+# CONFIG_IP_FIB_TRIE is not set288288+CONFIG_IP_FIB_HASH=y289289+CONFIG_IP_MULTIPLE_TABLES=y290290+CONFIG_IP_ROUTE_MULTIPATH=y291291+CONFIG_IP_ROUTE_VERBOSE=y292292+# CONFIG_IP_PNP is not set293293+# CONFIG_NET_IPIP is not set294294+# CONFIG_NET_IPGRE is not set295295+# CONFIG_IP_MROUTE is not set296296+CONFIG_ARPD=y297297+CONFIG_SYN_COOKIES=y298298+# CONFIG_INET_AH is not set299299+# CONFIG_INET_ESP is not set300300+# CONFIG_INET_IPCOMP is not set301301+# CONFIG_INET_XFRM_TUNNEL is not set302302+# CONFIG_INET_TUNNEL is not set303303+# CONFIG_INET_XFRM_MODE_TRANSPORT is not set304304+# CONFIG_INET_XFRM_MODE_TUNNEL is not set305305+# CONFIG_INET_XFRM_MODE_BEET is not set306306+# CONFIG_INET_LRO is not set307307+CONFIG_INET_DIAG=m308308+CONFIG_INET_TCP_DIAG=m309309+CONFIG_TCP_CONG_ADVANCED=y310310+CONFIG_TCP_CONG_BIC=m311311+CONFIG_TCP_CONG_CUBIC=m312312+CONFIG_TCP_CONG_WESTWOOD=m313313+CONFIG_TCP_CONG_HTCP=m314314+CONFIG_TCP_CONG_HSTCP=m315315+CONFIG_TCP_CONG_HYBLA=m316316+CONFIG_TCP_CONG_VEGAS=y317317+CONFIG_TCP_CONG_SCALABLE=m318318+CONFIG_TCP_CONG_LP=m319319+CONFIG_TCP_CONG_VENO=m320320+CONFIG_TCP_CONG_YEAH=m321321+CONFIG_TCP_CONG_ILLINOIS=m322322+# CONFIG_DEFAULT_BIC is not set323323+# CONFIG_DEFAULT_CUBIC is not set324324+# CONFIG_DEFAULT_HTCP is not set325325+CONFIG_DEFAULT_VEGAS=y326326+# CONFIG_DEFAULT_WESTWOOD is not set327327+# CONFIG_DEFAULT_RENO is not set328328+CONFIG_DEFAULT_TCP_CONG="vegas"329329+# CONFIG_TCP_MD5SIG is not set330330+# CONFIG_IP_VS is not set331331+# CONFIG_IPV6 is not set332332+# CONFIG_NETWORK_SECMARK is not set333333+CONFIG_NETFILTER=y334334+# CONFIG_NETFILTER_DEBUG is not set335335+CONFIG_NETFILTER_ADVANCED=y336336+# CONFIG_BRIDGE_NETFILTER is not set337337+338338+#339339+# Core Netfilter Configuration340340+#341341+# CONFIG_NETFILTER_NETLINK_QUEUE is not set342342+# CONFIG_NETFILTER_NETLINK_LOG is not set343343+CONFIG_NF_CONNTRACK=y344344+CONFIG_NF_CT_ACCT=y345345+CONFIG_NF_CONNTRACK_MARK=y346346+# CONFIG_NF_CONNTRACK_EVENTS is not set347347+# CONFIG_NF_CT_PROTO_DCCP is not set348348+# CONFIG_NF_CT_PROTO_SCTP is not set349349+# CONFIG_NF_CT_PROTO_UDPLITE is not set350350+# CONFIG_NF_CONNTRACK_AMANDA is not set351351+CONFIG_NF_CONNTRACK_FTP=m352352+# CONFIG_NF_CONNTRACK_H323 is not set353353+CONFIG_NF_CONNTRACK_IRC=m354354+# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set355355+# CONFIG_NF_CONNTRACK_PPTP is not set356356+# CONFIG_NF_CONNTRACK_SANE is not set357357+# CONFIG_NF_CONNTRACK_SIP is not set358358+CONFIG_NF_CONNTRACK_TFTP=m359359+# CONFIG_NF_CT_NETLINK is not set360360+CONFIG_NETFILTER_XTABLES=y361361+# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set362362+# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set363363+# CONFIG_NETFILTER_XT_TARGET_DSCP is not set364364+# CONFIG_NETFILTER_XT_TARGET_MARK is not set365365+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m366366+CONFIG_NETFILTER_XT_TARGET_NFLOG=m367367+# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set368368+# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set369369+CONFIG_NETFILTER_XT_TARGET_TRACE=m370370+# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set371371+# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set372372+CONFIG_NETFILTER_XT_MATCH_COMMENT=m373373+# CONFIG_NETFILTER_XT_MATCH_CONNBYTES is not set374374+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m375375+# CONFIG_NETFILTER_XT_MATCH_CONNMARK is not set376376+# CONFIG_NETFILTER_XT_MATCH_CONNTRACK is not set377377+CONFIG_NETFILTER_XT_MATCH_DCCP=m378378+# CONFIG_NETFILTER_XT_MATCH_DSCP is not set379379+# CONFIG_NETFILTER_XT_MATCH_ESP is not set380380+# CONFIG_NETFILTER_XT_MATCH_HELPER is not set381381+# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set382382+# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set383383+CONFIG_NETFILTER_XT_MATCH_LIMIT=y384384+# CONFIG_NETFILTER_XT_MATCH_MAC is not set385385+# CONFIG_NETFILTER_XT_MATCH_MARK is not set386386+# CONFIG_NETFILTER_XT_MATCH_OWNER is not set387387+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y388388+# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set389389+# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set390390+# CONFIG_NETFILTER_XT_MATCH_RATEEST is not set391391+CONFIG_NETFILTER_XT_MATCH_REALM=m392392+CONFIG_NETFILTER_XT_MATCH_SCTP=m393393+CONFIG_NETFILTER_XT_MATCH_STATE=y394394+# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set395395+# CONFIG_NETFILTER_XT_MATCH_STRING is not set396396+# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set397397+# CONFIG_NETFILTER_XT_MATCH_TIME is not set398398+CONFIG_NETFILTER_XT_MATCH_U32=m399399+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m400400+401401+#402402+# IP: Netfilter Configuration403403+#404404+CONFIG_NF_CONNTRACK_IPV4=y405405+CONFIG_NF_CONNTRACK_PROC_COMPAT=y406406+# CONFIG_IP_NF_QUEUE is not set407407+CONFIG_IP_NF_IPTABLES=y408408+# CONFIG_IP_NF_MATCH_RECENT is not set409409+# CONFIG_IP_NF_MATCH_ECN is not set410410+# CONFIG_IP_NF_MATCH_AH is not set411411+# CONFIG_IP_NF_MATCH_TTL is not set412412+CONFIG_IP_NF_MATCH_ADDRTYPE=m413413+CONFIG_IP_NF_FILTER=y414414+CONFIG_IP_NF_TARGET_REJECT=y415415+# CONFIG_IP_NF_TARGET_LOG is not set416416+# CONFIG_IP_NF_TARGET_ULOG is not set417417+CONFIG_NF_NAT=y418418+CONFIG_NF_NAT_NEEDED=y419419+CONFIG_IP_NF_TARGET_MASQUERADE=y420420+# CONFIG_IP_NF_TARGET_REDIRECT is not set421421+# CONFIG_IP_NF_TARGET_NETMAP is not set422422+# CONFIG_NF_NAT_SNMP_BASIC is not set423423+CONFIG_NF_NAT_FTP=m424424+CONFIG_NF_NAT_IRC=m425425+CONFIG_NF_NAT_TFTP=m426426+# CONFIG_NF_NAT_AMANDA is not set427427+# CONFIG_NF_NAT_PPTP is not set428428+# CONFIG_NF_NAT_H323 is not set429429+# CONFIG_NF_NAT_SIP is not set430430+CONFIG_IP_NF_MANGLE=y431431+# CONFIG_IP_NF_TARGET_ECN is not set432432+# CONFIG_IP_NF_TARGET_TTL is not set433433+# CONFIG_IP_NF_TARGET_CLUSTERIP is not set434434+CONFIG_IP_NF_RAW=m435435+# CONFIG_IP_NF_ARPTABLES is not set436436+# CONFIG_IP_DCCP is not set437437+# CONFIG_IP_SCTP is not set438438+# CONFIG_TIPC is not set439439+# CONFIG_ATM is not set440440+CONFIG_BRIDGE=y441441+CONFIG_VLAN_8021Q=y442442+# CONFIG_DECNET is not set443443+CONFIG_LLC=y444444+CONFIG_LLC2=m445445+# CONFIG_IPX is not set446446+# CONFIG_ATALK is not set447447+# CONFIG_X25 is not set448448+# CONFIG_LAPB is not set449449+# CONFIG_ECONET is not set450450+# CONFIG_WAN_ROUTER is not set451451+CONFIG_NET_SCHED=y452452+453453+#454454+# Queueing/Scheduling455455+#456456+CONFIG_NET_SCH_CBQ=m457457+# CONFIG_NET_SCH_HTB is not set458458+# CONFIG_NET_SCH_HFSC is not set459459+CONFIG_NET_SCH_PRIO=m460460+CONFIG_NET_SCH_RR=m461461+# CONFIG_NET_SCH_RED is not set462462+# CONFIG_NET_SCH_SFQ is not set463463+# CONFIG_NET_SCH_TEQL is not set464464+# CONFIG_NET_SCH_TBF is not set465465+# CONFIG_NET_SCH_GRED is not set466466+# CONFIG_NET_SCH_DSMARK is not set467467+CONFIG_NET_SCH_NETEM=m468468+# CONFIG_NET_SCH_INGRESS is not set469469+470470+#471471+# Classification472472+#473473+CONFIG_NET_CLS=y474474+CONFIG_NET_CLS_BASIC=m475475+CONFIG_NET_CLS_TCINDEX=m476476+CONFIG_NET_CLS_ROUTE4=m477477+CONFIG_NET_CLS_ROUTE=y478478+CONFIG_NET_CLS_FW=m479479+CONFIG_NET_CLS_U32=m480480+CONFIG_CLS_U32_PERF=y481481+CONFIG_CLS_U32_MARK=y482482+CONFIG_NET_CLS_RSVP=m483483+CONFIG_NET_CLS_RSVP6=m484484+# CONFIG_NET_CLS_FLOW is not set485485+CONFIG_NET_EMATCH=y486486+CONFIG_NET_EMATCH_STACK=32487487+CONFIG_NET_EMATCH_CMP=m488488+CONFIG_NET_EMATCH_NBYTE=m489489+CONFIG_NET_EMATCH_U32=m490490+CONFIG_NET_EMATCH_META=m491491+CONFIG_NET_EMATCH_TEXT=m492492+CONFIG_NET_CLS_ACT=y493493+CONFIG_NET_ACT_POLICE=y494494+CONFIG_NET_ACT_GACT=m495495+CONFIG_GACT_PROB=y496496+CONFIG_NET_ACT_MIRRED=m497497+CONFIG_NET_ACT_IPT=m498498+# CONFIG_NET_ACT_NAT is not set499499+CONFIG_NET_ACT_PEDIT=m500500+# CONFIG_NET_ACT_SIMP is not set501501+CONFIG_NET_CLS_IND=y502502+CONFIG_NET_SCH_FIFO=y503503+504504+#505505+# Network testing506506+#507507+# CONFIG_NET_PKTGEN is not set508508+CONFIG_HAMRADIO=y509509+510510+#511511+# Packet Radio protocols512512+#513513+# CONFIG_AX25 is not set514514+# CONFIG_CAN is not set515515+# CONFIG_IRDA is not set516516+# CONFIG_BT is not set517517+# CONFIG_AF_RXRPC is not set518518+CONFIG_FIB_RULES=y519519+520520+#521521+# Wireless522522+#523523+# CONFIG_CFG80211 is not set524524+CONFIG_WIRELESS_EXT=y525525+# CONFIG_MAC80211 is not set526526+# CONFIG_IEEE80211 is not set527527+# CONFIG_RFKILL is not set528528+# CONFIG_NET_9P is not set529529+530530+#531531+# Device Drivers532532+#533533+534534+#535535+# Generic Driver Options536536+#537537+CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"538538+CONFIG_STANDALONE=y539539+CONFIG_PREVENT_FIRMWARE_BUILD=y540540+CONFIG_FW_LOADER=y541541+# CONFIG_SYS_HYPERVISOR is not set542542+# CONFIG_CONNECTOR is not set543543+CONFIG_MTD=y544544+# CONFIG_MTD_DEBUG is not set545545+# CONFIG_MTD_CONCAT is not set546546+CONFIG_MTD_PARTITIONS=y547547+# CONFIG_MTD_REDBOOT_PARTS is not set548548+# CONFIG_MTD_CMDLINE_PARTS is not set549549+# CONFIG_MTD_AR7_PARTS is not set550550+551551+#552552+# User Modules And Translation Layers553553+#554554+CONFIG_MTD_CHAR=y555555+CONFIG_MTD_BLKDEVS=y556556+CONFIG_MTD_BLOCK=y557557+# CONFIG_FTL is not set558558+# CONFIG_NFTL is not set559559+# CONFIG_INFTL is not set560560+# CONFIG_RFD_FTL is not set561561+# CONFIG_SSFDC is not set562562+# CONFIG_MTD_OOPS is not set563563+564564+#565565+# RAM/ROM/Flash chip drivers566566+#567567+# CONFIG_MTD_CFI is not set568568+# CONFIG_MTD_JEDECPROBE is not set569569+CONFIG_MTD_MAP_BANK_WIDTH_1=y570570+CONFIG_MTD_MAP_BANK_WIDTH_2=y571571+CONFIG_MTD_MAP_BANK_WIDTH_4=y572572+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set573573+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set574574+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set575575+CONFIG_MTD_CFI_I1=y576576+CONFIG_MTD_CFI_I2=y577577+# CONFIG_MTD_CFI_I4 is not set578578+# CONFIG_MTD_CFI_I8 is not set579579+# CONFIG_MTD_RAM is not set580580+# CONFIG_MTD_ROM is not set581581+# CONFIG_MTD_ABSENT is not set582582+583583+#584584+# Mapping drivers for chip access585585+#586586+# CONFIG_MTD_COMPLEX_MAPPINGS is not set587587+# CONFIG_MTD_INTEL_VR_NOR is not set588588+# CONFIG_MTD_PLATRAM is not set589589+590590+#591591+# Self-contained MTD device drivers592592+#593593+# CONFIG_MTD_PMC551 is not set594594+# CONFIG_MTD_SLRAM is not set595595+# CONFIG_MTD_PHRAM is not set596596+# CONFIG_MTD_MTDRAM is not set597597+CONFIG_MTD_BLOCK2MTD=y598598+599599+#600600+# Disk-On-Chip Device Drivers601601+#602602+# CONFIG_MTD_DOC2000 is not set603603+# CONFIG_MTD_DOC2001 is not set604604+# CONFIG_MTD_DOC2001PLUS is not set605605+CONFIG_MTD_NAND=y606606+CONFIG_MTD_NAND_VERIFY_WRITE=y607607+# CONFIG_MTD_NAND_ECC_SMC is not set608608+# CONFIG_MTD_NAND_MUSEUM_IDS is not set609609+CONFIG_MTD_NAND_IDS=y610610+# CONFIG_MTD_NAND_DISKONCHIP is not set611611+# CONFIG_MTD_NAND_CAFE is not set612612+# CONFIG_MTD_NAND_NANDSIM is not set613613+CONFIG_MTD_NAND_PLATFORM=y614614+# CONFIG_MTD_ONENAND is not set615615+616616+#617617+# UBI - Unsorted block images618618+#619619+# CONFIG_MTD_UBI is not set620620+# CONFIG_PARPORT is not set621621+CONFIG_BLK_DEV=y622622+# CONFIG_BLK_CPQ_DA is not set623623+# CONFIG_BLK_CPQ_CISS_DA is not set624624+# CONFIG_BLK_DEV_DAC960 is not set625625+# CONFIG_BLK_DEV_UMEM is not set626626+# CONFIG_BLK_DEV_COW_COMMON is not set627627+# CONFIG_BLK_DEV_LOOP is not set628628+# CONFIG_BLK_DEV_NBD is not set629629+# CONFIG_BLK_DEV_SX8 is not set630630+# CONFIG_BLK_DEV_RAM is not set631631+# CONFIG_CDROM_PKTCDVD is not set632632+# CONFIG_ATA_OVER_ETH is not set633633+CONFIG_MISC_DEVICES=y634634+# CONFIG_PHANTOM is not set635635+# CONFIG_EEPROM_93CX6 is not set636636+# CONFIG_SGI_IOC4 is not set637637+# CONFIG_TIFM_CORE is not set638638+# CONFIG_ENCLOSURE_SERVICES is not set639639+CONFIG_HAVE_IDE=y640640+# CONFIG_IDE is not set641641+642642+#643643+# SCSI device support644644+#645645+# CONFIG_RAID_ATTRS is not set646646+CONFIG_SCSI=y647647+CONFIG_SCSI_DMA=y648648+# CONFIG_SCSI_TGT is not set649649+# CONFIG_SCSI_NETLINK is not set650650+CONFIG_SCSI_PROC_FS=y651651+652652+#653653+# SCSI support type (disk, tape, CD-ROM)654654+#655655+# CONFIG_BLK_DEV_SD is not set656656+# CONFIG_CHR_DEV_ST is not set657657+# CONFIG_CHR_DEV_OSST is not set658658+# CONFIG_BLK_DEV_SR is not set659659+# CONFIG_CHR_DEV_SG is not set660660+# CONFIG_CHR_DEV_SCH is not set661661+662662+#663663+# Some SCSI devices (e.g. CD jukebox) support multiple LUNs664664+#665665+# CONFIG_SCSI_MULTI_LUN is not set666666+# CONFIG_SCSI_CONSTANTS is not set667667+# CONFIG_SCSI_LOGGING is not set668668+# CONFIG_SCSI_SCAN_ASYNC is not set669669+CONFIG_SCSI_WAIT_SCAN=m670670+671671+#672672+# SCSI Transports673673+#674674+# CONFIG_SCSI_SPI_ATTRS is not set675675+# CONFIG_SCSI_FC_ATTRS is not set676676+# CONFIG_SCSI_ISCSI_ATTRS is not set677677+# CONFIG_SCSI_SAS_LIBSAS is not set678678+# CONFIG_SCSI_SRP_ATTRS is not set679679+CONFIG_SCSI_LOWLEVEL=y680680+# CONFIG_ISCSI_TCP is not set681681+# CONFIG_BLK_DEV_3W_XXXX_RAID is not set682682+# CONFIG_SCSI_3W_9XXX is not set683683+# CONFIG_SCSI_ACARD is not set684684+# CONFIG_SCSI_AACRAID is not set685685+# CONFIG_SCSI_AIC7XXX is not set686686+# CONFIG_SCSI_AIC7XXX_OLD is not set687687+# CONFIG_SCSI_AIC79XX is not set688688+# CONFIG_SCSI_AIC94XX is not set689689+# CONFIG_SCSI_DPT_I2O is not set690690+# CONFIG_SCSI_ADVANSYS is not set691691+# CONFIG_SCSI_ARCMSR is not set692692+# CONFIG_MEGARAID_NEWGEN is not set693693+# CONFIG_MEGARAID_LEGACY is not set694694+# CONFIG_MEGARAID_SAS is not set695695+# CONFIG_SCSI_HPTIOP is not set696696+# CONFIG_SCSI_DMX3191D is not set697697+# CONFIG_SCSI_FUTURE_DOMAIN is not set698698+# CONFIG_SCSI_IPS is not set699699+# CONFIG_SCSI_INITIO is not set700700+# CONFIG_SCSI_INIA100 is not set701701+# CONFIG_SCSI_MVSAS is not set702702+# CONFIG_SCSI_STEX is not set703703+# CONFIG_SCSI_SYM53C8XX_2 is not set704704+# CONFIG_SCSI_IPR is not set705705+# CONFIG_SCSI_QLOGIC_1280 is not set706706+# CONFIG_SCSI_QLA_FC is not set707707+# CONFIG_SCSI_QLA_ISCSI is not set708708+# CONFIG_SCSI_LPFC is not set709709+# CONFIG_SCSI_DC395x is not set710710+# CONFIG_SCSI_DC390T is not set711711+# CONFIG_SCSI_NSP32 is not set712712+# CONFIG_SCSI_DEBUG is not set713713+# CONFIG_SCSI_SRP is not set714714+CONFIG_ATA=y715715+# CONFIG_ATA_NONSTANDARD is not set716716+# CONFIG_SATA_PMP is not set717717+# CONFIG_SATA_AHCI is not set718718+# CONFIG_SATA_SIL24 is not set719719+CONFIG_ATA_SFF=y720720+# CONFIG_SATA_SVW is not set721721+# CONFIG_ATA_PIIX is not set722722+# CONFIG_SATA_MV is not set723723+# CONFIG_SATA_NV is not set724724+# CONFIG_PDC_ADMA is not set725725+# CONFIG_SATA_QSTOR is not set726726+# CONFIG_SATA_PROMISE is not set727727+# CONFIG_SATA_SX4 is not set728728+# CONFIG_SATA_SIL is not set729729+# CONFIG_SATA_SIS is not set730730+# CONFIG_SATA_ULI is not set731731+# CONFIG_SATA_VIA is not set732732+# CONFIG_SATA_VITESSE is not set733733+# CONFIG_SATA_INIC162X is not set734734+# CONFIG_PATA_ALI is not set735735+# CONFIG_PATA_AMD is not set736736+# CONFIG_PATA_ARTOP is not set737737+# CONFIG_PATA_ATIIXP is not set738738+# CONFIG_PATA_CMD640_PCI is not set739739+# CONFIG_PATA_CMD64X is not set740740+# CONFIG_PATA_CS5520 is not set741741+# CONFIG_PATA_CS5530 is not set742742+# CONFIG_PATA_CYPRESS is not set743743+# CONFIG_PATA_EFAR is not set744744+# CONFIG_ATA_GENERIC is not set745745+# CONFIG_PATA_HPT366 is not set746746+# CONFIG_PATA_HPT37X is not set747747+# CONFIG_PATA_HPT3X2N is not set748748+# CONFIG_PATA_HPT3X3 is not set749749+# CONFIG_PATA_IT821X is not set750750+# CONFIG_PATA_IT8213 is not set751751+# CONFIG_PATA_JMICRON is not set752752+# CONFIG_PATA_TRIFLEX is not set753753+# CONFIG_PATA_MARVELL is not set754754+# CONFIG_PATA_MPIIX is not set755755+# CONFIG_PATA_OLDPIIX is not set756756+# CONFIG_PATA_NETCELL is not set757757+# CONFIG_PATA_NINJA32 is not set758758+# CONFIG_PATA_NS87410 is not set759759+# CONFIG_PATA_NS87415 is not set760760+# CONFIG_PATA_OPTI is not set761761+# CONFIG_PATA_OPTIDMA is not set762762+# CONFIG_PATA_PDC_OLD is not set763763+# CONFIG_PATA_RADISYS is not set764764+CONFIG_PATA_RB532=y765765+# CONFIG_PATA_RZ1000 is not set766766+# CONFIG_PATA_SC1200 is not set767767+# CONFIG_PATA_SERVERWORKS is not set768768+# CONFIG_PATA_PDC2027X is not set769769+# CONFIG_PATA_SIL680 is not set770770+# CONFIG_PATA_SIS is not set771771+# CONFIG_PATA_VIA is not set772772+# CONFIG_PATA_WINBOND is not set773773+# CONFIG_PATA_PLATFORM is not set774774+# CONFIG_MD is not set775775+# CONFIG_FUSION is not set776776+777777+#778778+# IEEE 1394 (FireWire) support779779+#780780+# CONFIG_FIREWIRE is not set781781+# CONFIG_IEEE1394 is not set782782+# CONFIG_I2O is not set783783+CONFIG_NETDEVICES=y784784+# CONFIG_NETDEVICES_MULTIQUEUE is not set785785+CONFIG_IFB=m786786+# CONFIG_DUMMY is not set787787+# CONFIG_BONDING is not set788788+# CONFIG_MACVLAN is not set789789+# CONFIG_EQUALIZER is not set790790+# CONFIG_TUN is not set791791+# CONFIG_VETH is not set792792+# CONFIG_ARCNET is not set793793+# CONFIG_PHYLIB is not set794794+CONFIG_NET_ETHERNET=y795795+CONFIG_MII=y796796+# CONFIG_AX88796 is not set797797+CONFIG_KORINA=y798798+# CONFIG_HAPPYMEAL is not set799799+# CONFIG_SUNGEM is not set800800+# CONFIG_CASSINI is not set801801+# CONFIG_NET_VENDOR_3COM is not set802802+# CONFIG_DM9000 is not set803803+# CONFIG_NET_TULIP is not set804804+# CONFIG_HP100 is not set805805+# CONFIG_IBM_NEW_EMAC_ZMII is not set806806+# CONFIG_IBM_NEW_EMAC_RGMII is not set807807+# CONFIG_IBM_NEW_EMAC_TAH is not set808808+# CONFIG_IBM_NEW_EMAC_EMAC4 is not set809809+CONFIG_NET_PCI=y810810+# CONFIG_PCNET32 is not set811811+# CONFIG_AMD8111_ETH is not set812812+# CONFIG_ADAPTEC_STARFIRE is not set813813+# CONFIG_B44 is not set814814+# CONFIG_FORCEDETH is not set815815+# CONFIG_TC35815 is not set816816+# CONFIG_EEPRO100 is not set817817+# CONFIG_E100 is not set818818+# CONFIG_FEALNX is not set819819+# CONFIG_NATSEMI is not set820820+# CONFIG_NE2K_PCI is not set821821+# CONFIG_8139CP is not set822822+# CONFIG_8139TOO is not set823823+# CONFIG_R6040 is not set824824+# CONFIG_SIS900 is not set825825+# CONFIG_EPIC100 is not set826826+# CONFIG_SUNDANCE is not set827827+# CONFIG_TLAN is not set828828+CONFIG_VIA_RHINE=y829829+# CONFIG_VIA_RHINE_MMIO is not set830830+CONFIG_VIA_RHINE_NAPI=y831831+# CONFIG_SC92031 is not set832832+# CONFIG_NETDEV_1000 is not set833833+# CONFIG_NETDEV_10000 is not set834834+# CONFIG_TR is not set835835+836836+#837837+# Wireless LAN838838+#839839+# CONFIG_WLAN_PRE80211 is not set840840+CONFIG_WLAN_80211=y841841+# CONFIG_IPW2100 is not set842842+# CONFIG_IPW2200 is not set843843+# CONFIG_LIBERTAS is not set844844+# CONFIG_HERMES is not set845845+CONFIG_ATMEL=m846846+# CONFIG_PCI_ATMEL is not set847847+# CONFIG_PRISM54 is not set848848+# CONFIG_IWLWIFI_LEDS is not set849849+# CONFIG_HOSTAP is not set850850+# CONFIG_WAN is not set851851+# CONFIG_FDDI is not set852852+# CONFIG_HIPPI is not set853853+CONFIG_PPP=m854854+CONFIG_PPP_MULTILINK=y855855+CONFIG_PPP_FILTER=y856856+CONFIG_PPP_ASYNC=m857857+# CONFIG_PPP_SYNC_TTY is not set858858+CONFIG_PPP_DEFLATE=m859859+CONFIG_PPP_BSDCOMP=m860860+# CONFIG_PPP_MPPE is not set861861+CONFIG_PPPOE=m862862+CONFIG_PPPOL2TP=m863863+# CONFIG_SLIP is not set864864+CONFIG_SLHC=m865865+# CONFIG_NET_FC is not set866866+# CONFIG_NETCONSOLE is not set867867+# CONFIG_NETPOLL is not set868868+# CONFIG_NET_POLL_CONTROLLER is not set869869+# CONFIG_ISDN is not set870870+# CONFIG_PHONE is not set871871+872872+#873873+# Input device support874874+#875875+CONFIG_INPUT=y876876+# CONFIG_INPUT_FF_MEMLESS is not set877877+# CONFIG_INPUT_POLLDEV is not set878878+879879+#880880+# Userland interfaces881881+#882882+# CONFIG_INPUT_MOUSEDEV is not set883883+# CONFIG_INPUT_JOYDEV is not set884884+# CONFIG_INPUT_EVDEV is not set885885+# CONFIG_INPUT_EVBUG is not set886886+887887+#888888+# Input Device Drivers889889+#890890+CONFIG_INPUT_KEYBOARD=y891891+# CONFIG_KEYBOARD_ATKBD is not set892892+# CONFIG_KEYBOARD_SUNKBD is not set893893+# CONFIG_KEYBOARD_LKKBD is not set894894+# CONFIG_KEYBOARD_XTKBD is not set895895+# CONFIG_KEYBOARD_NEWTON is not set896896+# CONFIG_KEYBOARD_STOWAWAY is not set897897+# CONFIG_KEYBOARD_GPIO is not set898898+# CONFIG_INPUT_MOUSE is not set899899+# CONFIG_INPUT_JOYSTICK is not set900900+# CONFIG_INPUT_TABLET is not set901901+# CONFIG_INPUT_TOUCHSCREEN is not set902902+# CONFIG_INPUT_MISC is not set903903+904904+#905905+# Hardware I/O ports906906+#907907+# CONFIG_SERIO is not set908908+# CONFIG_GAMEPORT is not set909909+910910+#911911+# Character devices912912+#913913+# CONFIG_VT is not set914914+# CONFIG_SERIAL_NONSTANDARD is not set915915+# CONFIG_NOZOMI is not set916916+917917+#918918+# Serial drivers919919+#920920+CONFIG_SERIAL_8250=y921921+CONFIG_SERIAL_8250_CONSOLE=y922922+# CONFIG_SERIAL_8250_PCI is not set923923+CONFIG_SERIAL_8250_NR_UARTS=2924924+CONFIG_SERIAL_8250_RUNTIME_UARTS=2925925+# CONFIG_SERIAL_8250_EXTENDED is not set926926+927927+#928928+# Non-8250 serial port support929929+#930930+CONFIG_SERIAL_CORE=y931931+CONFIG_SERIAL_CORE_CONSOLE=y932932+# CONFIG_SERIAL_JSM is not set933933+CONFIG_UNIX98_PTYS=y934934+# CONFIG_LEGACY_PTYS is not set935935+# CONFIG_IPMI_HANDLER is not set936936+CONFIG_HW_RANDOM=y937937+# CONFIG_RTC is not set938938+# CONFIG_R3964 is not set939939+# CONFIG_APPLICOM is not set940940+# CONFIG_RAW_DRIVER is not set941941+# CONFIG_TCG_TPM is not set942942+CONFIG_DEVPORT=y943943+# CONFIG_I2C is not set944944+945945+#946946+# SPI support947947+#948948+# CONFIG_SPI is not set949949+# CONFIG_SPI_MASTER is not set950950+# CONFIG_W1 is not set951951+# CONFIG_POWER_SUPPLY is not set952952+# CONFIG_HWMON is not set953953+# CONFIG_THERMAL is not set954954+CONFIG_WATCHDOG=y955955+# CONFIG_WATCHDOG_NOWAYOUT is not set956956+957957+#958958+# Watchdog Device Drivers959959+#960960+# CONFIG_SOFT_WATCHDOG is not set961961+962962+#963963+# PCI-based Watchdog Cards964964+#965965+# CONFIG_PCIPCWATCHDOG is not set966966+# CONFIG_WDTPCI is not set967967+968968+#969969+# Sonics Silicon Backplane970970+#971971+CONFIG_SSB_POSSIBLE=y972972+# CONFIG_SSB is not set973973+974974+#975975+# Multifunction device drivers976976+#977977+# CONFIG_MFD_SM501 is not set978978+# CONFIG_HTC_PASIC3 is not set979979+980980+#981981+# Multimedia devices982982+#983983+CONFIG_VIDEO_DEV=m984984+CONFIG_VIDEO_V4L2_COMMON=m985985+CONFIG_VIDEO_ALLOW_V4L1=y986986+CONFIG_VIDEO_V4L1_COMPAT=y987987+CONFIG_VIDEO_V4L2=m988988+CONFIG_VIDEO_V4L1=m989989+CONFIG_VIDEO_CAPTURE_DRIVERS=y990990+# CONFIG_VIDEO_ADV_DEBUG is not set991991+# CONFIG_VIDEO_HELPER_CHIPS_AUTO is not set992992+993993+#994994+# Encoders/decoders and other helper chips995995+#996996+997997+#998998+# Audio decoders999999+#10001000+10011001+#10021002+# Video decoders10031003+#10041004+10051005+#10061006+# Video and audio decoders10071007+#10081008+10091009+#10101010+# MPEG video encoders10111011+#10121012+# CONFIG_VIDEO_CX2341X is not set10131013+10141014+#10151015+# Video encoders10161016+#10171017+10181018+#10191019+# Video improvement chips10201020+#10211021+# CONFIG_VIDEO_VIVI is not set10221022+# CONFIG_VIDEO_CPIA is not set10231023+# CONFIG_VIDEO_STRADIS is not set10241024+# CONFIG_SOC_CAMERA is not set10251025+# CONFIG_RADIO_ADAPTERS is not set10261026+# CONFIG_DVB_CORE is not set10271027+# CONFIG_DAB is not set10281028+10291029+#10301030+# Graphics support10311031+#10321032+# CONFIG_DRM is not set10331033+# CONFIG_VGASTATE is not set10341034+# CONFIG_VIDEO_OUTPUT_CONTROL is not set10351035+# CONFIG_FB is not set10361036+# CONFIG_BACKLIGHT_LCD_SUPPORT is not set10371037+10381038+#10391039+# Display device support10401040+#10411041+# CONFIG_DISPLAY_SUPPORT is not set10421042+10431043+#10441044+# Sound10451045+#10461046+# CONFIG_SOUND is not set10471047+CONFIG_HID_SUPPORT=y10481048+# CONFIG_HID is not set10491049+CONFIG_USB_SUPPORT=y10501050+CONFIG_USB_ARCH_HAS_HCD=y10511051+CONFIG_USB_ARCH_HAS_OHCI=y10521052+CONFIG_USB_ARCH_HAS_EHCI=y10531053+# CONFIG_USB is not set10541054+# CONFIG_USB_OTG_WHITELIST is not set10551055+# CONFIG_USB_OTG_BLACKLIST_HUB is not set10561056+10571057+#10581058+# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'10591059+#10601060+# CONFIG_USB_GADGET is not set10611061+# CONFIG_MMC is not set10621062+# CONFIG_MEMSTICK is not set10631063+CONFIG_NEW_LEDS=y10641064+CONFIG_LEDS_CLASS=y10651065+10661066+#10671067+# LED drivers10681068+#10691069+# CONFIG_LEDS_GPIO is not set10701070+10711071+#10721072+# LED Triggers10731073+#10741074+CONFIG_LEDS_TRIGGERS=y10751075+CONFIG_LEDS_TRIGGER_TIMER=y10761076+CONFIG_LEDS_TRIGGER_HEARTBEAT=y10771077+# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set10781078+# CONFIG_INFINIBAND is not set10791079+CONFIG_RTC_LIB=y10801080+# CONFIG_RTC_CLASS is not set10811081+# CONFIG_UIO is not set10821082+10831083+#10841084+# File systems10851085+#10861086+CONFIG_EXT2_FS=y10871087+# CONFIG_EXT2_FS_XATTR is not set10881088+# CONFIG_EXT2_FS_XIP is not set10891089+# CONFIG_EXT3_FS is not set10901090+# CONFIG_EXT4DEV_FS is not set10911091+# CONFIG_REISERFS_FS is not set10921092+# CONFIG_JFS_FS is not set10931093+# CONFIG_FS_POSIX_ACL is not set10941094+# CONFIG_XFS_FS is not set10951095+# CONFIG_OCFS2_FS is not set10961096+# CONFIG_DNOTIFY is not set10971097+# CONFIG_INOTIFY is not set10981098+# CONFIG_QUOTA is not set10991099+# CONFIG_AUTOFS_FS is not set11001100+# CONFIG_AUTOFS4_FS is not set11011101+# CONFIG_FUSE_FS is not set11021102+11031103+#11041104+# CD-ROM/DVD Filesystems11051105+#11061106+# CONFIG_ISO9660_FS is not set11071107+# CONFIG_UDF_FS is not set11081108+11091109+#11101110+# DOS/FAT/NT Filesystems11111111+#11121112+# CONFIG_MSDOS_FS is not set11131113+# CONFIG_VFAT_FS is not set11141114+# CONFIG_NTFS_FS is not set11151115+11161116+#11171117+# Pseudo filesystems11181118+#11191119+CONFIG_PROC_FS=y11201120+CONFIG_PROC_KCORE=y11211121+CONFIG_PROC_SYSCTL=y11221122+CONFIG_SYSFS=y11231123+CONFIG_TMPFS=y11241124+# CONFIG_TMPFS_POSIX_ACL is not set11251125+# CONFIG_HUGETLB_PAGE is not set11261126+CONFIG_CONFIGFS_FS=y11271127+11281128+#11291129+# Miscellaneous filesystems11301130+#11311131+# CONFIG_ADFS_FS is not set11321132+# CONFIG_AFFS_FS is not set11331133+# CONFIG_HFS_FS is not set11341134+# CONFIG_HFSPLUS_FS is not set11351135+# CONFIG_BEFS_FS is not set11361136+# CONFIG_BFS_FS is not set11371137+# CONFIG_EFS_FS is not set11381138+CONFIG_JFFS2_FS=y11391139+CONFIG_JFFS2_FS_DEBUG=011401140+CONFIG_JFFS2_FS_WRITEBUFFER=y11411141+# CONFIG_JFFS2_FS_WBUF_VERIFY is not set11421142+CONFIG_JFFS2_SUMMARY=y11431143+# CONFIG_JFFS2_FS_XATTR is not set11441144+CONFIG_JFFS2_COMPRESSION_OPTIONS=y11451145+CONFIG_JFFS2_ZLIB=y11461146+# CONFIG_JFFS2_LZO is not set11471147+CONFIG_JFFS2_RTIME=y11481148+# CONFIG_JFFS2_RUBIN is not set11491149+# CONFIG_JFFS2_CMODE_NONE is not set11501150+CONFIG_JFFS2_CMODE_PRIORITY=y11511151+# CONFIG_JFFS2_CMODE_SIZE is not set11521152+# CONFIG_JFFS2_CMODE_FAVOURLZO is not set11531153+# CONFIG_CRAMFS is not set11541154+# CONFIG_VXFS_FS is not set11551155+# CONFIG_MINIX_FS is not set11561156+# CONFIG_HPFS_FS is not set11571157+# CONFIG_QNX4FS_FS is not set11581158+# CONFIG_ROMFS_FS is not set11591159+# CONFIG_SYSV_FS is not set11601160+# CONFIG_UFS_FS is not set11611161+CONFIG_NETWORK_FILESYSTEMS=y11621162+# CONFIG_NFS_FS is not set11631163+# CONFIG_NFSD is not set11641164+# CONFIG_SMB_FS is not set11651165+# CONFIG_CIFS is not set11661166+# CONFIG_NCP_FS is not set11671167+# CONFIG_CODA_FS is not set11681168+# CONFIG_AFS_FS is not set11691169+11701170+#11711171+# Partition Types11721172+#11731173+CONFIG_PARTITION_ADVANCED=y11741174+# CONFIG_ACORN_PARTITION is not set11751175+# CONFIG_OSF_PARTITION is not set11761176+# CONFIG_AMIGA_PARTITION is not set11771177+# CONFIG_ATARI_PARTITION is not set11781178+CONFIG_MAC_PARTITION=y11791179+CONFIG_MSDOS_PARTITION=y11801180+CONFIG_BSD_DISKLABEL=y11811181+# CONFIG_MINIX_SUBPARTITION is not set11821182+# CONFIG_SOLARIS_X86_PARTITION is not set11831183+# CONFIG_UNIXWARE_DISKLABEL is not set11841184+# CONFIG_LDM_PARTITION is not set11851185+# CONFIG_SGI_PARTITION is not set11861186+# CONFIG_ULTRIX_PARTITION is not set11871187+# CONFIG_SUN_PARTITION is not set11881188+# CONFIG_KARMA_PARTITION is not set11891189+# CONFIG_EFI_PARTITION is not set11901190+# CONFIG_SYSV68_PARTITION is not set11911191+# CONFIG_NLS is not set11921192+# CONFIG_DLM is not set11931193+11941194+#11951195+# Kernel hacking11961196+#11971197+CONFIG_TRACE_IRQFLAGS_SUPPORT=y11981198+# CONFIG_PRINTK_TIME is not set11991199+CONFIG_ENABLE_WARN_DEPRECATED=y12001200+# CONFIG_ENABLE_MUST_CHECK is not set12011201+CONFIG_FRAME_WARN=102412021202+# CONFIG_MAGIC_SYSRQ is not set12031203+# CONFIG_UNUSED_SYMBOLS is not set12041204+# CONFIG_DEBUG_FS is not set12051205+# CONFIG_HEADERS_CHECK is not set12061206+# CONFIG_DEBUG_KERNEL is not set12071207+# CONFIG_SAMPLES is not set12081208+CONFIG_CMDLINE=""12091209+12101210+#12111211+# Security options12121212+#12131213+# CONFIG_KEYS is not set12141214+# CONFIG_SECURITY is not set12151215+# CONFIG_SECURITY_FILE_CAPABILITIES is not set12161216+CONFIG_CRYPTO=y12171217+12181218+#12191219+# Crypto core or helper12201220+#12211221+CONFIG_CRYPTO_ALGAPI=m12221222+CONFIG_CRYPTO_AEAD=m12231223+CONFIG_CRYPTO_BLKCIPHER=m12241224+# CONFIG_CRYPTO_MANAGER is not set12251225+# CONFIG_CRYPTO_GF128MUL is not set12261226+# CONFIG_CRYPTO_NULL is not set12271227+# CONFIG_CRYPTO_CRYPTD is not set12281228+# CONFIG_CRYPTO_AUTHENC is not set12291229+CONFIG_CRYPTO_TEST=m12301230+12311231+#12321232+# Authenticated Encryption with Associated Data12331233+#12341234+# CONFIG_CRYPTO_CCM is not set12351235+# CONFIG_CRYPTO_GCM is not set12361236+# CONFIG_CRYPTO_SEQIV is not set12371237+12381238+#12391239+# Block modes12401240+#12411241+# CONFIG_CRYPTO_CBC is not set12421242+# CONFIG_CRYPTO_CTR is not set12431243+# CONFIG_CRYPTO_CTS is not set12441244+# CONFIG_CRYPTO_ECB is not set12451245+# CONFIG_CRYPTO_LRW is not set12461246+# CONFIG_CRYPTO_PCBC is not set12471247+# CONFIG_CRYPTO_XTS is not set12481248+12491249+#12501250+# Hash modes12511251+#12521252+# CONFIG_CRYPTO_HMAC is not set12531253+# CONFIG_CRYPTO_XCBC is not set12541254+12551255+#12561256+# Digest12571257+#12581258+# CONFIG_CRYPTO_CRC32C is not set12591259+# CONFIG_CRYPTO_MD4 is not set12601260+# CONFIG_CRYPTO_MD5 is not set12611261+# CONFIG_CRYPTO_MICHAEL_MIC is not set12621262+# CONFIG_CRYPTO_SHA1 is not set12631263+# CONFIG_CRYPTO_SHA256 is not set12641264+# CONFIG_CRYPTO_SHA512 is not set12651265+# CONFIG_CRYPTO_TGR192 is not set12661266+# CONFIG_CRYPTO_WP512 is not set12671267+12681268+#12691269+# Ciphers12701270+#12711271+# CONFIG_CRYPTO_AES is not set12721272+# CONFIG_CRYPTO_ANUBIS is not set12731273+# CONFIG_CRYPTO_ARC4 is not set12741274+# CONFIG_CRYPTO_BLOWFISH is not set12751275+# CONFIG_CRYPTO_CAMELLIA is not set12761276+# CONFIG_CRYPTO_CAST5 is not set12771277+# CONFIG_CRYPTO_CAST6 is not set12781278+# CONFIG_CRYPTO_DES is not set12791279+# CONFIG_CRYPTO_FCRYPT is not set12801280+# CONFIG_CRYPTO_KHAZAD is not set12811281+# CONFIG_CRYPTO_SALSA20 is not set12821282+# CONFIG_CRYPTO_SEED is not set12831283+# CONFIG_CRYPTO_SERPENT is not set12841284+# CONFIG_CRYPTO_TEA is not set12851285+# CONFIG_CRYPTO_TWOFISH is not set12861286+12871287+#12881288+# Compression12891289+#12901290+# CONFIG_CRYPTO_DEFLATE is not set12911291+# CONFIG_CRYPTO_LZO is not set12921292+# CONFIG_CRYPTO_HW is not set12931293+12941294+#12951295+# Library routines12961296+#12971297+CONFIG_BITREVERSE=y12981298+# CONFIG_GENERIC_FIND_FIRST_BIT is not set12991299+CONFIG_CRC_CCITT=m13001300+CONFIG_CRC16=m13011301+# CONFIG_CRC_ITU_T is not set13021302+CONFIG_CRC32=y13031303+# CONFIG_CRC7 is not set13041304+CONFIG_LIBCRC32C=m13051305+CONFIG_ZLIB_INFLATE=y13061306+CONFIG_ZLIB_DEFLATE=y13071307+CONFIG_TEXTSEARCH=y13081308+CONFIG_TEXTSEARCH_KMP=m13091309+CONFIG_TEXTSEARCH_BM=m13101310+CONFIG_TEXTSEARCH_FSM=m13111311+CONFIG_PLIST=y13121312+CONFIG_HAS_IOMEM=y13131313+CONFIG_HAS_IOPORT=y13141314+CONFIG_HAS_DMA=y
···11+/*22+ * Copyright 2001 MontaVista Software Inc.33+ * Author: MontaVista Software, Inc.44+ * stevel@mvista.com or source@mvista.com55+ *66+ * This program is free software; you can redistribute it and/or modify it77+ * under the terms of the GNU General Public License as published by the88+ * Free Software Foundation; either version 2 of the License, or (at your99+ * option) any later version.1010+ *1111+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1212+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1313+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1414+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1515+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1616+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1717+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON1818+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT1919+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2020+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2121+ *2222+ * You should have received a copy of the GNU General Public License along2323+ * with this program; if not, write to the Free Software Foundation, Inc.,2424+ * 675 Mass Ave, Cambridge, MA 02139, USA.2525+ */2626+2727+#include <linux/types.h>2828+#include <linux/pci.h>2929+#include <linux/kernel.h>3030+#include <linux/init.h>3131+3232+#include <asm/mach-rc32434/rc32434.h>3333+3434+static int __devinitdata irq_map[2][12] = {3535+ {0, 0, 2, 3, 2, 3, 0, 0, 0, 0, 0, 1},3636+ {0, 0, 1, 3, 0, 2, 1, 3, 0, 2, 1, 3}3737+};3838+3939+int __devinit pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)4040+{4141+ int irq = 0;4242+4343+ if (dev->bus->number < 2 && PCI_SLOT(dev->devfn) < 12)4444+ irq = irq_map[dev->bus->number][PCI_SLOT(dev->devfn)];4545+4646+ return irq + GROUP4_IRQ_BASE + 4;4747+}4848+4949+static void rc32434_pci_early_fixup(struct pci_dev *dev)5050+{5151+ if (PCI_SLOT(dev->devfn) == 6 && dev->bus->number == 0) {5252+ /* disable prefetched memory range */5353+ pci_write_config_word(dev, PCI_PREF_MEMORY_LIMIT, 0);5454+ pci_write_config_word(dev, PCI_PREF_MEMORY_BASE, 0x10);5555+5656+ pci_write_config_byte(dev, PCI_CACHE_LINE_SIZE, 4);5757+ }5858+}5959+6060+/*6161+ * The fixup applies to both the IDT and VIA devices present on the board6262+ */6363+DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI_ANY_ID, rc32434_pci_early_fixup);6464+6565+/* Do platform specific device initialization at pci_enable_device() time */6666+int pcibios_plat_dev_init(struct pci_dev *dev)6767+{6868+ return 0;6969+}
+207
arch/mips/pci/ops-rc32434.c
···11+/*22+ * BRIEF MODULE DESCRIPTION33+ * pci_ops for IDT EB434 board44+ *55+ * Copyright 2004 IDT Inc. (rischelp@idt.com)66+ * Copyright 2006 Felix Fietkau <nbd@openwrt.org>77+ *88+ * This program is free software; you can redistribute it and/or modify it99+ * under the terms of the GNU General Public License as published by the1010+ * Free Software Foundation; either version 2 of the License, or (at your1111+ * option) any later version.1212+ *1313+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1414+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1515+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1616+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1717+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1818+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1919+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON2020+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT2121+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2222+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2323+ *2424+ * You should have received a copy of the GNU General Public License along2525+ * with this program; if not, write to the Free Software Foundation, Inc.,2626+ * 675 Mass Ave, Cambridge, MA 02139, USA.2727+ */2828+#include <linux/delay.h>2929+#include <linux/init.h>3030+#include <linux/io.h>3131+#include <linux/pci.h>3232+#include <linux/types.h>3333+3434+#include <asm/cpu.h>3535+#include <asm/mach-rc32434/rc32434.h>3636+#include <asm/mach-rc32434/pci.h>3737+3838+#define PCI_ACCESS_READ 03939+#define PCI_ACCESS_WRITE 14040+4141+4242+#define PCI_CFG_SET(bus, slot, func, off) \4343+ (rc32434_pci->pcicfga = (0x80000000 | \4444+ ((bus) << 16) | ((slot)<<11) | \4545+ ((func)<<8) | (off)))4646+4747+static inline int config_access(unsigned char access_type,4848+ struct pci_bus *bus, unsigned int devfn,4949+ unsigned char where, u32 *data)5050+{5151+ unsigned int slot = PCI_SLOT(devfn);5252+ u8 func = PCI_FUNC(devfn);5353+5454+ /* Setup address */5555+ PCI_CFG_SET(bus->number, slot, func, where);5656+ rc32434_sync();5757+5858+ if (access_type == PCI_ACCESS_WRITE)5959+ rc32434_pci->pcicfgd = *data;6060+ else6161+ *data = rc32434_pci->pcicfgd;6262+6363+ rc32434_sync();6464+6565+ return 0;6666+}6767+6868+6969+/*7070+ * We can't address 8 and 16 bit words directly. Instead we have to7171+ * read/write a 32bit word and mask/modify the data we actually want.7272+ */7373+static int read_config_byte(struct pci_bus *bus, unsigned int devfn,7474+ int where, u8 *val)7575+{7676+ u32 data;7777+ int ret;7878+7979+ ret = config_access(PCI_ACCESS_READ, bus, devfn, where, &data);8080+ *val = (data >> ((where & 3) << 3)) & 0xff;8181+ return ret;8282+}8383+8484+static int read_config_word(struct pci_bus *bus, unsigned int devfn,8585+ int where, u16 *val)8686+{8787+ u32 data;8888+ int ret;8989+9090+ ret = config_access(PCI_ACCESS_READ, bus, devfn, where, &data);9191+ *val = (data >> ((where & 3) << 3)) & 0xffff;9292+ return ret;9393+}9494+9595+static int read_config_dword(struct pci_bus *bus, unsigned int devfn,9696+ int where, u32 *val)9797+{9898+ int ret;9999+ int delay = 1;100100+101101+ /*102102+ * Don't scan too far, else there will be errors with plugged in103103+ * daughterboard (rb564).104104+ */105105+ if (bus->number == 0 && PCI_SLOT(devfn) > 21)106106+ return 0;107107+108108+retry:109109+ ret = config_access(PCI_ACCESS_READ, bus, devfn, where, val);110110+111111+ /*112112+ * Certain devices react delayed at device scan time, this113113+ * gives them time to settle114114+ */115115+ if (where == PCI_VENDOR_ID) {116116+ if (ret == 0xffffffff || ret == 0x00000000 ||117117+ ret == 0x0000ffff || ret == 0xffff0000) {118118+ if (delay > 4)119119+ return 0;120120+ delay *= 2;121121+ msleep(delay);122122+ goto retry;123123+ }124124+ }125125+126126+ return ret;127127+}128128+129129+static int130130+write_config_byte(struct pci_bus *bus, unsigned int devfn, int where,131131+ u8 val)132132+{133133+ u32 data = 0;134134+135135+ if (config_access(PCI_ACCESS_READ, bus, devfn, where, &data))136136+ return -1;137137+138138+ data = (data & ~(0xff << ((where & 3) << 3))) |139139+ (val << ((where & 3) << 3));140140+141141+ if (config_access(PCI_ACCESS_WRITE, bus, devfn, where, &data))142142+ return -1;143143+144144+ return PCIBIOS_SUCCESSFUL;145145+}146146+147147+148148+static int149149+write_config_word(struct pci_bus *bus, unsigned int devfn, int where,150150+ u16 val)151151+{152152+ u32 data = 0;153153+154154+ if (config_access(PCI_ACCESS_READ, bus, devfn, where, &data))155155+ return -1;156156+157157+ data = (data & ~(0xffff << ((where & 3) << 3))) |158158+ (val << ((where & 3) << 3));159159+160160+ if (config_access(PCI_ACCESS_WRITE, bus, devfn, where, &data))161161+ return -1;162162+163163+164164+ return PCIBIOS_SUCCESSFUL;165165+}166166+167167+168168+static int169169+write_config_dword(struct pci_bus *bus, unsigned int devfn, int where,170170+ u32 val)171171+{172172+ if (config_access(PCI_ACCESS_WRITE, bus, devfn, where, &val))173173+ return -1;174174+175175+ return PCIBIOS_SUCCESSFUL;176176+}177177+178178+static int pci_config_read(struct pci_bus *bus, unsigned int devfn,179179+ int where, int size, u32 *val)180180+{181181+ switch (size) {182182+ case 1:183183+ return read_config_byte(bus, devfn, where, (u8 *) val);184184+ case 2:185185+ return read_config_word(bus, devfn, where, (u16 *) val);186186+ default:187187+ return read_config_dword(bus, devfn, where, val);188188+ }189189+}190190+191191+static int pci_config_write(struct pci_bus *bus, unsigned int devfn,192192+ int where, int size, u32 val)193193+{194194+ switch (size) {195195+ case 1:196196+ return write_config_byte(bus, devfn, where, (u8) val);197197+ case 2:198198+ return write_config_word(bus, devfn, where, (u16) val);199199+ default:200200+ return write_config_dword(bus, devfn, where, val);201201+ }202202+}203203+204204+struct pci_ops rc32434_pci_ops = {205205+ .read = pci_config_read,206206+ .write = pci_config_write,207207+};
+221
arch/mips/pci/pci-rc32434.c
···11+/*22+ * BRIEF MODULE DESCRIPTION33+ * PCI initialization for IDT EB434 board44+ *55+ * Copyright 2004 IDT Inc. (rischelp@idt.com)66+ *77+ * This program is free software; you can redistribute it and/or modify it88+ * under the terms of the GNU General Public License as published by the99+ * Free Software Foundation; either version 2 of the License, or (at your1010+ * option) any later version.1111+ *1212+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1313+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1414+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1515+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1616+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1717+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1818+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON1919+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT2020+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2121+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2222+ *2323+ * You should have received a copy of the GNU General Public License along2424+ * with this program; if not, write to the Free Software Foundation, Inc.,2525+ * 675 Mass Ave, Cambridge, MA 02139, USA.2626+ */2727+2828+#include <linux/types.h>2929+#include <linux/pci.h>3030+#include <linux/kernel.h>3131+#include <linux/init.h>3232+3333+#include <asm/mach-rc32434/rc32434.h>3434+#include <asm/mach-rc32434/pci.h>3535+3636+#define PCI_ACCESS_READ 03737+#define PCI_ACCESS_WRITE 13838+3939+/* define an unsigned array for the PCI registers */4040+static unsigned int korina_cnfg_regs[25] = {4141+ KORINA_CNFG1, KORINA_CNFG2, KORINA_CNFG3, KORINA_CNFG4,4242+ KORINA_CNFG5, KORINA_CNFG6, KORINA_CNFG7, KORINA_CNFG8,4343+ KORINA_CNFG9, KORINA_CNFG10, KORINA_CNFG11, KORINA_CNFG12,4444+ KORINA_CNFG13, KORINA_CNFG14, KORINA_CNFG15, KORINA_CNFG16,4545+ KORINA_CNFG17, KORINA_CNFG18, KORINA_CNFG19, KORINA_CNFG20,4646+ KORINA_CNFG21, KORINA_CNFG22, KORINA_CNFG23, KORINA_CNFG244747+};4848+static struct resource rc32434_res_pci_mem1;4949+static struct resource rc32434_res_pci_mem2;5050+5151+static struct resource rc32434_res_pci_mem1 = {5252+ .name = "PCI MEM1",5353+ .start = 0x50000000,5454+ .end = 0x5FFFFFFF,5555+ .flags = IORESOURCE_MEM,5656+ .parent = &rc32434_res_pci_mem1,5757+ .sibling = NULL,5858+ .child = &rc32434_res_pci_mem25959+};6060+6161+static struct resource rc32434_res_pci_mem2 = {6262+ .name = "PCI Mem2",6363+ .start = 0x60000000,6464+ .end = 0x6FFFFFFF,6565+ .flags = IORESOURCE_MEM,6666+ .parent = &rc32434_res_pci_mem1,6767+ .sibling = NULL,6868+ .child = NULL6969+};7070+7171+static struct resource rc32434_res_pci_io1 = {7272+ .name = "PCI I/O1",7373+ .start = 0x18800000,7474+ .end = 0x188FFFFF,7575+ .flags = IORESOURCE_IO,7676+};7777+7878+extern struct pci_ops rc32434_pci_ops;7979+8080+#define PCI_MEM1_START PCI_ADDR_START8181+#define PCI_MEM1_END (PCI_ADDR_START + CPUTOPCI_MEM_WIN - 1)8282+#define PCI_MEM2_START (PCI_ADDR_START + CPUTOPCI_MEM_WIN)8383+#define PCI_MEM2_END (PCI_ADDR_START + (2 * CPUTOPCI_MEM_WIN) - 1)8484+#define PCI_IO1_START (PCI_ADDR_START + (2 * CPUTOPCI_MEM_WIN))8585+#define PCI_IO1_END \8686+ (PCI_ADDR_START + (2 * CPUTOPCI_MEM_WIN) + CPUTOPCI_IO_WIN - 1)8787+#define PCI_IO2_START \8888+ (PCI_ADDR_START + (2 * CPUTOPCI_MEM_WIN) + CPUTOPCI_IO_WIN)8989+#define PCI_IO2_END \9090+ (PCI_ADDR_START + (2 * CPUTOPCI_MEM_WIN) + (2 * CPUTOPCI_IO_WIN) - 1)9191+9292+struct pci_controller rc32434_controller2;9393+9494+struct pci_controller rc32434_controller = {9595+ .pci_ops = &rc32434_pci_ops,9696+ .mem_resource = &rc32434_res_pci_mem1,9797+ .io_resource = &rc32434_res_pci_io1,9898+ .mem_offset = 0,9999+ .io_offset = 0,100100+101101+};102102+103103+#ifdef __MIPSEB__104104+#define PCI_ENDIAN_FLAG PCILBAC_sb_m105105+#else106106+#define PCI_ENDIAN_FLAG 0107107+#endif108108+109109+static int __init rc32434_pcibridge_init(void)110110+{111111+ unsigned int pcicvalue, pcicdata = 0;112112+ unsigned int dummyread, pcicntlval;113113+ int loopCount;114114+ unsigned int pci_config_addr;115115+116116+ pcicvalue = rc32434_pci->pcic;117117+ pcicvalue = (pcicvalue >> PCIM_SHFT) & PCIM_BIT_LEN;118118+ if (!((pcicvalue == PCIM_H_EA) ||119119+ (pcicvalue == PCIM_H_IA_FIX) ||120120+ (pcicvalue == PCIM_H_IA_RR))) {121121+ pr_err(KERN_ERR "PCI init error!!!\n");122122+ /* Not in Host Mode, return ERROR */123123+ return -1;124124+ }125125+ /* Enables the Idle Grant mode, Arbiter Parking */126126+ pcicdata |= (PCI_CTL_IGM | PCI_CTL_EAP | PCI_CTL_EN);127127+ rc32434_pci->pcic = pcicdata; /* Enable the PCI bus Interface */128128+ /* Zero out the PCI status & PCI Status Mask */129129+ for (;;) {130130+ pcicdata = rc32434_pci->pcis;131131+ if (!(pcicdata & PCI_STAT_RIP))132132+ break;133133+ }134134+135135+ rc32434_pci->pcis = 0;136136+ rc32434_pci->pcism = 0xFFFFFFFF;137137+ /* Zero out the PCI decoupled registers */138138+ rc32434_pci->pcidac = 0; /*139139+ * disable PCI decoupled accesses at140140+ * initialization141141+ */142142+ rc32434_pci->pcidas = 0; /* clear the status */143143+ rc32434_pci->pcidasm = 0x0000007F; /* Mask all the interrupts */144144+ /* Mask PCI Messaging Interrupts */145145+ rc32434_pci_msg->pciiic = 0;146146+ rc32434_pci_msg->pciiim = 0xFFFFFFFF;147147+ rc32434_pci_msg->pciioic = 0;148148+ rc32434_pci_msg->pciioim = 0;149149+150150+151151+ /* Setup PCILB0 as Memory Window */152152+ rc32434_pci->pcilba[0].address = (unsigned int) (PCI_ADDR_START);153153+154154+ /* setup the PCI map address as same as the local address */155155+156156+ rc32434_pci->pcilba[0].mapping = (unsigned int) (PCI_ADDR_START);157157+158158+159159+ /* Setup PCILBA1 as MEM */160160+ rc32434_pci->pcilba[0].control =161161+ (((SIZE_256MB & 0x1f) << PCI_LBAC_SIZE_BIT) | PCI_ENDIAN_FLAG);162162+ dummyread = rc32434_pci->pcilba[0].control; /* flush the CPU write Buffers */163163+ rc32434_pci->pcilba[1].address = 0x60000000;164164+ rc32434_pci->pcilba[1].mapping = 0x60000000;165165+166166+ /* setup PCILBA2 as IO Window */167167+ rc32434_pci->pcilba[1].control =168168+ (((SIZE_256MB & 0x1f) << PCI_LBAC_SIZE_BIT) | PCI_ENDIAN_FLAG);169169+ dummyread = rc32434_pci->pcilba[1].control; /* flush the CPU write Buffers */170170+ rc32434_pci->pcilba[2].address = 0x18C00000;171171+ rc32434_pci->pcilba[2].mapping = 0x18FFFFFF;172172+173173+ /* setup PCILBA2 as IO Window */174174+ rc32434_pci->pcilba[2].control =175175+ (((SIZE_4MB & 0x1f) << PCI_LBAC_SIZE_BIT) | PCI_ENDIAN_FLAG);176176+ dummyread = rc32434_pci->pcilba[2].control; /* flush the CPU write Buffers */177177+178178+ /* Setup PCILBA3 as IO Window */179179+ rc32434_pci->pcilba[3].address = 0x18800000;180180+ rc32434_pci->pcilba[3].mapping = 0x18800000;181181+ rc32434_pci->pcilba[3].control =182182+ ((((SIZE_1MB & 0x1ff) << PCI_LBAC_SIZE_BIT) | PCI_LBAC_MSI) |183183+ PCI_ENDIAN_FLAG);184184+ dummyread = rc32434_pci->pcilba[3].control; /* flush the CPU write Buffers */185185+186186+ pci_config_addr = (unsigned int) (0x80000004);187187+ for (loopCount = 0; loopCount < 24; loopCount++) {188188+ rc32434_pci->pcicfga = pci_config_addr;189189+ dummyread = rc32434_pci->pcicfga;190190+ rc32434_pci->pcicfgd = korina_cnfg_regs[loopCount];191191+ dummyread = rc32434_pci->pcicfgd;192192+ pci_config_addr += 4;193193+ }194194+ rc32434_pci->pcitc =195195+ (unsigned int) ((PCITC_RTIMER_VAL & 0xff) << PCI_TC_RTIMER_BIT) |196196+ ((PCITC_DTIMER_VAL & 0xff) << PCI_TC_DTIMER_BIT);197197+198198+ pcicntlval = rc32434_pci->pcic;199199+ pcicntlval &= ~PCI_CTL_TNR;200200+ rc32434_pci->pcic = pcicntlval;201201+ pcicntlval = rc32434_pci->pcic;202202+203203+ return 0;204204+}205205+206206+static int __init rc32434_pci_init(void)207207+{208208+ pr_info("PCI: Initializing PCI\n");209209+210210+ ioport_resource.start = rc32434_res_pci_io1.start;211211+ ioport_resource.end = rc32434_res_pci_io1.end;212212+213213+ rc32434_pcibridge_init();214214+215215+ register_pci_controller(&rc32434_controller);216216+ rc32434_sync();217217+218218+ return 0;219219+}220220+221221+arch_initcall(rc32434_pci_init);
+7
arch/mips/rb532/Makefile
···11+#22+# Makefile for the RB532 board specific parts of the kernel33+#44+55+obj-y += irq.o time.o setup.o serial.o prom.o gpio.o devices.o66+77+EXTRA_CFLAGS += -Werror
···11+/*22+ * Miscellaneous functions for IDT EB434 board33+ *44+ * Copyright 2004 IDT Inc. (rischelp@idt.com)55+ * Copyright 2006 Phil Sutter <n0-1@freewrt.org>66+ * Copyright 2007 Florian Fainelli <florian@openwrt.org>77+ *88+ * This program is free software; you can redistribute it and/or modify it99+ * under the terms of the GNU General Public License as published by the1010+ * Free Software Foundation; either version 2 of the License, or (at your1111+ * option) any later version.1212+ *1313+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1414+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1515+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1616+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1717+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1818+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1919+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON2020+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT2121+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2222+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2323+ *2424+ * You should have received a copy of the GNU General Public License along2525+ * with this program; if not, write to the Free Software Foundation, Inc.,2626+ * 675 Mass Ave, Cambridge, MA 02139, USA.2727+ */2828+2929+#include <linux/kernel.h>3030+#include <linux/gpio.h>3131+#include <linux/init.h>3232+#include <linux/types.h>3333+#include <linux/pci.h>3434+#include <linux/spinlock.h>3535+#include <linux/io.h>3636+#include <linux/platform_device.h>3737+3838+#include <asm/addrspace.h>3939+4040+#include <asm/mach-rc32434/rb.h>4141+4242+struct rb532_gpio_reg __iomem *rb532_gpio_reg0;4343+EXPORT_SYMBOL(rb532_gpio_reg0);4444+4545+struct mpmc_device dev3;4646+4747+static struct resource rb532_gpio_reg0_res[] = {4848+ {4949+ .name = "gpio_reg0",5050+ .start = (u32)(IDT434_REG_BASE + GPIOBASE),5151+ .end = (u32)(IDT434_REG_BASE + GPIOBASE + sizeof(struct rb532_gpio_reg)),5252+ .flags = IORESOURCE_MEM,5353+ }5454+};5555+5656+static struct resource rb532_dev3_ctl_res[] = {5757+ {5858+ .name = "dev3_ctl",5959+ .start = (u32)(IDT434_REG_BASE + DEV3BASE),6060+ .end = (u32)(IDT434_REG_BASE + DEV3BASE + sizeof(struct dev_reg)),6161+ .flags = IORESOURCE_MEM,6262+ }6363+};6464+6565+void set_434_reg(unsigned reg_offs, unsigned bit, unsigned len, unsigned val)6666+{6767+ unsigned flags, data;6868+ unsigned i = 0;6969+7070+ spin_lock_irqsave(&dev3.lock, flags);7171+7272+ data = *(volatile unsigned *) (IDT434_REG_BASE + reg_offs);7373+ for (i = 0; i != len; ++i) {7474+ if (val & (1 << i))7575+ data |= (1 << (i + bit));7676+ else7777+ data &= ~(1 << (i + bit));7878+ }7979+ writel(data, (IDT434_REG_BASE + reg_offs));8080+8181+ spin_unlock_irqrestore(&dev3.lock, flags);8282+}8383+EXPORT_SYMBOL(set_434_reg);8484+8585+unsigned get_434_reg(unsigned reg_offs)8686+{8787+ return readl(IDT434_REG_BASE + reg_offs);8888+}8989+EXPORT_SYMBOL(get_434_reg);9090+9191+void set_latch_u5(unsigned char or_mask, unsigned char nand_mask)9292+{9393+ unsigned flags;9494+9595+ spin_lock_irqsave(&dev3.lock, flags);9696+9797+ dev3.state = (dev3.state | or_mask) & ~nand_mask;9898+ writel(dev3.state, &dev3.base);9999+100100+ spin_unlock_irqrestore(&dev3.lock, flags);101101+}102102+EXPORT_SYMBOL(set_latch_u5);103103+104104+unsigned char get_latch_u5(void)105105+{106106+ return dev3.state;107107+}108108+EXPORT_SYMBOL(get_latch_u5);109109+110110+int rb532_gpio_get_value(unsigned gpio)111111+{112112+ return readl(&rb532_gpio_reg0->gpiod) & (1 << gpio);113113+}114114+EXPORT_SYMBOL(rb532_gpio_get_value);115115+116116+void rb532_gpio_set_value(unsigned gpio, int value)117117+{118118+ unsigned tmp;119119+120120+ tmp = readl(&rb532_gpio_reg0->gpiod) & ~(1 << gpio);121121+ if (value)122122+ tmp |= 1 << gpio;123123+124124+ writel(tmp, (void *)&rb532_gpio_reg0->gpiod);125125+}126126+EXPORT_SYMBOL(rb532_gpio_set_value);127127+128128+int rb532_gpio_direction_input(unsigned gpio)129129+{130130+ writel(readl(&rb532_gpio_reg0->gpiocfg) & ~(1 << gpio),131131+ (void *)&rb532_gpio_reg0->gpiocfg);132132+133133+ return 0;134134+}135135+EXPORT_SYMBOL(rb532_gpio_direction_input);136136+137137+int rb532_gpio_direction_output(unsigned gpio, int value)138138+{139139+ gpio_set_value(gpio, value);140140+ writel(readl(&rb532_gpio_reg0->gpiocfg) | (1 << gpio),141141+ (void *)&rb532_gpio_reg0->gpiocfg);142142+143143+ return 0;144144+}145145+EXPORT_SYMBOL(rb532_gpio_direction_output);146146+147147+void rb532_gpio_set_int_level(unsigned gpio, int value)148148+{149149+ unsigned tmp;150150+151151+ tmp = readl(&rb532_gpio_reg0->gpioilevel) & ~(1 << gpio);152152+ if (value)153153+ tmp |= 1 << gpio;154154+ writel(tmp, (void *)&rb532_gpio_reg0->gpioilevel);155155+}156156+EXPORT_SYMBOL(rb532_gpio_set_int_level);157157+158158+int rb532_gpio_get_int_level(unsigned gpio)159159+{160160+ return readl(&rb532_gpio_reg0->gpioilevel) & (1 << gpio);161161+}162162+EXPORT_SYMBOL(rb532_gpio_get_int_level);163163+164164+void rb532_gpio_set_int_status(unsigned gpio, int value)165165+{166166+ unsigned tmp;167167+168168+ tmp = readl(&rb532_gpio_reg0->gpioistat);169169+ if (value)170170+ tmp |= 1 << gpio;171171+ writel(tmp, (void *)&rb532_gpio_reg0->gpioistat);172172+}173173+EXPORT_SYMBOL(rb532_gpio_set_int_status);174174+175175+int rb532_gpio_get_int_status(unsigned gpio)176176+{177177+ return readl(&rb532_gpio_reg0->gpioistat) & (1 << gpio);178178+}179179+EXPORT_SYMBOL(rb532_gpio_get_int_status);180180+181181+void rb532_gpio_set_func(unsigned gpio, int value)182182+{183183+ unsigned tmp;184184+185185+ tmp = readl(&rb532_gpio_reg0->gpiofunc);186186+ if (value)187187+ tmp |= 1 << gpio;188188+ writel(tmp, (void *)&rb532_gpio_reg0->gpiofunc);189189+}190190+EXPORT_SYMBOL(rb532_gpio_set_func);191191+192192+int rb532_gpio_get_func(unsigned gpio)193193+{194194+ return readl(&rb532_gpio_reg0->gpiofunc) & (1 << gpio);195195+}196196+EXPORT_SYMBOL(rb532_gpio_get_func);197197+198198+int __init rb532_gpio_init(void)199199+{200200+ rb532_gpio_reg0 = ioremap_nocache(rb532_gpio_reg0_res[0].start,201201+ rb532_gpio_reg0_res[0].end -202202+ rb532_gpio_reg0_res[0].start);203203+204204+ if (!rb532_gpio_reg0) {205205+ printk(KERN_ERR "rb532: cannot remap GPIO register 0\n");206206+ return -ENXIO;207207+ }208208+209209+ dev3.base = ioremap_nocache(rb532_dev3_ctl_res[0].start,210210+ rb532_dev3_ctl_res[0].end -211211+ rb532_dev3_ctl_res[0].start);212212+213213+ if (!dev3.base) {214214+ printk(KERN_ERR "rb532: cannot remap device controller 3\n");215215+ return -ENXIO;216216+ }217217+218218+ return 0;219219+}220220+arch_initcall(rb532_gpio_init);
+209
arch/mips/rb532/irq.c
···11+/*22+ * This program is free software; you can redistribute it and/or modify it33+ * under the terms of the GNU General Public License as published by the44+ * Free Software Foundation; either version 2 of the License, or (at your55+ * option) any later version.66+ *77+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED88+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF99+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1010+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1111+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1212+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1313+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON1414+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT1515+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF1616+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.1717+ *1818+ * You should have received a copy of the GNU General Public License along1919+ * with this program; if not, write to the Free Software Foundation, Inc.,2020+ * 675 Mass Ave, Cambridge, MA 02139, USA.2121+ *2222+ * Copyright 2002 MontaVista Software Inc.2323+ * Author: MontaVista Software, Inc.2424+ * stevel@mvista.com or source@mvista.com2525+ */2626+2727+#include <linux/bitops.h>2828+#include <linux/errno.h>2929+#include <linux/init.h>3030+#include <linux/io.h>3131+#include <linux/kernel_stat.h>3232+#include <linux/module.h>3333+#include <linux/signal.h>3434+#include <linux/sched.h>3535+#include <linux/types.h>3636+#include <linux/interrupt.h>3737+#include <linux/ioport.h>3838+#include <linux/timex.h>3939+#include <linux/slab.h>4040+#include <linux/random.h>4141+#include <linux/delay.h>4242+4343+#include <asm/bootinfo.h>4444+#include <asm/time.h>4545+#include <asm/mipsregs.h>4646+#include <asm/system.h>4747+4848+#include <asm/mach-rc32434/rc32434.h>4949+5050+struct intr_group {5151+ u32 mask; /* mask of valid bits in pending/mask registers */5252+ volatile u32 *base_addr;5353+};5454+5555+#define RC32434_NR_IRQS (GROUP4_IRQ_BASE + 32)5656+5757+#if (NR_IRQS < RC32434_NR_IRQS)5858+#error Too little irqs defined. Did you override <asm/irq.h> ?5959+#endif6060+6161+static const struct intr_group intr_group[NUM_INTR_GROUPS] = {6262+ {6363+ .mask = 0x0000efff,6464+ .base_addr = (u32 *) KSEG1ADDR(IC_GROUP0_PEND + 0 * IC_GROUP_OFFSET)},6565+ {6666+ .mask = 0x00001fff,6767+ .base_addr = (u32 *) KSEG1ADDR(IC_GROUP0_PEND + 1 * IC_GROUP_OFFSET)},6868+ {6969+ .mask = 0x00000007,7070+ .base_addr = (u32 *) KSEG1ADDR(IC_GROUP0_PEND + 2 * IC_GROUP_OFFSET)},7171+ {7272+ .mask = 0x0003ffff,7373+ .base_addr = (u32 *) KSEG1ADDR(IC_GROUP0_PEND + 3 * IC_GROUP_OFFSET)},7474+ {7575+ .mask = 0xffffffff,7676+ .base_addr = (u32 *) KSEG1ADDR(IC_GROUP0_PEND + 4 * IC_GROUP_OFFSET)}7777+};7878+7979+#define READ_PEND(base) (*(base))8080+#define READ_MASK(base) (*(base + 2))8181+#define WRITE_MASK(base, val) (*(base + 2) = (val))8282+8383+static inline int irq_to_group(unsigned int irq_nr)8484+{8585+ return (irq_nr - GROUP0_IRQ_BASE) >> 5;8686+}8787+8888+static inline int group_to_ip(unsigned int group)8989+{9090+ return group + 2;9191+}9292+9393+static inline void enable_local_irq(unsigned int ip)9494+{9595+ int ipnum = 0x100 << ip;9696+9797+ set_c0_status(ipnum);9898+}9999+100100+static inline void disable_local_irq(unsigned int ip)101101+{102102+ int ipnum = 0x100 << ip;103103+104104+ clear_c0_status(ipnum);105105+}106106+107107+static inline void ack_local_irq(unsigned int ip)108108+{109109+ int ipnum = 0x100 << ip;110110+111111+ clear_c0_cause(ipnum);112112+}113113+114114+static void rb532_enable_irq(unsigned int irq_nr)115115+{116116+ int ip = irq_nr - GROUP0_IRQ_BASE;117117+ unsigned int group, intr_bit;118118+ volatile unsigned int *addr;119119+120120+ if (ip < 0)121121+ enable_local_irq(irq_nr);122122+ else {123123+ group = ip >> 5;124124+125125+ ip &= (1 << 5) - 1;126126+ intr_bit = 1 << ip;127127+128128+ enable_local_irq(group_to_ip(group));129129+130130+ addr = intr_group[group].base_addr;131131+ WRITE_MASK(addr, READ_MASK(addr) & ~intr_bit);132132+ }133133+}134134+135135+static void rb532_disable_irq(unsigned int irq_nr)136136+{137137+ int ip = irq_nr - GROUP0_IRQ_BASE;138138+ unsigned int group, intr_bit, mask;139139+ volatile unsigned int *addr;140140+141141+ if (ip < 0) {142142+ disable_local_irq(irq_nr);143143+ } else {144144+ group = ip >> 5;145145+146146+ ip &= (1 << 5) - 1;147147+ intr_bit = 1 << ip;148148+ addr = intr_group[group].base_addr;149149+ mask = READ_MASK(addr);150150+ mask |= intr_bit;151151+ WRITE_MASK(addr, mask);152152+153153+ /*154154+ * if there are no more interrupts enabled in this155155+ * group, disable corresponding IP156156+ */157157+ if (mask == intr_group[group].mask)158158+ disable_local_irq(group_to_ip(group));159159+ }160160+}161161+162162+static void rb532_mask_and_ack_irq(unsigned int irq_nr)163163+{164164+ rb532_disable_irq(irq_nr);165165+ ack_local_irq(group_to_ip(irq_to_group(irq_nr)));166166+}167167+168168+static struct irq_chip rc32434_irq_type = {169169+ .name = "RB532",170170+ .ack = rb532_disable_irq,171171+ .mask = rb532_disable_irq,172172+ .mask_ack = rb532_mask_and_ack_irq,173173+ .unmask = rb532_enable_irq,174174+};175175+176176+void __init arch_init_irq(void)177177+{178178+ int i;179179+180180+ pr_info("Initializing IRQ's: %d out of %d\n", RC32434_NR_IRQS, NR_IRQS);181181+182182+ for (i = 0; i < RC32434_NR_IRQS; i++)183183+ set_irq_chip_and_handler(i, &rc32434_irq_type,184184+ handle_level_irq);185185+}186186+187187+/* Main Interrupt dispatcher */188188+asmlinkage void plat_irq_dispatch(void)189189+{190190+ unsigned int ip, pend, group;191191+ volatile unsigned int *addr;192192+ unsigned int cp0_cause = read_c0_cause() & read_c0_status();193193+194194+ if (cp0_cause & CAUSEF_IP7) {195195+ do_IRQ(7);196196+ } else {197197+ ip = (cp0_cause & 0x7c00);198198+ if (ip) {199199+ group = 21 + (fls(ip) - 32);200200+201201+ addr = intr_group[group].base_addr;202202+203203+ pend = READ_PEND(addr);204204+ pend &= ~READ_MASK(addr); /* only unmasked interrupts */205205+ pend = 39 + (fls(pend) - 32);206206+ do_IRQ((group << 5) + pend);207207+ }208208+ }209209+}
+158
arch/mips/rb532/prom.c
···11+/*22+ * RouterBoard 500 specific prom routines33+ *44+ * Copyright (C) 2003, Peter Sadik <peter.sadik@idt.com>55+ * Copyright (C) 2005-2006, P.Christeas <p_christ@hol.gr>66+ * Copyright (C) 2007, Gabor Juhos <juhosg@openwrt.org>77+ * Felix Fietkau <nbd@openwrt.org>88+ * Florian Fainelli <florian@openwrt.org>99+ *1010+ * This program is free software; you can redistribute it and/or1111+ * modify it under the terms of the GNU General Public License1212+ * as published by the Free Software Foundation; either version 21313+ * of the License, or (at your option) any later version.1414+ *1515+ * This program is distributed in the hope that it will be useful,1616+ * but WITHOUT ANY WARRANTY; without even the implied warranty of1717+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the1818+ * GNU General Public License for more details.1919+ *2020+ * You should have received a copy of the GNU General Public License2121+ * along with this program; if not, write to the2222+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,2323+ * Boston, MA 02110-1301, USA.2424+ *2525+ */2626+2727+#include <linux/init.h>2828+#include <linux/mm.h>2929+#include <linux/module.h>3030+#include <linux/string.h>3131+#include <linux/console.h>3232+#include <linux/bootmem.h>3333+#include <linux/ioport.h>3434+#include <linux/blkdev.h>3535+3636+#include <asm/bootinfo.h>3737+#include <asm/mach-rc32434/ddr.h>3838+#include <asm/mach-rc32434/prom.h>3939+4040+extern void __init setup_serial_port(void);4141+4242+unsigned int idt_cpu_freq = 132000000;4343+EXPORT_SYMBOL(idt_cpu_freq);4444+unsigned int gpio_bootup_state;4545+EXPORT_SYMBOL(gpio_bootup_state);4646+4747+static struct resource ddr_reg[] = {4848+ {4949+ .name = "ddr-reg",5050+ .start = DDR0_PHYS_ADDR,5151+ .end = DDR0_PHYS_ADDR + sizeof(struct ddr_ram),5252+ .flags = IORESOURCE_MEM,5353+ }5454+};5555+5656+void __init prom_free_prom_memory(void)5757+{5858+ /* No prom memory to free */5959+}6060+6161+static inline int match_tag(char *arg, const char *tag)6262+{6363+ return strncmp(arg, tag, strlen(tag)) == 0;6464+}6565+6666+static inline unsigned long tag2ul(char *arg, const char *tag)6767+{6868+ char *num;6969+7070+ num = arg + strlen(tag);7171+ return simple_strtoul(num, 0, 10);7272+}7373+7474+void __init prom_setup_cmdline(void)7575+{7676+ char cmd_line[CL_SIZE];7777+ char *cp, *board;7878+ int prom_argc;7979+ char **prom_argv, **prom_envp;8080+ int i;8181+8282+ prom_argc = fw_arg0;8383+ prom_argv = (char **) fw_arg1;8484+ prom_envp = (char **) fw_arg2;8585+8686+ cp = cmd_line;8787+ /* Note: it is common that parameters start8888+ * at argv[1] and not argv[0],8989+ * however, our elf loader starts at [0] */9090+ for (i = 0; i < prom_argc; i++) {9191+ if (match_tag(prom_argv[i], FREQ_TAG)) {9292+ idt_cpu_freq = tag2ul(prom_argv[i], FREQ_TAG);9393+ continue;9494+ }9595+#ifdef IGNORE_CMDLINE_MEM9696+ /* parses out the "mem=xx" arg */9797+ if (match_tag(prom_argv[i], MEM_TAG))9898+ continue;9999+#endif100100+ if (i > 0)101101+ *(cp++) = ' ';102102+ if (match_tag(prom_argv[i], BOARD_TAG)) {103103+ board = prom_argv[i] + strlen(BOARD_TAG);104104+105105+ if (match_tag(board, BOARD_RB532A))106106+ mips_machtype = MACH_MIKROTIK_RB532A;107107+ else108108+ mips_machtype = MACH_MIKROTIK_RB532;109109+ }110110+111111+ if (match_tag(prom_argv[i], GPIO_TAG))112112+ gpio_bootup_state = tag2ul(prom_argv[i], GPIO_TAG);113113+114114+ strcpy(cp, prom_argv[i]);115115+ cp += strlen(prom_argv[i]);116116+ }117117+ *(cp++) = ' ';118118+119119+ i = strlen(arcs_cmdline);120120+ if (i > 0) {121121+ *(cp++) = ' ';122122+ strcpy(cp, arcs_cmdline);123123+ cp += strlen(arcs_cmdline);124124+ }125125+ if (gpio_bootup_state & 0x02)126126+ strcpy(cp, GPIO_INIT_NOBUTTON);127127+ else128128+ strcpy(cp, GPIO_INIT_BUTTON);129129+130130+ cmd_line[CL_SIZE-1] = '\0';131131+132132+ strcpy(arcs_cmdline, cmd_line);133133+}134134+135135+void __init prom_init(void)136136+{137137+ struct ddr_ram __iomem *ddr;138138+ phys_t memsize;139139+ phys_t ddrbase;140140+141141+ ddr = ioremap_nocache(ddr_reg[0].start,142142+ ddr_reg[0].end - ddr_reg[0].start);143143+144144+ if (!ddr) {145145+ printk(KERN_ERR "Unable to remap DDR register\n");146146+ return;147147+ }148148+149149+ ddrbase = (phys_t)&ddr->ddrbase;150150+ memsize = (phys_t)&ddr->ddrmask;151151+ memsize = 0 - memsize;152152+153153+ prom_setup_cmdline();154154+155155+ /* give all RAM to boot allocator,156156+ * except for the first 0x400 and the last 0x200 bytes */157157+ add_memory_region(ddrbase + 0x400, memsize - 0x600, BOOT_MEM_RAM);158158+}
+53
arch/mips/rb532/serial.c
···11+/*22+ * BRIEF MODULE DESCRIPTION33+ * Serial port initialisation.44+ *55+ * Copyright 2004 IDT Inc. (rischelp@idt.com)66+ *77+ * This program is free software; you can redistribute it and/or modify it88+ * under the terms of the GNU General Public License as published by the99+ * Free Software Foundation; either version 2 of the License, or (at your1010+ * option) any later version.1111+ *1212+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1313+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1414+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1515+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1616+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1717+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1818+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON1919+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT2020+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2121+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2222+ *2323+ * You should have received a copy of the GNU General Public License along2424+ * with this program; if not, write to the Free Software Foundation, Inc.,2525+ * 675 Mass Ave, Cambridge, MA 02139, USA.2626+ */2727+2828+#include <linux/init.h>2929+#include <linux/tty.h>3030+#include <linux/serial_core.h>3131+#include <linux/serial_8250.h>3232+3333+#include <asm/serial.h>3434+#include <asm/mach-rc32434/rc32434.h>3535+3636+extern unsigned int idt_cpu_freq;3737+3838+static struct uart_port rb532_uart = {3939+ .type = PORT_16550A,4040+ .line = 0,4141+ .irq = RC32434_UART0_IRQ,4242+ .iotype = UPIO_MEM,4343+ .membase = (char *)KSEG1ADDR(RC32434_UART0_BASE),4444+ .regshift = 24545+};4646+4747+int __init setup_serial_port(void)4848+{4949+ rb532_uart.uartclk = idt_cpu_freq;5050+5151+ return early_serial_setup(&rb532_uart);5252+}5353+arch_initcall(setup_serial_port);
···11+/*22+ * Carsten Langgaard, carstenl@mips.com33+ * Copyright (C) 1999,2000 MIPS Technologies, Inc. All rights reserved.44+ *55+ * This program is free software; you can distribute it and/or modify it66+ * under the terms of the GNU General Public License (Version 2) as77+ * published by the Free Software Foundation.88+ *99+ * This program is distributed in the hope it will be useful, but WITHOUT1010+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or1111+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License1212+ * for more details.1313+ *1414+ * You should have received a copy of the GNU General Public License along1515+ * with this program; if not, write to the Free Software Foundation, Inc.,1616+ * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.1717+ *1818+ * Setting up the clock on the MIPS boards.1919+ */2020+2121+#include <linux/init.h>2222+#include <linux/kernel_stat.h>2323+#include <linux/ptrace.h>2424+#include <linux/sched.h>2525+#include <linux/spinlock.h>2626+#include <linux/mc146818rtc.h>2727+#include <linux/irq.h>2828+#include <linux/timex.h>2929+3030+#include <asm/mipsregs.h>3131+#include <asm/debug.h>3232+#include <asm/time.h>3333+#include <asm/mach-rc32434/rc32434.h>3434+3535+extern unsigned int idt_cpu_freq;3636+3737+/*3838+ * Figure out the r4k offset, the amount to increment the compare3939+ * register for each time tick. There is no RTC available.4040+ *4141+ * The RC32434 counts at half the CPU *core* speed.4242+ */4343+static unsigned long __init cal_r4koff(void)4444+{4545+ mips_hpt_frequency = idt_cpu_freq * IDT_CLOCK_MULT / 2;4646+4747+ return mips_hpt_frequency / HZ;4848+}4949+5050+void __init plat_time_init(void)5151+{5252+ unsigned int est_freq, flags;5353+ unsigned long r4k_offset;5454+5555+ local_irq_save(flags);5656+5757+ printk(KERN_INFO "calculating r4koff... ");5858+ r4k_offset = cal_r4koff();5959+ printk("%08lx(%d)\n", r4k_offset, (int) r4k_offset);6060+6161+ est_freq = 2 * r4k_offset * HZ;6262+ est_freq += 5000; /* round */6363+ est_freq -= est_freq % 10000;6464+ printk(KERN_INFO "CPU frequency %d.%02d MHz\n", est_freq / 1000000,6565+ (est_freq % 1000000) * 100 / 1000000);6666+ local_irq_restore(flags);6767+}
···11+/*22+ * IDT RC32434 specific CPU feature overrides33+ *44+ * Copyright (C) 2008 Florian Fainelli <florian@openwrt.org>55+ *66+ * This file was derived from: include/asm-mips/cpu-features.h77+ * Copyright (C) 2003, 2004 Ralf Baechle88+ * Copyright (C) 2004 Maciej W. Rozycki99+ *1010+ * This program is free software; you can redistribute it and/or1111+ * modify it under the terms of the GNU General Public License1212+ * as published by the Free Software Foundation; either version 21313+ * of the License, or (at your option) any later version.1414+ *1515+ * This program is distributed in the hope that it will be useful,1616+ * but WITHOUT ANY WARRANTY; without even the implied warranty of1717+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the1818+ * GNU General Public License for more details.1919+ *2020+ * You should have received a copy of the GNU General Public License2121+ * along with this program; if not, write to the2222+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,2323+ * Boston, MA 02110-1301, USA.2424+ */2525+#ifndef __ASM_MACH_RC32434_CPU_FEATURE_OVERRIDES_H2626+#define __ASM_MACH_RC32434_CPU_FEATURE_OVERRIDES_H2727+2828+/*2929+ * The IDT RC32434 SOC has a built-in MIPS 4Kc core.3030+ */3131+#define cpu_has_tlb 13232+#define cpu_has_4kex 13333+#define cpu_has_3k_cache 03434+#define cpu_has_4k_cache 13535+#define cpu_has_tx39_cache 03636+#define cpu_has_sb1_cache 03737+#define cpu_has_fpu 03838+#define cpu_has_32fpr 03939+#define cpu_has_counter 14040+#define cpu_has_watch 14141+#define cpu_has_divec 14242+#define cpu_has_vce 04343+#define cpu_has_cache_cdex_p 04444+#define cpu_has_cache_cdex_s 04545+#define cpu_has_prefetch 14646+#define cpu_has_mcheck 14747+#define cpu_has_ejtag 14848+#define cpu_has_llsc 14949+5050+#define cpu_has_mips16 05151+#define cpu_has_mdmx 05252+#define cpu_has_mips3d 05353+#define cpu_has_smartmips 05454+5555+#define cpu_has_vtag_icache 05656+/* #define cpu_has_dc_aliases ? */5757+/* #define cpu_has_ic_fills_f_dc ? */5858+/* #define cpu_has_pindexed_dcache ? */5959+6060+/* #define cpu_icache_snoops_remote_store ? */6161+6262+#define cpu_has_mips32r1 16363+#define cpu_has_mips32r2 06464+#define cpu_has_mips64r1 06565+#define cpu_has_mips64r2 06666+6767+#define cpu_has_dsp 06868+#define cpu_has_mipsmt 06969+7070+/* #define cpu_has_nofpuex ? */7171+#define cpu_has_64bits 07272+#define cpu_has_64bit_zero_reg 07373+#define cpu_has_64bit_gp_regs 07474+#define cpu_has_64bit_addresses 07575+7676+#define cpu_has_inclusive_pcaches 07777+7878+#define cpu_dcache_line_size() 167979+#define cpu_icache_line_size() 168080+8181+#endif /* __ASM_MACH_RC32434_CPU_FEATURE_OVERRIDES_H */
+141
include/asm-mips/mach-rc32434/ddr.h
···11+/*22+ * Definitions for the DDR registers33+ *44+ * Copyright 2002 Ryan Holm <ryan.holmQVist@idt.com>55+ * Copyright 2008 Florian Fainelli <florian@openwrt.org>66+ *77+ * This program is free software; you can redistribute it and/or modify it88+ * under the terms of the GNU General Public License as published by the99+ * Free Software Foundation; either version 2 of the License, or (at your1010+ * option) any later version.1111+ *1212+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1313+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1414+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1515+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1616+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1717+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1818+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON1919+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT2020+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2121+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2222+ *2323+ * You should have received a copy of the GNU General Public License along2424+ * with this program; if not, write to the Free Software Foundation, Inc.,2525+ * 675 Mass Ave, Cambridge, MA 02139, USA.2626+ *2727+ */2828+2929+#ifndef _ASM_RC32434_DDR_H_3030+#define _ASM_RC32434_DDR_H_3131+3232+#include <asm/mach-rc32434/rb.h>3333+3434+/* DDR register structure */3535+struct ddr_ram {3636+ u32 ddrbase;3737+ u32 ddrmask;3838+ u32 res1;3939+ u32 res2;4040+ u32 ddrc;4141+ u32 ddrabase;4242+ u32 ddramask;4343+ u32 ddramap;4444+ u32 ddrcust;4545+ u32 ddrrdc;4646+ u32 ddrspare;4747+};4848+4949+#define DDR0_PHYS_ADDR 0x180180005050+5151+/* DDR banks masks */5252+#define DDR_MASK 0xffff00005353+#define DDR0_BASE_MSK DDR_MASK5454+#define DDR1_BASE_MSK DDR_MASK5555+5656+/* DDR bank0 registers */5757+#define RC32434_DDR0_ATA_BIT 55858+#define RC32434_DDR0_ATA_MSK 0x000000E05959+#define RC32434_DDR0_DBW_BIT 86060+#define RC32434_DDR0_DBW_MSK 0x000001006161+#define RC32434_DDR0_WR_BIT 96262+#define RC32434_DDR0_WR_MSK 0x000006006363+#define RC32434_DDR0_PS_BIT 116464+#define RC32434_DDR0_PS_MSK 0x000018006565+#define RC32434_DDR0_DTYPE_BIT 136666+#define RC32434_DDR0_DTYPE_MSK 0x0000e0006767+#define RC32434_DDR0_RFC_BIT 166868+#define RC32434_DDR0_RFC_MSK 0x000f00006969+#define RC32434_DDR0_RP_BIT 207070+#define RC32434_DDR0_RP_MSK 0x003000007171+#define RC32434_DDR0_AP_BIT 227272+#define RC32434_DDR0_AP_MSK 0x004000007373+#define RC32434_DDR0_RCD_BIT 237474+#define RC32434_DDR0_RCD_MSK 0x018000007575+#define RC32434_DDR0_CL_BIT 257676+#define RC32434_DDR0_CL_MSK 0x060000007777+#define RC32434_DDR0_DBM_BIT 277878+#define RC32434_DDR0_DBM_MSK 0x080000007979+#define RC32434_DDR0_SDS_BIT 288080+#define RC32434_DDR0_SDS_MSK 0x100000008181+#define RC32434_DDR0_ATP_BIT 298282+#define RC32434_DDR0_ATP_MSK 0x600000008383+#define RC32434_DDR0_RE_BIT 318484+#define RC32434_DDR0_RE_MSK 0x800000008585+8686+/* DDR bank C registers */8787+#define RC32434_DDRC_MSK(x) BIT_TO_MASK(x)8888+#define RC32434_DDRC_CES_BIT 08989+#define RC32434_DDRC_ACE_BIT 19090+9191+/* Custom DDR bank registers */9292+#define RC32434_DCST_MSK(x) BIT_TO_MASK(x)9393+#define RC32434_DCST_CS_BIT 09494+#define RC32434_DCST_CS_MSK 0x000000039595+#define RC32434_DCST_WE_BIT 29696+#define RC32434_DCST_RAS_BIT 39797+#define RC32434_DCST_CAS_BIT 49898+#define RC32434_DSCT_CKE_BIT 59999+#define RC32434_DSCT_BA_BIT 6100100+#define RC32434_DSCT_BA_MSK 0x000000c0101101+102102+/* DDR QSC registers */103103+#define RC32434_QSC_DM_BIT 0104104+#define RC32434_QSC_DM_MSK 0x00000003105105+#define RC32434_QSC_DQSBS_BIT 2106106+#define RC32434_QSC_DQSBS_MSK 0x000000fc107107+#define RC32434_QSC_DB_BIT 8108108+#define RC32434_QSC_DB_MSK 0x00000100109109+#define RC32434_QSC_DBSP_BIT 9110110+#define RC32434_QSC_DBSP_MSK 0x01fffe00111111+#define RC32434_QSC_BDP_BIT 25112112+#define RC32434_QSC_BDP_MSK 0x7e000000113113+114114+/* DDR LLC registers */115115+#define RC32434_LLC_EAO_BIT 0116116+#define RC32434_LLC_EAO_MSK 0x00000001117117+#define RC32434_LLC_EO_BIT 1118118+#define RC32434_LLC_EO_MSK 0x0000003e119119+#define RC32434_LLC_FS_BIT 6120120+#define RC32434_LLC_FS_MSK 0x000000c0121121+#define RC32434_LLC_AS_BIT 8122122+#define RC32434_LLC_AS_MSK 0x00000700123123+#define RC32434_LLC_SP_BIT 11124124+#define RC32434_LLC_SP_MSK 0x001ff800125125+126126+/* DDR LLFC registers */127127+#define RC32434_LLFC_MSK(x) BIT_TO_MASK(x)128128+#define RC32434_LLFC_MEN_BIT 0129129+#define RC32434_LLFC_EAN_BIT 1130130+#define RC32434_LLFC_FF_BIT 2131131+132132+/* DDR DLLTA registers */133133+#define RC32434_DLLTA_ADDR_BIT 2134134+#define RC32434_DLLTA_ADDR_MSK 0xfffffffc135135+136136+/* DDR DLLED registers */137137+#define RC32434_DLLED_MSK(x) BIT_TO_MASK(x)138138+#define RC32434_DLLED_DBE_BIT 0139139+#define RC32434_DLLED_DTE_BIT 1140140+141141+#endif /* _ASM_RC32434_DDR_H_ */
···11+/*22+ * Definitions for the Ethernet registers33+ *44+ * Copyright 2002 Allend Stichter <allen.stichter@idt.com>55+ * Copyright 2008 Florian Fainelli <florian@openwrt.org>66+ *77+ * This program is free software; you can redistribute it and/or modify it88+ * under the terms of the GNU General Public License as published by the99+ * Free Software Foundation; either version 2 of the License, or (at your1010+ * option) any later version.1111+ *1212+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1313+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1414+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1515+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1616+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1717+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1818+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON1919+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT2020+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2121+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2222+ *2323+ * You should have received a copy of the GNU General Public License along2424+ * with this program; if not, write to the Free Software Foundation, Inc.,2525+ * 675 Mass Ave, Cambridge, MA 02139, USA.2626+ *2727+ */2828+2929+#ifndef __ASM_RC32434_ETH_H3030+#define __ASM_RC32434_ETH_H3131+3232+3333+#define ETH0_BASE_ADDR 0x180600003434+3535+struct eth_regs {3636+ u32 ethintfc;3737+ u32 ethfifott;3838+ u32 etharc;3939+ u32 ethhash0;4040+ u32 ethhash1;4141+ u32 ethu0[4]; /* Reserved. */4242+ u32 ethpfs;4343+ u32 ethmcp;4444+ u32 eth_u1[10]; /* Reserved. */4545+ u32 ethspare;4646+ u32 eth_u2[42]; /* Reserved. */4747+ u32 ethsal0;4848+ u32 ethsah0;4949+ u32 ethsal1;5050+ u32 ethsah1;5151+ u32 ethsal2;5252+ u32 ethsah2;5353+ u32 ethsal3;5454+ u32 ethsah3;5555+ u32 ethrbc;5656+ u32 ethrpc;5757+ u32 ethrupc;5858+ u32 ethrfc;5959+ u32 ethtbc;6060+ u32 ethgpf;6161+ u32 eth_u9[50]; /* Reserved. */6262+ u32 ethmac1;6363+ u32 ethmac2;6464+ u32 ethipgt;6565+ u32 ethipgr;6666+ u32 ethclrt;6767+ u32 ethmaxf;6868+ u32 eth_u10; /* Reserved. */6969+ u32 ethmtest;7070+ u32 miimcfg;7171+ u32 miimcmd;7272+ u32 miimaddr;7373+ u32 miimwtd;7474+ u32 miimrdd;7575+ u32 miimind;7676+ u32 eth_u11; /* Reserved. */7777+ u32 eth_u12; /* Reserved. */7878+ u32 ethcfsa0;7979+ u32 ethcfsa1;8080+ u32 ethcfsa2;8181+};8282+8383+/* Ethernet interrupt registers */8484+#define ETH_INT_FC_EN (1 << 0)8585+#define ETH_INT_FC_ITS (1 << 1)8686+#define ETH_INT_FC_RIP (1 << 2)8787+#define ETH_INT_FC_JAM (1 << 3)8888+#define ETH_INT_FC_OVR (1 << 4)8989+#define ETH_INT_FC_UND (1 << 5)9090+#define ETH_INT_FC_IOC 0x000000c09191+9292+/* Ethernet FIFO registers */9393+#define ETH_FIFI_TT_TTH_BIT 09494+#define ETH_FIFO_TT_TTH 0x0000007f9595+9696+/* Ethernet ARC/multicast registers */9797+#define ETH_ARC_PRO (1 << 0)9898+#define ETH_ARC_AM (1 << 1)9999+#define ETH_ARC_AFM (1 << 2)100100+#define ETH_ARC_AB (1 << 3)101101+102102+/* Ethernet SAL registers */103103+#define ETH_SAL_BYTE_5 0x000000ff104104+#define ETH_SAL_BYTE_4 0x0000ff00105105+#define ETH_SAL_BYTE_3 0x00ff0000106106+#define ETH_SAL_BYTE_2 0xff000000107107+108108+/* Ethernet SAH registers */109109+#define ETH_SAH_BYTE1 0x000000ff110110+#define ETH_SAH_BYTE0 0x0000ff00111111+112112+/* Ethernet GPF register */113113+#define ETH_GPF_PTV 0x0000ffff114114+115115+/* Ethernet PFG register */116116+#define ETH_PFS_PFD (1 << 0)117117+118118+/* Ethernet CFSA[0-3] registers */119119+#define ETH_CFSA0_CFSA4 0x000000ff120120+#define ETH_CFSA0_CFSA5 0x0000ff00121121+#define ETH_CFSA1_CFSA2 0x000000ff122122+#define ETH_CFSA1_CFSA3 0x0000ff00123123+#define ETH_CFSA1_CFSA0 0x000000ff124124+#define ETH_CFSA1_CFSA1 0x0000ff00125125+126126+/* Ethernet MAC1 registers */127127+#define ETH_MAC1_RE (1 << 0)128128+#define ETH_MAC1_PAF (1 << 1)129129+#define ETH_MAC1_RFC (1 << 2)130130+#define ETH_MAC1_TFC (1 << 3)131131+#define ETH_MAC1_LB (1 << 4)132132+#define ETH_MAC1_MR (1 << 31)133133+134134+/* Ethernet MAC2 registers */135135+#define ETH_MAC2_FD (1 << 0)136136+#define ETH_MAC2_FLC (1 << 1)137137+#define ETH_MAC2_HFE (1 << 2)138138+#define ETH_MAC2_DC (1 << 3)139139+#define ETH_MAC2_CEN (1 << 4)140140+#define ETH_MAC2_PE (1 << 5)141141+#define ETH_MAC2_VPE (1 << 6)142142+#define ETH_MAC2_APE (1 << 7)143143+#define ETH_MAC2_PPE (1 << 8)144144+#define ETH_MAC2_LPE (1 << 9)145145+#define ETH_MAC2_NB (1 << 12)146146+#define ETH_MAC2_BP (1 << 13)147147+#define ETH_MAC2_ED (1 << 14)148148+149149+/* Ethernet IPGT register */150150+#define ETH_IPGT 0x0000007f151151+152152+/* Ethernet IPGR registers */153153+#define ETH_IPGR_IPGR2 0x0000007f154154+#define ETH_IPGR_IPGR1 0x00007f00155155+156156+/* Ethernet CLRT registers */157157+#define ETH_CLRT_MAX_RET 0x0000000f158158+#define ETH_CLRT_COL_WIN 0x00003f00159159+160160+/* Ethernet MAXF register */161161+#define ETH_MAXF 0x0000ffff162162+163163+/* Ethernet test registers */164164+#define ETH_TEST_REG (1 << 2)165165+#define ETH_MCP_DIV 0x000000ff166166+167167+/* MII registers */168168+#define ETH_MII_CFG_RSVD 0x0000000c169169+#define ETH_MII_CMD_RD (1 << 0)170170+#define ETH_MII_CMD_SCN (1 << 1)171171+#define ETH_MII_REG_ADDR 0x0000001f172172+#define ETH_MII_PHY_ADDR 0x00001f00173173+#define ETH_MII_WTD_DATA 0x0000ffff174174+#define ETH_MII_RDD_DATA 0x0000ffff175175+#define ETH_MII_IND_BSY (1 << 0)176176+#define ETH_MII_IND_SCN (1 << 1)177177+#define ETH_MII_IND_NV (1 << 2)178178+179179+/*180180+ * Values for the DEVCS field of the Ethernet DMA Rx and Tx descriptors.181181+ */182182+183183+#define ETH_RX_FD (1 << 0)184184+#define ETH_RX_LD (1 << 1)185185+#define ETH_RX_ROK (1 << 2)186186+#define ETH_RX_FM (1 << 3)187187+#define ETH_RX_MP (1 << 4)188188+#define ETH_RX_BP (1 << 5)189189+#define ETH_RX_VLT (1 << 6)190190+#define ETH_RX_CF (1 << 7)191191+#define ETH_RX_OVR (1 << 8)192192+#define ETH_RX_CRC (1 << 9)193193+#define ETH_RX_CV (1 << 10)194194+#define ETH_RX_DB (1 << 11)195195+#define ETH_RX_LE (1 << 12)196196+#define ETH_RX_LOR (1 << 13)197197+#define ETH_RX_CES (1 << 14)198198+#define ETH_RX_LEN_BIT 16199199+#define ETH_RX_LEN 0xffff0000200200+201201+#define ETH_TX_FD (1 << 0)202202+#define ETH_TX_LD (1 << 1)203203+#define ETH_TX_OEN (1 << 2)204204+#define ETH_TX_PEN (1 << 3)205205+#define ETH_TX_CEN (1 << 4)206206+#define ETH_TX_HEN (1 << 5)207207+#define ETH_TX_TOK (1 << 6)208208+#define ETH_TX_MP (1 << 7)209209+#define ETH_TX_BP (1 << 8)210210+#define ETH_TX_UND (1 << 9)211211+#define ETH_TX_OF (1 << 10)212212+#define ETH_TX_ED (1 << 11)213213+#define ETH_TX_EC (1 << 12)214214+#define ETH_TX_LC (1 << 13)215215+#define ETH_TX_TD (1 << 14)216216+#define ETH_TX_CRC (1 << 15)217217+#define ETH_TX_LE (1 << 16)218218+#define ETH_TX_CC 0x001E0000219219+220220+#endif /* __ASM_RC32434_ETH_H */
+126
include/asm-mips/mach-rc32434/gpio.h
···11+/*22+ * Copyright 2002 Integrated Device Technology, Inc.33+ * All rights reserved.44+ *55+ * GPIO register definition.66+ *77+ * Author : ryan.holmQVist@idt.com88+ * Date : 2001100599+ * Copyright (C) 2001, 2002 Ryan Holm <ryan.holmQVist@idt.com>1010+ * Copyright (C) 2008 Florian Fainelli <florian@openwrt.org>1111+ */1212+1313+#ifndef _RC32434_GPIO_H_1414+#define _RC32434_GPIO_H_1515+1616+#include <linux/types.h>1717+1818+struct rb532_gpio_reg {1919+ u32 gpiofunc; /* GPIO Function Register2020+ * gpiofunc[x]==0 bit = gpio2121+ * func[x]==1 bit = altfunc2222+ */2323+ u32 gpiocfg; /* GPIO Configuration Register2424+ * gpiocfg[x]==0 bit = input2525+ * gpiocfg[x]==1 bit = output2626+ */2727+ u32 gpiod; /* GPIO Data Register2828+ * gpiod[x] read/write gpio pinX status2929+ */3030+ u32 gpioilevel; /* GPIO Interrupt Status Register3131+ * interrupt level (see gpioistat)3232+ */3333+ u32 gpioistat; /* Gpio Interrupt Status Register3434+ * istat[x] = (gpiod[x] == level[x])3535+ * cleared in ISR (STICKY bits)3636+ */3737+ u32 gpionmien; /* GPIO Non-maskable Interrupt Enable Register */3838+};3939+4040+/* UART GPIO signals */4141+#define RC32434_UART0_SOUT (1 << 0)4242+#define RC32434_UART0_SIN (1 << 1)4343+#define RC32434_UART0_RTS (1 << 2)4444+#define RC32434_UART0_CTS (1 << 3)4545+4646+/* M & P bus GPIO signals */4747+#define RC32434_MP_BIT_22 (1 << 4)4848+#define RC32434_MP_BIT_23 (1 << 5)4949+#define RC32434_MP_BIT_24 (1 << 6)5050+#define RC32434_MP_BIT_25 (1 << 7)5151+5252+/* CPU GPIO signals */5353+#define RC32434_CPU_GPIO (1 << 8)5454+5555+/* Reserved GPIO signals */5656+#define RC32434_AF_SPARE_6 (1 << 9)5757+#define RC32434_AF_SPARE_4 (1 << 10)5858+#define RC32434_AF_SPARE_3 (1 << 11)5959+#define RC32434_AF_SPARE_2 (1 << 12)6060+6161+/* PCI messaging unit */6262+#define RC32434_PCI_MSU_GPIO (1 << 13)6363+6464+6565+extern void set_434_reg(unsigned reg_offs, unsigned bit, unsigned len, unsigned val);6666+extern unsigned get_434_reg(unsigned reg_offs);6767+extern void set_latch_u5(unsigned char or_mask, unsigned char nand_mask);6868+extern unsigned char get_latch_u5(void);6969+7070+extern int rb532_gpio_get_value(unsigned gpio);7171+extern void rb532_gpio_set_value(unsigned gpio, int value);7272+extern int rb532_gpio_direction_input(unsigned gpio);7373+extern int rb532_gpio_direction_output(unsigned gpio, int value);7474+extern void rb532_gpio_set_int_level(unsigned gpio, int value);7575+extern int rb532_gpio_get_int_level(unsigned gpio);7676+extern void rb532_gpio_set_int_status(unsigned gpio, int value);7777+extern int rb532_gpio_get_int_status(unsigned gpio);7878+7979+8080+/* Wrappers for the arch-neutral GPIO API */8181+8282+static inline int gpio_request(unsigned gpio, const char *label)8383+{8484+ /* Not yet implemented */8585+ return 0;8686+}8787+8888+static inline void gpio_free(unsigned gpio)8989+{9090+ /* Not yet implemented */9191+}9292+9393+static inline int gpio_direction_input(unsigned gpio)9494+{9595+ return rb532_gpio_direction_input(gpio);9696+}9797+9898+static inline int gpio_direction_output(unsigned gpio, int value)9999+{100100+ return rb532_gpio_direction_output(gpio, value);101101+}102102+103103+static inline int gpio_get_value(unsigned gpio)104104+{105105+ return rb532_gpio_get_value(gpio);106106+}107107+108108+static inline void gpio_set_value(unsigned gpio, int value)109109+{110110+ rb532_gpio_set_value(gpio, value);111111+}112112+113113+static inline int gpio_to_irq(unsigned gpio)114114+{115115+ return gpio;116116+}117117+118118+static inline int irq_to_gpio(unsigned irq)119119+{120120+ return irq;121121+}122122+123123+/* For cansleep */124124+#include <asm-generic/gpio.h>125125+126126+#endif /* _RC32434_GPIO_H_ */
+59
include/asm-mips/mach-rc32434/integ.h
···11+/*22+ * Definitions for the Watchdog registers33+ *44+ * Copyright 2002 Ryan Holm <ryan.holmQVist@idt.com>55+ * Copyright 2008 Florian Fainelli <florian@openwrt.org>66+ *77+ * This program is free software; you can redistribute it and/or modify it88+ * under the terms of the GNU General Public License as published by the99+ * Free Software Foundation; either version 2 of the License, or (at your1010+ * option) any later version.1111+ *1212+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1313+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1414+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1515+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1616+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1717+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1818+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON1919+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT2020+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2121+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2222+ *2323+ * You should have received a copy of the GNU General Public License along2424+ * with this program; if not, write to the Free Software Foundation, Inc.,2525+ * 675 Mass Ave, Cambridge, MA 02139, USA.2626+ *2727+ */2828+2929+#ifndef __RC32434_INTEG_H__3030+#define __RC32434_INTEG_H__3131+3232+#include <asm/mach-rc32434/rb.h>3333+3434+#define INTEG0_BASE_ADDR 0x180300303535+3636+struct integ {3737+ u32 errcs; /* sticky use ERRCS_ */3838+ u32 wtcount; /* Watchdog timer count reg. */3939+ u32 wtcompare; /* Watchdog timer timeout value. */4040+ u32 wtc; /* Watchdog timer control. use WTC_ */4141+};4242+4343+/* Error counters */4444+#define RC32434_ERR_WTO 04545+#define RC32434_ERR_WNE 14646+#define RC32434_ERR_UCW 24747+#define RC32434_ERR_UCR 34848+#define RC32434_ERR_UPW 44949+#define RC32434_ERR_UPR 55050+#define RC32434_ERR_UDW 65151+#define RC32434_ERR_UDR 75252+#define RC32434_ERR_SAE 85353+#define RC32434_ERR_WRE 95454+5555+/* Watchdog control bits */5656+#define RC32434_WTC_EN 05757+#define RC32434_WTC_TO 15858+5959+#endif /* __RC32434_INTEG_H__ */
···11+/*22+ * Definitions for the PROM33+ *44+ * Copyright 2002 Ryan Holm <ryan.holmQVist@idt.com>55+ * Copyright 2008 Florian Fainelli <florian@openwrt.org>66+ *77+ * This program is free software; you can redistribute it and/or modify it88+ * under the terms of the GNU General Public License as published by the99+ * Free Software Foundation; either version 2 of the License, or (at your1010+ * option) any later version.1111+ *1212+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1313+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1414+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1515+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1616+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1717+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1818+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON1919+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT2020+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2121+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2222+ *2323+ * You should have received a copy of the GNU General Public License along2424+ * with this program; if not, write to the Free Software Foundation, Inc.,2525+ * 675 Mass Ave, Cambridge, MA 02139, USA.2626+ *2727+ */2828+2929+#define PROM_ENTRY(x) (0xbfc00000 + ((x) * 8))3030+3131+#define GPIO_INIT_NOBUTTON ""3232+#define GPIO_INIT_BUTTON " 2"3333+3434+#define SR_NMI 0x001800003535+#define SERIAL_SPEED_ENTRY 0x000000013636+3737+#define FREQ_TAG "HZ="3838+#define GPIO_TAG "gpio="3939+#define KMAC_TAG "kmac="4040+#define MEM_TAG "mem="4141+#define BOARD_TAG "board="4242+4343+#define BOARD_RB532 "500"4444+#define BOARD_RB532A "500r5"
+81
include/asm-mips/mach-rc32434/rb.h
···11+/*22+ * This program is free software; you can redistribute it and/or modify33+ * it under the terms of the GNU General Public License as published by44+ * the Free Software Foundation; either version 2 of the License, or55+ * (at your option) any later version.66+ *77+ * This program is distributed in the hope that it will be useful,88+ * but WITHOUT ANY WARRANTY; without even the implied warranty of99+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the1010+ * GNU General Public License for more details.1111+ *1212+ * Copyright (C) 2004 IDT Inc.1313+ * Copyright (C) 2006 Felix Fietkau <nbd@openwrt.org>1414+ */1515+#ifndef __ASM_RC32434_RB_H1616+#define __ASM_RC32434_RB_H1717+1818+#include <linux/genhd.h>1919+2020+#define IDT434_REG_BASE ((volatile void *) KSEG1ADDR(0x18000000))2121+#define DEV0BASE 0x0100002222+#define DEV0MASK 0x0100042323+#define DEV0C 0x0100082424+#define DEV0T 0x01000C2525+#define DEV1BASE 0x0100102626+#define DEV1MASK 0x0100142727+#define DEV1C 0x0100182828+#define DEV1TC 0x01001C2929+#define DEV2BASE 0x0100203030+#define DEV2MASK 0x0100243131+#define DEV2C 0x0100283232+#define DEV2TC 0x01002C3333+#define DEV3BASE 0x0100303434+#define DEV3MASK 0x0100343535+#define DEV3C 0x0100383636+#define DEV3TC 0x01003C3737+#define BTCS 0x0100403838+#define BTCOMPARE 0x0100443939+#define GPIOBASE 0x0500004040+#define GPIOCFG 0x0500044141+#define GPIOD 0x0500084242+#define GPIOILEVEL 0x05000C4343+#define GPIOISTAT 0x0500104444+#define GPIONMIEN 0x0500144545+#define IMASK6 0x0380384646+#define LO_WPX (1 << 0)4747+#define LO_ALE (1 << 1)4848+#define LO_CLE (1 << 2)4949+#define LO_CEX (1 << 3)5050+#define LO_FOFF (1 << 5)5151+#define LO_SPICS (1 << 6)5252+#define LO_ULED (1 << 7)5353+5454+#define BIT_TO_MASK(x) (1 << x)5555+5656+struct dev_reg {5757+ u32 base;5858+ u32 mask;5959+ u32 ctl;6060+ u32 timing;6161+};6262+6363+struct korina_device {6464+ char *name;6565+ unsigned char mac[6];6666+ struct net_device *dev;6767+};6868+6969+struct cf_device {7070+ int gpio_pin;7171+ void *dev;7272+ struct gendisk *gd;7373+};7474+7575+struct mpmc_device {7676+ unsigned char state;7777+ spinlock_t lock;7878+ void __iomem *base;7979+};8080+8181+#endif /* __ASM_RC32434_RB_H */
···11+/*22+ * Definitions for timer registers33+ *44+ * Copyright 2004 Philip Rischel <rischelp@idt.com>55+ * Copyright 2008 Florian Fainelli <florian@openwrt.org>66+ *77+ * This program is free software; you can redistribute it and/or modify it88+ * under the terms of the GNU General Public License as published by the99+ * Free Software Foundation; either version 2 of the License, or (at your1010+ * option) any later version.1111+ *1212+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED1313+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF1414+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN1515+ * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,1616+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT1717+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF1818+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON1919+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT2020+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF2121+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.2222+ *2323+ * You should have received a copy of the GNU General Public License along2424+ * with this program; if not, write to the Free Software Foundation, Inc.,2525+ * 675 Mass Ave, Cambridge, MA 02139, USA.2626+ *2727+ */2828+2929+#ifndef __ASM_RC32434_TIMER_H3030+#define __ASM_RC32434_TIMER_H3131+3232+#include <asm/mach-rc32434/rb.h>3333+3434+#define TIMER0_BASE_ADDR 0x180280003535+#define TIMER_COUNT 33636+3737+struct timer_counter {3838+ u32 count;3939+ u32 compare;4040+ u32 ctc; /*use CTC_ */4141+};4242+4343+struct timer {4444+ struct timer_counter tim[TIMER_COUNT];4545+ u32 rcount; /* use RCOUNT_ */4646+ u32 rcompare; /* use RCOMPARE_ */4747+ u32 rtc; /* use RTC_ */4848+};4949+5050+#define RC32434_CTC_EN_BIT 05151+#define RC32434_CTC_TO_BIT 15252+5353+/* Real time clock registers */5454+#define RC32434_RTC_MSK(x) BIT_TO_MASK(x)5555+#define RC32434_RTC_CE_BIT 05656+#define RC32434_RTC_TO_BIT 15757+#define RC32434_RTC_RQE_BIT 25858+5959+/* Counter registers */6060+#define RC32434_RCOUNT_BIT 06161+#define RC32434_RCOUNT_MSK 0x0000ffff6262+#define RC32434_RCOMP_BIT 06363+#define RC32434_RCOMP_MSK 0x0000ffff6464+6565+#endif /* __ASM_RC32434_TIMER_H */
+25
include/asm-mips/mach-rc32434/war.h
···11+/*22+ * This file is subject to the terms and conditions of the GNU General Public33+ * License. See the file "COPYING" in the main directory of this archive44+ * for more details.55+ *66+ * Copyright (C) 2002, 2004, 2007 by Ralf Baechle <ralf@linux-mips.org>77+ */88+#ifndef __ASM_MIPS_MACH_MIPS_WAR_H99+#define __ASM_MIPS_MACH_MIPS_WAR_H1010+1111+#define R4600_V1_INDEX_ICACHEOP_WAR 01212+#define R4600_V1_HIT_CACHEOP_WAR 01313+#define R4600_V2_HIT_CACHEOP_WAR 01414+#define R5432_CP0_INTERRUPT_WAR 01515+#define BCM1250_M3_WAR 01616+#define SIBYTE_1956_WAR 01717+#define MIPS4K_ICACHE_REFILL_WAR 11818+#define MIPS_CACHE_SYNC_WAR 01919+#define TX49XX_ICACHE_INDEX_INV_WAR 02020+#define RM9000_CDEX_SMP_WAR 02121+#define ICACHE_REFILLS_WORKAROUND_WAR 02222+#define R10000_LLSC_WAR 02323+#define MIPS34K_MISSED_ITLB_WAR 02424+2525+#endif /* __ASM_MIPS_MACH_MIPS_WAR_H */