OpenCloudOS-Kernel/arch/xtensa/include/asm
Johannes Berg 6e3e939f3b net: add wireless TX status socket option
The 802.1X EAPOL handshake hostapd does requires
knowing whether the frame was ack'ed by the peer.
Currently, we fudge this pretty badly by not even
transmitting the frame as a normal data frame but
injecting it with radiotap and getting the status
out of radiotap monitor as well. This is rather
complex, confuses users (mon.wlan0 presence) and
doesn't work with all hardware.

To get rid of that hack, introduce a real wifi TX
status option for data frame transmissions.

This works similar to the existing TX timestamping
in that it reflects the SKB back to the socket's
error queue with a SCM_WIFI_STATUS cmsg that has
an int indicating ACK status (0/1).

Since it is possible that at some point we will
want to have TX timestamping and wifi status in a
single errqueue SKB (there's little point in not
doing that), redefine SO_EE_ORIGIN_TIMESTAMPING
to SO_EE_ORIGIN_TXSTATUS which can collect more
than just the timestamp; keep the old constant
as an alias of course. Currently the internal APIs
don't make that possible, but it wouldn't be hard
to split them up in a way that makes it possible.

Thanks to Neil Horman for helping me figure out
the functions that add the control messages.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-11-09 16:01:02 -05:00
..
Kbuild byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
asmmacro.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
atomic.h atomic: cleanup asm-generic atomic*.h inclusion 2011-07-26 16:49:47 -07:00
auxvec.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
bitops.h asm-generic: add another generic ext2 atomic bitops 2011-07-26 16:49:46 -07:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
bootparam.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
bug.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
bugs.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h dma-mapping: rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN 2010-08-11 08:59:21 -07:00
cacheasm.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
cacheflush.h xtensa: Fix FLUSH_DCACHE macro for some variants. 2010-05-01 22:55:21 -07:00
checksum.h xtensa: Fix checksum header file 2009-05-11 21:48:23 -07:00
coprocessor.h xtensa: Add missing include in coprocessor.h 2010-05-03 01:06:43 -07:00
cpumask.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
cputime.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
current.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
delay.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
device.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
div64.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
dma-mapping.h dma-mapping: remove dma_is_consistent API 2010-08-11 08:59:21 -07:00
dma.h Fix common misspellings 2011-03-31 11:26:23 -03:00
elf.h xtensa: Shuffle include statements to fix linker script 2010-05-02 01:05:13 -07:00
emergency-restart.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
errno.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
fb.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
fcntl.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
flat.h xtensa: add flat support 2009-04-02 23:41:29 -07:00
ftrace.h tracing: make CALLER_ADDRx overwriteable 2009-03-02 16:49:37 -05:00
futex.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
gpio.h xtensa: support s6000 gpio irqs and alternate function selection 2009-06-22 02:37:26 -07:00
hardirq.h xtensa: convert to asm-generic/hardirq.h 2010-05-25 08:06:56 -07:00
highmem.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
hw_irq.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
io.h xtensa: nommu support 2009-04-02 23:41:50 -07:00
ioctl.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
ioctls.h tty: add TIOCVHANGUP to allow clean tty shutdown of all ttys 2011-02-17 14:16:30 -08:00
ipcbuf.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
irq.h xtensa: allow variant to initialize own irq chips 2009-06-22 02:36:59 -07:00
irq_regs.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
irqflags.h Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
kdebug.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
kmap_types.h kmap_types: make most arches use generic header file 2009-06-16 19:47:51 -07:00
linkage.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
local.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
mman.h thp: mm: define MADV_NOHUGEPAGE 2011-01-13 17:32:47 -08:00
mmu.h xtensa: nommu support 2009-04-02 23:41:50 -07:00
mmu_context.h xtensa: nommu support 2009-04-02 23:41:50 -07:00
module.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
msgbuf.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
mutex.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
nommu.h xtensa: nommu support 2009-04-02 23:41:50 -07:00
nommu_context.h xtensa: nommu support 2009-04-02 23:41:50 -07:00
page.h xtensa/mm: remove WANT_PAGE_VIRTUAL 2011-05-25 08:39:02 -07:00
param.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
pci-bridge.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
pci.h pci-dma: add linux/pci-dma.h to linux/pci.h 2010-03-12 15:52:42 -08:00
percpu.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
pgalloc.h xtensa: Shuffle include statements to fix linker script 2010-05-02 01:05:13 -07:00
pgtable.h mm: remove pte_*map_nested() 2010-10-26 16:52:08 -07:00
platform.h xtensa: remove platform rtc hooks 2009-04-02 23:45:07 -07:00
poll.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
posix_types.h h8300/m68k/xtensa: __FD_ISSET should return 0/1 2011-07-26 16:49:43 -07:00
processor.h xtensa: Shuffle include statements to fix linker script 2010-05-02 01:05:13 -07:00
ptrace.h ptrace: unify show_regs() prototype 2011-07-26 16:49:43 -07:00
regs.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
resource.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
rmap.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
rwsem.h rwsem: Move duplicate function prototypes to linux/rwsem.h 2011-01-27 12:30:39 +01:00
scatterlist.h remove needless ISA_DMA_THRESHOLD 2010-08-07 18:15:50 +02:00
sections.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
segment.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
sembuf.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
serial.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
setup.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
shmbuf.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
shmparam.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
sigcontext.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
siginfo.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
signal.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
smp.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
socket.h net: add wireless TX status socket option 2011-11-09 16:01:02 -05:00
sockios.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
spinlock.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
stat.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
statfs.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
string.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
swab.h headers_check fix: xtensa, swab.h 2009-02-01 11:01:30 +05:30
syscall.h sanitize do_pipe_flags() callers in arch 2009-12-16 12:16:40 -05:00
system.h Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
termbits.h tty: Add EXTPROC support for LINEMODE 2010-08-10 13:47:39 -07:00
termios.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
thread_info.h add descriptive comment for TIF_MEMDIE task flag declaration. 2010-05-14 11:13:27 +02:00
timex.h xtensa: fix wrong extern declaration renamed in code using it 2009-05-11 22:00:11 -07:00
tlb.h mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
tlbflush.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
topology.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
types.h add the common dma_addr_t typedef to include/linux/types.h 2011-03-22 17:44:09 -07:00
uaccess.h Merge 'akpm' patch series 2011-07-25 21:00:19 -07:00
ucontext.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
unaligned.h xtensa: switch to packed struct unaligned access implementation 2008-11-11 06:14:10 -08:00
unistd.h All Arch: remove linkage for sys_nfsservctl system call 2011-08-26 15:09:58 -07:00
user.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
vga.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00
xor.h xtensa: move headers files to arch/xtensa/include 2008-11-06 10:25:09 -08:00