Lines Matching refs:s
81 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_stop_tx() local
83 if (s->tx_enabled) { in uart_clps711x_stop_tx()
85 s->tx_enabled = 0; in uart_clps711x_stop_tx()
91 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_start_tx() local
93 if (!s->tx_enabled) { in uart_clps711x_start_tx()
94 s->tx_enabled = 1; in uart_clps711x_start_tx()
102 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_int_rx() local
109 regmap_read(s->syscon, SYSFLG_OFFSET, &sysflg); in uart_clps711x_int_rx()
155 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_int_tx() local
166 if (s->tx_enabled) { in uart_clps711x_int_tx()
168 s->tx_enabled = 0; in uart_clps711x_int_tx()
180 regmap_read(s->syscon, SYSFLG_OFFSET, &sysflg); in uart_clps711x_int_tx()
193 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_tx_empty() local
196 regmap_read(s->syscon, SYSFLG_OFFSET, &sysflg); in uart_clps711x_tx_empty()
204 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_get_mctrl() local
206 return mctrl_gpio_get(s->gpios, &result); in uart_clps711x_get_mctrl()
211 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_set_mctrl() local
213 mctrl_gpio_set(s->gpios, mctrl); in uart_clps711x_set_mctrl()
232 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_set_ldisc() local
234 regmap_update_bits(s->syscon, SYSCON_OFFSET, SYSCON1_SIREN, in uart_clps711x_set_ldisc()
241 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_startup() local
248 return regmap_update_bits(s->syscon, SYSCON_OFFSET, in uart_clps711x_startup()
254 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_shutdown() local
257 regmap_update_bits(s->syscon, SYSCON_OFFSET, SYSCON_UARTEN, 0); in uart_clps711x_shutdown()
361 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_console_putchar() local
366 regmap_read(s->syscon, SYSFLG_OFFSET, &sysflg); in uart_clps711x_console_putchar()
376 struct clps711x_port *s = dev_get_drvdata(port->dev); in uart_clps711x_console_write() local
383 regmap_read(s->syscon, SYSFLG_OFFSET, &sysflg); in uart_clps711x_console_write()
391 struct clps711x_port *s; in uart_clps711x_console_setup() local
403 s = dev_get_drvdata(port->dev); in uart_clps711x_console_setup()
408 regmap_read(s->syscon, SYSCON_OFFSET, &syscon); in uart_clps711x_console_setup()
432 return regmap_update_bits(s->syscon, SYSCON_OFFSET, in uart_clps711x_console_setup()
450 struct clps711x_port *s; in uart_clps711x_probe() local
457 s = devm_kzalloc(&pdev->dev, sizeof(*s), GFP_KERNEL); in uart_clps711x_probe()
458 if (!s) in uart_clps711x_probe()
466 s->port.membase = devm_ioremap_resource(&pdev->dev, res); in uart_clps711x_probe()
467 if (IS_ERR(s->port.membase)) in uart_clps711x_probe()
468 return PTR_ERR(s->port.membase); in uart_clps711x_probe()
470 s->port.irq = platform_get_irq(pdev, 0); in uart_clps711x_probe()
471 if (IS_ERR_VALUE(s->port.irq)) in uart_clps711x_probe()
472 return s->port.irq; in uart_clps711x_probe()
474 s->rx_irq = platform_get_irq(pdev, 1); in uart_clps711x_probe()
475 if (IS_ERR_VALUE(s->rx_irq)) in uart_clps711x_probe()
476 return s->rx_irq; in uart_clps711x_probe()
482 s->syscon = syscon_regmap_lookup_by_pdevname(syscon_name); in uart_clps711x_probe()
483 if (IS_ERR(s->syscon)) in uart_clps711x_probe()
484 return PTR_ERR(s->syscon); in uart_clps711x_probe()
486 s->syscon = syscon_regmap_lookup_by_phandle(np, "syscon"); in uart_clps711x_probe()
487 if (IS_ERR(s->syscon)) in uart_clps711x_probe()
488 return PTR_ERR(s->syscon); in uart_clps711x_probe()
491 s->port.line = index; in uart_clps711x_probe()
492 s->port.dev = &pdev->dev; in uart_clps711x_probe()
493 s->port.iotype = UPIO_MEM32; in uart_clps711x_probe()
494 s->port.mapbase = res->start; in uart_clps711x_probe()
495 s->port.type = PORT_CLPS711X; in uart_clps711x_probe()
496 s->port.fifosize = 16; in uart_clps711x_probe()
497 s->port.flags = UPF_SKIP_TEST | UPF_FIXED_TYPE; in uart_clps711x_probe()
498 s->port.uartclk = clk_get_rate(uart_clk); in uart_clps711x_probe()
499 s->port.ops = &uart_clps711x_ops; in uart_clps711x_probe()
501 platform_set_drvdata(pdev, s); in uart_clps711x_probe()
503 s->gpios = mctrl_gpio_init_noauto(&pdev->dev, 0); in uart_clps711x_probe()
504 if (IS_ERR(s->gpios)) in uart_clps711x_probe()
505 return PTR_ERR(s->gpios); in uart_clps711x_probe()
507 ret = uart_add_one_port(&clps711x_uart, &s->port); in uart_clps711x_probe()
512 if (!uart_console(&s->port)) in uart_clps711x_probe()
513 regmap_update_bits(s->syscon, SYSCON_OFFSET, SYSCON_UARTEN, 0); in uart_clps711x_probe()
515 s->tx_enabled = 1; in uart_clps711x_probe()
517 ret = devm_request_irq(&pdev->dev, s->port.irq, uart_clps711x_int_tx, 0, in uart_clps711x_probe()
518 dev_name(&pdev->dev), &s->port); in uart_clps711x_probe()
520 uart_remove_one_port(&clps711x_uart, &s->port); in uart_clps711x_probe()
524 ret = devm_request_irq(&pdev->dev, s->rx_irq, uart_clps711x_int_rx, 0, in uart_clps711x_probe()
525 dev_name(&pdev->dev), &s->port); in uart_clps711x_probe()
527 uart_remove_one_port(&clps711x_uart, &s->port); in uart_clps711x_probe()
534 struct clps711x_port *s = platform_get_drvdata(pdev); in uart_clps711x_remove() local
536 return uart_remove_one_port(&clps711x_uart, &s->port); in uart_clps711x_remove()