Home
last modified time | relevance | path

Searched +full:cs +full:- +full:enable +full:- +full:shift (Results 1 – 25 of 113) sorted by relevance

12345

/linux/Documentation/devicetree/bindings/gpio/
H A Dst,spear-spics-gpio.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/gpio/st,spear-spics-gpio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: ST Microelectronics SPEAr SPI CS GPIO Controller
10 - Viresh Kumar <vireshk@kernel.org>
27 const: st,spear-spics-gpio
32 gpio-controller: true
34 '#gpio-cells':
37 st-spics,peripcfg-reg:
[all …]
H A Dfairchild,74hc595.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Generic 8-bit shift register
11 have a rising-edge triggered latch clock (or storage register clock) pin,
12 which behaves like an active-low chip select.
14 After the bits are shifted into the shift register, CS# is driven high, which
16 transfer of the bits from the shift register to the storage register and thus
19 shift clock ____| |_| |_..._| |_| |_________
27 - Maxime Ripard <mripard@kernel.org>
[all …]
/linux/include/linux/
H A Dclocksource.h1 /* SPDX-License-Identifier: GPL-2.0 */
36 * struct clocksource - hardware abstraction for a free running counter
37 * Provides mostly state-free accessors to the underlying hardware.
44 * @shift: Cycle to nanosecond divisor (power of two)
49 * @archdata: Optional arch-specific data
60 * 1-99: Unfit for real use
62 * 100-199: Base level usability.
64 * 200-299: Good.
66 * 300-399: Desired.
68 * 400-499: Perfect
[all …]
/linux/drivers/bus/
H A Dqcom-ebi2.c1 // SPDX-License-Identifier: GPL-2.0-only
41 * Bits 31-28: RECOVERY recovery cycles (0 = 1, 1 = 2 etc) this is the time the
42 * memory continues to drive the data bus after OE is de-asserted.
43 * Inserted when reading one CS and switching to another CS or read
44 * followed by write on the same CS. Valid values 0 thru 15.
45 * Bits 27-24: WR_HOLD write hold cycles, these are extra cycles inserted after
47 * asserted until CS is asserted. With a hold of 1, the CS stays
49 * Bits 23-16: WR_DELTA initial latency for write cycles inserted for the first
51 * Bits 15-8: RD_DELTA initial latency for read cycles inserted for the first
53 * Bits 7-4: WR_WAIT number of wait cycles for every write access, 0=1 cycle
[all …]
H A Dintel-ixp4xx-eb.c1 // SPDX-License-Identifier: GPL-2.0-only
32 /* Bits inside each CS timing register */
88 u16 shift; member
93 .prop = "intel,ixp4xx-eb-t1",
96 .shift = IXP4XX_EXP_T1_SHIFT,
99 .prop = "intel,ixp4xx-eb-t2",
102 .shift = IXP4XX_EXP_T2_SHIFT,
105 .prop = "intel,ixp4xx-eb-t3",
108 .shift = IXP4XX_EXP_T3_SHIFT,
111 .prop = "intel,ixp4xx-eb-t4",
[all …]
/linux/kernel/time/
H A Dclocksource.c1 // SPDX-License-Identifier: GPL-2.0+
20 #include "tick-internal.h"
23 static void clocksource_enqueue(struct clocksource *cs);
25 static noinline u64 cycles_to_nsec_safe(struct clocksource *cs, u64 start, u64 end) in cycles_to_nsec_safe() argument
27 u64 delta = clocksource_delta(end, start, cs->mask, cs->max_raw_delt in cycles_to_nsec_safe()
59 clocks_calc_mult_shift(u32 * mult,u32 * shift,u32 from,u32 to,u32 maxsec) clocks_calc_mult_shift() argument
195 clocksource_change_rating(struct clocksource * cs,int rating) clocksource_change_rating() argument
202 __clocksource_unstable(struct clocksource * cs) __clocksource_unstable() argument
231 clocksource_mark_unstable(struct clocksource * cs) clocksource_mark_unstable() argument
253 cs_watchdog_read(struct clocksource * cs,u64 * csnow,u64 * wdnow) cs_watchdog_read() argument
357 struct clocksource *cs = (struct clocksource *)csin; clocksource_verify_one_cpu() local
362 clocksource_verify_percpu(struct clocksource * cs) clocksource_verify_percpu() argument
421 struct clocksource *cs; clocksource_reset_watchdog() local
433 struct clocksource *cs; clocksource_watchdog() local
627 clocksource_enqueue_watchdog(struct clocksource * cs) clocksource_enqueue_watchdog() argument
644 struct clocksource *cs, *old_wd; clocksource_select_watchdog() local
679 clocksource_dequeue_watchdog(struct clocksource * cs) clocksource_dequeue_watchdog() argument
693 struct clocksource *cs, *tmp; __clocksource_watchdog_kthread() local
731 clocksource_is_watchdog(struct clocksource * cs) clocksource_is_watchdog() argument
738 clocksource_enqueue_watchdog(struct clocksource * cs) clocksource_enqueue_watchdog() argument
745 clocksource_dequeue_watchdog(struct clocksource * cs) clocksource_dequeue_watchdog() argument
748 clocksource_is_watchdog(struct clocksource * cs) clocksource_is_watchdog() argument
749 clocksource_mark_unstable(struct clocksource * cs) clocksource_mark_unstable() argument
756 clocksource_is_suspend(struct clocksource * cs) clocksource_is_suspend() argument
761 __clocksource_suspend_select(struct clocksource * cs) __clocksource_suspend_select() argument
790 struct clocksource *cs, *old_suspend; clocksource_suspend_select() local
818 clocksource_start_suspend_timing(struct clocksource * cs,u64 start_cycles) clocksource_start_suspend_timing() argument
856 clocksource_stop_suspend_timing(struct clocksource * cs,u64 cycle_now) clocksource_stop_suspend_timing() argument
891 struct clocksource *cs; clocksource_suspend() local
903 struct clocksource *cs; clocksource_resume() local
929 clocksource_max_adjustment(struct clocksource * cs) clocksource_max_adjustment() argument
955 clocks_calc_max_nsecs(u32 mult,u32 shift,u32 maxadj,u64 mask,u64 * max_cyc) clocks_calc_max_nsecs() argument
990 clocksource_update_max_deferment(struct clocksource * cs) clocksource_update_max_deferment() argument
1008 struct clocksource *cs; clocksource_find_best() local
1031 struct clocksource *best, *cs; __clocksource_select() local
1122 clocksource_enqueue(struct clocksource * cs) clocksource_enqueue() argument
1148 __clocksource_update_freq_scale(struct clocksource * cs,u32 scale,u32 freq) __clocksource_update_freq_scale() argument
1240 __clocksource_register_scale(struct clocksource * cs,u32 scale,u32 freq) __clocksource_register_scale() argument
1277 clocksource_unbind(struct clocksource * cs) clocksource_unbind() argument
1316 clocksource_unregister(struct clocksource * cs) clocksource_unregister() argument
1408 struct clocksource *cs; unbind_clocksource_store() local
[all...]
H A Dtimekeeping.c1 // SPDX-License-Identifier: GPL-2.0
31 #include "tick-internal.h"
67 return ktime_get_aux_ts64(CLOCK_AUX + tkid - TIMEKEEPER_AUX_FIRST, ts); in tk_get_aux_ts64()
72 return tk->id >= TIMEKEEPER_AUX_FIRST && tk->id <= TIMEKEEPER_AUX_LAST; in tk_is_aux()
90 * struct tk_fast - NMI safe timekeeper
103 /* Suspend-time cycles value for halted fast timekeeper. */
106 static u64 dummy_clock_read(struct clocksource *cs) in dummy_clock_read() argument
121 * and shift=0. When the first proper clocksource is installed then
129 .shift = 0, \
168 * Multigrain timestamps require tracking the latest fine-grained timestamp
[all …]
/linux/drivers/spi/
H A Dspi-bitbang.c1 // SPDX-License-Identifier: GPL-2.0-or-later
22 /*----------------------------------------------------------------------*/
25 * FIRST PART (OPTIONAL): word-at-a-time spi_transfer support.
26 * Use this for GPIO or shift-register level hardware APIs.
28 * spi_bitbang_cs is in spi_device->controller_state, which is unavailable
30 * used, though maybe they're called from controller-aware code.
32 * chipselect() and friends may use spi_device->controller_data and
58 unsigned int bits = t->bits_per_word; in bitbang_txrx_8()
59 unsigned int count = t->len; in bitbang_txrx_8()
60 const u8 *tx = t->tx_buf; in bitbang_txrx_8()
[all …]
H A Dspi-dw-bt1.c1 // SPDX-License-Identifier: GPL-2.0-only
9 // Baikal-T1 DW APB SPI and System Boot SPI driver
24 #include <linux/spi/spi-mem.h>
27 #include "spi-dw.h"
52 struct dw_spi_bt1 *dwsbt1 = to_dw_spi_bt1(desc->mem->spi->controller); in dw_spi_bt1_dirmap_create()
54 if (!dwsbt1->map || in dw_spi_bt1_dirmap_create()
55 !dwsbt1->dws.mem_ops.supports_op(desc->mem, &desc->info.op_tmpl)) in dw_spi_bt1_dirmap_create()
56 return -EOPNOTSUPP; in dw_spi_bt1_dirmap_create()
58 if (desc->info.op_tmpl.data.dir != SPI_MEM_DATA_IN) in dw_spi_bt1_dirmap_create()
59 return -EOPNOTSUPP; in dw_spi_bt1_dirmap_create()
[all …]
H A Dspi-dw-core.c1 // SPDX-License-Identifier: GPL-2.0-only
10 #include <linux/dma-mapping.h>
18 #include <linux/spi/spi-mem.h>
23 #include "spi-dw.h"
66 snprintf(name, 32, "dw_spi%d", dws->host->bus_num); in dw_spi_debugfs_init()
67 dws->debugfs = debugfs_create_dir(name, NULL); in dw_spi_debugfs_init()
69 dws->regset.regs = dw_spi_dbgfs_regs; in dw_spi_debugfs_init()
70 dws->regset.nregs = ARRAY_SIZE(dw_spi_dbgfs_regs); in dw_spi_debugfs_init()
71 dws->regset.base = dws->regs; in dw_spi_debugfs_init()
72 debugfs_create_regset32("registers", 0400, dws->debugfs, &dws->regset); in dw_spi_debugfs_init()
[all …]
H A Dspi-cadence-quadspi.c1 // SPDX-License-Identifier: GPL-2.0-only
5 // Copyright Altera Corporation (C) 2012-2014. All rights reserved.
6 // Copyright Intel Corporation (C) 2019-2020. All rights reserved.
7 // Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com
12 #include <linux/dma-mapping.h>
16 #include <linux/firmware/xlnx-zynqmp.h>
30 #include <linux/spi/spi-mem.h>
33 #define CQSPI_NAME "cadence-qspi"
72 u8 cs; member
321 if (ret != -ETIMEDOUT) in cqspi_wait_for_bit()
[all …]
/linux/drivers/gpio/
H A Dgpio-spear-spics.c1 // SPDX-License-Identifier: GPL-2.0-only
21 * Provision is available on some SPEAr SoCs to control ARM PL022 spi cs
31 * struct spear_spics - represents spi chip select control
34 * @sw_enable_bit: bit to enable s/w control over chipselects
38 * @use_count: use count of a spi controller cs lines
61 tmp = readl_relaxed(spics->base + spics->perip_cfg); in spics_set_value()
62 if (spics->last_off != offset) { in spics_set_value()
63 spics->last_off = offset; in spics_set_value()
64 tmp &= ~(spics->cs_enable_mask << spics->cs_enable_shift); in spics_set_value()
65 tmp |= offset << spics->cs_enable_shift; in spics_set_value()
[all …]
/linux/arch/mips/loongson64/
H A Dhpet.c1 // SPDX-License-Identifier: GPL-2.0
82 /* Do nothing on Loongson-3 */ in hpet_enable_legacy_int()
139 * 0 : non-periodic(oneshot) interrupt in hpet_set_state_oneshot()
168 res = (s32)(cnt - hpet_read(HPET_COUNTER)); in hpet_next_event()
170 return res < HPET_MIN_CYCLES ? -ETIME : 0; in hpet_next_event()
184 cd->event_handler(cd); in hpet_irq_handler()
210 /* enable decoding of access to HPET MMIO*/ in hpet_setup()
213 /* HPET irq enable */ in hpet_setup()
228 cd->name = "hpet"; in setup_hpet_timer()
229 cd->rating = 100; in setup_hpet_timer()
[all …]
/linux/drivers/edac/
H A Damd64_edac.c1 // SPDX-License-Identifier: GPL-2.0-only
12 * cleared to prevent re-enabling the hardware by this driver.
21 if (!pvt->flags.zn_regs_v2) in get_umc_reg()
33 /* Per-node stuff */
41 * bandwidth to a valid bit pattern. The 'set' operation finds the 'matching-
83 func, PCI_FUNC(pdev->devfn), offset); in __amd64_read_pci_cfg_dword()
96 func, PCI_FUNC(pdev->devfn), offset); in __amd64_write_pci_cfg_dword()
108 amd64_read_pci_cfg(pvt->F1, DCT_CFG_SEL, &reg); in f15h_select_dct()
109 reg &= (pvt->model == 0x30) ? ~3 : ~1; in f15h_select_dct()
111 amd64_write_pci_cfg(pvt->F1, DCT_CFG_SEL, reg); in f15h_select_dct()
[all …]
/linux/arch/arm/boot/dts/st/
H A Dspear1340.dtsi1 // SPDX-License-Identifier: GPL-2.0-or-later
16 compatible = "st,spear-spics-gpio";
18 st-spics,peripcfg-reg = <0x42c>;
19 st-spics,sw-enable-bit = <21>;
20 st-spics,cs-value-bit = <20>;
21 st-spics,cs-enable-mask = <3>;
22 st-spics,cs-enable-shift = <18>;
23 gpio-controller;
24 #gpio-cells = <2>;
29 compatible = "st,spear1340-miphy";
[all …]
H A Dspear1310.dtsi1 // SPDX-License-Identifier: GPL-2.0-or-later
15 compatible = "st,spear-spics-gpio";
17 st-spics,peripcfg-reg = <0x3b0>;
18 st-spics,sw-enable-bit = <12>;
19 st-spics,cs-value-bit = <11>;
20 st-spics,cs-enable-mask = <3>;
21 st-spics,cs-enable-shift = <8>;
22 gpio-controller;
23 #gpio-cells = <2>;
27 compatible = "st,spear1310-miphy";
[all …]
/linux/drivers/memory/
H A Domap-gpmc.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2005-2006 Nokia Corporation
10 * Added OMAP4 support - Santosh Shilimkar <santosh.shilimkar@ti.com>
33 #include <linux/omap-gpmc.h>
37 #include <linux/platform_data/mtd-nand-omap2.h>
39 #define DEVICE_NAME "omap-gpmc"
207 /* Structure to save gpmc cs context */
258 /* Define chip-selects as reserved by default until probe completes */
278 void gpmc_cs_write_reg(int cs, int idx, u32 val) in gpmc_cs_write_reg() argument
282 reg_addr = gpmc_base + GPMC_CS0_OFFSET + (cs * GPMC_CS_SIZE) + idx; in gpmc_cs_write_reg()
[all …]
/linux/drivers/clocksource/
H A Dsh_cmt.c1 // SPDX-License-Identifier: GPL-2.0
3 * SuperH Timer Support - CMT
39 * 16B 32B 32B-F 48B R-Car Gen2
40 * -----------------------------------------------------------------------------
46 * The r8a73a4 / R-Car Gen2 version has a per-channel start/stop register
50 * Channels are indexed from 0 to N-1 in the documentation. The channel index
55 * CMT0 on r8a7740, which is a 32-bit variant with a single channel numbered 0
59 * Similarly CMT0 on r8a73a4, r8a7790 and r8a7791, while implementing 32-bit
60 * channels only, is a 48-bit gen2 CMT with the 48-bit channels unavailable.
106 struct clocksource cs; member
[all …]
H A Dtimer-atmel-pit.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * at91sam926x_time.c - Periodic Interval Timer (PIT) for at91sam926x
5 * Copyright (C) 2005-2006 M. Amine SAYA, ATMEL Rousset, France
23 #define AT91_PIT_PITIEN BIT(25) /* Timer Interrupt Enable */
73 static u64 read_pit_clk(struct clocksource *cs) in read_pit_clk() argument
75 struct pit_data *data = clksrc_to_pit_data(cs); in read_pit_clk()
81 elapsed = data->cnt; in read_pit_clk()
82 t = pit_read(data->base, AT91_PIT_PIIR); in read_pit_clk()
85 elapsed += PIT_PICNT(t) * data->cycle; in read_pit_clk()
95 pit_write(data->base, AT91_PIT_MR, (data->cycle - 1) | AT91_PIT_PITEN); in pit_clkevt_shutdown()
[all …]
/linux/arch/arm64/boot/dts/marvell/
H A Dac5-98dx25xx.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
15 interrupt-parent = <&gic>;
16 #address-cells = <2>;
17 #size-cells = <2>;
20 #address-cells = <2>;
21 #size-cells = <0>;
23 cpu-map {
36 compatible = "arm,cortex-a55";
[all …]
/linux/drivers/iio/adc/
H A Dad4695.c1 // SPDX-License-Identifier: GPL-2.0-only
22 #include <linux/iio/buffer-dmaengine.h>
38 #include <dt-bindings/iio/adc/adi,ad4695.h>
157 * to control CS and add a delay between the last SCLK and next
208 .name = "ad4695-8",
237 .name = "ad4695-16",
254 .tx_buf = st->regmap_bus_data, in ad4695_regmap_bus_reg_write()
257 if (count > ARRAY_SIZE(st->regmap_bus_data)) in ad4695_regmap_bus_reg_write()
258 return -EINVAL; in ad4695_regmap_bus_reg_write()
260 memcpy(st->regmap_bus_data, data, count); in ad4695_regmap_bus_reg_write()
[all …]
/linux/drivers/net/ethernet/intel/e1000e/
H A Dnvm.c1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright(c) 1999 - 2018 Intel Corporation. */
7 * e1000_raise_eec_clk - Raise EEPROM clock
11 * Enable/Raise the EEPROM clock bit.
18 udelay(hw->nvm.delay_usec); in e1000_raise_eec_clk()
22 * e1000_lower_eec_clk - Lower EEPROM clock
33 udelay(hw->nvm.delay_usec); in e1000_lower_eec_clk()
37 * e1000_shift_out_eec_bits - Shift data bits our to the EEPROM
40 * @count: number of bits to shift out
42 * We need to shift 'count' bits out to the EEPROM. So, the value in the
[all …]
/linux/arch/microblaze/kernel/
H A Dtimer.c2 * Copyright (C) 2007-2013 Michal Simek <monstr@monstr.eu>
3 * Copyright (C) 2012-2013 Xilinx, Inc.
4 * Copyright (C) 2007-2009 PetaLogix
88 * !ENALL - don't enable 'em all in xilinx_timer0_start_periodic()
89 * !PWMA - disable pwm in xilinx_timer0_start_periodic()
90 * TINT - clear interrupt status in xilinx_timer0_start_periodic()
91 * ENT- enable timer itself in xilinx_timer0_start_periodic()
92 * ENIT - enable interrupt in xilinx_timer0_start_periodic()
93 * !LOAD - clear the bit to let go in xilinx_timer0_start_periodic()
94 * ARHT - auto reload in xilinx_timer0_start_periodic()
[all …]
/linux/drivers/ps3/
H A Dps3av_cmd.c1 // SPDX-License-Identifier: GPL-2.0-only
28 int cs; member
33 .cs = PS3AV_CMD_VIDEO_CS_RGB_8,
37 .cs = PS3AV_CMD_VIDEO_CS_RGB_10,
41 .cs = PS3AV_CMD_VIDEO_CS_RGB_12,
45 .cs = PS3AV_CMD_VIDEO_CS_YUV444_8,
49 .cs = PS3AV_CMD_VIDEO_CS_YUV444_10,
53 .cs = PS3AV_CMD_VIDEO_CS_YUV444_12,
57 .cs = PS3AV_CMD_VIDEO_CS_YUV422_8,
61 .cs = PS3AV_CMD_VIDEO_CS_YUV422_10,
[all …]
/linux/arch/arm64/boot/dts/broadcom/stingray/
H A Dstingray.dtsi4 * Copyright(c) 2015-2017 Broadcom. All rights reserved.
33 #include <dt-bindings/interrupt-controller/arm-gic.h>
37 interrupt-parent = <&gic>;
38 #address-cells = <2>;
39 #size-cells = <2>;
42 #address-cells = <2>;
43 #size-cells = <0>;
47 compatible = "arm,cortex-a72";
49 enable-method = "psci";
50 next-level-cache = <&CLUSTER0_L2>;
[all …]

12345