/linux/drivers/tty/serial/ |
H A D | sifive.c | 218 * @ssp: pointer to a struct sifive_serial_port record 221 * IP block base, given a pointer @ssp to a struct sifive_serial_port record. 225 static void __ssp_writel(u32 v, u16 offs, struct sifive_serial_port *ssp) in __ssp_writel() argument 227 __ssp_early_writel(v, offs, &ssp->port); in __ssp_writel() 232 * @ssp: pointer to a struct sifive_serial_port record 236 * IP block base, given a pointer @ssp to a struct sifive_serial_port record. 242 static u32 __ssp_readl(struct sifive_serial_port *ssp, u16 offs) in __ssp_readl() argument 244 return __ssp_early_readl(&ssp->port, offs); in __ssp_readl() 249 * @ssp: pointer to a struct sifive_serial_port 258 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 D | pxa-ssp.c | 3 * 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 D | pxa-ssp.h | 3 * ASoC PXA SSP port support 9 /* SSP clock sources */ 16 /* SSP audio dividers */ 21 /* SSP ACDS audio dividers values */ 29 /* SSP divider bypass */
|
/linux/drivers/spi/ |
H A D | spi-pxa2xx-platform.c | 22 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 D | spi-pxa2xx-pci.c | 67 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 D | spi-pxa2xx.c | 35 * For testing SSCR1 changes that require SSP restart, basically 309 * Read and write LPSS SSP private registers. Caller must first check that 340 * lpss_ssp_setup - perform LPSS SSP specific setup 343 * Perform LPSS SSP specific setup. This function must be called first if 344 * one is going to use LPSS SSP private registers. 352 drv_data->lpss_base = drv_data->ssp->mmio_base + config->offset; in lpss_ssp_setup() 441 /* Wait until SSP becomes idle before deasserting the CS */ in cs_deassert() 478 pxa_ssp_disable(drv_data->ssp); in pxa2xx_spi_off() 617 dev_err(drv_data->ssp->dev, "%s\n", msg); in int_error_stop() 713 dev_err(drv_data->ssp->dev, "bad message state in interrupt handler\n"); in handle_bad_msg() [all …]
|
H A D | spi-pxa2xx.h | 21 * 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 D | spi-pxa2xx-dma.c | 52 /* 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 D | ssp.c | 3 * 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 D | jornada720_ssp.c | 8 * 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 D | shstk.c | 50 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/include/linux/ |
H A D | pxa2xx_ssp.h | 5 * 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 …]
|
/linux/Documentation/devicetree/bindings/spi/ |
H A D | marvell,mmp2-ssp.yaml | 5 $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 D | marvell,dove-pinctrl.txt | 30 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 D | clk-ssp.c | 21 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/Documentation/devicetree/bindings/sound/ |
H A D | mrvl,pxa-ssp.txt | 1 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 D | Kconfig | 3 # 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.
|
H A D | ssp.h | 18 #define ssp_dbg(format, ...) pr_info("[SSP] "format, ##__VA_ARGS__) 56 /* AP -> SSP Instruction */ 119 /* SSP -> AP ACK about write CMD */ 120 #define SSP_MSG_ACK 0x80 /* ACK from SSP to AP */ 121 #define SSP_MSG_NAK 0x70 /* NAK from SSP to AP */ 142 * struct ssp_data - ssp platformdata structure 160 * state of ssp
|
/linux/sound/soc/intel/catpt/ |
H A D | registers.h | 35 #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/sound/soc/intel/boards/ |
H A D | sof_ssp_amp.c | 52 /* 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 */
|
H A D | sof_board_helpers.h | 10 #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
|
H A D | sof_board_helpers.c | 184 dev_dbg(dev, "link %d: ssp codec %s, ssp %d\n", be_id, in set_ssp_codec_link() 188 link->name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d-Codec", ssp_codec); in set_ssp_codec_link() 200 cpus->dai_name = devm_kasprintf(dev, GFP_KERNEL, "ssp%d-port", in set_ssp_codec_link() 203 cpus->dai_name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d Pin", in set_ssp_codec_link() 338 dev_dbg(dev, "link %d: ssp amp %s, ssp %d\n", be_id, in set_ssp_amp_link() 342 link->name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d-Codec", ssp_amp); in set_ssp_amp_link() 352 cpus->dai_name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d Pin", ssp_amp); in set_ssp_amp_link() 377 dev_dbg(dev, "link %d: bt offload, ssp %d\n", be_id, ssp_bt); in set_bt_offload_link() 380 link->name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d-BT", ssp_bt); in set_bt_offload_link() 390 cpus->dai_name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d Pin", ssp_bt); in set_bt_offload_link() [all …]
|
/linux/drivers/scsi/isci/ |
H A D | remote_node_context.c | 129 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 …]
|
/linux/tools/testing/selftests/x86/ |
H A D | test_shadow_stack.c | 135 unsigned long ssp; in try_shstk() local 140 ssp = get_ssp(); in try_shstk() 141 printf("[INFO]\tchanging ssp from %lx to %lx\n", ssp, new_ssp); in try_shstk() 148 ssp -= 8; in try_shstk() 149 asm volatile("rstorssp (%0)\n":: "r" (ssp)); in try_shstk() 878 /* The SSP adjustment caused a segfault. */ in segv_handler_ptrace() 884 unsigned long saved_ssp, ssp = 0; in test_ptrace() local 890 iov.iov_base = &ssp; in test_ptrace() 891 iov.iov_len = sizeof(ssp); in test_ptrace() 895 ssp = get_ssp(); in test_ptrace() [all …]
|
/linux/fs/bcachefs/ |
H A D | rcu_pending.c | 44 static inline rcu_gp_poll_state_t __get_state_synchronize_rcu(struct srcu_struct *ssp) in __get_state_synchronize_rcu() argument 46 return ssp in __get_state_synchronize_rcu() 47 ? get_state_synchronize_srcu(ssp) in __get_state_synchronize_rcu() 51 static inline rcu_gp_poll_state_t __start_poll_synchronize_rcu(struct srcu_struct *ssp) in __start_poll_synchronize_rcu() argument 53 return ssp in __start_poll_synchronize_rcu() 54 ? start_poll_synchronize_srcu(ssp) in __start_poll_synchronize_rcu() 58 static inline bool __poll_state_synchronize_rcu(struct srcu_struct *ssp, rcu_gp_poll_state_t cookie) in __poll_state_synchronize_rcu() argument 60 return ssp in __poll_state_synchronize_rcu() 61 ? poll_state_synchronize_srcu(ssp, cookie) in __poll_state_synchronize_rcu() 65 static inline void __rcu_barrier(struct srcu_struct *ssp) in __rcu_barrier() argument [all …]
|