Message ID | 53700D71.1090201@landley.net (mailing list archive) |
---|---|
State | Awaiting Upstream |
Delegated to: | Paul Mundt |
Headers | show |
On 05/11/2014 04:53 PM, Rob Landley wrote: > I got sh4 to work under QEMU years ago as part of my aboriginal linux > project, which builds the smallest Linux system capable of rebuilding > itself natively from source code. (You can download and run the system > images from http://landley.net/aboriginal/bin if you're curious.) > > One of the goals of Aboriginal is to make different architectures behave > the same way, and one of the ways I do that is by having a basic kernel > miniconfig file defining the config symbols common across platforms: > > http://landley.net/hg/aboriginal/file/1651/sources/baseconfig-linux > > And then append target-specific chunks, ala the LINUX_CONFIG sections > from each of: > > http://landley.net/hg/aboriginal/file/1651/sources/targets > > The problem is, the sh4 target's target-specific chunk is an INSANE 45 > config symbols (armv5l needs 15 symbols, powerpc needs 16, i686 needs 7, > mips needs 6...) and the reason for the verbosity is that sh4 forces on > CONFIG_EXPERT. > > As far as I can tell, the only reason sh4 is forcing on CONFIG_EXPERT is > to get CONFIG_PATA_PLATFORM. The patch to make sh4 _not_ force on > CONFIG_EXPERT is just: > > diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig > index 834b67c..7d0d44d 100644 > --- a/arch/sh/Kconfig > +++ b/arch/sh/Kconfig > @@ -1,7 +1,7 @@ > config SUPERH > def_bool y > select ARCH_MIGHT_HAVE_PC_PARPORT > - select EXPERT > + select HAVE_PATA_PLATFORM > select CLKDEV_LOOKUP > select HAVE_IDE if HAS_IOPORT_MAP > select HAVE_MEMBLOCK Since PATA_PLATFORM is: config PATA_PLATFORM tristate "Generic platform device PATA support" depends on EXPERT || PPC || HAVE_PATA_PLATFORM then any of EXPERT, PPC, or HAVE_PATA_PLATFORM should be sufficient. and using HAVE_PATA_PLATFORM is more direct and obvious. Acked-by: Randy Dunlap <rdunlap@infradead.org> > Which swaps EXPERT for HAVE_PATA_PLATFORM, so I can still provide a hard > drive qemu can see as /dev/sda. The result builds, boots, and works for > me in very basic smoke testing, and lets me get my sh4-specific config > symbol set down to 27 symbols. > > (P.S. I have no idea why hitting ctrl-C kills the _emulator_ rather than > passing it along to the emulated system. The other qemu targets don't do > that...) > > Rob > > P.S. I'm using linux 3.14, qemu 2.0, and the sh4 cross compiler > toolchain from the URL at the top of the post. I can be more explicit if > you care...
On Fri, May 16, 2014 at 11:14 PM, Randy Dunlap <rdunlap@infradead.org> wrote: > On 05/11/2014 04:53 PM, Rob Landley wrote: >> I got sh4 to work under QEMU years ago as part of my aboriginal linux >> project, which builds the smallest Linux system capable of rebuilding >> itself natively from source code. (You can download and run the system >> images from http://landley.net/aboriginal/bin if you're curious.) >> >> One of the goals of Aboriginal is to make different architectures behave >> the same way, and one of the ways I do that is by having a basic kernel >> miniconfig file defining the config symbols common across platforms: >> >> http://landley.net/hg/aboriginal/file/1651/sources/baseconfig-linux >> >> And then append target-specific chunks, ala the LINUX_CONFIG sections >> from each of: >> >> http://landley.net/hg/aboriginal/file/1651/sources/targets >> >> The problem is, the sh4 target's target-specific chunk is an INSANE 45 >> config symbols (armv5l needs 15 symbols, powerpc needs 16, i686 needs 7, >> mips needs 6...) and the reason for the verbosity is that sh4 forces on >> CONFIG_EXPERT. >> >> As far as I can tell, the only reason sh4 is forcing on CONFIG_EXPERT is >> to get CONFIG_PATA_PLATFORM. The patch to make sh4 _not_ force on >> CONFIG_EXPERT is just: >> >> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig >> index 834b67c..7d0d44d 100644 >> --- a/arch/sh/Kconfig >> +++ b/arch/sh/Kconfig >> @@ -1,7 +1,7 @@ >> config SUPERH >> def_bool y >> select ARCH_MIGHT_HAVE_PC_PARPORT >> - select EXPERT >> + select HAVE_PATA_PLATFORM >> select CLKDEV_LOOKUP >> select HAVE_IDE if HAS_IOPORT_MAP >> select HAVE_MEMBLOCK > > Since PATA_PLATFORM is: > > config PATA_PLATFORM > tristate "Generic platform device PATA support" > depends on EXPERT || PPC || HAVE_PATA_PLATFORM > > then any of EXPERT, PPC, or HAVE_PATA_PLATFORM should be sufficient. > and using HAVE_PATA_PLATFORM is more direct and obvious. > > Acked-by: Randy Dunlap <rdunlap@infradead.org> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Note that you have to resent to akpm to get sh-patches applied. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index 834b67c..7d0d44d 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig @@ -1,7 +1,7 @@ config SUPERH def_bool y select ARCH_MIGHT_HAVE_PC_PARPORT - select EXPERT + select HAVE_PATA_PLATFORM select CLKDEV_LOOKUP select HAVE_IDE if HAS_IOPORT_MAP select HAVE_MEMBLOCK