Lines Matching refs:sport
794 struct uart_pxa_port *sport = dev_get_drvdata(dev);
796 if (sport)
797 uart_suspend_port(&serial_pxa_reg, &sport->port);
804 struct uart_pxa_port *sport = dev_get_drvdata(dev);
806 if (sport)
807 uart_resume_port(&serial_pxa_reg, &sport->port);
825 struct uart_pxa_port *sport)
838 sport->port.line = ret;
844 struct uart_pxa_port *sport;
853 sport = kzalloc(sizeof(struct uart_pxa_port), GFP_KERNEL);
854 if (!sport)
857 sport->clk = clk_get(&dev->dev, NULL);
858 if (IS_ERR(sport->clk)) {
859 ret = PTR_ERR(sport->clk);
863 ret = clk_prepare(sport->clk);
865 clk_put(sport->clk);
869 sport->port.type = PORT_PXA;
870 sport->port.iotype = UPIO_MEM;
871 sport->port.mapbase = mmres->start;
872 sport->port.irq = irqres->start;
873 sport->port.fifosize = 64;
874 sport->port.ops = &serial_pxa_pops;
875 sport->port.dev = &dev->dev;
876 sport->port.flags = UPF_IOREMAP | UPF_BOOT_AUTOCONF;
877 sport->port.uartclk = clk_get_rate(sport->clk);
878 sport->port.has_sysrq = IS_ENABLED(CONFIG_SERIAL_PXA_CONSOLE);
880 ret = serial_pxa_probe_dt(dev, sport);
882 sport->port.line = dev->id;
885 if (sport->port.line >= ARRAY_SIZE(serial_pxa_ports)) {
886 dev_err(&dev->dev, "serial%d out of range\n", sport->port.line);
890 snprintf(sport->name, PXA_NAME_LEN - 1, "UART%d", sport->port.line + 1);
892 sport->port.membase = ioremap(mmres->start, resource_size(mmres));
893 if (!sport->port.membase) {
898 serial_pxa_ports[sport->port.line] = sport;
900 uart_add_one_port(&serial_pxa_reg, &sport->port);
901 platform_set_drvdata(dev, sport);
906 clk_unprepare(sport->clk);
907 clk_put(sport->clk);
909 kfree(sport);