Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 15 Jun 2009 16:40:05 +0000 (09:40 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 15 Jun 2009 16:40:05 +0000 (09:40 -0700)
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1244 commits)
  pkt_sched: Rename PSCHED_US2NS and PSCHED_NS2US
  ipv4: Fix fib_trie rebalancing
  Bluetooth: Fix issue with uninitialized nsh.type in DTL-1 driver
  Bluetooth: Fix Kconfig issue with RFKILL integration
  PIM-SM: namespace changes
  ipv4: update ARPD help text
  net: use a deferred timer in rt_check_expire
  ieee802154: fix kconfig bool/tristate muckup
  bonding: initialization rework
  bonding: use is_zero_ether_addr
  bonding: network device names are case sensative
  bonding: elminate bad refcount code
  bonding: fix style issues
  bonding: fix destructor
  bonding: remove bonding read/write semaphore
  bonding: initialize before registration
  bonding: bond_create always called with default parameters
  x_tables: Convert printk to pr_err
  netfilter: conntrack: optional reliable conntrack event delivery
  list_nulls: add hlist_nulls_add_head and hlist_nulls_del
  ...

1136 files changed:
CREDITS
Documentation/DocBook/mac80211.tmpl
Documentation/feature-removal-schedule.txt
Documentation/isdn/00-INDEX
Documentation/isdn/INTERFACE.CAPI
Documentation/isdn/README.gigaset
Documentation/networking/can.txt
Documentation/networking/ieee802154.txt [new file with mode: 0644]
Documentation/networking/ip-sysctl.txt
Documentation/networking/ipv6.txt
Documentation/networking/mac80211-injection.txt
Documentation/networking/operstates.txt
Documentation/networking/packet_mmap.txt
Documentation/powerpc/dts-bindings/can/sja1000.txt [new file with mode: 0644]
Documentation/rfkill.txt
MAINTAINERS
arch/alpha/include/asm/errno.h
arch/arm/kernel/signal.c
arch/arm/mach-pxa/tosa-bt.c
arch/arm/mach-pxa/tosa.c
arch/avr32/kernel/signal.c
arch/mips/include/asm/errno.h
arch/parisc/include/asm/errno.h
arch/powerpc/include/asm/qe.h
arch/powerpc/platforms/82xx/ep8248e.c
arch/powerpc/platforms/pasemi/gpio_mdio.c
arch/sparc/include/asm/errno.h
drivers/Makefile
drivers/block/aoe/aoecmd.c
drivers/bluetooth/dtl1_cs.c
drivers/bluetooth/hci_vhci.c
drivers/ieee802154/Kconfig [new file with mode: 0644]
drivers/ieee802154/Makefile [new file with mode: 0644]
drivers/ieee802154/fakehard.c [new file with mode: 0644]
drivers/infiniband/ulp/ipoib/ipoib_cm.c
drivers/infiniband/ulp/ipoib/ipoib_main.c
drivers/infiniband/ulp/ipoib/ipoib_multicast.c
drivers/infiniband/ulp/ipoib/ipoib_vlan.c
drivers/isdn/Kconfig
drivers/isdn/capi/capiutil.c
drivers/isdn/capi/kcapi.c
drivers/isdn/gigaset/Kconfig
drivers/isdn/gigaset/asyncdata.c
drivers/isdn/gigaset/common.c
drivers/isdn/gigaset/ev-layer.c
drivers/isdn/gigaset/gigaset.h
drivers/isdn/gigaset/i4l.c
drivers/isdn/gigaset/interface.c
drivers/isdn/gigaset/isocdata.c
drivers/isdn/gigaset/proc.c
drivers/isdn/gigaset/usb-gigaset.c
drivers/isdn/hardware/avm/b1.c
drivers/isdn/hardware/avm/b1dma.c
drivers/isdn/hardware/avm/c4.c
drivers/isdn/hardware/avm/t1isa.c
drivers/isdn/hardware/mISDN/Kconfig
drivers/isdn/hardware/mISDN/hfc_multi.h
drivers/isdn/hardware/mISDN/hfc_multi_8xx.h [new file with mode: 0644]
drivers/isdn/hardware/mISDN/hfcmulti.c
drivers/isdn/hardware/mISDN/hfcpci.c
drivers/isdn/hardware/mISDN/hfcsusb.c
drivers/isdn/hisax/hfc_pci.c
drivers/isdn/hisax/hisax.h
drivers/isdn/hysdn/hycapi.c
drivers/isdn/i4l/Kconfig
drivers/isdn/i4l/isdn_net.c
drivers/isdn/i4l/isdn_tty.c
drivers/isdn/mISDN/core.c
drivers/isdn/mISDN/dsp.h
drivers/isdn/mISDN/dsp_audio.c
drivers/isdn/mISDN/dsp_cmx.c
drivers/isdn/mISDN/dsp_core.c
drivers/isdn/mISDN/dsp_dtmf.c
drivers/isdn/mISDN/dsp_ecdis.h
drivers/isdn/mISDN/dsp_pipeline.c
drivers/isdn/mISDN/dsp_tones.c
drivers/isdn/mISDN/hwchannel.c
drivers/isdn/mISDN/l1oip.h
drivers/isdn/mISDN/l1oip_codec.c
drivers/isdn/mISDN/l1oip_core.c
drivers/isdn/mISDN/layer2.c
drivers/isdn/mISDN/layer2.h
drivers/isdn/mISDN/socket.c
drivers/isdn/mISDN/tei.c
drivers/isdn/mISDN/timerdev.c
drivers/message/fusion/mptlan.c
drivers/misc/sgi-xp/xpnet.c
drivers/net/3c501.c
drivers/net/3c503.c
drivers/net/3c505.c
drivers/net/3c507.c
drivers/net/3c509.c
drivers/net/3c515.c
drivers/net/3c523.c
drivers/net/3c527.c
drivers/net/3c59x.c
drivers/net/7990.c
drivers/net/8139cp.c
drivers/net/8139too.c
drivers/net/82596.c
drivers/net/8390.c
drivers/net/8390p.c
drivers/net/Kconfig
drivers/net/Makefile
drivers/net/a2065.c
drivers/net/acenic.c
drivers/net/appletalk/ipddp.c
drivers/net/arm/at91_ether.c
drivers/net/arm/ep93xx_eth.c
drivers/net/arm/ether3.c
drivers/net/arm/ixp4xx_eth.c
drivers/net/atl1c/atl1c_ethtool.c
drivers/net/atl1c/atl1c_main.c
drivers/net/atl1e/atl1e.h
drivers/net/atl1e/atl1e_main.c
drivers/net/atlx/atl1.c
drivers/net/au1000_eth.c
drivers/net/b44.c
drivers/net/b44.h
drivers/net/benet/be_main.c
drivers/net/bfin_mac.c
drivers/net/bmac.c
drivers/net/bnx2.c
drivers/net/bnx2.h
drivers/net/bnx2x.h
drivers/net/bnx2x_fw_file_hdr.h [new file with mode: 0644]
drivers/net/bnx2x_init.h
drivers/net/bnx2x_init_ops.h [new file with mode: 0644]
drivers/net/bnx2x_init_values.h [deleted file]
drivers/net/bnx2x_main.c
drivers/net/bonding/bond_3ad.c
drivers/net/bonding/bond_3ad.h
drivers/net/bonding/bond_main.c
drivers/net/bonding/bond_sysfs.c
drivers/net/bonding/bonding.h
drivers/net/can/Kconfig
drivers/net/can/Makefile
drivers/net/can/dev.c [new file with mode: 0644]
drivers/net/can/sja1000/Makefile [new file with mode: 0644]
drivers/net/can/sja1000/ems_pci.c [new file with mode: 0644]
drivers/net/can/sja1000/kvaser_pci.c [new file with mode: 0644]
drivers/net/can/sja1000/sja1000.c [new file with mode: 0644]
drivers/net/can/sja1000/sja1000.h [new file with mode: 0644]
drivers/net/can/sja1000/sja1000_of_platform.c [new file with mode: 0644]
drivers/net/can/sja1000/sja1000_platform.c [new file with mode: 0644]
drivers/net/cassini.c
drivers/net/chelsio/common.h
drivers/net/chelsio/cphy.h
drivers/net/chelsio/cxgb2.c
drivers/net/chelsio/mv88e1xxx.c
drivers/net/chelsio/mv88x201x.c
drivers/net/chelsio/my3126.c
drivers/net/chelsio/sge.c
drivers/net/chelsio/subr.c
drivers/net/cpmac.c
drivers/net/cs89x0.c
drivers/net/cxgb3/Makefile
drivers/net/cxgb3/adapter.h
drivers/net/cxgb3/ael1002.c
drivers/net/cxgb3/aq100x.c [new file with mode: 0644]
drivers/net/cxgb3/common.h
drivers/net/cxgb3/cxgb3_main.c
drivers/net/cxgb3/cxgb3_offload.c
drivers/net/cxgb3/cxgb3_offload.h
drivers/net/cxgb3/sge.c
drivers/net/cxgb3/t3_hw.c
drivers/net/cxgb3/version.h
drivers/net/cxgb3/vsc8211.c
drivers/net/davinci_emac.c [new file with mode: 0644]
drivers/net/de600.c
drivers/net/de620.c
drivers/net/declance.c
drivers/net/defxx.c
drivers/net/depca.c
drivers/net/dl2k.c
drivers/net/dm9000.c
drivers/net/e100.c
drivers/net/e1000/e1000_main.c
drivers/net/e1000e/82571.c
drivers/net/e1000e/defines.h
drivers/net/e1000e/e1000.h
drivers/net/e1000e/es2lan.c
drivers/net/e1000e/ethtool.c
drivers/net/e1000e/hw.h
drivers/net/e1000e/ich8lan.c
drivers/net/e1000e/lib.c
drivers/net/e1000e/netdev.c
drivers/net/e1000e/param.c
drivers/net/e1000e/phy.c
drivers/net/ehea/ehea_main.c
drivers/net/enic/enic_main.c
drivers/net/eql.c
drivers/net/ethoc.c
drivers/net/ewrk3.c
drivers/net/fec.c
drivers/net/fec.h
drivers/net/fec_mpc52xx.c
drivers/net/fec_mpc52xx_phy.c
drivers/net/forcedeth.c
drivers/net/fs_enet/fs_enet-main.c
drivers/net/fs_enet/fs_enet.h
drivers/net/fs_enet/mac-fec.c
drivers/net/fs_enet/mii-bitbang.c
drivers/net/fs_enet/mii-fec.c
drivers/net/fsl_pq_mdio.c
drivers/net/gianfar.c
drivers/net/gianfar.h
drivers/net/hamachi.c
drivers/net/hamradio/baycom_epp.c
drivers/net/hamradio/bpqether.c
drivers/net/hamradio/hdlcdrv.c
drivers/net/hamradio/mkiss.c
drivers/net/hp100.c
drivers/net/hplance.c
drivers/net/ibm_newemac/core.c
drivers/net/ibmlana.c
drivers/net/ibmveth.c
drivers/net/ifb.c
drivers/net/igb/e1000_82575.h
drivers/net/igb/e1000_defines.h
drivers/net/igb/e1000_mbx.c
drivers/net/igb/e1000_phy.h
drivers/net/igb/e1000_regs.h
drivers/net/igb/igb.h
drivers/net/igb/igb_ethtool.c
drivers/net/igb/igb_main.c
drivers/net/igbvf/ethtool.c
drivers/net/igbvf/igbvf.h
drivers/net/igbvf/netdev.c
drivers/net/ioc3-eth.c
drivers/net/irda/Kconfig
drivers/net/irda/Makefile
drivers/net/irda/au1k_ir.c
drivers/net/irda/bfin_sir.c [new file with mode: 0644]
drivers/net/irda/bfin_sir.h [new file with mode: 0644]
drivers/net/irda/donauboe.c
drivers/net/irda/irda-usb.c
drivers/net/irda/kingsun-sir.c
drivers/net/irda/ks959-sir.c
drivers/net/irda/ksdazzle-sir.c
drivers/net/irda/mcs7780.c
drivers/net/irda/pxaficp_ir.c
drivers/net/irda/sa1100_ir.c
drivers/net/irda/sir_dev.c
drivers/net/irda/smsc-ircc2.c
drivers/net/iseries_veth.c
drivers/net/ixgb/ixgb_hw.c
drivers/net/ixgb/ixgb_hw.h
drivers/net/ixgb/ixgb_main.c
drivers/net/ixgb/ixgb_osdep.h
drivers/net/ixgbe/Makefile
drivers/net/ixgbe/ixgbe.h
drivers/net/ixgbe/ixgbe_82598.c
drivers/net/ixgbe/ixgbe_82599.c
drivers/net/ixgbe/ixgbe_common.c
drivers/net/ixgbe/ixgbe_common.h
drivers/net/ixgbe/ixgbe_dcb_82598.c
drivers/net/ixgbe/ixgbe_dcb_82599.c
drivers/net/ixgbe/ixgbe_dcb_nl.c
drivers/net/ixgbe/ixgbe_ethtool.c
drivers/net/ixgbe/ixgbe_fcoe.c [new file with mode: 0644]
drivers/net/ixgbe/ixgbe_fcoe.h [new file with mode: 0644]
drivers/net/ixgbe/ixgbe_main.c
drivers/net/ixgbe/ixgbe_phy.c
drivers/net/ixgbe/ixgbe_phy.h
drivers/net/ixgbe/ixgbe_type.h
drivers/net/ixp2000/ixpdev.c
drivers/net/jazzsonic.c
drivers/net/jme.c
drivers/net/korina.c
drivers/net/ks8842.c [new file with mode: 0644]
drivers/net/lasi_82596.c
drivers/net/lib82596.c
drivers/net/lib8390.c
drivers/net/ll_temac.h [new file with mode: 0644]
drivers/net/ll_temac_main.c [new file with mode: 0644]
drivers/net/ll_temac_mdio.c [new file with mode: 0644]
drivers/net/loopback.c
drivers/net/mac8390.c
drivers/net/mac89x0.c
drivers/net/macb.c
drivers/net/mace.c
drivers/net/macmace.c
drivers/net/macvlan.c
drivers/net/mdio.c [new file with mode: 0644]
drivers/net/meth.c
drivers/net/mii.c
drivers/net/mipsnet.c
drivers/net/mlx4/Makefile
drivers/net/mlx4/en_cq.c
drivers/net/mlx4/en_ethtool.c [moved from drivers/net/mlx4/en_params.c with 86% similarity]
drivers/net/mlx4/en_main.c
drivers/net/mlx4/en_netdev.c
drivers/net/mlx4/en_rx.c
drivers/net/mlx4/en_tx.c
drivers/net/mlx4/eq.c
drivers/net/mlx4/mlx4_en.h
drivers/net/mlx4/mr.c
drivers/net/mv643xx_eth.c
drivers/net/mvme147.c
drivers/net/myri10ge/myri10ge.c
drivers/net/myri_sbus.c
drivers/net/ne2k-pci.c
drivers/net/ne3210.c
drivers/net/netx-eth.c
drivers/net/netxen/netxen_nic.h
drivers/net/netxen/netxen_nic_ctx.c
drivers/net/netxen/netxen_nic_ethtool.c
drivers/net/netxen/netxen_nic_hdr.h
drivers/net/netxen/netxen_nic_hw.c
drivers/net/netxen/netxen_nic_hw.h
drivers/net/netxen/netxen_nic_init.c
drivers/net/netxen/netxen_nic_main.c
drivers/net/netxen/netxen_nic_niu.c
drivers/net/netxen/netxen_nic_phan_reg.h
drivers/net/ni65.c
drivers/net/niu.c
drivers/net/ns83820.c
drivers/net/pasemi_mac.c
drivers/net/pasemi_mac.h
drivers/net/pci-skeleton.c
drivers/net/pcmcia/3c574_cs.c
drivers/net/pcmcia/3c589_cs.c
drivers/net/pcmcia/axnet_cs.c
drivers/net/pcmcia/fmvj18x_cs.c
drivers/net/pcmcia/smc91c92_cs.c
drivers/net/pcmcia/xirc2ps_cs.c
drivers/net/pcnet32.c
drivers/net/phy/marvell.c
drivers/net/phy/mdio_bus.c
drivers/net/phy/phy_device.c
drivers/net/plip.c
drivers/net/ppp_generic.c
drivers/net/pppol2tp.c
drivers/net/qla3xxx.c
drivers/net/qlge/qlge.h
drivers/net/qlge/qlge_ethtool.c
drivers/net/qlge/qlge_main.c
drivers/net/qlge/qlge_mpi.c
drivers/net/r6040.c
drivers/net/r8169.c
drivers/net/rionet.c
drivers/net/rrunner.c
drivers/net/s2io-regs.h
drivers/net/s2io.c
drivers/net/s2io.h
drivers/net/sb1250-mac.c
drivers/net/sfc/Kconfig
drivers/net/sfc/boards.c
drivers/net/sfc/efx.c
drivers/net/sfc/ethtool.c
drivers/net/sfc/falcon.c
drivers/net/sfc/falcon_hwdefs.h
drivers/net/sfc/falcon_xmac.c
drivers/net/sfc/mdio_10g.c
drivers/net/sfc/mdio_10g.h
drivers/net/sfc/net_driver.h
drivers/net/sfc/rx.c
drivers/net/sfc/selftest.c
drivers/net/sfc/selftest.h
drivers/net/sfc/sfe4001.c
drivers/net/sfc/tenxpress.c
drivers/net/sfc/tx.c
drivers/net/sfc/xenpack.h [deleted file]
drivers/net/sfc/xfp_phy.c
drivers/net/sgiseeq.c
drivers/net/sh_eth.c
drivers/net/sh_eth.h
drivers/net/sis190.c
drivers/net/sis900.c
drivers/net/skfp/skfddi.c
drivers/net/skge.c
drivers/net/sky2.c
drivers/net/smc-mca.c
drivers/net/smc911x.c
drivers/net/smc9194.c
drivers/net/smsc911x.c
drivers/net/sonic.c
drivers/net/starfire.c
drivers/net/sun3_82586.c
drivers/net/sun3lance.c
drivers/net/sundance.c
drivers/net/sunhme.c
drivers/net/tc35815.c
drivers/net/tehuti.c
drivers/net/tg3.c
drivers/net/tg3.h
drivers/net/tlan.c
drivers/net/tokenring/3c359.c
drivers/net/tokenring/lanstreamer.c
drivers/net/tokenring/olympic.c
drivers/net/tokenring/smctr.c
drivers/net/tokenring/tms380tr.c
drivers/net/tulip/Kconfig
drivers/net/tulip/de2104x.c
drivers/net/tulip/de4x5.c
drivers/net/tulip/dmfe.c
drivers/net/tulip/uli526x.c
drivers/net/tulip/winbond-840.c
drivers/net/tun.c
drivers/net/ucc_geth.c
drivers/net/ucc_geth.h
drivers/net/usb/Kconfig
drivers/net/usb/Makefile
drivers/net/usb/cdc_ether.c
drivers/net/usb/dm9601.c
drivers/net/usb/hso.c
drivers/net/usb/int51x1.c [new file with mode: 0644]
drivers/net/usb/kaweth.c
drivers/net/usb/rtl8150.c
drivers/net/usb/smsc95xx.c
drivers/net/usb/usbnet.c
drivers/net/veth.c
drivers/net/via-rhine.c
drivers/net/via-velocity.c
drivers/net/via-velocity.h
drivers/net/virtio_net.c
drivers/net/vxge/vxge-config.c
drivers/net/vxge/vxge-main.c
drivers/net/vxge/vxge-traffic.c
drivers/net/wan/cycx_x25.c
drivers/net/wan/dlci.c
drivers/net/wan/hdlc_fr.c
drivers/net/wan/ixp4xx_hss.c
drivers/net/wan/pc300_drv.c
drivers/net/wan/sbni.c
drivers/net/wan/wanxl.c
drivers/net/wimax/i2400m/control.c
drivers/net/wimax/i2400m/driver.c
drivers/net/wimax/i2400m/fw.c
drivers/net/wimax/i2400m/i2400m-sdio.h
drivers/net/wimax/i2400m/i2400m.h
drivers/net/wimax/i2400m/netdev.c
drivers/net/wimax/i2400m/op-rfkill.c
drivers/net/wimax/i2400m/rx.c
drivers/net/wimax/i2400m/sdio-fw.c
drivers/net/wimax/i2400m/sdio-rx.c
drivers/net/wimax/i2400m/sdio.c
drivers/net/wimax/i2400m/tx.c
drivers/net/wimax/i2400m/usb.c
drivers/net/wireless/Kconfig
drivers/net/wireless/Makefile
drivers/net/wireless/adm8211.c
drivers/net/wireless/airo.c
drivers/net/wireless/arlan-main.c
drivers/net/wireless/at76c50x-usb.c
drivers/net/wireless/ath/Kconfig [new file with mode: 0644]
drivers/net/wireless/ath/Makefile [new file with mode: 0644]
drivers/net/wireless/ath/ar9170/Kconfig [moved from drivers/net/wireless/ar9170/Kconfig with 96% similarity]
drivers/net/wireless/ath/ar9170/Makefile [moved from drivers/net/wireless/ar9170/Makefile with 100% similarity]
drivers/net/wireless/ath/ar9170/ar9170.h [moved from drivers/net/wireless/ar9170/ar9170.h with 75% similarity]
drivers/net/wireless/ath/ar9170/cmd.c [moved from drivers/net/wireless/ar9170/cmd.c with 100% similarity]
drivers/net/wireless/ath/ar9170/cmd.h [moved from drivers/net/wireless/ar9170/cmd.h with 100% similarity]
drivers/net/wireless/ath/ar9170/eeprom.h [moved from drivers/net/wireless/ar9170/eeprom.h with 100% similarity]
drivers/net/wireless/ath/ar9170/hw.h [moved from drivers/net/wireless/ar9170/hw.h with 96% similarity]
drivers/net/wireless/ath/ar9170/led.c [moved from drivers/net/wireless/ar9170/led.c with 94% similarity]
drivers/net/wireless/ath/ar9170/mac.c [moved from drivers/net/wireless/ar9170/mac.c with 86% similarity]
drivers/net/wireless/ath/ar9170/main.c [moved from drivers/net/wireless/ar9170/main.c with 55% similarity]
drivers/net/wireless/ath/ar9170/phy.c [moved from drivers/net/wireless/ar9170/phy.c with 99% similarity]
drivers/net/wireless/ath/ar9170/usb.c [moved from drivers/net/wireless/ar9170/usb.c with 83% similarity]
drivers/net/wireless/ath/ar9170/usb.h [moved from drivers/net/wireless/ar9170/usb.h with 92% similarity]
drivers/net/wireless/ath/ath5k/Kconfig [moved from drivers/net/wireless/ath5k/Kconfig with 98% similarity]
drivers/net/wireless/ath/ath5k/Makefile [moved from drivers/net/wireless/ath5k/Makefile with 93% similarity]
drivers/net/wireless/ath/ath5k/ath5k.h [moved from drivers/net/wireless/ath5k/ath5k.h with 97% similarity]
drivers/net/wireless/ath/ath5k/attach.c [moved from drivers/net/wireless/ath5k/attach.c with 99% similarity]
drivers/net/wireless/ath/ath5k/base.c [moved from drivers/net/wireless/ath5k/base.c with 93% similarity]
drivers/net/wireless/ath/ath5k/base.h [moved from drivers/net/wireless/ath5k/base.h with 96% similarity]
drivers/net/wireless/ath/ath5k/caps.c [moved from drivers/net/wireless/ath5k/caps.c with 100% similarity]
drivers/net/wireless/ath/ath5k/debug.c [moved from drivers/net/wireless/ath5k/debug.c with 100% similarity]
drivers/net/wireless/ath/ath5k/debug.h [moved from drivers/net/wireless/ath5k/debug.h with 100% similarity]
drivers/net/wireless/ath/ath5k/desc.c [moved from drivers/net/wireless/ath5k/desc.c with 100% similarity]
drivers/net/wireless/ath/ath5k/desc.h [moved from drivers/net/wireless/ath5k/desc.h with 100% similarity]
drivers/net/wireless/ath/ath5k/dma.c [moved from drivers/net/wireless/ath5k/dma.c with 99% similarity]
drivers/net/wireless/ath/ath5k/eeprom.c [moved from drivers/net/wireless/ath5k/eeprom.c with 96% similarity]
drivers/net/wireless/ath/ath5k/eeprom.h [moved from drivers/net/wireless/ath5k/eeprom.h with 94% similarity]
drivers/net/wireless/ath/ath5k/gpio.c [moved from drivers/net/wireless/ath5k/gpio.c with 100% similarity]
drivers/net/wireless/ath/ath5k/initvals.c [moved from drivers/net/wireless/ath5k/initvals.c with 99% similarity]
drivers/net/wireless/ath/ath5k/led.c [moved from drivers/net/wireless/ath5k/led.c with 94% similarity]
drivers/net/wireless/ath/ath5k/pcu.c [moved from drivers/net/wireless/ath5k/pcu.c with 99% similarity]
drivers/net/wireless/ath/ath5k/phy.c [moved from drivers/net/wireless/ath5k/phy.c with 83% similarity]
drivers/net/wireless/ath/ath5k/qcu.c [moved from drivers/net/wireless/ath5k/qcu.c with 98% similarity]
drivers/net/wireless/ath/ath5k/reg.h [moved from drivers/net/wireless/ath5k/reg.h with 99% similarity]
drivers/net/wireless/ath/ath5k/reset.c [moved from drivers/net/wireless/ath5k/reset.c with 95% similarity]
drivers/net/wireless/ath/ath5k/rfbuffer.h [moved from drivers/net/wireless/ath5k/rfbuffer.h with 100% similarity]
drivers/net/wireless/ath/ath5k/rfgain.h [moved from drivers/net/wireless/ath5k/rfgain.h with 100% similarity]
drivers/net/wireless/ath/ath5k/rfkill.c [new file with mode: 0644]
drivers/net/wireless/ath/ath9k/Kconfig [moved from drivers/net/wireless/ath9k/Kconfig with 97% similarity]
drivers/net/wireless/ath/ath9k/Makefile [moved from drivers/net/wireless/ath9k/Makefile with 96% similarity]
drivers/net/wireless/ath/ath9k/ahb.c [moved from drivers/net/wireless/ath9k/ahb.c with 100% similarity]
drivers/net/wireless/ath/ath9k/ani.c [moved from drivers/net/wireless/ath9k/ani.c with 99% similarity]
drivers/net/wireless/ath/ath9k/ani.h [moved from drivers/net/wireless/ath9k/ani.h with 100% similarity]
drivers/net/wireless/ath/ath9k/ath9k.h [moved from drivers/net/wireless/ath9k/ath9k.h with 88% similarity]
drivers/net/wireless/ath/ath9k/beacon.c [moved from drivers/net/wireless/ath9k/beacon.c with 90% similarity]
drivers/net/wireless/ath/ath9k/calib.c [moved from drivers/net/wireless/ath9k/calib.c with 90% similarity]
drivers/net/wireless/ath/ath9k/calib.h [moved from drivers/net/wireless/ath9k/calib.h with 81% similarity]
drivers/net/wireless/ath/ath9k/debug.c [moved from drivers/net/wireless/ath9k/debug.c with 87% similarity]
drivers/net/wireless/ath/ath9k/debug.h [moved from drivers/net/wireless/ath9k/debug.h with 84% similarity]
drivers/net/wireless/ath/ath9k/eeprom.c [moved from drivers/net/wireless/ath9k/eeprom.c with 98% similarity]
drivers/net/wireless/ath/ath9k/eeprom.h [moved from drivers/net/wireless/ath9k/eeprom.h with 99% similarity]
drivers/net/wireless/ath/ath9k/hw.c [moved from drivers/net/wireless/ath9k/hw.c with 95% similarity]
drivers/net/wireless/ath/ath9k/hw.h [moved from drivers/net/wireless/ath9k/hw.h with 87% similarity]
drivers/net/wireless/ath/ath9k/initvals.h [moved from drivers/net/wireless/ath9k/initvals.h with 100% similarity]
drivers/net/wireless/ath/ath9k/mac.c [moved from drivers/net/wireless/ath9k/mac.c with 93% similarity]
drivers/net/wireless/ath/ath9k/mac.h [moved from drivers/net/wireless/ath9k/mac.h with 100% similarity]
drivers/net/wireless/ath/ath9k/main.c [moved from drivers/net/wireless/ath9k/main.c with 87% similarity]
drivers/net/wireless/ath/ath9k/pci.c [moved from drivers/net/wireless/ath9k/pci.c with 93% similarity]
drivers/net/wireless/ath/ath9k/phy.c [moved from drivers/net/wireless/ath9k/phy.c with 98% similarity]
drivers/net/wireless/ath/ath9k/phy.h [moved from drivers/net/wireless/ath9k/phy.h with 99% similarity]
drivers/net/wireless/ath/ath9k/rc.c [moved from drivers/net/wireless/ath9k/rc.c with 95% similarity]
drivers/net/wireless/ath/ath9k/rc.h [moved from drivers/net/wireless/ath9k/rc.h with 98% similarity]
drivers/net/wireless/ath/ath9k/recv.c [moved from drivers/net/wireless/ath9k/recv.c with 75% similarity]
drivers/net/wireless/ath/ath9k/reg.h [moved from drivers/net/wireless/ath9k/reg.h with 100% similarity]
drivers/net/wireless/ath/ath9k/virtual.c [moved from drivers/net/wireless/ath9k/virtual.c with 100% similarity]
drivers/net/wireless/ath/ath9k/xmit.c [moved from drivers/net/wireless/ath9k/xmit.c with 97% similarity]
drivers/net/wireless/ath/main.c [new file with mode: 0644]
drivers/net/wireless/ath/regd.c [moved from drivers/net/wireless/ath9k/regd.c with 61% similarity]
drivers/net/wireless/ath/regd.h [moved from drivers/net/wireless/ath9k/regd.h with 85% similarity]
drivers/net/wireless/ath/regd_common.h [moved from drivers/net/wireless/ath9k/regd_common.h with 100% similarity]
drivers/net/wireless/atmel.c
drivers/net/wireless/atmel_cs.c
drivers/net/wireless/b43/Kconfig
drivers/net/wireless/b43/Makefile
drivers/net/wireless/b43/b43.h
drivers/net/wireless/b43/dma.c
drivers/net/wireless/b43/leds.c
drivers/net/wireless/b43/main.c
drivers/net/wireless/b43/main.h
drivers/net/wireless/b43/phy_a.c
drivers/net/wireless/b43/phy_common.c
drivers/net/wireless/b43/phy_common.h
drivers/net/wireless/b43/phy_g.c
drivers/net/wireless/b43/phy_lp.c
drivers/net/wireless/b43/phy_n.c
drivers/net/wireless/b43/pio.c
drivers/net/wireless/b43/rfkill.c
drivers/net/wireless/b43/rfkill.h
drivers/net/wireless/b43/xmit.c
drivers/net/wireless/b43legacy/Kconfig
drivers/net/wireless/b43legacy/Makefile
drivers/net/wireless/b43legacy/b43legacy.h
drivers/net/wireless/b43legacy/leds.c
drivers/net/wireless/b43legacy/main.c
drivers/net/wireless/b43legacy/pio.c
drivers/net/wireless/b43legacy/rfkill.c
drivers/net/wireless/b43legacy/rfkill.h
drivers/net/wireless/b43legacy/xmit.c
drivers/net/wireless/b43legacy/xmit.h
drivers/net/wireless/hostap/hostap_80211_tx.c
drivers/net/wireless/hostap/hostap_hw.c
drivers/net/wireless/hostap/hostap_plx.c
drivers/net/wireless/ipw2x00/ipw2100.c
drivers/net/wireless/ipw2x00/ipw2200.c
drivers/net/wireless/ipw2x00/libipw_module.c
drivers/net/wireless/ipw2x00/libipw_tx.c
drivers/net/wireless/iwlwifi/Kconfig
drivers/net/wireless/iwlwifi/Makefile
drivers/net/wireless/iwlwifi/iwl-3945-led.c
drivers/net/wireless/iwlwifi/iwl-3945-rs.c
drivers/net/wireless/iwlwifi/iwl-3945.c
drivers/net/wireless/iwlwifi/iwl-3945.h
drivers/net/wireless/iwlwifi/iwl-4965.c
drivers/net/wireless/iwlwifi/iwl-5000-hw.h
drivers/net/wireless/iwlwifi/iwl-5000.c
drivers/net/wireless/iwlwifi/iwl-agn-rs.c
drivers/net/wireless/iwlwifi/iwl-agn-rs.h
drivers/net/wireless/iwlwifi/iwl-agn.c
drivers/net/wireless/iwlwifi/iwl-calib.c
drivers/net/wireless/iwlwifi/iwl-commands.h
drivers/net/wireless/iwlwifi/iwl-core.c
drivers/net/wireless/iwlwifi/iwl-core.h
drivers/net/wireless/iwlwifi/iwl-csr.h
drivers/net/wireless/iwlwifi/iwl-debug.h
drivers/net/wireless/iwlwifi/iwl-debugfs.c
drivers/net/wireless/iwlwifi/iwl-dev.h
drivers/net/wireless/iwlwifi/iwl-eeprom.c
drivers/net/wireless/iwlwifi/iwl-eeprom.h
drivers/net/wireless/iwlwifi/iwl-io.h
drivers/net/wireless/iwlwifi/iwl-led.c
drivers/net/wireless/iwlwifi/iwl-power.c
drivers/net/wireless/iwlwifi/iwl-power.h
drivers/net/wireless/iwlwifi/iwl-rfkill.c [deleted file]
drivers/net/wireless/iwlwifi/iwl-rfkill.h [deleted file]
drivers/net/wireless/iwlwifi/iwl-rx.c
drivers/net/wireless/iwlwifi/iwl-scan.c
drivers/net/wireless/iwlwifi/iwl-sta.c
drivers/net/wireless/iwlwifi/iwl-sta.h
drivers/net/wireless/iwlwifi/iwl-tx.c
drivers/net/wireless/iwlwifi/iwl3945-base.c
drivers/net/wireless/iwmc3200wifi/Kconfig [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/Makefile [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/bus.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/cfg80211.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/cfg80211.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/commands.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/commands.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/debug.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/debugfs.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/eeprom.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/eeprom.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/fw.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/fw.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/hal.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/hal.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/iwm.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/lmac.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/main.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/netdev.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/rx.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/rx.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/sdio.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/sdio.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/tx.c [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/umac.h [new file with mode: 0644]
drivers/net/wireless/iwmc3200wifi/wext.c [new file with mode: 0644]
drivers/net/wireless/libertas/11d.c
drivers/net/wireless/libertas/11d.h
drivers/net/wireless/libertas/assoc.c
drivers/net/wireless/libertas/assoc.h
drivers/net/wireless/libertas/cmd.c
drivers/net/wireless/libertas/cmdresp.c
drivers/net/wireless/libertas/debugfs.c
drivers/net/wireless/libertas/defs.h
drivers/net/wireless/libertas/dev.h
drivers/net/wireless/libertas/host.h
drivers/net/wireless/libertas/hostcmd.h
drivers/net/wireless/libertas/if_cs.c
drivers/net/wireless/libertas/if_sdio.c
drivers/net/wireless/libertas/if_sdio.h
drivers/net/wireless/libertas/if_spi.c
drivers/net/wireless/libertas/if_usb.c
drivers/net/wireless/libertas/main.c
drivers/net/wireless/libertas/rx.c
drivers/net/wireless/libertas/scan.c
drivers/net/wireless/libertas/tx.c
drivers/net/wireless/libertas/types.h
drivers/net/wireless/libertas_tf/if_usb.c
drivers/net/wireless/libertas_tf/main.c
drivers/net/wireless/mac80211_hwsim.c
drivers/net/wireless/mwl8k.c
drivers/net/wireless/p54/p54.h
drivers/net/wireless/p54/p54common.c
drivers/net/wireless/p54/p54spi.c
drivers/net/wireless/p54/p54usb.c
drivers/net/wireless/p54/p54usb.h
drivers/net/wireless/prism54/islpci_eth.c
drivers/net/wireless/ray_cs.c
drivers/net/wireless/rndis_wlan.c
drivers/net/wireless/rt2x00/Kconfig
drivers/net/wireless/rt2x00/Makefile
drivers/net/wireless/rt2x00/rt2400pci.c
drivers/net/wireless/rt2x00/rt2500pci.c
drivers/net/wireless/rt2x00/rt2500usb.c
drivers/net/wireless/rt2x00/rt2800usb.c [new file with mode: 0644]
drivers/net/wireless/rt2x00/rt2800usb.h [new file with mode: 0644]
drivers/net/wireless/rt2x00/rt2x00.h
drivers/net/wireless/rt2x00/rt2x00config.c
drivers/net/wireless/rt2x00/rt2x00crypto.c
drivers/net/wireless/rt2x00/rt2x00dev.c
drivers/net/wireless/rt2x00/rt2x00ht.c [new file with mode: 0644]
drivers/net/wireless/rt2x00/rt2x00lib.h
drivers/net/wireless/rt2x00/rt2x00link.c
drivers/net/wireless/rt2x00/rt2x00mac.c
drivers/net/wireless/rt2x00/rt2x00pci.c
drivers/net/wireless/rt2x00/rt2x00queue.c
drivers/net/wireless/rt2x00/rt2x00queue.h
drivers/net/wireless/rt2x00/rt61pci.c
drivers/net/wireless/rt2x00/rt61pci.h
drivers/net/wireless/rt2x00/rt73usb.c
drivers/net/wireless/rtl818x/Makefile
drivers/net/wireless/rtl818x/rtl8180_dev.c
drivers/net/wireless/rtl818x/rtl8187.h
drivers/net/wireless/rtl818x/rtl8187_dev.c
drivers/net/wireless/rtl818x/rtl8187_leds.c [new file with mode: 0644]
drivers/net/wireless/rtl818x/rtl8187_leds.h [new file with mode: 0644]
drivers/net/wireless/strip.c
drivers/net/wireless/wavelan.c
drivers/net/wireless/wavelan_cs.c
drivers/net/wireless/wl12xx/Kconfig [new file with mode: 0644]
drivers/net/wireless/wl12xx/Makefile [new file with mode: 0644]
drivers/net/wireless/wl12xx/acx.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/acx.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/boot.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/boot.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/cmd.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/cmd.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/debugfs.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/debugfs.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/event.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/event.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/init.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/init.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/main.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/ps.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/ps.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/reg.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/rx.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/rx.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/spi.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/spi.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/tx.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/tx.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/wl1251.c [new file with mode: 0644]
drivers/net/wireless/wl12xx/wl1251.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/wl12xx.h [new file with mode: 0644]
drivers/net/wireless/wl12xx/wl12xx_80211.h [new file with mode: 0644]
drivers/net/wireless/wl3501_cs.c
drivers/net/wireless/zd1201.c
drivers/net/wireless/zd1211rw/zd_mac.c
drivers/net/wireless/zd1211rw/zd_mac.h
drivers/net/yellowfin.c
drivers/of/Kconfig
drivers/of/Makefile
drivers/of/base.c
drivers/of/of_mdio.c [new file with mode: 0644]
drivers/pci/quirks.c
drivers/platform/x86/Kconfig
drivers/platform/x86/acer-wmi.c
drivers/platform/x86/dell-laptop.c
drivers/platform/x86/eeepc-laptop.c
drivers/platform/x86/hp-wmi.c
drivers/platform/x86/sony-laptop.c
drivers/platform/x86/thinkpad_acpi.c
drivers/platform/x86/toshiba_acpi.c
drivers/s390/net/claw.c
drivers/s390/net/ctcm_main.c
drivers/s390/net/netiucv.c
drivers/s390/net/qeth_core_main.c
drivers/s390/net/qeth_core_mpc.c
drivers/s390/net/qeth_core_mpc.h
drivers/s390/net/qeth_l2_main.c
drivers/s390/net/qeth_l3_main.c
drivers/scsi/fcoe/fcoe.c
drivers/scsi/fcoe/libfcoe.c
drivers/serial/serial_cs.c
drivers/staging/agnx/pci.c
drivers/staging/at76_usb/at76_usb.c
drivers/staging/et131x/et131x_netdev.c
drivers/staging/rtl8187se/ieee80211/ieee80211_tx.c
drivers/staging/wlan-ng/p80211netdev.c
drivers/usb/gadget/f_phonet.c
drivers/usb/gadget/u_ether.c
firmware/Makefile
firmware/WHENCE
firmware/bnx2x-e1-4.8.53.0.fw.ihex [new file with mode: 0644]
firmware/bnx2x-e1h-4.8.53.0.fw.ihex [new file with mode: 0644]
firmware/cis/3CCFEM556.cis.ihex [new file with mode: 0644]
firmware/cis/3CXEM556.cis.ihex [new file with mode: 0644]
firmware/cxgb3/t3fw-7.1.0.bin.ihex [deleted file]
firmware/cxgb3/t3fw-7.4.0.bin.ihex [new file with mode: 0644]
include/asm-generic/errno.h
include/linux/Kbuild
include/linux/can/Kbuild
include/linux/can/dev.h [new file with mode: 0644]
include/linux/can/netlink.h [new file with mode: 0644]
include/linux/can/platform/sja1000.h [new file with mode: 0644]
include/linux/etherdevice.h
include/linux/ethtool.h
include/linux/fs_enet_pd.h
include/linux/ieee80211.h
include/linux/if.h
include/linux/if_arp.h
include/linux/if_ether.h
include/linux/if_packet.h
include/linux/if_tun.h
include/linux/if_tunnel.h
include/linux/if_vlan.h
include/linux/in.h
include/linux/ipv6.h
include/linux/isdn/capilli.h
include/linux/list_nulls.h
include/linux/mISDNdsp.h
include/linux/mISDNhw.h
include/linux/mISDNif.h
include/linux/mdio.h [new file with mode: 0644]
include/linux/mii.h
include/linux/mmc/sdio_ids.h
include/linux/net_dropmon.h
include/linux/netdevice.h
include/linux/netfilter/Kbuild
include/linux/netfilter/nf_conntrack_common.h
include/linux/netfilter/nf_conntrack_tcp.h
include/linux/netfilter/nfnetlink.h
include/linux/netfilter/nfnetlink_conntrack.h
include/linux/netfilter/x_tables.h
include/linux/netfilter/xt_NFQUEUE.h
include/linux/netfilter/xt_osf.h [new file with mode: 0644]
include/linux/netfilter/xt_socket.h [new file with mode: 0644]
include/linux/nl80211.h
include/linux/nl802154.h [new file with mode: 0644]
include/linux/notifier.h
include/linux/of.h
include/linux/of_mdio.h [new file with mode: 0644]
include/linux/pci_ids.h
include/linux/phy.h
include/linux/rfkill.h
include/linux/sched.h
include/linux/sctp.h
include/linux/skbuff.h
include/linux/smsc911x.h
include/linux/snmp.h
include/linux/socket.h
include/linux/spi/libertas_spi.h
include/linux/spi/wl12xx.h [new file with mode: 0644]
include/linux/tcp.h
include/linux/usb/usbnet.h
include/linux/wimax.h
include/linux/wimax/i2400m.h
include/net/bluetooth/bluetooth.h
include/net/bluetooth/hci_core.h
include/net/bluetooth/l2cap.h
include/net/cfg80211.h
include/net/dst.h
include/net/fib_rules.h
include/net/genetlink.h
include/net/ieee802154/af_ieee802154.h [new file with mode: 0644]
include/net/ieee802154/mac_def.h [new file with mode: 0644]
include/net/ieee802154/netdevice.h [new file with mode: 0644]
include/net/ieee802154/nl802154.h [new file with mode: 0644]
include/net/inet6_hashtables.h
include/net/inet_hashtables.h
include/net/inet_sock.h
include/net/ip.h
include/net/ip6_route.h
include/net/ip_fib.h
include/net/ipip.h
include/net/ipv6.h
include/net/iucv/af_iucv.h
include/net/mac80211.h
include/net/netfilter/ipv4/nf_conntrack_icmp.h [deleted file]
include/net/netfilter/ipv6/nf_conntrack_icmpv6.h
include/net/netfilter/nf_conntrack.h
include/net/netfilter/nf_conntrack_ecache.h
include/net/netfilter/nf_conntrack_extend.h
include/net/netfilter/nf_conntrack_helper.h
include/net/netfilter/nf_conntrack_l4proto.h
include/net/netlink.h
include/net/netns/conntrack.h
include/net/pkt_sched.h
include/net/regulatory.h [new file with mode: 0644]
include/net/route.h
include/net/sctp/structs.h
include/net/sctp/user.h
include/net/snmp.h
include/net/sock.h
include/net/tcp.h
include/net/wimax.h
include/net/wireless.h [deleted file]
include/net/xfrm.h
include/scsi/libfcoe.h
include/trace/events/napi.h [new file with mode: 0644]
net/802/fddi.c
net/802/hippi.c
net/8021q/vlan.c
net/8021q/vlan_core.c
net/8021q/vlan_dev.c
net/8021q/vlanproc.c
net/Kconfig
net/Makefile
net/appletalk/ddp.c
net/appletalk/dev.c
net/atm/br2684.c
net/atm/clip.c
net/atm/lec.c
net/bluetooth/Kconfig
net/bluetooth/cmtp/capi.c
net/bluetooth/hci_core.c
net/bluetooth/l2cap.c
net/bluetooth/rfcomm/core.c
net/bridge/br.c
net/bridge/br_fdb.c
net/bridge/br_netfilter.c
net/bridge/br_private.h
net/bridge/br_sysfs_br.c
net/bridge/br_sysfs_if.c
net/bridge/netfilter/ebtables.c
net/can/af_can.c
net/core/datagram.c
net/core/dev.c
net/core/drop_monitor.c
net/core/fib_rules.c
net/core/gen_estimator.c
net/core/iovec.c
net/core/neighbour.c
net/core/net-sysfs.c
net/core/net-traces.c
net/core/net_namespace.c
net/core/netpoll.c
net/core/pktgen.c
net/core/skb_dma_map.c
net/core/skbuff.c
net/core/sock.c
net/core/stream.c
net/core/user_dma.c
net/dccp/ipv4.c
net/dccp/ipv6.c
net/dccp/output.c
net/decnet/af_decnet.c
net/decnet/dn_neigh.c
net/decnet/dn_nsp_in.c
net/decnet/dn_nsp_out.c
net/decnet/dn_route.c
net/decnet/dn_rules.c
net/dsa/slave.c
net/econet/af_econet.c
net/ethernet/eth.c
net/ieee802154/Kconfig [new file with mode: 0644]
net/ieee802154/Makefile [new file with mode: 0644]
net/ieee802154/af802154.h [new file with mode: 0644]
net/ieee802154/af_ieee802154.c [new file with mode: 0644]
net/ieee802154/dgram.c [new file with mode: 0644]
net/ieee802154/netlink.c [new file with mode: 0644]
net/ieee802154/nl_policy.c [new file with mode: 0644]
net/ieee802154/raw.c [new file with mode: 0644]
net/ipv4/Kconfig
net/ipv4/af_inet.c
net/ipv4/arp.c
net/ipv4/devinet.c
net/ipv4/fib_frontend.c
net/ipv4/fib_hash.c
net/ipv4/fib_lookup.h
net/ipv4/fib_rules.c
net/ipv4/fib_semantics.c
net/ipv4/fib_trie.c
net/ipv4/icmp.c
net/ipv4/igmp.c
net/ipv4/inet_diag.c
net/ipv4/inet_timewait_sock.c
net/ipv4/ip_forward.c
net/ipv4/ip_fragment.c
net/ipv4/ip_gre.c
net/ipv4/ip_input.c
net/ipv4/ip_options.c
net/ipv4/ip_output.c
net/ipv4/ip_sockglue.c
net/ipv4/ipconfig.c
net/ipv4/ipip.c
net/ipv4/ipmr.c
net/ipv4/netfilter.c
net/ipv4/netfilter/arp_tables.c
net/ipv4/netfilter/ip_queue.c
net/ipv4/netfilter/ip_tables.c
net/ipv4/netfilter/ipt_MASQUERADE.c
net/ipv4/netfilter/ipt_REJECT.c
net/ipv4/netfilter/nf_conntrack_proto_icmp.c
net/ipv4/netfilter/nf_nat_helper.c
net/ipv4/netfilter/nf_nat_proto_sctp.c
net/ipv4/netfilter/nf_nat_standalone.c
net/ipv4/proc.c
net/ipv4/raw.c
net/ipv4/route.c
net/ipv4/syncookies.c
net/ipv4/tcp.c
net/ipv4/tcp_input.c
net/ipv4/tcp_ipv4.c
net/ipv4/tcp_output.c
net/ipv4/udp.c
net/ipv4/xfrm4_input.c
net/ipv4/xfrm4_mode_tunnel.c
net/ipv4/xfrm4_output.c
net/ipv6/addrconf.c
net/ipv6/af_inet6.c
net/ipv6/exthdrs.c
net/ipv6/fib6_rules.c
net/ipv6/inet6_connection_sock.c
net/ipv6/ip6_input.c
net/ipv6/ip6_output.c
net/ipv6/ip6_tunnel.c
net/ipv6/ip6mr.c
net/ipv6/mcast.c
net/ipv6/ndisc.c
net/ipv6/netfilter.c
net/ipv6/netfilter/ip6_queue.c
net/ipv6/netfilter/ip6_tables.c
net/ipv6/netfilter/ip6t_REJECT.c
net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c
net/ipv6/netfilter/nf_conntrack_reasm.c
net/ipv6/proc.c
net/ipv6/raw.c
net/ipv6/reassembly.c
net/ipv6/route.c
net/ipv6/sit.c
net/ipv6/syncookies.c
net/ipv6/tcp_ipv6.c
net/ipv6/udp.c
net/ipv6/xfrm6_mode_tunnel.c
net/ipv6/xfrm6_output.c
net/irda/irlap_frame.c
net/irda/irnetlink.c
net/iucv/af_iucv.c
net/iucv/iucv.c
net/llc/af_llc.c
net/llc/llc_conn.c
net/mac80211/Kconfig
net/mac80211/agg-rx.c
net/mac80211/agg-tx.c
net/mac80211/cfg.c
net/mac80211/debugfs.c
net/mac80211/driver-ops.h [new file with mode: 0644]
net/mac80211/event.c
net/mac80211/ht.c
net/mac80211/ibss.c
net/mac80211/ieee80211_i.h
net/mac80211/iface.c
net/mac80211/key.c
net/mac80211/key.h
net/mac80211/main.c
net/mac80211/mesh.c
net/mac80211/mesh.h
net/mac80211/mesh_hwmp.c
net/mac80211/mesh_plink.c
net/mac80211/mlme.c
net/mac80211/pm.c
net/mac80211/rc80211_minstrel.c
net/mac80211/rc80211_pid_algo.c
net/mac80211/rx.c
net/mac80211/scan.c
net/mac80211/spectmgmt.c
net/mac80211/sta_info.c
net/mac80211/sta_info.h
net/mac80211/tkip.c
net/mac80211/tx.c
net/mac80211/util.c
net/mac80211/wext.c
net/mac80211/wme.c
net/mac80211/wpa.c
net/netfilter/Kconfig
net/netfilter/Makefile
net/netfilter/ipvs/ip_vs_ctl.c
net/netfilter/ipvs/ip_vs_xmit.c
net/netfilter/nf_conntrack_core.c
net/netfilter/nf_conntrack_ecache.c
net/netfilter/nf_conntrack_ftp.c
net/netfilter/nf_conntrack_helper.c
net/netfilter/nf_conntrack_netbios_ns.c
net/netfilter/nf_conntrack_netlink.c
net/netfilter/nf_conntrack_proto_dccp.c
net/netfilter/nf_conntrack_proto_gre.c
net/netfilter/nf_conntrack_proto_sctp.c
net/netfilter/nf_conntrack_proto_tcp.c
net/netfilter/nf_log.c
net/netfilter/nf_queue.c
net/netfilter/nfnetlink.c
net/netfilter/nfnetlink_queue.c
net/netfilter/x_tables.c
net/netfilter/xt_NFQUEUE.c
net/netfilter/xt_TCPMSS.c
net/netfilter/xt_osf.c [new file with mode: 0644]
net/netfilter/xt_policy.c
net/netfilter/xt_realm.c
net/netfilter/xt_socket.c
net/netlabel/netlabel_cipso_v4.c
net/netlabel/netlabel_mgmt.c
net/netlabel/netlabel_unlabeled.c
net/netlink/genetlink.c
net/packet/af_packet.c
net/phonet/pep-gprs.c
net/phonet/pep.c
net/rds/af_rds.c
net/rds/connection.c
net/rds/ib.c
net/rds/ib.h
net/rds/ib_recv.c
net/rds/ib_ring.c
net/rds/ib_send.c
net/rds/info.c
net/rds/iw.c
net/rds/iw.h
net/rds/iw_recv.c
net/rds/iw_ring.c
net/rds/iw_send.c
net/rds/rdma.c
net/rds/rdma_transport.c
net/rds/rds.h
net/rds/send.c
net/rfkill/Kconfig
net/rfkill/Makefile
net/rfkill/core.c [new file with mode: 0644]
net/rfkill/input.c [new file with mode: 0644]
net/rfkill/rfkill-input.c [deleted file]
net/rfkill/rfkill.c [deleted file]
net/rfkill/rfkill.h [moved from net/rfkill/rfkill-input.h with 60% similarity]
net/rose/rose_dev.c
net/sched/cls_cgroup.c
net/sched/cls_flow.c
net/sched/cls_route.c
net/sched/em_meta.c
net/sched/sch_api.c
net/sched/sch_cbq.c
net/sched/sch_generic.c
net/sched/sch_hfsc.c
net/sched/sch_sfq.c
net/sched/sch_teql.c
net/sctp/associola.c
net/sctp/input.c
net/sctp/output.c
net/sctp/protocol.c
net/sctp/sm_make_chunk.c
net/sctp/sm_sideeffect.c
net/sctp/sm_statefuns.c
net/sctp/sm_statetable.c
net/sctp/socket.c
net/sctp/sysctl.c
net/sctp/ulpevent.c
net/sunrpc/auth_gss/auth_gss.c
net/sunrpc/xprtsock.c
net/tipc/eth_media.c
net/tipc/netlink.c
net/wimax/Kconfig
net/wimax/Makefile
net/wimax/debug-levels.h
net/wimax/debugfs.c
net/wimax/op-msg.c
net/wimax/op-rfkill.c
net/wimax/op-state-get.c [new file with mode: 0644]
net/wimax/stack.c
net/wireless/Kconfig
net/wireless/Makefile
net/wireless/core.c
net/wireless/core.h
net/wireless/debugfs.c [new file with mode: 0644]
net/wireless/debugfs.h [new file with mode: 0644]
net/wireless/ibss.c [new file with mode: 0644]
net/wireless/mlme.c
net/wireless/nl80211.c
net/wireless/nl80211.h
net/wireless/reg.c
net/wireless/scan.c
net/wireless/util.c
net/wireless/wext-compat.c
net/wireless/wext.c
net/xfrm/xfrm_algo.c
net/xfrm/xfrm_input.c
net/xfrm/xfrm_output.c
net/xfrm/xfrm_policy.c
security/selinux/hooks.c
security/selinux/xfrm.c

diff --git a/CREDITS b/CREDITS
index 2520ba620ff12a482e385b0c34403fe044ba0027..2b88fb37ad503e12ed271aa26b1068b7c5d93aea 100644 (file)
--- a/CREDITS
+++ b/CREDITS
@@ -1253,6 +1253,10 @@ S: 8124 Constitution Apt. 7
 S: Sterling Heights, Michigan 48313
 S: USA
 
+N: Wolfgang Grandegger
+E: wg@grandegger.com
+D: Controller Area Network (device drivers)
+
 N: William Greathouse
 E: wgreathouse@smva.com
 E: wgreathouse@myfavoritei.com
index fbeaffc1dcc39c7b25e3f36cc7923828be9cbec9..e36986663570d6be1577365645c25b11e866c138 100644 (file)
@@ -145,7 +145,6 @@ usage should require reading the full document.
         interface in STA mode at first!
       </para>
 !Finclude/net/mac80211.h ieee80211_if_init_conf
-!Finclude/net/mac80211.h ieee80211_if_conf
     </chapter>
 
     <chapter id="rx-tx">
index ec9ef5d0d7b3b3af5d12c595edd7ddb048be6f2b..7129846a27851a9e61d817e396802edc7e2eac3e 100644 (file)
@@ -438,6 +438,13 @@ Why:       Superseded by tdfxfb. I2C/DDC support used to live in a separate
 Who:   Jean Delvare <khali@linux-fr.org>
        Krzysztof Helt <krzysztof.h1@wp.pl>
 
+---------------------------
+
+What:  CONFIG_RFKILL_INPUT
+When:  2.6.33
+Why:   Should be implemented in userspace, policy daemon.
+Who:   Johannes Berg <johannes@sipsolutions.net>
+
 ----------------------------
 
 What:  CONFIG_X86_OLD_MCE
index 5a2d69989a8c08099dadbcf99d3730d1b4a39303..f6010a536590bb0384ab87a549c1af4bdacca6f9 100644 (file)
@@ -22,16 +22,11 @@ README.gigaset
        - info on the drivers for Siemens Gigaset ISDN adapters.
 README.icn
        - info on the ICN-ISDN-card and its driver.
+>>>>>>> 93af7aca44f0e82e67bda10a0fb73d383edcc8bd:Documentation/isdn/00-INDEX
 README.HiSax
        - info on the HiSax driver which replaces the old teles.
-README.hfc-pci
-       - info on hfc-pci based cards.
-README.pcbit
-       - info on the PCBIT-D ISDN adapter and driver.
-README.syncppp
-       - info on running Sync PPP over ISDN.
-syncPPP.FAQ
-       - frequently asked questions about running PPP over ISDN.
+README.audio
+       - info for running audio over ISDN.
 README.avmb1
        - info on driver for AVM-B1 ISDN card.
 README.act2000
@@ -42,10 +37,28 @@ README.concap
        - info on "CONCAP" encapsulation protocol interface used for X.25.
 README.diversion
        - info on module for isdn diversion services.
+README.fax
+       - info for using Fax over ISDN.
+README.gigaset
+       - info on the drivers for Siemens Gigaset ISDN adapters
+README.hfc-pci
+       - info on hfc-pci based cards.
+README.hysdn
+        - info on driver for Hypercope active HYSDN cards
+README.icn
+       - info on the ICN-ISDN-card and its driver.
+README.mISDN
+       - info on the Modular ISDN subsystem (mISDN)
+README.pcbit
+       - info on the PCBIT-D ISDN adapter and driver.
 README.sc
        - info on driver for Spellcaster cards.
+README.syncppp
+       - info on running Sync PPP over ISDN.
 README.x25
        - info for running X.25 over ISDN.
+syncPPP.FAQ
+       - frequently asked questions about running PPP over ISDN.
 README.hysdn
        - info on driver for Hypercope active HYSDN cards
 README.mISDN
index 786d619b36e5164f1ded06f149360772c7a8e34b..686e107923ec16f36a4f6a32fd49b791e36b30b9 100644 (file)
@@ -45,7 +45,7 @@ From then on, Kernel CAPI may call the registered callback functions for the
 device.
 
 If the device becomes unusable for any reason (shutdown, disconnect ...), the
-driver has to call capi_ctr_reseted(). This will prevent further calls to the
+driver has to call capi_ctr_down(). This will prevent further calls to the
 callback functions by Kernel CAPI.
 
 
@@ -114,20 +114,36 @@ char *driver_name
 int (*load_firmware)(struct capi_ctr *ctrlr, capiloaddata *ldata)
        (optional) pointer to a callback function for sending firmware and
        configuration data to the device
+       Return value: 0 on success, error code on error
+       Called in process context.
 
 void (*reset_ctr)(struct capi_ctr *ctrlr)
-       pointer to a callback function for performing a reset on the device,
-       releasing all registered applications
+       (optional) pointer to a callback function for performing a reset on
+       the device, releasing all registered applications
+       Called in process context.
 
 void (*register_appl)(struct capi_ctr *ctrlr, u16 applid,
                        capi_register_params *rparam)
 void (*release_appl)(struct capi_ctr *ctrlr, u16 applid)
        pointers to callback functions for registration and deregistration of
        applications with the device
+       Calls to these functions are serialized by Kernel CAPI so that only
+       one call to any of them is active at any time.
 
 u16  (*send_message)(struct capi_ctr *ctrlr, struct sk_buff *skb)
        pointer to a callback function for sending a CAPI message to the
        device
+       Return value: CAPI error code
+       If the method returns 0 (CAPI_NOERROR) the driver has taken ownership
+       of the skb and the caller may no longer access it. If it returns a
+       non-zero (error) value then ownership of the skb returns to the caller
+       who may reuse or free it.
+       The return value should only be used to signal problems with respect
+       to accepting or queueing the message. Errors occurring during the
+       actual processing of the message should be signaled with an
+       appropriate reply message.
+       Calls to this function are not serialized by Kernel CAPI, ie. it must
+       be prepared to be re-entered.
 
 char *(*procinfo)(struct capi_ctr *ctrlr)
        pointer to a callback function returning the entry for the device in
@@ -138,6 +154,8 @@ read_proc_t *ctr_read_proc
        system entry, /proc/capi/controllers/<n>; will be called with a
        pointer to the device's capi_ctr structure as the last (data) argument
 
+Note: Callback functions are never called in interrupt context.
+
 - to be filled in before calling capi_ctr_ready():
 
 u8 manu[CAPI_MANUFACTURER_LEN]
@@ -153,6 +171,45 @@ u8 serial[CAPI_SERIAL_LEN]
        value to return for CAPI_GET_SERIAL
 
 
+4.3 The _cmsg Structure
+
+(declared in <linux/isdn/capiutil.h>)
+
+The _cmsg structure stores the contents of a CAPI 2.0 message in an easily
+accessible form. It contains members for all possible CAPI 2.0 parameters, of
+which only those appearing in the message type currently being processed are
+actually used. Unused members should be set to zero.
+
+Members are named after the CAPI 2.0 standard names of the parameters they
+represent. See <linux/isdn/capiutil.h> for the exact spelling. Member data
+types are:
+
+u8          for CAPI parameters of type 'byte'
+
+u16         for CAPI parameters of type 'word'
+
+u32         for CAPI parameters of type 'dword'
+
+_cstruct    for CAPI parameters of type 'struct' not containing any
+           variably-sized (struct) subparameters (eg. 'Called Party Number')
+           The member is a pointer to a buffer containing the parameter in
+           CAPI encoding (length + content). It may also be NULL, which will
+           be taken to represent an empty (zero length) parameter.
+
+_cmstruct   for CAPI parameters of type 'struct' containing 'struct'
+           subparameters ('Additional Info' and 'B Protocol')
+           The representation is a single byte containing one of the values:
+           CAPI_DEFAULT: the parameter is empty
+           CAPI_COMPOSE: the values of the subparameters are stored
+           individually in the corresponding _cmsg structure members
+
+Functions capi_cmsg2message() and capi_message2cmsg() are provided to convert
+messages between their transport encoding described in the CAPI 2.0 standard
+and their _cmsg structure representation. Note that capi_cmsg2message() does
+not know or check the size of its destination buffer. The caller must make
+sure it is big enough to accomodate the resulting CAPI message.
+
+
 5. Lower Layer Interface Functions
 
 (declared in <linux/isdn/capilli.h>)
@@ -166,7 +223,7 @@ int detach_capi_ctr(struct capi_ctr *ctrlr)
        register/unregister a device (controller) with Kernel CAPI
 
 void capi_ctr_ready(struct capi_ctr *ctrlr)
-void capi_ctr_reseted(struct capi_ctr *ctrlr)
+void capi_ctr_down(struct capi_ctr *ctrlr)
        signal controller ready/not ready
 
 void capi_ctr_suspend_output(struct capi_ctr *ctrlr)
@@ -211,3 +268,32 @@ CAPIMSG_CONTROL(m) CAPIMSG_SETCONTROL(m, contr)    Controller/PLCI/NCCI
                                                        (u32)
 CAPIMSG_DATALEN(m)     CAPIMSG_SETDATALEN(m, len)      Data Length (u16)
 
+
+Library functions for working with _cmsg structures
+(from <linux/isdn/capiutil.h>):
+
+unsigned capi_cmsg2message(_cmsg *cmsg, u8 *msg)
+       Assembles a CAPI 2.0 message from the parameters in *cmsg, storing the
+       result in *msg.
+
+unsigned capi_message2cmsg(_cmsg *cmsg, u8 *msg)
+       Disassembles the CAPI 2.0 message in *msg, storing the parameters in
+       *cmsg.
+
+unsigned capi_cmsg_header(_cmsg *cmsg, u16 ApplId, u8 Command, u8 Subcommand,
+                         u16 Messagenumber, u32 Controller)
+       Fills the header part and address field of the _cmsg structure *cmsg
+       with the given values, zeroing the remainder of the structure so only
+       parameters with non-default values need to be changed before sending
+       the message.
+
+void capi_cmsg_answer(_cmsg *cmsg)
+       Sets the low bit of the Subcommand field in *cmsg, thereby converting
+       _REQ to _CONF and _IND to _RESP.
+
+char *capi_cmd2str(u8 Command, u8 Subcommand)
+       Returns the CAPI 2.0 message name corresponding to the given command
+       and subcommand values, as a static ASCII string. The return value may
+       be NULL if the command/subcommand is not one of those defined in the
+       CAPI 2.0 standard.
+
index 02c0e9341dd846975b1c18187deb51c55d379b10..f9963103ae3dd605094d700f49d2d195182f8712 100644 (file)
@@ -149,10 +149,8 @@ GigaSet 307x Device Driver
      configuration files and chat scripts in the gigaset-VERSION/ppp directory
      in the driver packages from http://sourceforge.net/projects/gigaset307x/.
      Please note that the USB drivers are not able to change the state of the
-     control lines (the M105 driver can be configured to use some undocumented
-     control requests, if you really need the control lines, though). This means
-     you must use "Stupid Mode" if you are using wvdial or you should use the
-     nocrtscts option of pppd.
+     control lines. This means you must use "Stupid Mode" if you are using
+     wvdial or you should use the nocrtscts option of pppd.
      You must also assure that the ppp_async module is loaded with the parameter
      flag_time=0. You can do this e.g. by adding a line like
 
@@ -190,20 +188,19 @@ GigaSet 307x Device Driver
      You can also use /sys/class/tty/ttyGxy/cidmode for changing the CID mode
      setting (ttyGxy is ttyGU0 or ttyGB0).
 
-2.6. M105 Undocumented USB Requests
-     ------------------------------
-
-     The Gigaset M105 USB data box understands a couple of useful, but
-     undocumented USB commands. These requests are not used in normal
-     operation (for wireless access to the base), but are needed for access
-     to the M105's own configuration mode (registration to the base, baudrate
-     and line format settings, device status queries) via the gigacontr
-     utility. Their use is controlled by the kernel configuration option
-     "Support for undocumented USB requests" (CONFIG_GIGASET_UNDOCREQ). If you
-     encounter error code -ENOTTY when trying to use some features of the
-     M105, try setting that option to "y" via 'make {x,menu}config' and
-     recompiling the driver.
-
+2.6. Unregistered Wireless Devices (M101/M105)
+     -----------------------------------------
+     The main purpose of the ser_gigaset and usb_gigaset drivers is to allow
+     the M101 and M105 wireless devices to be used as ISDN devices for ISDN
+     connections through a Gigaset base. Therefore they assume that the device
+     is registered to a DECT base.
+
+     If the M101/M105 device is not registered to a base, initialization of
+     the device fails, and a corresponding error message is logged by the
+     driver. In that situation, a restricted set of functions is available
+     which includes, in particular, those necessary for registering the device
+     to a base or for switching it between Fixed Part and Portable Part
+     modes.
 
 3.   Troubleshooting
      ---------------
@@ -234,11 +231,12 @@ GigaSet 307x Device Driver
         Select Unimodem mode for all DECT data adapters. (see section 2.4.)
 
      Problem:
-        You want to configure your USB DECT data adapter (M105) but gigacontr
-        reports an error: "/dev/ttyGU0: Inappropriate ioctl for device".
+       Messages like this:
+           usb_gigaset 3-2:1.0: Could not initialize the device.
+       appear in your syslog.
      Solution:
-        Recompile the usb_gigaset driver with the kernel configuration option
-        CONFIG_GIGASET_UNDOCREQ set to 'y'. (see section 2.6.)
+       Check whether your M10x wireless device is correctly registered to the
+       Gigaset base. (see section 2.6.)
 
 3.2. Telling the driver to provide more information
      ----------------------------------------------
index 463d9e029ef3a4a702a85410119827333e0ee7bc..cd79735013f94728c15359f292f5fad4b1d0f838 100644 (file)
@@ -36,10 +36,15 @@ This file contains
     6.2 local loopback of sent frames
     6.3 CAN controller hardware filters
     6.4 The virtual CAN driver (vcan)
-    6.5 currently supported CAN hardware
-    6.6 todo
+    6.5 The CAN network device driver interface
+      6.5.1 Netlink interface to set/get devices properties
+      6.5.2 Setting the CAN bit-timing
+      6.5.3 Starting and stopping the CAN network device
+    6.6 supported CAN hardware
 
-  7 Credits
+  7 Socket CAN resources
+
+  8 Credits
 
 ============================================================================
 
@@ -234,6 +239,8 @@ solution for a couple of reasons:
   the user application using the common CAN filter mechanisms. Inside
   this filter definition the (interested) type of errors may be
   selected. The reception of error frames is disabled by default.
+  The format of the CAN error frame is briefly decribed in the Linux
+  header file "include/linux/can/error.h".
 
 4. How to use Socket CAN
 ------------------------
@@ -605,61 +612,213 @@ solution for a couple of reasons:
   removal of vcan network devices can be managed with the ip(8) tool:
 
   - Create a virtual CAN network interface:
-       ip link add type vcan
+       ip link add type vcan
 
   - Create a virtual CAN network interface with a specific name 'vcan42':
-       ip link add dev vcan42 type vcan
+       ip link add dev vcan42 type vcan
 
   - Remove a (virtual CAN) network interface 'vcan42':
-       ip link del vcan42
-
-  The tool 'vcan' from the SocketCAN SVN repository on BerliOS is obsolete.
-
-  Virtual CAN network device creation in older Kernels:
-  In Linux Kernel versions < 2.6.24 the vcan driver creates 4 vcan
-  netdevices at module load time by default. This value can be changed
-  with the module parameter 'numdev'. E.g. 'modprobe vcan numdev=8'
-
-  6.5 currently supported CAN hardware
+       $ ip link del vcan42
+
+  6.5 The CAN network device driver interface
+
+  The CAN network device driver interface provides a generic interface
+  to setup, configure and monitor CAN network devices. The user can then
+  configure the CAN device, like setting the bit-timing parameters, via
+  the netlink interface using the program "ip" from the "IPROUTE2"
+  utility suite. The following chapter describes briefly how to use it.
+  Furthermore, the interface uses a common data structure and exports a
+  set of common functions, which all real CAN network device drivers
+  should use. Please have a look to the SJA1000 or MSCAN driver to
+  understand how to use them. The name of the module is can-dev.ko.
+
+  6.5.1 Netlink interface to set/get devices properties
+
+  The CAN device must be configured via netlink interface. The supported
+  netlink message types are defined and briefly described in
+  "include/linux/can/netlink.h". CAN link support for the program "ip"
+  of the IPROUTE2 utility suite is avaiable and it can be used as shown
+  below:
+
+  - Setting CAN device properties:
+
+    $ ip link set can0 type can help
+    Usage: ip link set DEVICE type can
+       [ bitrate BITRATE [ sample-point SAMPLE-POINT] ] |
+       [ tq TQ prop-seg PROP_SEG phase-seg1 PHASE-SEG1
+         phase-seg2 PHASE-SEG2 [ sjw SJW ] ]
+
+       [ loopback { on | off } ]
+       [ listen-only { on | off } ]
+       [ triple-sampling { on | off } ]
+
+       [ restart-ms TIME-MS ]
+       [ restart ]
+
+       Where: BITRATE       := { 1..1000000 }
+              SAMPLE-POINT  := { 0.000..0.999 }
+              TQ            := { NUMBER }
+              PROP-SEG      := { 1..8 }
+              PHASE-SEG1    := { 1..8 }
+              PHASE-SEG2    := { 1..8 }
+              SJW           := { 1..4 }
+              RESTART-MS    := { 0 | NUMBER }
+
+  - Display CAN device details and statistics:
+
+    $ ip -details -statistics link show can0
+    2: can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UP qlen 10
+      link/can
+      can <TRIPLE-SAMPLING> state ERROR-ACTIVE restart-ms 100
+      bitrate 125000 sample_point 0.875
+      tq 125 prop-seg 6 phase-seg1 7 phase-seg2 2 sjw 1
+      sja1000: tseg1 1..16 tseg2 1..8 sjw 1..4 brp 1..64 brp-inc 1
+      clock 8000000
+      re-started bus-errors arbit-lost error-warn error-pass bus-off
+      41         17457      0          41         42         41
+      RX: bytes  packets  errors  dropped overrun mcast
+      140859     17608    17457   0       0       0
+      TX: bytes  packets  errors  dropped carrier collsns
+      861        112      0       41      0       0
+
+  More info to the above output:
+
+    "<TRIPLE-SAMPLING>"
+       Shows the list of selected CAN controller modes: LOOPBACK,
+       LISTEN-ONLY, or TRIPLE-SAMPLING.
+
+    "state ERROR-ACTIVE"
+       The current state of the CAN controller: "ERROR-ACTIVE",
+       "ERROR-WARNING", "ERROR-PASSIVE", "BUS-OFF" or "STOPPED"
+
+    "restart-ms 100"
+       Automatic restart delay time. If set to a non-zero value, a
+       restart of the CAN controller will be triggered automatically
+       in case of a bus-off condition after the specified delay time
+       in milliseconds. By default it's off.
+
+    "bitrate 125000 sample_point 0.875"
+       Shows the real bit-rate in bits/sec and the sample-point in the
+       range 0.000..0.999. If the calculation of bit-timing parameters
+       is enabled in the kernel (CONFIG_CAN_CALC_BITTIMING=y), the
+       bit-timing can be defined by setting the "bitrate" argument.
+       Optionally the "sample-point" can be specified. By default it's
+       0.000 assuming CIA-recommended sample-points.
+
+    "tq 125 prop-seg 6 phase-seg1 7 phase-seg2 2 sjw 1"
+       Shows the time quanta in ns, propagation segment, phase buffer
+       segment 1 and 2 and the synchronisation jump width in units of
+       tq. They allow to define the CAN bit-timing in a hardware
+       independent format as proposed by the Bosch CAN 2.0 spec (see
+       chapter 8 of http://www.semiconductors.bosch.de/pdf/can2spec.pdf).
+
+    "sja1000: tseg1 1..16 tseg2 1..8 sjw 1..4 brp 1..64 brp-inc 1
+     clock 8000000"
+       Shows the bit-timing constants of the CAN controller, here the
+       "sja1000". The minimum and maximum values of the time segment 1
+       and 2, the synchronisation jump width in units of tq, the
+       bitrate pre-scaler and the CAN system clock frequency in Hz.
+       These constants could be used for user-defined (non-standard)
+       bit-timing calculation algorithms in user-space.
+
+    "re-started bus-errors arbit-lost error-warn error-pass bus-off"
+       Shows the number of restarts, bus and arbitration lost errors,
+       and the state changes to the error-warning, error-passive and
+       bus-off state. RX overrun errors are listed in the "overrun"
+       field of the standard network statistics.
+
+  6.5.2 Setting the CAN bit-timing
+
+  The CAN bit-timing parameters can always be defined in a hardware
+  independent format as proposed in the Bosch CAN 2.0 specification
+  specifying the arguments "tq", "prop_seg", "phase_seg1", "phase_seg2"
+  and "sjw":
+
+    $ ip link set canX type can tq 125 prop-seg 6 \
+                               phase-seg1 7 phase-seg2 2 sjw 1
+
+  If the kernel option CONFIG_CAN_CALC_BITTIMING is enabled, CIA
+  recommended CAN bit-timing parameters will be calculated if the bit-
+  rate is specified with the argument "bitrate":
+
+    $ ip link set canX type can bitrate 125000
+
+  Note that this works fine for the most common CAN controllers with
+  standard bit-rates but may *fail* for exotic bit-rates or CAN system
+  clock frequencies. Disabling CONFIG_CAN_CALC_BITTIMING saves some
+  space and allows user-space tools to solely determine and set the
+  bit-timing parameters. The CAN controller specific bit-timing
+  constants can be used for that purpose. They are listed by the
+  following command:
+
+    $ ip -details link show can0
+    ...
+      sja1000: clock 8000000 tseg1 1..16 tseg2 1..8 sjw 1..4 brp 1..64 brp-inc 1
+
+  6.5.3 Starting and stopping the CAN network device
+
+  A CAN network device is started or stopped as usual with the command
+  "ifconfig canX up/down" or "ip link set canX up/down". Be aware that
+  you *must* define proper bit-timing parameters for real CAN devices
+  before you can start it to avoid error-prone default settings:
+
+    $ ip link set canX up type can bitrate 125000
+
+  A device may enter the "bus-off" state if too much errors occurred on
+  the CAN bus. Then no more messages are received or sent. An automatic
+  bus-off recovery can be enabled by setting the "restart-ms" to a
+  non-zero value, e.g.:
+
+    $ ip link set canX type can restart-ms 100
+
+  Alternatively, the application may realize the "bus-off" condition
+  by monitoring CAN error frames and do a restart when appropriate with
+  the command:
+
+    $ ip link set canX type can restart
+
+  Note that a restart will also create a CAN error frame (see also
+  chapter 3.4).
 
-  On the project website http://developer.berlios.de/projects/socketcan
-  there are different drivers available:
+  6.6 Supported CAN hardware
 
-    vcan:    Virtual CAN interface driver (if no real hardware is available)
-    sja1000: Philips SJA1000 CAN controller (recommended)
-    i82527:  Intel i82527 CAN controller
-    mscan:   Motorola/Freescale CAN controller (e.g. inside SOC MPC5200)
-    ccan:    CCAN controller core (e.g. inside SOC h7202)
-    slcan:   For a bunch of CAN adaptors that are attached via a
-             serial line ASCII protocol (for serial / USB adaptors)
+  Please check the "Kconfig" file in "drivers/net/can" to get an actual
+  list of the support CAN hardware. On the Socket CAN project website
+  (see chapter 7) there might be further drivers available, also for
+  older kernel versions.
 
-  Additionally the different CAN adaptors (ISA/PCI/PCMCIA/USB/Parport)
-  from PEAK Systemtechnik support the CAN netdevice driver model
-  since Linux driver v6.0: http://www.peak-system.com/linux/index.htm
+7. Socket CAN resources
+-----------------------
 
-  Please check the Mailing Lists on the berlios OSS project website.
+  You can find further resources for Socket CAN like user space tools,
+  support for old kernel versions, more drivers, mailing lists, etc.
+  at the BerliOS OSS project website for Socket CAN:
 
-  6.6 todo
+    http://developer.berlios.de/projects/socketcan
 
-  The configuration interface for CAN network drivers is still an open
-  issue that has not been finalized in the socketcan project. Also the
-  idea of having a library module (candev.ko) that holds functions
-  that are needed by all CAN netdevices is not ready to ship.
-  Your contribution is welcome.
+  If you have questions, bug fixes, etc., don't hesitate to post them to
+  the Socketcan-Users mailing list. But please search the archives first.
 
-7. Credits
+8. Credits
 ----------
 
-  Oliver Hartkopp (PF_CAN core, filters, drivers, bcm)
+  Oliver Hartkopp (PF_CAN core, filters, drivers, bcm, SJA1000 driver)
   Urs Thuermann (PF_CAN core, kernel integration, socket interfaces, raw, vcan)
   Jan Kizka (RT-SocketCAN core, Socket-API reconciliation)
-  Wolfgang Grandegger (RT-SocketCAN core & drivers, Raw Socket-API reviews)
+  Wolfgang Grandegger (RT-SocketCAN core & drivers, Raw Socket-API reviews,
+                       CAN device driver interface, MSCAN driver)
   Robert Schwebel (design reviews, PTXdist integration)
   Marc Kleine-Budde (design reviews, Kernel 2.6 cleanups, drivers)
   Benedikt Spranger (reviews)
   Thomas Gleixner (LKML reviews, coding style, posting hints)
-  Andrey Volkov (kernel subtree structure, ioctls, mscan driver)
+  Andrey Volkov (kernel subtree structure, ioctls, MSCAN driver)
   Matthias Brukner (first SJA1000 CAN netdevice implementation Q2/2003)
   Klaus Hitschler (PEAK driver integration)
   Uwe Koppe (CAN netdevices with PF_PACKET approach)
   Michael Schulze (driver layer loopback requirement, RT CAN drivers review)
+  Pavel Pisa (Bit-timing calculation)
+  Sascha Hauer (SJA1000 platform driver)
+  Sebastian Haas (SJA1000 EMS PCI driver)
+  Markus Plessing (SJA1000 EMS PCI driver)
+  Per Dalen (SJA1000 Kvaser PCI driver)
+  Sam Ravnborg (reviews, coding style, kbuild help)
diff --git a/Documentation/networking/ieee802154.txt b/Documentation/networking/ieee802154.txt
new file mode 100644 (file)
index 0000000..a0280ad
--- /dev/null
@@ -0,0 +1,76 @@
+
+               Linux IEEE 802.15.4 implementation
+
+
+Introduction
+============
+
+The Linux-ZigBee project goal is to provide complete implementation
+of IEEE 802.15.4 / ZigBee / 6LoWPAN protocols. IEEE 802.15.4 is a stack
+of protocols for organizing Low-Rate Wireless Personal Area Networks.
+
+Currently only IEEE 802.15.4 layer is implemented. We have choosen
+to use plain Berkeley socket API, the generic Linux networking stack
+to transfer IEEE 802.15.4 messages and a special protocol over genetlink
+for configuration/management
+
+
+Socket API
+==========
+
+int sd = socket(PF_IEEE802154, SOCK_DGRAM, 0);
+.....
+
+The address family, socket addresses etc. are defined in the
+include/net/ieee802154/af_ieee802154.h header or in the special header
+in our userspace package (see either linux-zigbee sourceforge download page
+or git tree at git://linux-zigbee.git.sourceforge.net/gitroot/linux-zigbee).
+
+One can use SOCK_RAW for passing raw data towards device xmit function. YMMV.
+
+
+MLME - MAC Level Management
+============================
+
+Most of IEEE 802.15.4 MLME interfaces are directly mapped on netlink commands.
+See the include/net/ieee802154/nl802154.h header. Our userspace tools package
+(see above) provides CLI configuration utility for radio interfaces and simple
+coordinator for IEEE 802.15.4 networks as an example users of MLME protocol.
+
+
+Kernel side
+=============
+
+Like with WiFi, there are several types of devices implementing IEEE 802.15.4.
+1) 'HardMAC'. The MAC layer is implemented in the device itself, the device
+   exports MLME and data API.
+2) 'SoftMAC' or just radio. These types of devices are just radio transceivers
+   possibly with some kinds of acceleration like automatic CRC computation and
+   comparation, automagic ACK handling, address matching, etc.
+
+Those types of devices require different approach to be hooked into Linux kernel.
+
+
+HardMAC
+=======
+
+See the header include/net/ieee802154/netdevice.h. You have to implement Linux
+net_device, with .type = ARPHRD_IEEE802154. Data is exchanged with socket family
+code via plain sk_buffs. The control block of sk_buffs will contain additional
+info as described in the struct ieee802154_mac_cb.
+
+To hook the MLME interface you have to populate the ml_priv field of your
+net_device with a pointer to struct ieee802154_mlme_ops instance. All fields are
+required.
+
+We provide an example of simple HardMAC driver at drivers/ieee802154/fakehard.c
+
+
+SoftMAC
+=======
+
+We are going to provide intermediate layer impelementing IEEE 802.15.4 MAC
+in software. This is currently WIP.
+
+See header include/net/ieee802154/mac802154.h and several drivers in
+drivers/ieee802154/
index b121c5db707fcf8708533acd7b73a51cbd286296..8be76235fe6724c43e0c2b39778f3f741e53b619 100644 (file)
@@ -168,7 +168,16 @@ tcp_dsack - BOOLEAN
        Allows TCP to send "duplicate" SACKs.
 
 tcp_ecn - BOOLEAN
-       Enable Explicit Congestion Notification in TCP.
+       Enable Explicit Congestion Notification (ECN) in TCP. ECN is only
+       used when both ends of the TCP flow support it. It is useful to
+       avoid losses due to congestion (when the bottleneck router supports
+       ECN).
+       Possible values are:
+               0 disable ECN
+               1 ECN enabled
+               2 Only server-side ECN enabled. If the other end does
+                 not support ECN, behavior is like with ECN disabled.
+       Default: 2
 
 tcp_fack - BOOLEAN
        Enable FACK congestion avoidance and fast retransmission.
@@ -1048,6 +1057,13 @@ disable_ipv6 - BOOLEAN
        address.
        Default: FALSE (enable IPv6 operation)
 
+       When this value is changed from 1 to 0 (IPv6 is being enabled),
+       it will dynamically create a link-local address on the given
+       interface and start Duplicate Address Detection, if necessary.
+
+       When this value is changed from 0 to 1 (IPv6 is being disabled),
+       it will dynamically delete all address on the given interface.
+
 accept_dad - INTEGER
        Whether to accept DAD (Duplicate Address Detection).
        0: Disable DAD
index 268e5c103dd8e764c03e2dfba3356c3b4a2c7610..9fd7e21296c8f500938e7bc272f3ef0528fc3917 100644 (file)
@@ -33,3 +33,40 @@ disable
 
                A reboot is required to enable IPv6.
 
+autoconf
+
+       Specifies whether to enable IPv6 address autoconfiguration
+       on all interfaces.  This might be used when one does not wish
+       for addresses to be automatically generated from prefixes
+       received in Router Advertisements.
+
+       The possible values and their effects are:
+
+       0
+               IPv6 address autoconfiguration is disabled on all interfaces.
+
+               Only the IPv6 loopback address (::1) and link-local addresses
+               will be added to interfaces.
+
+       1
+               IPv6 address autoconfiguration is enabled on all interfaces.
+
+               This is the default value.
+
+disable_ipv6
+
+       Specifies whether to disable IPv6 on all interfaces.
+       This might be used when no IPv6 addresses are desired.
+
+       The possible values and their effects are:
+
+       0
+               IPv6 is enabled on all interfaces.
+
+               This is the default value.
+
+       1
+               IPv6 is disabled on all interfaces.
+
+               No IPv6 addresses will be added to interfaces.
+
index 84906ef3ed6e969404a9fac550f9973254f0039d..b30e81ad5307e851c50d58386bb17eb68d2072c9 100644 (file)
@@ -12,38 +12,22 @@ following format:
 The radiotap format is discussed in
 ./Documentation/networking/radiotap-headers.txt.
 
-Despite 13 radiotap argument types are currently defined, most only make sense
+Despite many radiotap parameters being currently defined, most only make sense
 to appear on received packets.  The following information is parsed from the
 radiotap headers and used to control injection:
 
- * IEEE80211_RADIOTAP_RATE
-
-   rate in 500kbps units, automatic if invalid or not present
-
-
- * IEEE80211_RADIOTAP_ANTENNA
-
-   antenna to use, automatic if not present
-
-
- * IEEE80211_RADIOTAP_DBM_TX_POWER
-
-   transmit power in dBm, automatic if not present
-
-
  * IEEE80211_RADIOTAP_FLAGS
 
    IEEE80211_RADIOTAP_F_FCS: FCS will be removed and recalculated
    IEEE80211_RADIOTAP_F_WEP: frame will be encrypted if key available
    IEEE80211_RADIOTAP_F_FRAG: frame will be fragmented if longer than the
-                             current fragmentation threshold. Note that
-                             this flag is only reliable when software
-                             fragmentation is enabled)
+                             current fragmentation threshold.
+
 
 The injection code can also skip all other currently defined radiotap fields
 facilitating replay of captured radiotap headers directly.
 
-Here is an example valid radiotap header defining these three parameters
+Here is an example valid radiotap header defining some parameters
 
        0x00, 0x00, // <-- radiotap version
        0x0b, 0x00, // <- radiotap header length
@@ -72,8 +56,8 @@ interface), along the following lines:
 ...
        r = pcap_inject(ppcap, u8aSendBuffer, nLength);
 
-You can also find sources for a complete inject test applet here:
+You can also find a link to a complete inject application here:
 
-http://penumbra.warmcat.com/_twk/tiki-index.php?page=packetspammer
+http://wireless.kernel.org/en/users/Documentation/packetspammer
 
 Andy Green <andy@warmcat.com>
index c9074f9b78bb7f2b25df1607c37953fdc7b6aa47..1a77a3cfae540795d1d2ae0074cde85f15113f42 100644 (file)
@@ -38,9 +38,6 @@ ifinfomsg::if_flags & IFF_LOWER_UP:
 ifinfomsg::if_flags & IFF_DORMANT:
  Driver has signaled netif_dormant_on()
 
-These interface flags can also be queried without netlink using the
-SIOCGIFFLAGS ioctl.
-
 TLV IFLA_OPERSTATE
 
 contains RFC2863 state of the interface in numeric representation:
index 07c53d5960353fa571e99a73b67910d7b10d6125..a22fd85e37965d4d2290b240324e5855aa65fd65 100644 (file)
@@ -4,16 +4,18 @@
 
 This file documents the CONFIG_PACKET_MMAP option available with the PACKET
 socket interface on 2.4 and 2.6 kernels. This type of sockets is used for 
-capture network traffic with utilities like tcpdump or any other that uses 
-the libpcap library. 
-
-You can find the latest version of this document at
+capture network traffic with utilities like tcpdump or any other that needs
+raw access to network interface.
 
+You can find the latest version of this document at:
     http://pusa.uv.es/~ulisses/packet_mmap/
 
-Please send me your comments to
+Howto can be found at:
+    http://wiki.gnu-log.net (packet_mmap)
 
+Please send your comments to
     Ulisses Alonso CamarĂ³ <uaca@i.hate.spam.alumni.uv.es>
+    Johann Baudy <johann.baudy@gnu-log.net>
 
 -------------------------------------------------------------------------------
 + Why use PACKET_MMAP
@@ -25,19 +27,24 @@ to capture each packet, it requires two if you want to get packet's
 timestamp (like libpcap always does).
 
 In the other hand PACKET_MMAP is very efficient. PACKET_MMAP provides a size 
-configurable circular buffer mapped in user space. This way reading packets just 
-needs to wait for them, most of the time there is no need to issue a single 
-system call. By using a shared buffer between the kernel and the user 
-also has the benefit of minimizing packet copies.
-
-It's fine to use PACKET_MMAP to improve the performance of the capture process, 
-but it isn't everything. At least, if you are capturing at high speeds (this 
-is relative to the cpu speed), you should check if the device driver of your 
-network interface card supports some sort of interrupt load mitigation or 
-(even better) if it supports NAPI, also make sure it is enabled.
+configurable circular buffer mapped in user space that can be used to either
+send or receive packets. This way reading packets just needs to wait for them,
+most of the time there is no need to issue a single system call. Concerning
+transmission, multiple packets can be sent through one system call to get the
+highest bandwidth.
+By using a shared buffer between the kernel and the user also has the benefit
+of minimizing packet copies.
+
+It's fine to use PACKET_MMAP to improve the performance of the capture and
+transmission process, but it isn't everything. At least, if you are capturing
+at high speeds (this is relative to the cpu speed), you should check if the
+device driver of your network interface card supports some sort of interrupt
+load mitigation or (even better) if it supports NAPI, also make sure it is
+enabled. For transmission, check the MTU (Maximum Transmission Unit) used and
+supported by devices of your network.
 
 --------------------------------------------------------------------------------
-+ How to use CONFIG_PACKET_MMAP
++ How to use CONFIG_PACKET_MMAP to improve capture process
 --------------------------------------------------------------------------------
 
 From the user standpoint, you should use the higher level libpcap library, which
@@ -57,7 +64,7 @@ the low level details or want to improve libpcap by including PACKET_MMAP
 support.
 
 --------------------------------------------------------------------------------
-+ How to use CONFIG_PACKET_MMAP directly
++ How to use CONFIG_PACKET_MMAP directly to improve capture process
 --------------------------------------------------------------------------------
 
 From the system calls stand point, the use of PACKET_MMAP involves
@@ -66,6 +73,7 @@ the following process:
 
 [setup]     socket() -------> creation of the capture socket
             setsockopt() ---> allocation of the circular buffer (ring)
+                              option: PACKET_RX_RING
             mmap() ---------> mapping of the allocated buffer to the
                               user process
 
@@ -96,6 +104,65 @@ Next I will describe PACKET_MMAP settings and it's constraints,
 also the mapping of the circular buffer in the user process and 
 the use of this buffer.
 
+--------------------------------------------------------------------------------
++ How to use CONFIG_PACKET_MMAP directly to improve transmission process
+--------------------------------------------------------------------------------
+Transmission process is similar to capture as shown below.
+
+[setup]          socket() -------> creation of the transmission socket
+                 setsockopt() ---> allocation of the circular buffer (ring)
+                                   option: PACKET_TX_RING
+                 bind() ---------> bind transmission socket with a network interface
+                 mmap() ---------> mapping of the allocated buffer to the
+                                   user process
+
+[transmission]   poll() ---------> wait for free packets (optional)
+                 send() ---------> send all packets that are set as ready in
+                                   the ring
+                                   The flag MSG_DONTWAIT can be used to return
+                                   before end of transfer.
+
+[shutdown]  close() --------> destruction of the transmission socket and
+                              deallocation of all associated resources.
+
+Binding the socket to your network interface is mandatory (with zero copy) to
+know the header size of frames used in the circular buffer.
+
+As capture, each frame contains two parts:
+
+ --------------------
+| struct tpacket_hdr | Header. It contains the status of
+|                    | of this frame
+|--------------------|
+| data buffer        |
+.                    .  Data that will be sent over the network interface.
+.                    .
+ --------------------
+
+ bind() associates the socket to your network interface thanks to
+ sll_ifindex parameter of struct sockaddr_ll.
+
+ Initialization example:
+
+ struct sockaddr_ll my_addr;
+ struct ifreq s_ifr;
+ ...
+
+ strncpy (s_ifr.ifr_name, "eth0", sizeof(s_ifr.ifr_name));
+
+ /* get interface index of eth0 */
+ ioctl(this->socket, SIOCGIFINDEX, &s_ifr);
+
+ /* fill sockaddr_ll struct to prepare binding */
+ my_addr.sll_family = AF_PACKET;
+ my_addr.sll_protocol = ETH_P_ALL;
+ my_addr.sll_ifindex =  s_ifr.ifr_ifindex;
+
+ /* bind socket to eth0 */
+ bind(this->socket, (struct sockaddr *)&my_addr, sizeof(struct sockaddr_ll));
+
+ A complete tutorial is available at: http://wiki.gnu-log.net/
+
 --------------------------------------------------------------------------------
 + PACKET_MMAP settings
 --------------------------------------------------------------------------------
@@ -103,7 +170,10 @@ the use of this buffer.
 
 To setup PACKET_MMAP from user level code is done with a call like
 
+ - Capture process
      setsockopt(fd, SOL_PACKET, PACKET_RX_RING, (void *) &req, sizeof(req))
+ - Transmission process
+     setsockopt(fd, SOL_PACKET, PACKET_TX_RING, (void *) &req, sizeof(req))
 
 The most significant argument in the previous call is the req parameter, 
 this parameter must to have the following structure:
@@ -117,11 +187,11 @@ this parameter must to have the following structure:
     };
 
 This structure is defined in /usr/include/linux/if_packet.h and establishes a 
-circular buffer (ring) of unswappable memory mapped in the capture process. 
+circular buffer (ring) of unswappable memory.
 Being mapped in the capture process allows reading the captured frames and 
 related meta-information like timestamps without requiring a system call.
 
-Captured frames are grouped in blocks. Each block is a physically contiguous 
+Frames are grouped in blocks. Each block is a physically contiguous
 region of memory and holds tp_block_size/tp_frame_size frames. The total number 
 of blocks is tp_block_nr. Note that tp_frame_nr is a redundant parameter because
 
@@ -336,6 +406,7 @@ struct tpacket_hdr). If this field is 0 means that the frame is ready
 to be used for the kernel, If not, there is a frame the user can read 
 and the following flags apply:
 
++++ Capture process:
      from include/linux/if_packet.h
 
      #define TP_STATUS_COPY          2 
@@ -391,6 +462,37 @@ packets are in the ring:
 It doesn't incur in a race condition to first check the status value and 
 then poll for frames.
 
+
+++ Transmission process
+Those defines are also used for transmission:
+
+     #define TP_STATUS_AVAILABLE        0 // Frame is available
+     #define TP_STATUS_SEND_REQUEST     1 // Frame will be sent on next send()
+     #define TP_STATUS_SENDING          2 // Frame is currently in transmission
+     #define TP_STATUS_WRONG_FORMAT     4 // Frame format is not correct
+
+First, the kernel initializes all frames to TP_STATUS_AVAILABLE. To send a
+packet, the user fills a data buffer of an available frame, sets tp_len to
+current data buffer size and sets its status field to TP_STATUS_SEND_REQUEST.
+This can be done on multiple frames. Once the user is ready to transmit, it
+calls send(). Then all buffers with status equal to TP_STATUS_SEND_REQUEST are
+forwarded to the network device. The kernel updates each status of sent
+frames with TP_STATUS_SENDING until the end of transfer.
+At the end of each transfer, buffer status returns to TP_STATUS_AVAILABLE.
+
+    header->tp_len = in_i_size;
+    header->tp_status = TP_STATUS_SEND_REQUEST;
+    retval = send(this->socket, NULL, 0, 0);
+
+The user can also use poll() to check if a buffer is available:
+(status == TP_STATUS_SENDING)
+
+    struct pollfd pfd;
+    pfd.fd = fd;
+    pfd.revents = 0;
+    pfd.events = POLLOUT;
+    retval = poll(&pfd, 1, timeout);
+
 --------------------------------------------------------------------------------
 + THANKS
 --------------------------------------------------------------------------------
diff --git a/Documentation/powerpc/dts-bindings/can/sja1000.txt b/Documentation/powerpc/dts-bindings/can/sja1000.txt
new file mode 100644 (file)
index 0000000..d6d209d
--- /dev/null
@@ -0,0 +1,53 @@
+Memory mapped SJA1000 CAN controller from NXP (formerly Philips)
+
+Required properties:
+
+- compatible : should be "nxp,sja1000".
+
+- reg : should specify the chip select, address offset and size required
+       to map the registers of the SJA1000. The size is usually 0x80.
+
+- interrupts: property with a value describing the interrupt source
+       (number and sensitivity) required for the SJA1000.
+
+Optional properties:
+
+- nxp,external-clock-frequency : Frequency of the external oscillator
+       clock in Hz. Note that the internal clock frequency used by the
+       SJA1000 is half of that value. If not specified, a default value
+       of 16000000 (16 MHz) is used.
+
+- nxp,tx-output-mode : operation mode of the TX output control logic:
+       <0x0> : bi-phase output mode
+       <0x1> : normal output mode (default)
+       <0x2> : test output mode
+       <0x3> : clock output mode
+
+- nxp,tx-output-config : TX output pin configuration:
+       <0x01> : TX0 invert
+       <0x02> : TX0 pull-down (default)
+       <0x04> : TX0 pull-up
+       <0x06> : TX0 push-pull
+       <0x08> : TX1 invert
+       <0x10> : TX1 pull-down
+       <0x20> : TX1 pull-up
+       <0x30> : TX1 push-pull
+
+- nxp,clock-out-frequency : clock frequency in Hz on the CLKOUT pin.
+       If not specified or if the specified value is 0, the CLKOUT pin
+       will be disabled.
+
+- nxp,no-comparator-bypass : Allows to disable the CAN input comperator.
+
+For futher information, please have a look to the SJA1000 data sheet.
+
+Examples:
+
+can@3,100 {
+       compatible = "nxp,sja1000";
+       reg = <3 0x100 0x80>;
+       interrupts = <2 0>;
+       interrupt-parent = <&mpic>;
+       nxp,external-clock-frequency = <16000000>;
+};
+
index 4d3ee317a4a3e84181047ab417a3e2a88c4995bc..1b74b5f30af4b5c8180dbfd2e2b3cacbe99fa8c9 100644 (file)
-rfkill - RF switch subsystem support
-====================================
+rfkill - RF kill switch support
+===============================
 
-1 Introduction
-2 Implementation details
-3 Kernel driver guidelines
-3.1 wireless device drivers
-3.2 platform/switch drivers
-3.3 input device drivers
-4 Kernel API
-5 Userspace support
+1. Introduction
+2. Implementation details
+3. Kernel driver guidelines
+4. Kernel API
+5. Userspace support
 
 
-1. Introduction:
+1. Introduction
 
-The rfkill switch subsystem exists to add a generic interface to circuitry that
-can enable or disable the signal output of a wireless *transmitter* of any
-type.  By far, the most common use is to disable radio-frequency transmitters.
+The rfkill subsystem provides a generic interface to disabling any radio
+transmitter in the system. When a transmitter is blocked, it shall not
+radiate any power.
 
-Note that disabling the signal output means that the the transmitter is to be
-made to not emit any energy when "blocked".  rfkill is not about blocking data
-transmissions, it is about blocking energy emission.
+The subsystem also provides the ability to react on button presses and
+disable all transmitters of a certain type (or all). This is intended for
+situations where transmitters need to be turned off, for example on
+aircraft.
 
-The rfkill subsystem offers support for keys and switches often found on
-laptops to enable wireless devices like WiFi and Bluetooth, so that these keys
-and switches actually perform an action in all wireless devices of a given type
-attached to the system.
 
-The buttons to enable and disable the wireless transmitters are important in
-situations where the user is for example using his laptop on a location where
-radio-frequency transmitters _must_ be disabled (e.g. airplanes).
 
-Because of this requirement, userspace support for the keys should not be made