1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */ 27edf5c45SPeng Fan /* 37edf5c45SPeng Fan * Copyright 2016 Freescale Semiconductor, Inc. 47edf5c45SPeng Fan * 57edf5c45SPeng Fan */ 67edf5c45SPeng Fan 77edf5c45SPeng Fan #ifdef CONFIG_ARCH_MX7ULP 87edf5c45SPeng Fan struct lpuart_fsl_reg32 { 97edf5c45SPeng Fan u32 verid; 107edf5c45SPeng Fan u32 param; 117edf5c45SPeng Fan u32 global; 127edf5c45SPeng Fan u32 pincfg; 137edf5c45SPeng Fan u32 baud; 147edf5c45SPeng Fan u32 stat; 157edf5c45SPeng Fan u32 ctrl; 167edf5c45SPeng Fan u32 data; 177edf5c45SPeng Fan u32 match; 187edf5c45SPeng Fan u32 modir; 197edf5c45SPeng Fan u32 fifo; 207edf5c45SPeng Fan u32 water; 217edf5c45SPeng Fan }; 227edf5c45SPeng Fan #else 237edf5c45SPeng Fan struct lpuart_fsl_reg32 { 247edf5c45SPeng Fan u32 baud; 257edf5c45SPeng Fan u32 stat; 267edf5c45SPeng Fan u32 ctrl; 277edf5c45SPeng Fan u32 data; 287edf5c45SPeng Fan u32 match; 297edf5c45SPeng Fan u32 modir; 307edf5c45SPeng Fan u32 fifo; 317edf5c45SPeng Fan u32 water; 327edf5c45SPeng Fan }; 337edf5c45SPeng Fan #endif 347edf5c45SPeng Fan 357edf5c45SPeng Fan struct lpuart_fsl { 367edf5c45SPeng Fan u8 ubdh; 377edf5c45SPeng Fan u8 ubdl; 387edf5c45SPeng Fan u8 uc1; 397edf5c45SPeng Fan u8 uc2; 407edf5c45SPeng Fan u8 us1; 417edf5c45SPeng Fan u8 us2; 427edf5c45SPeng Fan u8 uc3; 437edf5c45SPeng Fan u8 ud; 447edf5c45SPeng Fan u8 uma1; 457edf5c45SPeng Fan u8 uma2; 467edf5c45SPeng Fan u8 uc4; 477edf5c45SPeng Fan u8 uc5; 487edf5c45SPeng Fan u8 ued; 497edf5c45SPeng Fan u8 umodem; 507edf5c45SPeng Fan u8 uir; 517edf5c45SPeng Fan u8 reserved; 527edf5c45SPeng Fan u8 upfifo; 537edf5c45SPeng Fan u8 ucfifo; 547edf5c45SPeng Fan u8 usfifo; 557edf5c45SPeng Fan u8 utwfifo; 567edf5c45SPeng Fan u8 utcfifo; 577edf5c45SPeng Fan u8 urwfifo; 587edf5c45SPeng Fan u8 urcfifo; 597edf5c45SPeng Fan u8 rsvd[28]; 607edf5c45SPeng Fan }; 617edf5c45SPeng Fan 627edf5c45SPeng Fan /* Used on i.MX7ULP */ 637edf5c45SPeng Fan #define LPUART_BAUD_BOTHEDGE_MASK (0x20000) 647edf5c45SPeng Fan #define LPUART_BAUD_OSR_MASK (0x1F000000) 657edf5c45SPeng Fan #define LPUART_BAUD_OSR_SHIFT (24) 667edf5c45SPeng Fan #define LPUART_BAUD_OSR(x) ((((uint32_t)(x)) << 24) & 0x1F000000) 677edf5c45SPeng Fan #define LPUART_BAUD_SBR_MASK (0x1FFF) 687edf5c45SPeng Fan #define LPUART_BAUD_SBR_SHIFT (0U) 697edf5c45SPeng Fan #define LPUART_BAUD_SBR(x) (((uint32_t)(x)) & 0x1FFF) 707edf5c45SPeng Fan #define LPUART_BAUD_M10_MASK (0x20000000U) 717edf5c45SPeng Fan #define LPUART_BAUD_SBNS_MASK (0x2000U) 72