Home
last modified time | relevance | path

Searched refs:bank (Results 1 – 25 of 810) sorted by relevance

12345678910>>...33

/linux-6.1.9/drivers/gpio/
Dgpio-omap.c77 void (*set_dataout)(struct gpio_bank *bank, unsigned gpio, int enable);
83 #define BANK_USED(bank) (bank->mod_usage || bank->irq_usage) argument
108 static void omap_set_gpio_direction(struct gpio_bank *bank, int gpio, in omap_set_gpio_direction() argument
111 bank->context.oe = omap_gpio_rmw(bank->base + bank->regs->direction, in omap_set_gpio_direction()
117 static void omap_set_gpio_dataout_reg(struct gpio_bank *bank, unsigned offset, in omap_set_gpio_dataout_reg() argument
120 void __iomem *reg = bank->base; in omap_set_gpio_dataout_reg()
124 reg += bank->regs->set_dataout; in omap_set_gpio_dataout_reg()
125 bank->context.dataout |= l; in omap_set_gpio_dataout_reg()
127 reg += bank->regs->clr_dataout; in omap_set_gpio_dataout_reg()
128 bank->context.dataout &= ~l; in omap_set_gpio_dataout_reg()
[all …]
Dgpio-rockchip.c76 static inline void rockchip_gpio_writel(struct rockchip_pin_bank *bank, in rockchip_gpio_writel() argument
79 void __iomem *reg = bank->reg_base + offset; in rockchip_gpio_writel()
81 if (bank->gpio_type == GPIO_TYPE_V2) in rockchip_gpio_writel()
87 static inline u32 rockchip_gpio_readl(struct rockchip_pin_bank *bank, in rockchip_gpio_readl() argument
90 void __iomem *reg = bank->reg_base + offset; in rockchip_gpio_readl()
93 if (bank->gpio_type == GPIO_TYPE_V2) in rockchip_gpio_readl()
101 static inline void rockchip_gpio_writel_bit(struct rockchip_pin_bank *bank, in rockchip_gpio_writel_bit() argument
105 void __iomem *reg = bank->reg_base + offset; in rockchip_gpio_writel_bit()
108 if (bank->gpio_type == GPIO_TYPE_V2) { in rockchip_gpio_writel_bit()
123 static inline u32 rockchip_gpio_readl_bit(struct rockchip_pin_bank *bank, in rockchip_gpio_readl_bit() argument
[all …]
Dgpio-brcmstb.c26 #define GIO_BANK_OFF(bank, off) (((bank) * GIO_BANK_SIZE) + (off * sizeof(u32))) argument
27 #define GIO_ODEN(bank) GIO_BANK_OFF(bank, GIO_REG_ODEN) argument
28 #define GIO_DATA(bank) GIO_BANK_OFF(bank, GIO_REG_DATA) argument
29 #define GIO_IODIR(bank) GIO_BANK_OFF(bank, GIO_REG_IODIR) argument
30 #define GIO_EC(bank) GIO_BANK_OFF(bank, GIO_REG_EC) argument
31 #define GIO_EI(bank) GIO_BANK_OFF(bank, GIO_REG_EI) argument
32 #define GIO_MASK(bank) GIO_BANK_OFF(bank, GIO_REG_MASK) argument
33 #define GIO_LEVEL(bank) GIO_BANK_OFF(bank, GIO_REG_LEVEL) argument
34 #define GIO_STAT(bank) GIO_BANK_OFF(bank, GIO_REG_STAT) argument
66 struct brcmstb_gpio_bank *bank = gpiochip_get_data(gc); in brcmstb_gpio_gc_to_priv() local
[all …]
Dgpio-i8255.c28 const unsigned long bank = io_port / 3; in i8255_get_port() local
31 return ioread8(&ppi[bank].port[ppi_port]) & mask; in i8255_get_port()
61 const unsigned long bank = io_port / 3; in i8255_set_port() local
66 spin_lock_irqsave(&state[bank].lock, flags); in i8255_set_port()
68 out_state = ioread8(&ppi[bank].port[ppi_port]); in i8255_set_port()
70 iowrite8(out_state, &ppi[bank].port[ppi_port]); in i8255_set_port()
72 spin_unlock_irqrestore(&state[bank].lock, flags); in i8255_set_port()
90 const unsigned long bank = io_port / 3; in i8255_direction_input() local
93 spin_lock_irqsave(&state[bank].lock, flags); in i8255_direction_input()
95 state[bank].control_state |= I8255_CONTROL_MODE_SET; in i8255_direction_input()
[all …]
/linux-6.1.9/drivers/pinctrl/renesas/
Dsh_pfc.h445 #define PORT_GP_CFG_1(bank, pin, fn, sfx, cfg) \ argument
446 fn(bank, pin, GP_##bank##_##pin, sfx, cfg)
447 #define PORT_GP_1(bank, pin, fn, sfx) PORT_GP_CFG_1(bank, pin, fn, sfx, 0) argument
449 #define PORT_GP_CFG_2(bank, fn, sfx, cfg) \ argument
450 PORT_GP_CFG_1(bank, 0, fn, sfx, cfg), \
451 PORT_GP_CFG_1(bank, 1, fn, sfx, cfg)
452 #define PORT_GP_2(bank, fn, sfx) PORT_GP_CFG_2(bank, fn, sfx, 0) argument
454 #define PORT_GP_CFG_4(bank, fn, sfx, cfg) \ argument
455 PORT_GP_CFG_2(bank, fn, sfx, cfg), \
456 PORT_GP_CFG_1(bank, 2, fn, sfx, cfg), \
[all …]
/linux-6.1.9/drivers/pinctrl/samsung/
Dpinctrl-exynos.c54 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd); in exynos_irq_mask() local
55 unsigned long reg_mask = our_chip->eint_mask + bank->eint_offset; in exynos_irq_mask()
59 raw_spin_lock_irqsave(&bank->slock, flags); in exynos_irq_mask()
61 mask = readl(bank->eint_base + reg_mask); in exynos_irq_mask()
63 writel(mask, bank->eint_base + reg_mask); in exynos_irq_mask()
65 raw_spin_unlock_irqrestore(&bank->slock, flags); in exynos_irq_mask()
72 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd); in exynos_irq_ack() local
73 unsigned long reg_pend = our_chip->eint_pend + bank->eint_offset; in exynos_irq_ack()
75 writel(1 << irqd->hwirq, bank->eint_base + reg_pend); in exynos_irq_ack()
82 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd); in exynos_irq_unmask() local
[all …]
Dpinctrl-samsung.c358 struct samsung_pin_bank **bank) in pin_to_reg_bank() argument
370 if (bank) in pin_to_reg_bank()
371 *bank = b; in pin_to_reg_bank()
380 struct samsung_pin_bank *bank; in samsung_pinmux_setup() local
392 &reg, &pin_offset, &bank); in samsung_pinmux_setup()
393 type = bank->type; in samsung_pinmux_setup()
402 raw_spin_lock_irqsave(&bank->slock, flags); in samsung_pinmux_setup()
409 raw_spin_unlock_irqrestore(&bank->slock, flags); in samsung_pinmux_setup()
435 struct samsung_pin_bank *bank; in samsung_pinconf_rw() local
444 &pin_offset, &bank); in samsung_pinconf_rw()
[all …]
Dpinctrl-s3c24xx.c101 struct samsung_pin_bank *bank; member
134 struct samsung_pin_bank *bank, int pin) in s3c24xx_eint_set_function() argument
136 const struct samsung_pin_bank_type *bank_type = bank->type; in s3c24xx_eint_set_function()
144 reg = d->virt_base + bank->pctl_offset; in s3c24xx_eint_set_function()
148 raw_spin_lock_irqsave(&bank->slock, flags); in s3c24xx_eint_set_function()
152 val |= bank->eint_func << shift; in s3c24xx_eint_set_function()
155 raw_spin_unlock_irqrestore(&bank->slock, flags); in s3c24xx_eint_set_function()
160 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(data); in s3c24xx_eint_type() local
161 struct samsung_pinctrl_drv_data *d = bank->drvdata; in s3c24xx_eint_type()
162 int index = bank->eint_offset + data->hwirq; in s3c24xx_eint_type()
[all …]
Dpinctrl-s3c64xx.c213 struct samsung_pin_bank *bank; member
268 struct samsung_pin_bank *bank, int pin) in s3c64xx_irq_set_function() argument
270 const struct samsung_pin_bank_type *bank_type = bank->type; in s3c64xx_irq_set_function()
278 reg = d->virt_base + bank->pctl_offset; in s3c64xx_irq_set_function()
289 raw_spin_lock_irqsave(&bank->slock, flags); in s3c64xx_irq_set_function()
293 val |= bank->eint_func << shift; in s3c64xx_irq_set_function()
296 raw_spin_unlock_irqrestore(&bank->slock, flags); in s3c64xx_irq_set_function()
305 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd); in s3c64xx_gpio_irq_set_mask() local
306 struct samsung_pinctrl_drv_data *d = bank->drvdata; in s3c64xx_gpio_irq_set_mask()
307 unsigned char index = EINT_OFFS(bank->eint_offset) + irqd->hwirq; in s3c64xx_gpio_irq_set_mask()
[all …]
/linux-6.1.9/drivers/crypto/qat/qat_common/
Dadf_transport.c40 static int adf_reserve_ring(struct adf_etr_bank_data *bank, u32 ring) in adf_reserve_ring() argument
42 spin_lock(&bank->lock); in adf_reserve_ring()
43 if (bank->ring_mask & (1 << ring)) { in adf_reserve_ring()
44 spin_unlock(&bank->lock); in adf_reserve_ring()
47 bank->ring_mask |= (1 << ring); in adf_reserve_ring()
48 spin_unlock(&bank->lock); in adf_reserve_ring()
52 static void adf_unreserve_ring(struct adf_etr_bank_data *bank, u32 ring) in adf_unreserve_ring() argument
54 spin_lock(&bank->lock); in adf_unreserve_ring()
55 bank->ring_mask &= ~(1 << ring); in adf_unreserve_ring()
56 spin_unlock(&bank->lock); in adf_unreserve_ring()
[all …]
Dadf_gen4_hw_data.h28 #define READ_CSR_RING_HEAD(csr_base_addr, bank, ring) \ argument
30 ADF_RING_BUNDLE_SIZE * (bank) + \
32 #define READ_CSR_RING_TAIL(csr_base_addr, bank, ring) \ argument
34 ADF_RING_BUNDLE_SIZE * (bank) + \
36 #define READ_CSR_E_STAT(csr_base_addr, bank) \ argument
38 ADF_RING_BUNDLE_SIZE * (bank) + ADF_RING_CSR_E_STAT)
39 #define WRITE_CSR_RING_CONFIG(csr_base_addr, bank, ring, value) \ argument
41 ADF_RING_BUNDLE_SIZE * (bank) + \
43 #define WRITE_CSR_RING_BASE(csr_base_addr, bank, ring, value) \ argument
46 u32 _bank = bank; \
[all …]
Dadf_transport_debug.c44 struct adf_etr_bank_data *bank = ring->bank; in adf_ring_show() local
45 struct adf_hw_csr_ops *csr_ops = GET_CSR_OPS(bank->accel_dev); in adf_ring_show()
46 void __iomem *csr = ring->bank->csr_addr; in adf_ring_show()
51 head = csr_ops->read_csr_ring_head(csr, bank->bank_number, in adf_ring_show()
53 tail = csr_ops->read_csr_ring_tail(csr, bank->bank_number, in adf_ring_show()
55 empty = csr_ops->read_csr_e_stat(csr, bank->bank_number); in adf_ring_show()
61 ring->ring_number, ring->bank->bank_number); in adf_ring_show()
104 ring->bank->bank_debug_dir, in adf_ring_debugfs_add()
121 struct adf_etr_bank_data *bank = sfile->private; in adf_bank_start() local
122 u8 num_rings_per_bank = GET_NUM_RINGS_PER_BANK(bank->accel_dev); in adf_bank_start()
[all …]
Dadf_gen2_hw_data.h31 #define READ_CSR_RING_HEAD(csr_base_addr, bank, ring) \ argument
32 ADF_CSR_RD(csr_base_addr, (ADF_RING_BUNDLE_SIZE * (bank)) + \
34 #define READ_CSR_RING_TAIL(csr_base_addr, bank, ring) \ argument
35 ADF_CSR_RD(csr_base_addr, (ADF_RING_BUNDLE_SIZE * (bank)) + \
37 #define READ_CSR_E_STAT(csr_base_addr, bank) \ argument
38 ADF_CSR_RD(csr_base_addr, (ADF_RING_BUNDLE_SIZE * (bank)) + \
40 #define WRITE_CSR_RING_CONFIG(csr_base_addr, bank, ring, value) \ argument
41 ADF_CSR_WR(csr_base_addr, (ADF_RING_BUNDLE_SIZE * (bank)) + \
43 #define WRITE_CSR_RING_BASE(csr_base_addr, bank, ring, value) \ argument
48 ADF_CSR_WR(csr_base_addr, (ADF_RING_BUNDLE_SIZE * (bank)) + \
[all …]
Dadf_gen4_hw_data.c13 static u32 read_csr_ring_head(void __iomem *csr_base_addr, u32 bank, u32 ring) in read_csr_ring_head() argument
15 return READ_CSR_RING_HEAD(csr_base_addr, bank, ring); in read_csr_ring_head()
18 static void write_csr_ring_head(void __iomem *csr_base_addr, u32 bank, u32 ring, in write_csr_ring_head() argument
21 WRITE_CSR_RING_HEAD(csr_base_addr, bank, ring, value); in write_csr_ring_head()
24 static u32 read_csr_ring_tail(void __iomem *csr_base_addr, u32 bank, u32 ring) in read_csr_ring_tail() argument
26 return READ_CSR_RING_TAIL(csr_base_addr, bank, ring); in read_csr_ring_tail()
29 static void write_csr_ring_tail(void __iomem *csr_base_addr, u32 bank, u32 ring, in write_csr_ring_tail() argument
32 WRITE_CSR_RING_TAIL(csr_base_addr, bank, ring, value); in write_csr_ring_tail()
35 static u32 read_csr_e_stat(void __iomem *csr_base_addr, u32 bank) in read_csr_e_stat() argument
37 return READ_CSR_E_STAT(csr_base_addr, bank); in read_csr_e_stat()
[all …]
/linux-6.1.9/arch/x86/kernel/cpu/mce/
Damd.c145 enum smca_bank_types smca_get_bank_type(unsigned int cpu, unsigned int bank) in smca_get_bank_type() argument
149 if (bank >= MAX_NR_BANKS) in smca_get_bank_type()
152 b = &per_cpu(smca_banks, cpu)[bank]; in smca_get_bank_type()
252 static void smca_set_misc_banks_map(unsigned int bank, unsigned int cpu) in smca_set_misc_banks_map() argument
260 if (rdmsr_safe(MSR_AMD64_SMCA_MCx_CONFIG(bank), &low, &high)) in smca_set_misc_banks_map()
266 if (rdmsr_safe(MSR_AMD64_SMCA_MCx_MISC(bank), &low, &high)) in smca_set_misc_banks_map()
270 per_cpu(smca_misc_banks_map, cpu) |= BIT(bank); in smca_set_misc_banks_map()
274 static void smca_configure(unsigned int bank, unsigned int cpu) in smca_configure() argument
280 u32 smca_config = MSR_AMD64_SMCA_MCx_CONFIG(bank); in smca_configure()
312 smca_set_misc_banks_map(bank, cpu); in smca_configure()
[all …]
/linux-6.1.9/tools/testing/selftests/gpio/
Dgpio-sim.sh181 create_bank chip bank
183 test -n `cat $CONFIGFS_DIR/chip/bank/chip_name` || fail "chip_name doesn't work"
188 create_bank chip bank
195 create_bank chip bank
204 create_bank chip bank
211 create_bank chip bank
212 set_num_lines chip bank 16
219 create_bank chip bank
220 set_label chip bank foobar
227 create_bank chip bank
[all …]
/linux-6.1.9/drivers/pinctrl/stm32/
Dpinctrl-stm32.c156 static void stm32_gpio_backup_value(struct stm32_gpio_bank *bank, in stm32_gpio_backup_value() argument
159 bank->pin_backup[offset] &= ~BIT(STM32_GPIO_BKP_VAL); in stm32_gpio_backup_value()
160 bank->pin_backup[offset] |= value << STM32_GPIO_BKP_VAL; in stm32_gpio_backup_value()
163 static void stm32_gpio_backup_mode(struct stm32_gpio_bank *bank, u32 offset, in stm32_gpio_backup_mode() argument
166 bank->pin_backup[offset] &= ~(STM32_GPIO_BKP_MODE_MASK | in stm32_gpio_backup_mode()
168 bank->pin_backup[offset] |= mode << STM32_GPIO_BKP_MODE_SHIFT; in stm32_gpio_backup_mode()
169 bank->pin_backup[offset] |= alt << STM32_GPIO_BKP_ALT_SHIFT; in stm32_gpio_backup_mode()
172 static void stm32_gpio_backup_driving(struct stm32_gpio_bank *bank, u32 offset, in stm32_gpio_backup_driving() argument
175 bank->pin_backup[offset] &= ~BIT(STM32_GPIO_BKP_TYPE); in stm32_gpio_backup_driving()
176 bank->pin_backup[offset] |= drive << STM32_GPIO_BKP_TYPE; in stm32_gpio_backup_driving()
[all …]
/linux-6.1.9/arch/arm/mach-s3c/
Diotiming-s3c2412.c41 unsigned int bank; in s3c2412_print_timing() local
43 for (bank = 0; bank < MAX_BANKS; bank++) { in s3c2412_print_timing()
44 bt = iot->bank[bank].io_2412; in s3c2412_print_timing()
49 "wstoen=%d.%d wstwen=%d.%d wstbrd=%d.%d\n", pfx, bank, in s3c2412_print_timing()
142 int bank; in s3c2412_iotiming_calc() local
145 for (bank = 0; bank < MAX_BANKS; bank++) { in s3c2412_iotiming_calc()
146 bt = iot->bank[bank].io_2412; in s3c2412_iotiming_calc()
153 __func__, bank); in s3c2412_iotiming_calc()
176 int bank; in s3c2412_iotiming_set() local
180 for (bank = 0; bank < MAX_BANKS; bank++) { in s3c2412_iotiming_set()
[all …]
Diotiming-s3c2410.c35 int bank; in s3c2410_print_timing() local
37 for (bank = 0; bank < MAX_BANKS; bank++) { in s3c2410_print_timing()
38 bt = timings->bank[bank].io_2410; in s3c2410_print_timing()
43 "Tcoh=%d.%d, Tcah=%d.%d\n", pfx, bank, in s3c2410_print_timing()
56 static inline void __iomem *bank_reg(unsigned int bank) in bank_reg() argument
58 return S3C2410_BANKCON0 + (bank << 2); in bank_reg()
362 int bank; in s3c2410_iotiming_calc() local
365 for (bank = 0; bank < MAX_BANKS; bank++) { in s3c2410_iotiming_calc()
366 bankcon = __raw_readl(bank_reg(bank)); in s3c2410_iotiming_calc()
367 bt = iot->bank[bank].io_2410; in s3c2410_iotiming_calc()
[all …]
/linux-6.1.9/drivers/net/phy/mscc/
Dmscc_macsec.c23 enum macsec_bank bank, u32 reg) in vsc8584_macsec_phy_read() argument
34 MSCC_PHY_MACSEC_20_TARGET(bank >> 2)); in vsc8584_macsec_phy_read()
36 if (bank >> 2 == 0x1) in vsc8584_macsec_phy_read()
38 bank &= 0x3; in vsc8584_macsec_phy_read()
40 bank = 0; in vsc8584_macsec_phy_read()
45 MSCC_PHY_MACSEC_19_TARGET(bank)); in vsc8584_macsec_phy_read()
62 enum macsec_bank bank, u32 reg, u32 val) in vsc8584_macsec_phy_write() argument
72 MSCC_PHY_MACSEC_20_TARGET(bank >> 2)); in vsc8584_macsec_phy_write()
74 if ((bank >> 2 == 0x1) || (bank >> 2 == 0x3)) in vsc8584_macsec_phy_write()
75 bank &= 0x3; in vsc8584_macsec_phy_write()
[all …]
/linux-6.1.9/drivers/bus/
Duniphier-system-bus.c35 struct uniphier_system_bus_bank bank[UNIPHIER_SBC_NR_BANKS]; member
39 int bank, u32 addr, u64 paddr, u32 size) in uniphier_system_bus_add_bank() argument
45 bank, addr, paddr, size); in uniphier_system_bus_add_bank()
47 if (bank >= ARRAY_SIZE(priv->bank)) { in uniphier_system_bus_add_bank()
48 dev_err(priv->dev, "unsupported bank number %d\n", bank); in uniphier_system_bus_add_bank()
52 if (priv->bank[bank].base || priv->bank[bank].end) { in uniphier_system_bus_add_bank()
54 "range for bank %d has already been specified\n", bank); in uniphier_system_bus_add_bank()
86 priv->bank[bank].base = paddr; in uniphier_system_bus_add_bank()
87 priv->bank[bank].end = end; in uniphier_system_bus_add_bank()
90 bank, priv->bank[bank].base, priv->bank[bank].end); in uniphier_system_bus_add_bank()
[all …]
/linux-6.1.9/drivers/dma/ipu/
Dipu_irq.c72 struct ipu_irq_bank *bank; member
96 struct ipu_irq_bank *bank; in ipu_irq_unmask() local
102 bank = map->bank; in ipu_irq_unmask()
103 if (!bank) { in ipu_irq_unmask()
109 reg = ipu_read_reg(bank->ipu, bank->control); in ipu_irq_unmask()
111 ipu_write_reg(bank->ipu, reg, bank->control); in ipu_irq_unmask()
119 struct ipu_irq_bank *bank; in ipu_irq_mask() local
125 bank = map->bank; in ipu_irq_mask()
126 if (!bank) { in ipu_irq_mask()
132 reg = ipu_read_reg(bank->ipu, bank->control); in ipu_irq_mask()
[all …]
/linux-6.1.9/drivers/leds/
Dleds-tca6507.c162 struct bank { struct
167 } bank[3]; member
178 int bank; /* Bank used, or -1 */ member
281 static void set_code(struct tca6507_chip *tca, int reg, int bank, int new) in set_code() argument
285 if (bank) { in set_code()
298 static void set_level(struct tca6507_chip *tca, int bank, int level) in set_level() argument
300 switch (bank) { in set_level()
303 set_code(tca, TCA6507_MAX_INTENSITY, bank, level); in set_level()
309 tca->bank[bank].level = level; in set_level()
313 static void set_times(struct tca6507_chip *tca, int bank) in set_times() argument
[all …]
/linux-6.1.9/drivers/pinctrl/
Dpinctrl-rockchip.c658 static void rockchip_get_recalced_mux(struct rockchip_pin_bank *bank, int pin, in rockchip_get_recalced_mux() argument
661 struct rockchip_pinctrl *info = bank->drvdata; in rockchip_get_recalced_mux()
668 if (data->num == bank->bank_num && in rockchip_get_recalced_mux()
1018 static bool rockchip_get_mux_route(struct rockchip_pin_bank *bank, int pin, in rockchip_get_mux_route() argument
1021 struct rockchip_pinctrl *info = bank->drvdata; in rockchip_get_mux_route()
1028 if ((data->bank_num == bank->bank_num) && in rockchip_get_mux_route()
1043 static int rockchip_get_mux(struct rockchip_pin_bank *bank, int pin) in rockchip_get_mux() argument
1045 struct rockchip_pinctrl *info = bank->drvdata; in rockchip_get_mux()
1056 if (bank->iomux[iomux_num].type & IOMUX_UNROUTED) { in rockchip_get_mux()
1061 if (bank->iomux[iomux_num].type & IOMUX_GPIO_ONLY) in rockchip_get_mux()
[all …]
/linux-6.1.9/sound/pci/au88x0/
Dau88x0_wt.h21 #define WT_CTRL(bank) (((((bank)&1)<<0xd) + 0x00)<<2) /* 0x0000 */ argument
22 #define WT_SRAMP(bank) (((((bank)&1)<<0xd) + 0x01)<<2) /* 0x0004 */ argument
23 #define WT_DSREG(bank) (((((bank)&1)<<0xd) + 0x02)<<2) /* 0x0008 */ argument
24 #define WT_MRAMP(bank) (((((bank)&1)<<0xd) + 0x03)<<2) /* 0x000c */ argument
25 #define WT_GMODE(bank) (((((bank)&1)<<0xd) + 0x04)<<2) /* 0x0010 */ argument
26 #define WT_ARAMP(bank) (((((bank)&1)<<0xd) + 0x05)<<2) /* 0x0014 */ argument

12345678910>>...33