Date: Thu, 8 May 2008 16:26:42 GMT From: Vincenzo Iozzo <snagg@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 141328 for review Message-ID: <200805081626.m48GQgHI070290@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=141328 Change 141328 by snagg@snagg_macosx on 2008/05/08 16:26:17 IFC Affected files ... .. //depot/projects/soc2008/snagg-audit/sys/amd64/conf/GENERIC#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/amd64/conf/NOTES#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/conf/NOTES#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/conf/files#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/conf/files.powerpc#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/conf/files.sun4v#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/conf/kern.mk#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/conf/ldscript.mips#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/conf/ldscript.mips.cfe#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/conf/options#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/contrib/dev/iwn/LICENSE#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/dev/iwn/iwlwifi-4965-4.44.17.fw.uu#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/core_priv.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_addr.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_cache.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_cm.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_fmr_pool.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_mad.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_marshall.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_pack.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_sa.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_smi.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_umem.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_user_cm.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_user_mad.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_user_sa.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_user_verbs.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/ib_verbs.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/iw_cm.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/krping/getopt.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/krping/getopt.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/krping/krping.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/krping/krping.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/krping/krping_dev.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/rdma_addr.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/rdma_cache.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/rdma_cm.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/rdma_cm_ib.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/rdma_cma.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/rdma_device.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/rdma_iwcm.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/rdma_user_cm.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/rdma_verbs.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/contrib/rdma/types.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/ath/if_ath.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/ath/if_athvar.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/bfe/if_bfe.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/bge/if_bge.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/bge/if_bgereg.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/cxgb_config.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/cxgb_main.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/cxgb_offload.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/cxgb_osdep.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/t3cdev.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cm.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cm.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cq.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_dbg.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_ev.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_hal.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_hal.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_mem.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_provider.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_provider.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_qp.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_resource.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_resource.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_user.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_wr.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/tom/cxgb_ddp.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/tom/cxgb_tcp_offload.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/dcons/dcons_os.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/hme/if_hme_pci.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/hme/if_hme_sbus.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/if_ndis/if_ndis.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/iwn/if_iwn.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/iwn/if_iwnreg.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/iwn/if_iwnvar.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/mii/brgphyreg.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/mii/ciphy.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/mii/miidevs#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/mpt/mpt.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/mpt/mpt_cam.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/mpt/mpt_raid.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/mpt/mpt_user.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/pci/pcivar.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/ral/rt2560.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/ral/rt2661.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/scc/scc_bfe.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/scc/scc_bfe_ebus.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/scc/scc_bfe_macio.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/scc/scc_bfe_quicc.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/scc/scc_bfe_sbus.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/scc/scc_core.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/sio/sio.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/ti/if_ti.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/uart/uart_core.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/usb/if_rum.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/usb/if_zyd.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/usb/ums.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/usb/usbdevs#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/usb/uscanner.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/wi/if_wi.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/wpi/if_wpi.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/fs/devfs/devfs_vnops.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/fs/unionfs/union_subr.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/i386/conf/GENERIC#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/i386/conf/NOTES#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/i386/cpufreq/est.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/kern_cpu.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/kern_descrip.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/kern_kthread.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/kern_thr.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/kern_umtx.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/subr_blist.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/subr_kdb.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/subr_witness.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/uipc_mbuf.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/uipc_syscalls.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/vfs_mount.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/kern/vfs_subr.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/mips/include/am29lv081b.h#2 delete .. //depot/projects/soc2008/snagg-audit/sys/mips/include/cp0.h#2 delete .. //depot/projects/soc2008/snagg-audit/sys/mips/include/float.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/mips/include/pmap.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/mips/mips/mips_subr.c#2 delete .. //depot/projects/soc2008/snagg-audit/sys/mips/mips/pmap.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/cxgb/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/cxgb/iw_cxgb/Makefile#1 branch .. //depot/projects/soc2008/snagg-audit/sys/modules/esp/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/hfa/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/hme/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/isp/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/ispfw/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/iwn/Makefile#1 branch .. //depot/projects/soc2008/snagg-audit/sys/modules/iwnfw/Makefile#1 branch .. //depot/projects/soc2008/snagg-audit/sys/modules/le/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/mpt/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/rdma/Makefile#1 branch .. //depot/projects/soc2008/snagg-audit/sys/modules/rdma/addr/Makefile#1 branch .. //depot/projects/soc2008/snagg-audit/sys/modules/rdma/cma/Makefile#1 branch .. //depot/projects/soc2008/snagg-audit/sys/modules/rdma/core/Makefile#1 branch .. //depot/projects/soc2008/snagg-audit/sys/modules/rdma/iwcm/Makefile#1 branch .. //depot/projects/soc2008/snagg-audit/sys/modules/rdma/krping/Makefile#1 branch .. //depot/projects/soc2008/snagg-audit/sys/modules/scc/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/sound/driver/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/modules/wlan/Makefile#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/net/bpf.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/net/if_ethersubr.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/net80211/ieee80211.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/net80211/ieee80211_node.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/netinet/ip_fw.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/netinet/libalias/alias.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/netinet/tcp.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/netinet/tcp_usrreq.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/pc98/cbus/sio.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/pc98/conf/GENERIC#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/aim/clock.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/aim/locore.S#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/aim/machdep.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/aim/mmu_oea.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/aim/mp_cpudep.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/powerpc/aim/swtch.S#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/aim/trap_subr.S#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/aim/vm_machdep.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/booke/pmap.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/booke/trap_subr.S#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/booke/vm_machdep.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/conf/MPC85XX#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/conf/NOTES#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/include/cpufunc.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/include/pcpu.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/include/smp.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/include/spr.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/mpc85xx/mpc85xx.c#1 branch .. //depot/projects/soc2008/snagg-audit/sys/powerpc/mpc85xx/ocpbus.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/mpc85xx/ocpbus.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/mpc85xx/pci_ocp.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/powermac/macio.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/powermac/maciovar.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/powerpc/intr_machdep.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/powerpc/mp_machdep.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/powerpc/powerpc/openpic.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/security/audit/audit.h#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/sparc64/conf/GENERIC#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sparc64/include/bus_common.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sparc64/include/iommuvar.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sparc64/pci/ofw_pcibus.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sparc64/pci/psycho.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/sparc64/sbus/sbus.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sparc64/sparc64/counter.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sparc64/sparc64/iommu.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sun4v/include/bus_common.h#2 delete .. //depot/projects/soc2008/snagg-audit/sys/sun4v/sun4v/hvcons.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sun4v/sun4v/nexus.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sun4v/sun4v/vnex.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sys/blist.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sys/kdb.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sys/mbuf.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sys/mount.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sys/mpt_ioctl.h#1 branch .. //depot/projects/soc2008/snagg-audit/sys/sys/umtx.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/sys/user.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/vm/swap_pager.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/vm/vm_kern.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/vm/vm_map.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/vm/vm_map.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/vm/vm_mmap.c#2 integrate Differences ... ==== //depot/projects/soc2008/snagg-audit/sys/amd64/conf/GENERIC#2 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.497 2008/04/20 20:35:34 sam Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.498 2008/05/03 17:05:38 sam Exp $ cpu HAMMER ident GENERIC @@ -235,6 +235,8 @@ # Wireless NIC cards device wlan # 802.11 support +options IEEE80211_DEBUG # enable debug msgs +options IEEE80211_AMPDU_AGE # age frames in AMPDU reorder q's device wlan_wep # 802.11 WEP support device wlan_ccmp # 802.11 CCMP support device wlan_tkip # 802.11 TKIP support ==== //depot/projects/soc2008/snagg-audit/sys/amd64/conf/NOTES#2 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.78 2008/04/12 14:20:22 rpaulo Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.79 2008/04/29 21:36:15 sam Exp $ # # @@ -302,6 +302,7 @@ # (requires miibus) # ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters +# iwn: Intel Wireless WiFi Link 4965AGN 802.11 network adapters # nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) # nve: nVidia nForce MCP on-board Ethernet Networking # ral: Ralink Technology IEEE 802.11 wireless adapter @@ -313,6 +314,7 @@ options ED_HPP options ED_SIC device iwi +device iwn device ipw device nfe # nVidia nForce MCP on-board Ethernet Networking device nve # nVidia nForce MCP on-board Ethernet Networking ==== //depot/projects/soc2008/snagg-audit/sys/arm/at91/uart_dev_at91usart.c#2 (text) ==== @@ -26,7 +26,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.13 2007/12/25 17:51:55 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.14 2008/05/04 23:29:37 peter Exp $"); #include "opt_comconsole.h" @@ -506,9 +506,20 @@ at91_rx_put(struct uart_softc *sc, int key) { #if defined(KDB) && defined(ALT_BREAK_TO_DEBUGGER) + int kdb_brk; + if (sc->sc_sysdev != NULL && sc->sc_sysdev->type == UART_DEV_CONSOLE) { - if (kdb_alt_break(key, &sc->sc_altbrk)) - kdb_enter(KDB_WHY_BREAK, "Break sequence to console"); + if ((kdb_brk = kdb_alt_break(key, &sc->sc_altbrk)) != 0) { + case KDB_REQ_DEBUGGER: + kdb_enter(KDB_WHY_BREAK, "Break sequence on console"); + break; + case KDB_REQ_PANIC: + kdb_panic("Panic sequence on console"); + break; + case KDB_REQ_REBOOT: + kdb_reboot(); + break; + } } #endif uart_rx_put(sc, key); ==== //depot/projects/soc2008/snagg-audit/sys/conf/NOTES#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1481 2008/04/20 20:35:35 sam Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1484 2008/05/06 22:41:23 julian Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -762,6 +762,8 @@ device ether #Generic Ethernet device vlan #VLAN support (needs miibus) device wlan #802.11 support +options IEEE80211_DEBUG #enable debugging msgs +options IEEE80211_AMPDU_AGE #age frames in AMPDU reorder q's device wlan_wep #802.11 WEP support device wlan_ccmp #802.11 CCMP support device wlan_tkip #802.11 TKIP support @@ -868,7 +870,12 @@ # The MBUF_STRESS_TEST option enables options which create # various random failures / extreme cases related to mbuf # functions. See mbuf(9) for a list of available test cases. +# MBUF_PROFILING enables code to profile the mbuf chains +# exiting the system (via participating interfaces) and +# return a logarithmic histogram of monitored parameters +# (e.g. packet size, wasted space, number of mbufs in chain). options MBUF_STRESS_TEST +options MBUF_PROFILING # Statically Link in accept filters options ACCEPT_FILTER_DATA ==== //depot/projects/soc2008/snagg-audit/sys/conf/files#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1295 2008/04/25 20:42:48 sam Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1297 2008/05/06 20:49:52 jhb Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -830,6 +830,21 @@ compile-with "uudecode -o ${.TARGET} $S/contrib/dev/iwi/ipw2200-sniffer.fw.uu" \ no-obj no-implicit-rule \ clean "iwi_monitor.fw" +dev/iwn/if_iwn.c optional iwn +iwnfw.c optional iwnfw \ + compile-with "${AWK} -f $S/tools/fw_stub.awk iwn.fw:iwnfw:44417 -lintel_iwn -miwn -c${.TARGET}" \ + no-implicit-rule before-depend local \ + clean "iwnfw.c" +iwnfw.fwo optional iwnfw \ + dependency "iwn.fw" \ + compile-with "${LD} -b binary -d -warn-common -r -d -o ${.TARGET} iwn.fw" \ + no-implicit-rule \ + clean "iwn.fwo" +iwn.fw optional iwnfw \ + dependency ".PHONY" \ + compile-with "uudecode -o ${.TARGET} $S/contrib/dev/iwn/iwlwifi-4965-4.44.17.fw.uu" \ + no-obj no-implicit-rule \ + clean "iwn.fw" dev/ixgb/if_ixgb.c optional ixgb dev/ixgb/ixgb_ee.c optional ixgb dev/ixgb/ixgb_hw.c optional ixgb @@ -916,6 +931,7 @@ dev/mpt/mpt_debug.c optional mpt dev/mpt/mpt_pci.c optional mpt pci dev/mpt/mpt_raid.c optional mpt +dev/mpt/mpt_user.c optional mpt dev/msk/if_msk.c optional msk dev/mxge/if_mxge.c optional mxge pci dev/mxge/mxge_lro.c optional mxge pci ==== //depot/projects/soc2008/snagg-audit/sys/conf/files.powerpc#2 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.powerpc,v 1.74 2008/03/03 20:40:19 raj Exp $ +# $FreeBSD: src/sys/conf/files.powerpc,v 1.77 2008/04/30 00:50:50 marcel Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -68,6 +68,7 @@ powerpc/aim/locore.S optional aim no-obj powerpc/aim/machdep.c optional aim powerpc/aim/mmu_oea.c optional aim +powerpc/aim/mp_cpudep.c optional aim smp powerpc/aim/nexus.c optional aim powerpc/aim/ofw_machdep.c optional aim powerpc/aim/ofwmagic.S optional aim @@ -96,6 +97,7 @@ powerpc/fpu/fpu_mul.c optional fpu_emu powerpc/fpu/fpu_sqrt.c optional fpu_emu powerpc/fpu/fpu_subr.c optional fpu_emu +powerpc/mpc85xx/mpc85xx.c optional mpc85xx powerpc/mpc85xx/nexus.c optional mpc85xx powerpc/mpc85xx/ocpbus.c optional mpc85xx powerpc/mpc85xx/opic.c optional mpc85xx @@ -130,7 +132,7 @@ powerpc/powerpc/intr_machdep.c standard powerpc/powerpc/mem.c optional mem powerpc/powerpc/mmu_if.m standard -powerpc/powerpc/mp_machdep.c optional smp aim +powerpc/powerpc/mp_machdep.c optional smp powerpc/powerpc/openpic.c standard powerpc/powerpc/pic_if.m standard powerpc/powerpc/pmap_dispatch.c standard ==== //depot/projects/soc2008/snagg-audit/sys/conf/files.sun4v#3 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.sun4v,v 1.14 2008/04/26 11:01:37 marius Exp $ +# $FreeBSD: src/sys/conf/files.sun4v,v 1.15 2008/05/02 17:41:52 marius Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -35,7 +35,6 @@ sparc64/sparc64/autoconf.c standard sun4v/sun4v/bus_machdep.c standard sparc64/sparc64/clock.c standard -sparc64/sparc64/counter.c standard sparc64/sparc64/db_disasm.c optional ddb sun4v/sun4v/db_interface.c optional ddb sun4v/sun4v/db_trace.c optional ddb ==== //depot/projects/soc2008/snagg-audit/sys/conf/kern.mk#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/kern.mk,v 1.52 2007/05/24 21:53:42 obrien Exp $ +# $FreeBSD: src/sys/conf/kern.mk,v 1.53 2008/04/29 11:28:10 gonzo Exp $ # # Warning flags for compiling the kernel and components of the kernel. @@ -85,6 +85,15 @@ .endif # +# For MIPS we also tell gcc to use floating point emulation and +# disable MIPS DSP ASE Instruction set. +# +.if ${MACHINE_ARCH} == "mips" +CFLAGS+= -msoft-float -mno-dsp +INLINE_LIMIT?= 15000 +.endif + +# # GCC 3.0 and above like to do certain optimizations based on the # assumption that the program is linked against libc. Stop this. # ==== //depot/projects/soc2008/snagg-audit/sys/conf/ldscript.mips#2 (text+ko) ==== @@ -1,5 +1,5 @@ -/* $FreeBSD: src/sys/conf/ldscript.mips,v 1.1 2008/04/13 06:25:43 imp Exp $ */ -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") +/* $FreeBSD: src/sys/conf/ldscript.mips,v 1.2 2008/04/30 12:44:58 gonzo Exp $ */ +OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips") OUTPUT_ARCH(mips) ENTRY(_start) SEARCH_DIR(/usr/lib); ==== //depot/projects/soc2008/snagg-audit/sys/conf/ldscript.mips.cfe#2 (text+ko) ==== @@ -2,8 +2,8 @@ * This linker script is needed to build a kernel for use by Broadcom CFE. */ -/* $FreeBSD: src/sys/conf/ldscript.mips.cfe,v 1.1 2008/04/13 06:25:43 imp Exp $ */ -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") +/* $FreeBSD: src/sys/conf/ldscript.mips.cfe,v 1.2 2008/04/30 12:44:58 gonzo Exp $ */ +OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips") OUTPUT_ARCH(mips) ENTRY(_start) SEARCH_DIR(/usr/lib); ==== //depot/projects/soc2008/snagg-audit/sys/conf/options#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.626 2008/04/20 20:35:35 sam Exp $ +# $FreeBSD: src/sys/conf/options,v 1.627 2008/04/29 21:23:21 julian Exp $ # # On the handling of kernel options # @@ -388,6 +388,7 @@ LIBMCHAIN LIBALIAS MBUF_STRESS_TEST +MBUF_PROFILING NCP NETATALK opt_atalk.h PPP_BSDCOMP opt_ppp.h ==== //depot/projects/soc2008/snagg-audit/sys/dev/ath/if_ath.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.180 2008/04/20 20:35:35 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.185 2008/05/03 21:55:02 sam Exp $"); /* * Driver for the Atheros Wireless LAN controller. @@ -85,6 +85,11 @@ #endif /* + * We require a HAL w/ the changes for split tx/rx MIC. + */ +CTASSERT(HAL_ABI_VERSION > 0x06052200); + +/* * ATH_BCBUF determines the number of vap's that can transmit * beacons and also (currently) the number of vap's that can * have unique mac addresses/bssid. When staggering beacons @@ -2067,13 +2072,11 @@ printf(" %s ", sc->sc_splitmic ? "mic" : "rxmic"); for (i = 0; i < sizeof(hk->kv_mic); i++) printf("%02x", hk->kv_mic[i]); -#if HAL_ABI_VERSION > 0x06052200 if (!sc->sc_splitmic) { printf(" txmic "); for (i = 0; i < sizeof(hk->kv_txmic); i++) printf("%02x", hk->kv_txmic[i]); } -#endif } printf("\n"); } @@ -2116,18 +2119,19 @@ * will handle the rest. */ memcpy(hk->kv_mic, k->wk_rxmic, sizeof(hk->kv_mic)); -#if HAL_ABI_VERSION > 0x06052200 memcpy(hk->kv_txmic, k->wk_txmic, sizeof(hk->kv_txmic)); -#endif KEYPRINTF(sc, k->wk_keyix, hk, mac); return ath_hal_keyset(ah, k->wk_keyix, hk, mac); } } else if (k->wk_flags & IEEE80211_KEY_XMIT) { -#if HAL_ABI_VERSION > 0x06052200 - memcpy(hk->kv_txmic, k->wk_txmic, sizeof(hk->kv_txmic)); -#else - memcpy(hk->kv_mic, k->wk_mic, sizeof(hk->kv_mic)); -#endif + if (sc->sc_splitmic) { + /* + * NB: must pass MIC key in expected location when + * the keycache only holds one MIC key per entry. + */ + memcpy(hk->kv_mic, k->wk_txmic, sizeof(hk->kv_txmic)); + } else + memcpy(hk->kv_txmic, k->wk_txmic, sizeof(hk->kv_txmic)); KEYPRINTF(sc, k->wk_keyix, hk, mac); return ath_hal_keyset(ah, k->wk_keyix, hk, mac); } else if (k->wk_flags & IEEE80211_KEY_RECV) { @@ -5920,7 +5924,12 @@ ath_hal_setregdomain(ah, 0); /* XXX not quite right but close enough for now */ getchannels(sc, nchans, chans, CTRY_DEBUG, AH_TRUE, AH_FALSE); + + /* NB: restore previous state */ ath_hal_setregdomain(ah, ord); + (void) getchannels(sc, NULL, NULL, ic->ic_regdomain.country, + ic->ic_regdomain.ecm ? AH_TRUE : AH_FALSE, + ic->ic_regdomain.location == 'O' ? AH_TRUE : AH_FALSE); } static int @@ -5936,7 +5945,6 @@ struct ifnet *ifp = sc->sc_ifp; struct ieee80211com *ic = ifp->if_l2com; struct ath_hal *ah = sc->sc_ah; - u_int32_t rd, cc; int error; /* @@ -5944,19 +5952,19 @@ */ error = getchannels(sc, &ic->ic_nchans, ic->ic_channels, CTRY_DEFAULT, AH_TRUE, AH_FALSE); - (void) ath_hal_getregdomain(ah, &rd); - ath_hal_getcountrycode(ah, &cc); /* NB: cannot fail */ + (void) ath_hal_getregdomain(ah, &sc->sc_eerd); + ath_hal_getcountrycode(ah, &sc->sc_eecc); /* NB: cannot fail */ if (error) { if_printf(ifp, "%s: unable to collect channel list from hal, " "error %d\n", __func__, error); if (error == EINVAL) { if_printf(ifp, "%s: regdomain likely %u country code %u\n", - __func__, rd, cc); + __func__, sc->sc_eerd, sc->sc_eecc); } return error; } - ic->ic_regdomain.regdomain = ath_mapregdomain(sc, rd); - ic->ic_regdomain.country = cc; + ic->ic_regdomain.regdomain = ath_mapregdomain(sc, sc->sc_eerd); + ic->ic_regdomain.country = sc->sc_eecc; ic->ic_regdomain.ecm = 1; ic->ic_regdomain.location = 'I'; ic->ic_regdomain.isocc[0] = ' '; /* XXX don't know */ @@ -6272,9 +6280,9 @@ struct ifreq *ifr = (struct ifreq *)data; int error = 0; - ATH_LOCK(sc); switch (cmd) { case SIOCSIFFLAGS: + ATH_LOCK(sc); if (IS_RUNNING(ifp)) { /* * To avoid rescanning another access point, @@ -6296,17 +6304,8 @@ ath_init(sc); /* XXX lose error */ } else ath_stop_locked(ifp); + ATH_UNLOCK(sc); break; - case SIOCADDMULTI: - case SIOCDELMULTI: - /* - * The upper layer has already installed/removed - * the multicast address(es), just recalculate the - * multicast filter for the card. - */ - if (ifp->if_drv_flags & IFF_DRV_RUNNING) - ath_mode_init(sc); - break; case SIOCGIFMEDIA: case SIOCSIFMEDIA: error = ifmedia_ioctl(ifp, ifr, &ic->ic_media, cmd); @@ -6320,27 +6319,20 @@ &sc->sc_stats.ast_rx_noise); #endif sc->sc_stats.ast_tx_rate = sc->sc_hwmap[sc->sc_txrate].ieeerate; - ATH_UNLOCK(sc); - /* - * NB: Drop the softc lock in case of a page fault; - * we'll accept any potential inconsisentcy in the - * statistics. The alternative is to copy the data - * to a local structure. - */ return copyout(&sc->sc_stats, - ifr->ifr_data, sizeof (sc->sc_stats)); + ifr->ifr_data, sizeof (sc->sc_stats)); #ifdef ATH_DIAGAPI case SIOCGATHDIAG: - ATH_UNLOCK(sc); error = ath_ioctl_diag(sc, (struct ath_diag *) ifr); - ATH_LOCK(sc); break; #endif + case SIOCGIFADDR: + error = ether_ioctl(ifp, cmd, data); + break; default: - error = ether_ioctl(ifp, cmd, data); + error = EINVAL; break; } - ATH_UNLOCK(sc); return error; #undef IS_RUNNING } @@ -6596,6 +6588,12 @@ struct sysctl_oid *tree = device_get_sysctl_tree(sc->sc_dev); struct ath_hal *ah = sc->sc_ah; + SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, + "countrycode", CTLFLAG_RD, &sc->sc_eecc, 0, + "EEPROM country code"); + SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, + "regdomain", CTLFLAG_RD, &sc->sc_eerd, 0, + "EEPROM regdomain code"); #ifdef ATH_DEBUG sc->sc_debug = ath_debug; SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, ==== //depot/projects/soc2008/snagg-audit/sys/dev/ath/if_athvar.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.63 2008/04/20 20:35:35 sam Exp $ + * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.64 2008/05/03 21:52:05 sam Exp $ */ /* @@ -246,6 +246,8 @@ sc_swbmiss : 1,/* sta mode using sw bmiss */ sc_stagbeacons:1,/* use staggered beacons */ sc_wmetkipmic:1;/* can do WME+TKIP MIC */ + uint32_t sc_eerd; /* regdomain from EEPROM */ + uint32_t sc_eecc; /* country code from EEPROM */ /* rate tables */ #define IEEE80211_MODE_HALF (IEEE80211_MODE_MAX+0) #define IEEE80211_MODE_QUARTER (IEEE80211_MODE_MAX+1) ==== //depot/projects/soc2008/snagg-audit/sys/dev/bce/if_bce.c#2 (text) ==== @@ -29,7 +29,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/bce/if_bce.c,v 1.37 2008/04/11 23:10:40 davidch Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/bce/if_bce.c,v 1.39 2008/05/08 15:05:38 scottl Exp $"); /* * The following controllers are supported by this driver: @@ -502,7 +502,7 @@ /* Allocate PCI memory resources. */ rid = PCIR_BAR(0); sc->bce_res_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, - &rid, RF_ACTIVE | PCI_RF_DENSE); + &rid, RF_ACTIVE); if (sc->bce_res_mem == NULL) { BCE_PRINTF("%s(%d): PCI memory allocation failed\n", @@ -776,7 +776,11 @@ ifp->if_capenable = ifp->if_capabilities; /* Use standard mbuf sizes for buffer allocation. */ +#ifdef BCE_USE_SPLIT_HEADER sc->rx_bd_mbuf_alloc_size = MHLEN; +#else + sc->rx_bd_mbuf_alloc_size = MCLBYTES;; +#endif sc->pg_bd_mbuf_alloc_size = MCLBYTES; ifp->if_snd.ifq_drv_maxlen = USABLE_TX_BD; @@ -3804,7 +3808,11 @@ goto bce_get_rx_buf_exit); /* This is a new mbuf allocation. */ +#ifdef BCE_USE_SPLIT_HEADER MGETHDR(m_new, M_DONTWAIT, MT_DATA); +#else + m_new = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); +#endif if (m_new == NULL) { sc->mbuf_alloc_failed++; rc = ENOBUFS; ==== //depot/projects/soc2008/snagg-audit/sys/dev/bfe/if_bfe.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/bfe/if_bfe.c,v 1.44 2008/01/29 02:15:11 yongari Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/bfe/if_bfe.c,v 1.45 2008/04/30 02:49:24 yongari Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -646,16 +646,18 @@ struct bfe_desc *d; struct bfe_data *r; u_int32_t ctrl; - int error; + int allocated, error; if ((c < 0) || (c >= BFE_RX_LIST_CNT)) return (EINVAL); + allocated = 0; if(m == NULL) { m = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); if(m == NULL) return (ENOBUFS); m->m_len = m->m_pkthdr.len = MCLBYTES; + allocated++; } else m->m_data = m->m_ext.ext_buf; @@ -670,8 +672,14 @@ r = &sc->bfe_rx_ring[c]; error = bus_dmamap_load(sc->bfe_tag, r->bfe_map, mtod(m, void *), MCLBYTES, bfe_dma_map_desc, d, BUS_DMA_NOWAIT); - if (error) - printf("Serious error: bfe failed to map RX buffer\n"); + if (error != 0) { + if (allocated != 0) + m_free(m); + if (error != ENOMEM) + printf("bfe%d: failed to map RX buffer, error %d\n", + sc->bfe_unit, error); + return (ENOBUFS); + } bus_dmamap_sync(sc->bfe_tag, r->bfe_map, BUS_DMASYNC_PREWRITE); ctrl = ETHER_MAX_LEN + 32; ==== //depot/projects/soc2008/snagg-audit/sys/dev/bge/if_bge.c#3 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.206 2008/04/26 10:54:17 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.210 2008/05/05 18:42:17 bz Exp $"); /* * Broadcom BCM570x family gigabit ethernet driver for FreeBSD. @@ -196,6 +196,8 @@ { BCOM_VENDORID, BCOM_DEVICEID_BCM5901 }, { BCOM_VENDORID, BCOM_DEVICEID_BCM5901A2 }, { BCOM_VENDORID, BCOM_DEVICEID_BCM5903M }, + { BCOM_VENDORID, BCOM_DEVICEID_BCM5906 }, + { BCOM_VENDORID, BCOM_DEVICEID_BCM5906M }, { SK_VENDORID, SK_DEVICEID_ALTIMA }, @@ -273,6 +275,8 @@ { BGE_CHIPID_BCM5787_A0, "BCM5754/5787 A0" }, { BGE_CHIPID_BCM5787_A1, "BCM5754/5787 A1" }, { BGE_CHIPID_BCM5787_A2, "BCM5754/5787 A2" }, + { BGE_CHIPID_BCM5906_A1, "BCM5906 A1" }, + { BGE_CHIPID_BCM5906_A2, "BCM5906 A2" }, { 0, NULL } }; @@ -295,6 +299,7 @@ { BGE_ASICREV_BCM5755, "unknown BCM5755" }, /* 5754 and 5787 share the same ASIC ID */ { BGE_ASICREV_BCM5787, "unknown BCM5754/5787" }, + { BGE_ASICREV_BCM5906, "unknown BCM5906" }, { 0, NULL } }; @@ -307,6 +312,9 @@ const struct bge_revision * bge_lookup_rev(uint32_t); const struct bge_vendor * bge_lookup_vendor(uint16_t); + +typedef int (*bge_eaddr_fcn_t)(struct bge_softc *, uint8_t[]); + static int bge_probe(device_t); static int bge_attach(device_t); static int bge_detach(device_t); @@ -317,6 +325,11 @@ static int bge_dma_alloc(device_t); static void bge_dma_free(struct bge_softc *); +static int bge_get_eaddr_mem(struct bge_softc *, uint8_t[]); +static int bge_get_eaddr_nvram(struct bge_softc *, uint8_t[]); +static int bge_get_eaddr_eeprom(struct bge_softc *, uint8_t[]); +static int bge_get_eaddr(struct bge_softc *, uint8_t[]); + static void bge_txeof(struct bge_softc *); static void bge_rxeof(struct bge_softc *); @@ -339,6 +352,9 @@ static int bge_ifmedia_upd(struct ifnet *); static void bge_ifmedia_sts(struct ifnet *, struct ifmediareq *); +static uint8_t bge_nvram_getbyte(struct bge_softc *, int, uint8_t *); +static int bge_read_nvram(struct bge_softc *, caddr_t, int, int); + static uint8_t bge_eeprom_getbyte(struct bge_softc *, int, uint8_t *); static int bge_read_eeprom(struct bge_softc *, caddr_t, int, int); @@ -361,6 +377,7 @@ static int bge_has_eeprom(struct bge_softc *); static uint32_t bge_readmem_ind(struct bge_softc *, int); static void bge_writemem_ind(struct bge_softc *, int, int); +static void bge_writembx(struct bge_softc *, int, int); #ifdef notdef static uint32_t bge_readreg_ind(struct bge_softc *, int); #endif @@ -476,6 +493,10 @@ return (0); } #endif + + if (sc->bge_asicrev == BGE_ASICREV_BCM5906) + return (0); + return (1); } @@ -535,6 +556,15 @@ CSR_WRITE_4(sc, off, val); } +static void +bge_writembx(struct bge_softc *sc, int off, int val) +{ + if (sc->bge_asicrev == BGE_ASICREV_BCM5906) + off += BGE_LPMBX_IRQ0_HI - BGE_MBX_IRQ0_HI; + + CSR_WRITE_4(sc, off, val); +} + /* * Map a single buffer address. */ @@ -557,7 +587,79 @@ ctx->bge_busaddr = segs->ds_addr; } +static uint8_t +bge_nvram_getbyte(struct bge_softc *sc, int addr, uint8_t *dest) +{ + uint32_t access, byte = 0; + int i; + + /* Lock. */ + CSR_WRITE_4(sc, BGE_NVRAM_SWARB, BGE_NVRAMSWARB_SET1); + for (i = 0; i < 8000; i++) { + if (CSR_READ_4(sc, BGE_NVRAM_SWARB) & BGE_NVRAMSWARB_GNT1) + break; + DELAY(20); + } + if (i == 8000) + return (1); + + /* Enable access. */ + access = CSR_READ_4(sc, BGE_NVRAM_ACCESS); + CSR_WRITE_4(sc, BGE_NVRAM_ACCESS, access | BGE_NVRAMACC_ENABLE); + + CSR_WRITE_4(sc, BGE_NVRAM_ADDR, addr & 0xfffffffc); + CSR_WRITE_4(sc, BGE_NVRAM_CMD, BGE_NVRAM_READCMD); + for (i = 0; i < BGE_TIMEOUT * 10; i++) { + DELAY(10); + if (CSR_READ_4(sc, BGE_NVRAM_CMD) & BGE_NVRAMCMD_DONE) { + DELAY(10); + break; + } + } + + if (i == BGE_TIMEOUT * 10) { + if_printf(sc->bge_ifp, "nvram read timed out\n"); + return (1); + } + + /* Get result. */ + byte = CSR_READ_4(sc, BGE_NVRAM_RDDATA); + + *dest = (bswap32(byte) >> ((addr % 4) * 8)) & 0xFF; + + /* Disable access. */ + CSR_WRITE_4(sc, BGE_NVRAM_ACCESS, access); + + /* Unlock. */ + CSR_WRITE_4(sc, BGE_NVRAM_SWARB, BGE_NVRAMSWARB_CLR1); + CSR_READ_4(sc, BGE_NVRAM_SWARB); + + return (0); +} + /* + * Read a sequence of bytes from NVRAM. + */ +static int +bge_read_nvram(struct bge_softc *sc, caddr_t dest, int off, int cnt) +{ + int err = 0, i; + uint8_t byte = 0; + + if (sc->bge_asicrev != BGE_ASICREV_BCM5906) + return (1); + + for (i = 0; i < cnt; i++) { + err = bge_nvram_getbyte(sc, off + i, &byte); + if (err) + break; + *(dest + i) = byte; + } + + return (err ? 1 : 0); +} + +/* * Read a byte of data stored in the EEPROM at address 'addr.' The * BCM570x supports both the traditional bitbang interface and an * auto access interface for reading the EEPROM. We use the auto @@ -661,11 +763,13 @@ } if (i == BGE_TIMEOUT) { - device_printf(sc->bge_dev, "PHY read timed out\n"); + device_printf(sc->bge_dev, "PHY read timed out " + "(phy %d, reg %d, val 0x%08x)\n", phy, reg, val); >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200805081626.m48GQgHI070290>