[PATCHv3] Rework of handling disk like media

Juergen Beisert jbe at pengutronix.de
Thu Nov 24 07:43:38 EST 2011


This patch stack reworks the handling of disk like media (hard disks, USB mass
storage, SD/MMC cards). It should simplify the code by using the generic
blockdevice layer.
Also partition handling is now a separate step to provide more partition types
than the D*S one in the future.
At the end of this series support for a subset of ATA devices and their
interface is added.

Update: This series contains fixed and improved versions of the patches
08/13, 09/13 and 12/13.
An additional fix in 08/13 was made, due to a broken disk size guessing for
x86.

Comments are welcome.

Juergen Beisert (13):
      USB Mass Storage driver: Fix compile time warning
      Create a unique cdev number for on demand devices
      ATA/DISK: Add generic disk support when enabling the BIOS disk driver
      ATA/DISK: Enabling write support does not belong to 'drive types'
      ATA/DISK: Reorganize file structure and names for future updates
      ATA/DISK: The BIOS based disk driver is not an interface
      ATA/DISK: Share important constants and structures
      DISK: Add common partition handling for disk like media
      Use generic block layer to access the drives and do partition parsing
      Remove 'disk_drive.c' as it is now replaced by generic partition handling
      ATA/DISK: Remove the now unused header <ata.h>
      ATA Disk Support: Add support for native ATA type drives
      Add driver for IDE like interfaces

 common/Kconfig                            |   18 +
 common/Makefile                           |    2 +
 common/partitions.c                       |  200 +++++++++
 drivers/Makefile                          |    2 +-
 drivers/ata/Kconfig                       |   41 ++-
 drivers/ata/Makefile                      |    5 +-
 drivers/ata/disk_ata_drive.c              |  697 +++++++++++++++++++++++++++++
 drivers/ata/{bios.c => disk_bios_drive.c} |  102 +++--
 drivers/ata/disk_drive.c                  |  247 ----------
 drivers/ata/intf_platform_ide.c           |  130 ++++++
 drivers/mci/Kconfig                       |    3 +-
 drivers/mci/mci-core.c                    |  135 ++++---
 drivers/usb/storage/Kconfig               |    1 +
 drivers/usb/storage/usb.c                 |  126 +++---
 drivers/usb/storage/usb.h                 |    8 +-
 fs/devfs-core.c                           |   14 +
 include/ata.h                             |   39 --
 include/ata_drive.h                       |  100 ++++
 include/disks.h                           |   41 ++
 include/driver.h                          |    1 +
 include/mci.h                             |    3 +-
 include/platform_ide.h                    |   32 ++
 22 files changed, 1484 insertions(+), 463 deletions(-)
 create mode 100644 common/partitions.c
 create mode 100644 drivers/ata/disk_ata_drive.c
 rename drivers/ata/{bios.c => disk_bios_drive.c} (79%)
 delete mode 100644 drivers/ata/disk_drive.c
 create mode 100644 drivers/ata/intf_platform_ide.c
 delete mode 100644 include/ata.h
 create mode 100644 include/ata_drive.h
 create mode 100644 include/disks.h
 create mode 100644 include/platform_ide.h



More information about the barebox mailing list