From 870b8c04557f0b7441cc502debaf537984d77e2a Mon Sep 17 00:00:00 2001 From: Zachary T Welch Date: Tue, 17 Nov 2009 13:04:49 -0800 Subject: allow flash/nand banks commands to accept names Add get_flash_bank_by_name (and get_nand_device_by_name) helpers to retrieves struct flash_bank * (struct nand_device *) given a driver name and an (optional) driver-specific bank index. These are used to extend flash_command_get_bank_by_num (and nand_command_get_device_by_num) to allow all flash (nand) commands to reference defined banks by name, not just by number. To avoid some code duplication, add the flash/common.[ch] files to hold functionality common to both types driver. The first two methods are helpers for the above routines to find a bank specified by a "name" or "name.index" string. get_flash_name_index() finds the '.index' portion, while flash_driver_name_matches() performs the string portion matching. --- src/flash/nand.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/flash/nand.h') diff --git a/src/flash/nand.h b/src/flash/nand.h index ddc4520e..a1087715 100644 --- a/src/flash/nand.h +++ b/src/flash/nand.h @@ -212,6 +212,15 @@ enum oob_formats }; +/** + * Returns the flash bank specified by @a name, which matches the + * driver name and a suffix (option) specify the driver-specific + * bank number. The suffix consists of the '.' and the driver-specific + * bank number: when two davinci banks are defined, then 'davinci.1' refers + * to the second (e.g. DM355EVM). + */ +struct nand_device *get_nand_device_by_name(const char *name); + struct nand_device *get_nand_device_by_num(int num); int nand_read_page_raw(struct nand_device *nand, uint32_t page, -- cgit v1.2.3-18-g5258