linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] Resurect RiscPC support
@ 2019-05-20 14:46 Russell King - ARM Linux admin
  2019-05-20 14:46 ` [PATCH 1/8] ARM: riscpc: replace gettimeoffset() with clocksource Russell King
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Russell King - ARM Linux admin @ 2019-05-20 14:46 UTC (permalink / raw)
  To: linux-arm-kernel

Support for RiscPC still mostly works, but there have been some
breakages along the way since 2.6 kernels (the last kernel I ran on my
RiscPC.)  Notable breakages are:

- Conversion to generic IRQ broke the keyboard.
- A patch to avoid modifying SG entries for IOMD DMA broke DMA support
  (which only affects expansion cards.)
- Cosmentic breakage due to printk() behavioural changes.
- The kernel size grew beyond the ability for the RISC OS boot loader
  application to cope, which has been resolved in the latest version of
  !Linux.

These issues are resolved in this series, as well as removing RiscPC's
usage of the old gettimeoffset facility.

However, RiscPC timekeeping suffers greatly on recent kernels compared
to 2.6 series kernels: the change to make all interrupt handlers run
with IRQs off means that we are no longer able to receive timer
interrupts while (eg) PIO data is being transferred to the internal
drive, which is a very time-consuming operation.  This is soo bad that
NTP is unable to fix the problem, and there is no way to resolve this
regression from a hardware point of view.

That said, using an external disk connected via an expansion card
allows the use of DMA, thereby allowing the problem to be bypassed.

Keeping RiscPC support alive in the kernel, however, is beneficial to
on-going maintanence of fs/adfs support, which still has users.

This patch series is currently against 5.1, but should merge with
v5.2-rc1.

Merge plan: I'll send a pull request to arm-soc for this in due course.

 arch/arm/Kconfig          |  1 -
 arch/arm/mach-rpc/dma.c   | 97 ++++++++++++++++++++++++-----------------------
 arch/arm/mach-rpc/ecard.c | 11 ++++--
 arch/arm/mach-rpc/irq.c   |  3 +-
 arch/arm/mach-rpc/time.c  | 38 ++++++++++++-------
 5 files changed, 83 insertions(+), 67 deletions(-)

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2019-05-20 14:48 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-20 14:46 [PATCH 0/8] Resurect RiscPC support Russell King - ARM Linux admin
2019-05-20 14:46 ` [PATCH 1/8] ARM: riscpc: replace gettimeoffset() with clocksource Russell King
2019-05-20 14:46 ` [PATCH 2/8] ARM: riscpc: fix lack of keyboard interrupts after irq conversion Russell King
2019-05-20 14:47 ` [PATCH 3/8] ARM: riscpc: fix ecard printing Russell King
2019-05-20 14:47 ` [PATCH 4/8] ARM: riscpc: fix DMA Russell King
2019-05-20 14:47 ` [PATCH 5/8] ARM: riscpc: dma: eliminate "cur_sg" scatterlist usage Russell King
2019-05-20 14:47 ` [PATCH 6/8] ARM: riscpc: dma: make state a local variable Russell King
2019-05-20 14:47 ` [PATCH 7/8] ARM: riscpc: dma: improve address/length writing Russell King
2019-05-20 14:47 ` [PATCH 8/8] ARM: riscpc: dma: use __iomem pointers for writing DMA Russell King

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).