diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2020-12-14 16:20:48 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2020-12-14 16:20:48 -0800 |
commit | 0b03beface02d519693edb8020f9811c67d5c88f (patch) | |
tree | e69b63da6b4fa28fd70205187c699aecf1b1128e /drivers/tty/serial | |
parent | 2c075f38a708c578a752b738a45e8c26923eac2e (diff) | |
parent | 2ae92e8b9b7eb042ccb7e9fc7ea9431f211a1bd3 (diff) |
Merge tag 'm68k-for-v5.11-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k
Pull m68k updates from Geert Uytterhoeven:
- fix WARNING splat in pmac_zilog driver
- fix ADB input device regression
- assume maintainership for adb-iop and via-macii
- minor fixes and improvements
- defconfig updates
* tag 'm68k-for-v5.11-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
MAINTAINERS: Update m68k Mac entry
macintosh/adb-iop: Send correct poll command
macintosh/adb-iop: Always wait for reply message from IOP
m68k: Fix WARNING splat in pmac_zilog driver
m68k: Add a missing ELF_DETAILS in link script
m68k: Drop redundant NOTES in link script
m68k: mac: Update Kconfig help
m68k: mac: Remove redundant VIA register writes
m68k: mac: Remove dead code
m68k: mac: Refactor iop_preinit() and iop_init()
m68k: defconfig: Enable KUnit tests
m68k: defconfig: Update defconfigs for v5.10-rc1
m68k: Remove unused mach_max_dma_address
m68k: Avoid xchg() warning
Diffstat (limited to 'drivers/tty/serial')
-rw-r--r-- | drivers/tty/serial/pmac_zilog.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/drivers/tty/serial/pmac_zilog.c b/drivers/tty/serial/pmac_zilog.c index 063484b22523..d6aef8a1f0a4 100644 --- a/drivers/tty/serial/pmac_zilog.c +++ b/drivers/tty/serial/pmac_zilog.c @@ -1693,22 +1693,26 @@ static int __init pmz_probe(void) #else +/* On PCI PowerMacs, pmz_probe() does an explicit search of the OpenFirmware + * tree to obtain the device_nodes needed to start the console before the + * macio driver. On Macs without OpenFirmware, global platform_devices take + * the place of those device_nodes. + */ extern struct platform_device scc_a_pdev, scc_b_pdev; static int __init pmz_init_port(struct uart_pmac_port *uap) { - struct resource *r_ports; - int irq; + struct resource *r_ports, *r_irq; r_ports = platform_get_resource(uap->pdev, IORESOURCE_MEM, 0); - irq = platform_get_irq(uap->pdev, 0); - if (!r_ports || irq <= 0) + r_irq = platform_get_resource(uap->pdev, IORESOURCE_IRQ, 0); + if (!r_ports || !r_irq) return -ENODEV; uap->port.mapbase = r_ports->start; uap->port.membase = (unsigned char __iomem *) r_ports->start; uap->port.iotype = UPIO_MEM; - uap->port.irq = irq; + uap->port.irq = r_irq->start; uap->port.uartclk = ZS_CLOCK; uap->port.fifosize = 1; uap->port.ops = &pmz_pops; |