aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlegacy/iwl-prph.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/iwlegacy/iwl-prph.h')
-rw-r--r--drivers/net/wireless/iwlegacy/iwl-prph.h58
1 files changed, 29 insertions, 29 deletions
diff --git a/drivers/net/wireless/iwlegacy/iwl-prph.h b/drivers/net/wireless/iwlegacy/iwl-prph.h
index 96788a128a61..caa383726787 100644
--- a/drivers/net/wireless/iwlegacy/iwl-prph.h
+++ b/drivers/net/wireless/iwlegacy/iwl-prph.h
@@ -320,19 +320,19 @@
320 * can keep track of at one time when creating block-ack chains of frames. 320 * can keep track of at one time when creating block-ack chains of frames.
321 * Note that "64" matches the number of ack bits in a block-ack packet. 321 * Note that "64" matches the number of ack bits in a block-ack packet.
322 * Driver should use SCD_WIN_SIZE and SCD_FRAME_LIMIT values to initialize 322 * Driver should use SCD_WIN_SIZE and SCD_FRAME_LIMIT values to initialize
323 * IWL49_SCD_CONTEXT_QUEUE_OFFSET(x) values. 323 * IL49_SCD_CONTEXT_QUEUE_OFFSET(x) values.
324 */ 324 */
325#define SCD_WIN_SIZE 64 325#define SCD_WIN_SIZE 64
326#define SCD_FRAME_LIMIT 64 326#define SCD_FRAME_LIMIT 64
327 327
328/* SCD registers are internal, must be accessed via HBUS_TARG_PRPH regs */ 328/* SCD registers are internal, must be accessed via HBUS_TARG_PRPH regs */
329#define IWL49_SCD_START_OFFSET 0xa02c00 329#define IL49_SCD_START_OFFSET 0xa02c00
330 330
331/* 331/*
332 * 4965 tells driver SRAM address for internal scheduler structs via this reg. 332 * 4965 tells driver SRAM address for internal scheduler structs via this reg.
333 * Value is valid only after "Alive" response from uCode. 333 * Value is valid only after "Alive" response from uCode.
334 */ 334 */
335#define IWL49_SCD_SRAM_BASE_ADDR (IWL49_SCD_START_OFFSET + 0x0) 335#define IL49_SCD_SRAM_BASE_ADDR (IL49_SCD_START_OFFSET + 0x0)
336 336
337/* 337/*
338 * Driver may need to update queue-empty bits after changing queue's 338 * Driver may need to update queue-empty bits after changing queue's
@@ -343,7 +343,7 @@
343 * 15-00: Empty state, one for each queue -- 1: empty, 0: non-empty 343 * 15-00: Empty state, one for each queue -- 1: empty, 0: non-empty
344 * NOTE: This register is not used by Linux driver. 344 * NOTE: This register is not used by Linux driver.
345 */ 345 */
346#define IWL49_SCD_EMPTY_BITS (IWL49_SCD_START_OFFSET + 0x4) 346#define IL49_SCD_EMPTY_BITS (IL49_SCD_START_OFFSET + 0x4)
347 347
348/* 348/*
349 * Physical base address of array of byte count (BC) circular buffers (CBs). 349 * Physical base address of array of byte count (BC) circular buffers (CBs).
@@ -355,7 +355,7 @@
355 * Bit fields: 355 * Bit fields:
356 * 25-00: Byte Count CB physical address [35:10], must be 1024-byte aligned. 356 * 25-00: Byte Count CB physical address [35:10], must be 1024-byte aligned.
357 */ 357 */
358#define IWL49_SCD_DRAM_BASE_ADDR (IWL49_SCD_START_OFFSET + 0x10) 358#define IL49_SCD_DRAM_BASE_ADDR (IL49_SCD_START_OFFSET + 0x10)
359 359
360/* 360/*
361 * Enables any/all Tx DMA/FIFO channels. 361 * Enables any/all Tx DMA/FIFO channels.
@@ -364,7 +364,7 @@
364 * Bit fields: 364 * Bit fields:
365 * 7- 0: Enable (1), disable (0), one bit for each channel 0-7 365 * 7- 0: Enable (1), disable (0), one bit for each channel 0-7
366 */ 366 */
367#define IWL49_SCD_TXFACT (IWL49_SCD_START_OFFSET + 0x1c) 367#define IL49_SCD_TXFACT (IL49_SCD_START_OFFSET + 0x1c)
368/* 368/*
369 * Queue (x) Write Pointers (indexes, really!), one for each Tx queue. 369 * Queue (x) Write Pointers (indexes, really!), one for each Tx queue.
370 * Initialized and updated by driver as new TFDs are added to queue. 370 * Initialized and updated by driver as new TFDs are added to queue.
@@ -372,7 +372,7 @@
372 * Start Sequence Number; index = (SSN & 0xff) 372 * Start Sequence Number; index = (SSN & 0xff)
373 * NOTE: Alternative to HBUS_TARG_WRPTR, which is what Linux driver uses? 373 * NOTE: Alternative to HBUS_TARG_WRPTR, which is what Linux driver uses?
374 */ 374 */
375#define IWL49_SCD_QUEUE_WRPTR(x) (IWL49_SCD_START_OFFSET + 0x24 + (x) * 4) 375#define IL49_SCD_QUEUE_WRPTR(x) (IL49_SCD_START_OFFSET + 0x24 + (x) * 4)
376 376
377/* 377/*
378 * Queue (x) Read Pointers (indexes, really!), one for each Tx queue. 378 * Queue (x) Read Pointers (indexes, really!), one for each Tx queue.
@@ -380,7 +380,7 @@
380 * For Scheduler-ACK mode, index indicates first frame in Tx window. 380 * For Scheduler-ACK mode, index indicates first frame in Tx window.
381 * Initialized by driver, updated by scheduler. 381 * Initialized by driver, updated by scheduler.
382 */ 382 */
383#define IWL49_SCD_QUEUE_RDPTR(x) (IWL49_SCD_START_OFFSET + 0x64 + (x) * 4) 383#define IL49_SCD_QUEUE_RDPTR(x) (IL49_SCD_START_OFFSET + 0x64 + (x) * 4)
384 384
385/* 385/*
386 * Select which queues work in chain mode (1) vs. not (0). 386 * Select which queues work in chain mode (1) vs. not (0).
@@ -391,7 +391,7 @@
391 * NOTE: If driver sets up queue for chain mode, it should be also set up 391 * NOTE: If driver sets up queue for chain mode, it should be also set up
392 * Scheduler-ACK mode as well, via SCD_QUEUE_STATUS_BITS(x). 392 * Scheduler-ACK mode as well, via SCD_QUEUE_STATUS_BITS(x).
393 */ 393 */
394#define IWL49_SCD_QUEUECHAIN_SEL (IWL49_SCD_START_OFFSET + 0xd0) 394#define IL49_SCD_QUEUECHAIN_SEL (IL49_SCD_START_OFFSET + 0xd0)
395 395
396/* 396/*
397 * Select which queues interrupt driver when scheduler increments 397 * Select which queues interrupt driver when scheduler increments
@@ -402,7 +402,7 @@
402 * NOTE: This functionality is apparently a no-op; driver relies on interrupts 402 * NOTE: This functionality is apparently a no-op; driver relies on interrupts
403 * from Rx queue to read Tx command responses and update Tx queues. 403 * from Rx queue to read Tx command responses and update Tx queues.
404 */ 404 */
405#define IWL49_SCD_INTERRUPT_MASK (IWL49_SCD_START_OFFSET + 0xe4) 405#define IL49_SCD_INTERRUPT_MASK (IL49_SCD_START_OFFSET + 0xe4)
406 406
407/* 407/*
408 * Queue search status registers. One for each queue. 408 * Queue search status registers. One for each queue.
@@ -423,18 +423,18 @@
423 * NOTE: If enabling Scheduler-ACK mode, chain mode should also be enabled 423 * NOTE: If enabling Scheduler-ACK mode, chain mode should also be enabled
424 * via SCD_QUEUECHAIN_SEL. 424 * via SCD_QUEUECHAIN_SEL.
425 */ 425 */
426#define IWL49_SCD_QUEUE_STATUS_BITS(x)\ 426#define IL49_SCD_QUEUE_STATUS_BITS(x)\
427 (IWL49_SCD_START_OFFSET + 0x104 + (x) * 4) 427 (IL49_SCD_START_OFFSET + 0x104 + (x) * 4)
428 428
429/* Bit field positions */ 429/* Bit field positions */
430#define IWL49_SCD_QUEUE_STTS_REG_POS_ACTIVE (0) 430#define IL49_SCD_QUEUE_STTS_REG_POS_ACTIVE (0)
431#define IWL49_SCD_QUEUE_STTS_REG_POS_TXF (1) 431#define IL49_SCD_QUEUE_STTS_REG_POS_TXF (1)
432#define IWL49_SCD_QUEUE_STTS_REG_POS_WSL (5) 432#define IL49_SCD_QUEUE_STTS_REG_POS_WSL (5)
433#define IWL49_SCD_QUEUE_STTS_REG_POS_SCD_ACK (8) 433#define IL49_SCD_QUEUE_STTS_REG_POS_SCD_ACK (8)
434 434
435/* Write masks */ 435/* Write masks */
436#define IWL49_SCD_QUEUE_STTS_REG_POS_SCD_ACT_EN (10) 436#define IL49_SCD_QUEUE_STTS_REG_POS_SCD_ACT_EN (10)
437#define IWL49_SCD_QUEUE_STTS_REG_MSK (0x0007FC00) 437#define IL49_SCD_QUEUE_STTS_REG_MSK (0x0007FC00)
438 438
439/** 439/**
440 * 4965 internal SRAM structures for scheduler, shared with driver ... 440 * 4965 internal SRAM structures for scheduler, shared with driver ...
@@ -470,14 +470,14 @@
470 * Init must be done after driver receives "Alive" response from 4965 uCode, 470 * Init must be done after driver receives "Alive" response from 4965 uCode,
471 * and when setting up queue for aggregation. 471 * and when setting up queue for aggregation.
472 */ 472 */
473#define IWL49_SCD_CONTEXT_DATA_OFFSET 0x380 473#define IL49_SCD_CONTEXT_DATA_OFFSET 0x380
474#define IWL49_SCD_CONTEXT_QUEUE_OFFSET(x) \ 474#define IL49_SCD_CONTEXT_QUEUE_OFFSET(x) \
475 (IWL49_SCD_CONTEXT_DATA_OFFSET + ((x) * 8)) 475 (IL49_SCD_CONTEXT_DATA_OFFSET + ((x) * 8))
476 476
477#define IWL49_SCD_QUEUE_CTX_REG1_WIN_SIZE_POS (0) 477#define IL49_SCD_QUEUE_CTX_REG1_WIN_SIZE_POS (0)
478#define IWL49_SCD_QUEUE_CTX_REG1_WIN_SIZE_MSK (0x0000007F) 478#define IL49_SCD_QUEUE_CTX_REG1_WIN_SIZE_MSK (0x0000007F)
479#define IWL49_SCD_QUEUE_CTX_REG2_FRAME_LIMIT_POS (16) 479#define IL49_SCD_QUEUE_CTX_REG2_FRAME_LIMIT_POS (16)
480#define IWL49_SCD_QUEUE_CTX_REG2_FRAME_LIMIT_MSK (0x007F0000) 480#define IL49_SCD_QUEUE_CTX_REG2_FRAME_LIMIT_MSK (0x007F0000)
481 481
482/* 482/*
483 * Tx Status Bitmap 483 * Tx Status Bitmap
@@ -486,7 +486,7 @@
486 * "Alive" notification from uCode. Area is used only by device itself; 486 * "Alive" notification from uCode. Area is used only by device itself;
487 * no other support (besides clearing) is required from driver. 487 * no other support (besides clearing) is required from driver.
488 */ 488 */
489#define IWL49_SCD_TX_STTS_BITMAP_OFFSET 0x400 489#define IL49_SCD_TX_STTS_BITMAP_OFFSET 0x400
490 490
491/* 491/*
492 * RAxTID to queue translation mapping. 492 * RAxTID to queue translation mapping.
@@ -508,11 +508,11 @@
508 * must read a dword-aligned value from device SRAM, replace the 16-bit map 508 * must read a dword-aligned value from device SRAM, replace the 16-bit map
509 * value of interest, and write the dword value back into device SRAM. 509 * value of interest, and write the dword value back into device SRAM.
510 */ 510 */
511#define IWL49_SCD_TRANSLATE_TBL_OFFSET 0x500 511#define IL49_SCD_TRANSLATE_TBL_OFFSET 0x500
512 512
513/* Find translation table dword to read/write for given queue */ 513/* Find translation table dword to read/write for given queue */
514#define IWL49_SCD_TRANSLATE_TBL_OFFSET_QUEUE(x) \ 514#define IL49_SCD_TRANSLATE_TBL_OFFSET_QUEUE(x) \
515 ((IWL49_SCD_TRANSLATE_TBL_OFFSET + ((x) * 2)) & 0xfffffffc) 515 ((IL49_SCD_TRANSLATE_TBL_OFFSET + ((x) * 2)) & 0xfffffffc)
516 516
517#define IL_SCD_TXFIFO_POS_TID (0) 517#define IL_SCD_TXFIFO_POS_TID (0)
518#define IL_SCD_TXFIFO_POS_RA (4) 518#define IL_SCD_TXFIFO_POS_RA (4)