scsi: sr: cdrom: Move cdrom_read_cdda_bpc() into the sr driver
authorChristoph Hellwig <hch@lst.de>
Mon, 5 Jul 2021 13:02:43 +0000 (15:02 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Sat, 31 Jul 2021 02:13:09 +0000 (22:13 -0400)
commitba51bdafaafc065019c6f6a2cdae006d176cee48
treec46134baf01607cb8f6ea34b54428e476475d1dd
parent08dc2f9b53afbbc897bc895aa41906194f5af1cf
scsi: sr: cdrom: Move cdrom_read_cdda_bpc() into the sr driver

cdrom_read_cdda_bpc() relies on sending SCSI command to the low level
driver using a REQ_OP_SCSI_IN request.  This isn't generic block layer
functionality, so move the actual low-level code into the sr driver and
call it through a new read_cdda_bpc method in the cdrom_device_ops
structure.

With this the CDROM code does not have to pull in scsi_normalize_sense()
and depend on CONFIG_SCSI_COMMON.

Link: https://lore.kernel.org/r/20210730072752.GB23847%40lst.de
Tested-by: Anders Roxell <anders.roxell@linaro.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/cdrom/cdrom.c
drivers/scsi/sr.c
include/linux/cdrom.h