Home
last modified time | relevance | path

Searched full:ssp (Results 1 – 25 of 215) sorted by relevance

123456789

/linux/kernel/rcu/
H A Dsrcutiny.c31 static int init_srcu_struct_fields(struct srcu_struct *ssp) in init_srcu_struct_fields() argument
33 ssp->srcu_lock_nesting[0] = 0; in init_srcu_struct_fields()
34 ssp->srcu_lock_nesting[1] = 0; in init_srcu_struct_fields()
35 init_swait_queue_head(&ssp->srcu_wq); in init_srcu_struct_fields()
36 ssp->srcu_cb_head = NULL; in init_srcu_struct_fields()
37 ssp->srcu_cb_tail = &ssp->srcu_cb_head; in init_srcu_struct_fields()
38 ssp->srcu_gp_running = false; in init_srcu_struct_fields()
39 ssp->srcu_gp_waiting = false; in init_srcu_struct_fields()
40 ssp->srcu_idx = 0; in init_srcu_struct_fields()
41 ssp->srcu_idx_max = 0; in init_srcu_struct_fields()
[all …]
H A Dsrcutree.c76 static void srcu_reschedule(struct srcu_struct *ssp, unsigned long delay);
123 static void init_srcu_struct_data(struct srcu_struct *ssp) in init_srcu_struct_data() argument
133 sdp = per_cpu_ptr(ssp->sda, cpu); in init_srcu_struct_data()
137 sdp->srcu_gp_seq_needed = ssp->srcu_sup->srcu_gp_seq; in init_srcu_struct_data()
138 sdp->srcu_gp_seq_needed_exp = ssp->srcu_sup->srcu_gp_seq; in init_srcu_struct_data()
144 sdp->ssp = ssp; in init_srcu_struct_data()
164 static bool init_srcu_struct_nodes(struct srcu_struct *ssp, gfp_t gfp_flags) in init_srcu_struct_nodes() argument
176 ssp->srcu_sup->node = kcalloc(rcu_num_nodes, sizeof(*ssp->srcu_sup->node), gfp_flags); in init_srcu_struct_nodes()
177 if (!ssp->srcu_sup->node) in init_srcu_struct_nodes()
181 ssp->srcu_sup->level[0] = &ssp->srcu_sup->node[0]; in init_srcu_struct_nodes()
[all …]
/linux/drivers/tty/serial/
H A Dsifive.c220 * @ssp: pointer to a struct sifive_serial_port record
223 * IP block base, given a pointer @ssp to a struct sifive_serial_port record.
227 static void __ssp_writel(u32 v, u16 offs, struct sifive_serial_port *ssp) in __ssp_writel() argument
229 __ssp_early_writel(v, offs, &ssp->port); in __ssp_writel()
234 * @ssp: pointer to a struct sifive_serial_port record
238 * IP block base, given a pointer @ssp to a struct sifive_serial_port record.
244 static u32 __ssp_readl(struct sifive_serial_port *ssp, u16 offs) in __ssp_readl() argument
246 return __ssp_early_readl(&ssp->port, offs); in __ssp_readl()
251 * @ssp: pointer to a struct sifive_serial_port
260 static int sifive_serial_is_txfifo_full(struct sifive_serial_port *ssp) in sifive_serial_is_txfifo_full() argument
[all …]
/linux/sound/soc/pxa/
H A Dpxa-ssp.c3 * pxa-ssp.c -- ALSA Soc Audio Layer
33 #include "pxa-ssp.h"
36 * SSP audio private data
39 struct ssp_device *ssp; member
53 static void dump_registers(struct ssp_device *ssp) in dump_registers() argument
55 dev_dbg(ssp->dev, "SSCR0 0x%08x SSCR1 0x%08x SSTO 0x%08x\n", in dump_registers()
56 pxa_ssp_read_reg(ssp, SSCR0), pxa_ssp_read_reg(ssp, SSCR1), in dump_registers()
57 pxa_ssp_read_reg(ssp, SSTO)); in dump_registers()
59 dev_dbg(ssp->dev, "SSPSP 0x%08x SSSR 0x%08x SSACD 0x%08x\n", in dump_registers()
60 pxa_ssp_read_reg(ssp, SSPSP), pxa_ssp_read_reg(ssp, SSSR), in dump_registers()
[all …]
H A Dpxa-ssp.h3 * ASoC PXA SSP port support
9 /* SSP clock sources */
16 /* SSP audio dividers */
21 /* SSP ACDS audio dividers values */
29 /* SSP divider bypass */
/linux/include/linux/
H A Dsrcu.h28 int __init_srcu_struct(struct srcu_struct *ssp, const char *name, struct lock_class_key *key);
30 int __init_srcu_struct_fast(struct srcu_struct *ssp, const char *name, struct lock_class_key *key);
31 int __init_srcu_struct_fast_updown(struct srcu_struct *ssp, const char *name,
35 #define init_srcu_struct(ssp) \ argument
39 __init_srcu_struct((ssp), #ssp, &__srcu_key); \
42 #define init_srcu_struct_fast(ssp) \ argument
46 __init_srcu_struct_fast((ssp), #ssp, &__srcu_key); \
49 #define init_srcu_struct_fast_updown(ssp) \ argument
53 __init_srcu_struct_fast_updown((ssp), #ssp, &__srcu_key); \
59 int init_srcu_struct(struct srcu_struct *ssp);
[all …]
H A Dsrcutiny.h67 void synchronize_srcu(struct srcu_struct *ssp);
75 static inline int __srcu_read_lock(struct srcu_struct *ssp) in __srcu_read_lock() argument
80 idx = ((READ_ONCE(ssp->srcu_idx) + 1) & 0x2) >> 1; in __srcu_read_lock()
81 WRITE_ONCE(ssp->srcu_lock_nesting[idx], READ_ONCE(ssp->srcu_lock_nesting[idx]) + 1); in __srcu_read_lock()
88 static inline bool __srcu_ptr_to_ctr(struct srcu_struct *ssp, struct srcu_ctr __percpu *scpp) in __srcu_ptr_to_ctr() argument
93 static inline struct srcu_ctr __percpu *__srcu_ctr_to_ptr(struct srcu_struct *ssp, int idx) in __srcu_ctr_to_ptr() argument
98 static inline struct srcu_ctr __percpu *__srcu_read_lock_fast(struct srcu_struct *ssp) in __srcu_read_lock_fast() argument
100 return __srcu_ctr_to_ptr(ssp, __srcu_read_lock(ssp)); in __srcu_read_lock_fast()
103 static inline void __srcu_read_unlock_fast(struct srcu_struct *ssp, struct srcu_ctr __percpu *scp) in __srcu_read_unlock_fast() argument
105 __srcu_read_unlock(ssp, __srcu_ptr_to_ctr(ssp, scp)); in __srcu_read_unlock_fast()
[all …]
H A Dpxa2xx_ssp.h5 * This driver supports the following PXA CPU/SSP ports:-
7 * PXA250 SSP
8 * PXA255 SSP, NSSP
9 * PXA26x SSP, NSSP, ASSP
29 * SSP Serial Port Registers
30 * PXA250, PXA255, PXA26x and PXA27x SSP controllers are all slightly different.
34 #define SSCR0 (0x00) /* SSP Control Register 0 */
35 #define SSCR1 (0x04) /* SSP Control Register 1 */
36 #define SSSR (0x08) /* SSP Status Register */
37 #define SSITR (0x0C) /* SSP Interrupt Test Register */
[all …]
H A Dsrcutree.h51 struct srcu_struct *ssp; member
236 int __srcu_read_lock(struct srcu_struct *ssp) __acquires(ssp);
237 void synchronize_srcu_expedited(struct srcu_struct *ssp);
238 void srcu_barrier(struct srcu_struct *ssp);
239 void srcu_expedite_current(struct srcu_struct *ssp);
240 void srcu_torture_stats_print(struct srcu_struct *ssp, char *tt, char *tf);
244 static inline bool __srcu_ptr_to_ctr(struct srcu_struct *ssp, struct srcu_ctr __percpu *scpp) in __srcu_ptr_to_ctr() argument
246 return scpp - &ssp->sda->srcu_ctrs[0]; in __srcu_ptr_to_ctr()
251 static inline struct srcu_ctr __percpu *__srcu_ctr_to_ptr(struct srcu_struct *ssp, int idx) in __srcu_ctr_to_ptr() argument
253 return &ssp->sda->srcu_ctrs[idx]; in __srcu_ctr_to_ptr()
[all …]
/linux/drivers/spi/
H A Dspi-pxa2xx-platform.c22 pxa2xx_spi_init_ssp(struct platform_device *pdev, struct ssp_device *ssp, enum pxa_ssp_type type) in pxa2xx_spi_init_ssp() argument
29 ssp->mmio_base = devm_platform_get_and_ioremap_resource(pdev, 0, &res); in pxa2xx_spi_init_ssp()
30 if (IS_ERR(ssp->mmio_base)) in pxa2xx_spi_init_ssp()
31 return PTR_ERR(ssp->mmio_base); in pxa2xx_spi_init_ssp()
33 ssp->phys_base = res->start; in pxa2xx_spi_init_ssp()
35 ssp->clk = devm_clk_get(dev, NULL); in pxa2xx_spi_init_ssp()
36 if (IS_ERR(ssp->clk)) in pxa2xx_spi_init_ssp()
37 return PTR_ERR(ssp->clk); in pxa2xx_spi_init_ssp()
39 ssp->irq = platform_get_irq(pdev, 0); in pxa2xx_spi_init_ssp()
40 if (ssp->irq < 0) in pxa2xx_spi_init_ssp()
[all …]
H A Dspi-pxa2xx-pci.c67 static int pxa2xx_spi_pci_clk_register(struct pci_dev *dev, struct ssp_device *ssp, in pxa2xx_spi_pci_clk_register() argument
72 snprintf(buf, sizeof(buf), "pxa2xx-spi.%d", ssp->port_id); in pxa2xx_spi_pci_clk_register()
73 ssp->clk = clk_register_fixed_rate(&dev->dev, buf, NULL, 0, rate); in pxa2xx_spi_pci_clk_register()
74 if (IS_ERR(ssp->clk)) in pxa2xx_spi_pci_clk_register()
75 return PTR_ERR(ssp->clk); in pxa2xx_spi_pci_clk_register()
77 return devm_add_action_or_reset(&dev->dev, pxa2xx_spi_pci_clk_unregister, ssp->clk); in pxa2xx_spi_pci_clk_register()
98 struct ssp_device *ssp = &c->ssp; in lpss_spi_setup() local
105 ssp->type = LPSS_BYT_SSP; in lpss_spi_setup()
106 ssp->port_id = 0; in lpss_spi_setup()
111 ssp->type = LPSS_BSW_SSP; in lpss_spi_setup()
[all …]
H A Dspi-pxa2xx.h21 * The platform data for SSP controller devices
36 struct ssp_device ssp; member
44 /* SSP Info */
45 struct ssp_device *ssp; member
54 /* SSP masks*/
81 return pxa_ssp_read_reg(drv_data->ssp, reg); in pxa2xx_spi_read()
86 pxa_ssp_write_reg(drv_data->ssp, reg, val); in pxa2xx_spi_write()
135 int pxa2xx_spi_probe(struct device *dev, struct ssp_device *ssp,
H A Dspi-pxa2xx-dma.c52 /* In case we got an error we disable the SSP now */ in pxa2xx_spi_dma_transfer_complete()
53 pxa_ssp_disable(drv_data->ssp); in pxa2xx_spi_dma_transfer_complete()
93 cfg.dst_addr = drv_data->ssp->phys_base + SSDR; in pxa2xx_spi_dma_prepare_one()
100 cfg.src_addr = drv_data->ssp->phys_base + SSDR; in pxa2xx_spi_dma_prepare_one()
110 dev_warn(drv_data->ssp->dev, "DMA slave config failed\n"); in pxa2xx_spi_dma_prepare_one()
124 dev_err(drv_data->ssp->dev, "FIFO overrun\n"); in pxa2xx_spi_dma_transfer()
144 dev_err(drv_data->ssp->dev, "failed to get DMA TX descriptor\n"); in pxa2xx_spi_dma_prepare()
151 dev_err(drv_data->ssp->dev, "failed to get DMA RX descriptor\n"); in pxa2xx_spi_dma_prepare()
189 struct device *dev = drv_data->ssp->dev; in pxa2xx_spi_dma_setup()
/linux/arch/arm/mach-sa1100/
H A Dssp.c3 * linux/arch/arm/mach-sa1100/ssp.c
7 * Generic SSP driver. This provides the generic core for simple
8 * IO-based SSP applications.
21 #include <asm/hardware/ssp.h>
30 printk(KERN_WARNING "SSP: receiver overrun\n"); in ssp_interrupt()
38 * ssp_write_word - write a word to the SSP port
41 * Wait for a free entry in the SSP transmit FIFO, and write a data
42 * word to the SSP port. Wait for the SSP port to start sending
74 * ssp_read_word - read a word from the SSP port
76 * Wait for a data word in the SSP receive FIFO, and return the
[all …]
H A Djornada720_ssp.c8 * SSP driver for the HP Jornada 710/720/728
22 #include <asm/hardware/ssp.h>
49 * jornada_ssp_byte - waits for ready ssp bus and sends byte
65 printk(KERN_WARNING "SSP: timeout while waiting for transmit\n"); in jornada_ssp_byte()
143 printk(KERN_INFO "SSP: device initialized with irq\n"); in jornada_ssp_probe()
147 printk(KERN_WARNING "SSP: initialization failed, trying non-irq solution \n"); in jornada_ssp_probe()
171 printk(KERN_WARNING "SSP: attempts failed, bailing\n"); in jornada_ssp_probe()
177 printk(KERN_INFO "SSP: device initialized\n"); in jornada_ssp_probe()
/linux/arch/x86/kernel/
H A Dshstk.c50 static int create_rstor_token(unsigned long ssp, unsigned long *token_addr) in create_rstor_token() argument
55 if (!IS_ALIGNED(ssp, 8)) in create_rstor_token()
58 addr = ssp - SS_FRAME_SIZE; in create_rstor_token()
61 * SSP is aligned, so reserved bits and mode bit are a zero, just mark in create_rstor_token()
64 ssp |= BIT(0); in create_rstor_token()
66 if (write_user_shstk_64((u64 __user *)addr, (u64)ssp)) in create_rstor_token()
79 * The shadow stack pointer(SSP) is moved by CALL, RET, and INCSSPQ. The
86 * and INCSSP. In addition to modifying SSP, INCSSP also reads from the
90 * READ_ONCE(ssp); // read+discard top element on stack
91 * ssp += nr_to_pop * 8; // move the shadow stack
[all …]
/linux/Documentation/devicetree/bindings/spi/
H A Dmarvell,mmp2-ssp.yaml5 $id: http://devicetree.org/schemas/spi/marvell,mmp2-ssp.yaml#
8 title: PXA2xx SSP SPI Controller
16 - marvell,mmp2-ssp
17 - mrvl,ce4100-ssp
18 - mvrl,pxa168-ssp
19 - mrvl,pxa25x-ssp
21 - mrvl,pxa27x-ssp
22 - mrvl,pxa3xx-ssp
23 - mrvl,pxa910-ssp
65 const: marvell,mmp2-ssp
[all …]
/linux/Documentation/devicetree/bindings/pinctrl/
H A Dmarvell,dove-pinctrl.txt30 mpp10 10 gpio, pmu, ssp(sclk), pmu*
36 ssp(extclk), pmu*
37 mpp14 14 gpio, pmu, uart2(txd), sdio1(buspwr), ssp(rxd), pmu*
38 mpp15 15 gpio, pmu, uart2(rxd), sdio1(ledctrl), ssp(sfrm), pmu*
47 uart1(cts), ssp(sfrm)
49 lcd-spi(mosi), uart1(cts), ssp(txd)
51 lcd-spi(sck), ssp(sclk)
55 mpp_audio1 52-57 gpio, i2s1/spdifo, i2s1, spdifo, twsi, ssp/spdifo, ssp,
56 ssp/twsi
85 - ssp/spdifo : ssp on pins 52-55, spdifo on pin 57, no gpios
[all …]
/linux/drivers/clk/mxs/
H A Dclk-ssp.c21 void mxs_ssp_set_clk_rate(struct mxs_ssp *ssp, unsigned int rate) in mxs_ssp_set_clk_rate() argument
27 ssp_clk = clk_get_rate(ssp->clk); in mxs_ssp_set_clk_rate()
37 dev_err(ssp->dev, in mxs_ssp_set_clk_rate()
44 val = readl(ssp->base + HW_SSP_TIMING(ssp)); in mxs_ssp_set_clk_rate()
48 writel(val, ssp->base + HW_SSP_TIMING(ssp)); in mxs_ssp_set_clk_rate()
50 ssp->clk_rate = ssp_sck; in mxs_ssp_set_clk_rate()
52 dev_dbg(ssp->dev, in mxs_ssp_set_clk_rate()
/linux/sound/soc/intel/boards/
H A Dsof_ssp_amp.c52 /* BE ID defined in sof-tgl-rt1308-hdmi-ssp.m4 */
185 /* SSP 1 and SSP 5 are used for HDMI IN */
198 /* SSP 0 and SSP 2 are used for HDMI IN */
204 /* SSP 0 and SSP 2 are used for HDMI IN */
210 /* SSP 0 and SSP 2 are used for HDMI IN */
216 /* SSP 0 and SSP 2 are used for HDMI IN */
222 /* SSP 0 and SSP 2 are used for HDMI IN */
H A Dsof_board_helpers.h10 #include <sound/soc-acpi-intel-ssp-common.h>
18 /* SSP port number for headphone codec: 3 bits */
24 /* SSP port number for speaker amplifier: 3 bits */
30 /* SSP port number for BT audio offload: 3 bits */
36 /* SSP port mask for HDMI capture: 6 bits */
120 * @ssp_codec: ssp port number of headphone BE link
121 * @ssp_amp: ssp port number of speaker BE link
122 * @ssp_bt: ssp port number of BT offload BE link
123 * @ssp_mask_hdmi_in: ssp port mask of HDMI-IN BE link
/linux/Documentation/devicetree/bindings/sound/
H A Dmrvl,pxa-ssp.txt1 Marvell PXA SSP CPU DAI bindings
5 compatible Must be "mrvl,pxa-ssp-dai"
6 port A phandle reference to a PXA ssp upstream device
20 ssp1: ssp@41000000 {
21 compatible = "mrvl,pxa3xx-ssp";
24 clock-names = "pxa27x-ssp.0";
30 compatible = "mrvl,pxa-ssp-dai";
/linux/drivers/iio/common/ssp_sensors/
H A DKconfig3 # SSP sensor drivers and commons configuration
5 menu "SSP Sensor Common"
8 tristate "Commons for all SSP Sensor IIO drivers"
13 Say yes here to build commons for SSP sensors.
22 SSP driver for sensorhub.
23 If you say yes here you get ssp support for sensorhub.
/linux/sound/soc/intel/catpt/
H A Dregisters.h35 #define CATPT_CS_SFCR(ssp) BIT(27 + (ssp)) argument
39 #define CATPT_CS_SDPM(ssp) BIT(11 + (ssp)) argument
44 #define CATPT_CS_SBCS(ssp) BIT(2 + (ssp)) argument
113 /* defaults to reset SSP registers to after each power cycle */
144 #define catpt_ssp_addr(cdev, ssp) \ argument
145 ((cdev)->lpe_ba + (cdev)->spec->host_ssp_offset[ssp])
151 #define catpt_writel_ssp(cdev, ssp, reg, val) \ argument
152 writel(val, catpt_ssp_addr(cdev, ssp) + (reg))
/linux/drivers/scsi/isci/
H A Dremote_node_context.c129 rnc->ssp.remote_node_index = rni; in sci_remote_node_context_construct_buffer()
130 rnc->ssp.remote_node_port_width = idev->device_port_width; in sci_remote_node_context_construct_buffer()
131 rnc->ssp.logical_port_index = idev->owning_port->physical_port_index; in sci_remote_node_context_construct_buffer()
135 rnc->ssp.remote_sas_address_hi = upper_32_bits(sas_addr); in sci_remote_node_context_construct_buffer()
136 rnc->ssp.remote_sas_address_lo = lower_32_bits(sas_addr); in sci_remote_node_context_construct_buffer()
138 rnc->ssp.nexus_loss_timer_enable = true; in sci_remote_node_context_construct_buffer()
139 rnc->ssp.check_bit = false; in sci_remote_node_context_construct_buffer()
140 rnc->ssp.is_valid = false; in sci_remote_node_context_construct_buffer()
141 rnc->ssp.is_remote_node_context = true; in sci_remote_node_context_construct_buffer()
142 rnc->ssp.function_number = 0; in sci_remote_node_context_construct_buffer()
[all …]

123456789