Commit 83d2aed4 authored by Finn Thain's avatar Finn Thain Committed by Greg Kroah-Hartman
Browse files

scsi/atari_scsi: Don't select CONFIG_NVRAM



On powerpc, setting CONFIG_NVRAM=n builds a kernel with no NVRAM support.
Setting CONFIG_NVRAM=m enables the /dev/nvram misc device module without
enabling NVRAM support in drivers. Setting CONFIG_NVRAM=y enables the
misc device (built-in) and also enables NVRAM support in drivers.

m68k shares the valkyriefb driver with powerpc, and since that driver uses
NVRAM, it is affected by CONFIG_ATARI_SCSI, because of the use of
"select NVRAM". We can avoid the "select" here, but drivers still have
to interpret the CONFIG_NVRAM symbol consistently regardless of platform.

In this patch and the subsequent fbdev driver patch, the convention is
adopted across all relevant platforms whereby NVRAM functionality gets
enabled in a given device driver when the nvram misc device is built-in
or when both drivers are modules.

Acked-by: default avatarMichael Schmitz <schmitzmic@gmail.com>
Signed-off-by: default avatarFinn Thain <fthain@telegraphics.com.au>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent e3575c12
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -244,7 +244,7 @@ source "drivers/char/hw_random/Kconfig"

config NVRAM
	tristate "/dev/nvram support"
	depends on ATARI || X86 || GENERIC_NVRAM
	depends on X86 || GENERIC_NVRAM
	---help---
	  If you say Y here and create a character special file /dev/nvram
	  with major number 10 and minor number 144 using mknod ("man mknod"),
@@ -262,9 +262,6 @@ config NVRAM
	  should NEVER idly tamper with it. See Ralf Brown's interrupt list
	  for a guide to the use of CMOS bytes by your BIOS.

	  On Atari machines, /dev/nvram is always configured and does not need
	  to be selected.

	  To compile this driver as a module, choose M here: the
	  module will be called nvram.

+3 −3
Original line number Diff line number Diff line
@@ -1369,14 +1369,14 @@ config ATARI_SCSI
	tristate "Atari native SCSI support"
	depends on ATARI && SCSI
	select SCSI_SPI_ATTRS
	select NVRAM
	---help---
	  If you have an Atari with built-in NCR5380 SCSI controller (TT,
	  Falcon, ...) say Y to get it supported. Of course also, if you have
	  a compatible SCSI controller (e.g. for Medusa).

	  To compile this driver as a module, choose M here: the
	  module will be called atari_scsi.
	  To compile this driver as a module, choose M here: the module will
	  be called atari_scsi. If you also enable NVRAM support, the SCSI
	  host's ID is taken from the setting in TT RTC NVRAM.

	  This driver supports both styles of NCR integration into the
	  system: the TT style (separate DMA), and the Falcon style (via
+1 −1
Original line number Diff line number Diff line
@@ -757,7 +757,7 @@ static int __init atari_scsi_probe(struct platform_device *pdev)

	if (setup_hostid >= 0) {
		atari_scsi_template.this_id = setup_hostid & 7;
	} else {
	} else if (IS_REACHABLE(CONFIG_NVRAM)) {
		/* Test if a host id is set in the NVRam */
		if (ATARIHW_PRESENT(TT_CLK) && nvram_check_checksum()) {
			unsigned char b = nvram_read_byte(16);