Changeset 466e75ad in mainline for kernel/arch/ia32/src/ia32.c


Ignore:
Timestamp:
2018-02-12T18:58:50Z (6 years ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Parents:
8192d8a
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2018-02-12 17:25:25)
git-committer:
Jiří Zárevúcky <zarevucky.jiri@…> (2018-02-12 18:58:50)
Message:

Generalize ns16550 driver to work with more chips.

Some UART controllers are compatible with 16550A, but have more spacing
between registers. In particular, ARMADA 385, which is the basis of
Turris Omnia router, has a compatible UART with 32b registers instead of 8b
(with the top three bytes unused).

Note: The device tree file hints that some UARTs may need register reads/writes
that are wider than 8 bits, and this commit does not address that possibility.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ia32/src/ia32.c

    r8192d8a r466e75ad  
    201201#endif
    202202        ns16550_instance_t *ns16550_instance
    203             = ns16550_init((ns16550_t *) NS16550_BASE, IRQ_NS16550, NULL, NULL,
     203            = ns16550_init(NS16550_BASE, 0, IRQ_NS16550, NULL, NULL,
    204204            ns16550_out_ptr);
    205205        if (ns16550_instance) {
Note: See TracChangeset for help on using the changeset viewer.