From: Thomas Chou <thomas@wytron.com.tw>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v4 2/3] cfi_flash: convert to driver model
Date: Fri, 6 Nov 2015 12:34:33 +0800 [thread overview]
Message-ID: <563C2DD9.90502@wytron.com.tw> (raw)
In-Reply-To: <CAPnjgZ0tnvriGYn5UvtotJM8=qkqR3DkzJHOk3o0Xxuk_Nk63Q@mail.gmail.com>
Hi Simon,
On 2015?11?06? 11:15, Simon Glass wrote:
>> +config CFI_FLASH
>> + bool "Enable Driver Model for CFI Flash driver"
>> + depends on MTD
>> + help
>> + The Common Flash Interface specification was developed by Intel,
>> + AMD and other flash manufactures that provides a universal method
>
> flash manufacturers. It provides a universal method
>
OK. Thanks.
>> +#ifdef CONFIG_CFI_FLASH /* for driver model */
>> +static void cfi_flash_init_dm(void)
>> +{
>> + struct udevice *dev;
>> +
>> + cfi_flash_num_flash_banks = 0;
>> + /*
>> + * The uclass_first_device() will probe the first device and
>> + * uclass_next_device() will probe the rest if they exist. So
>> + * that cfi_flash_probe() will get called assigning the base
>> + * addresses that are available.
>> + */
>> + for (uclass_first_device(UCLASS_MTD, &dev);
>> + dev;
>> + uclass_next_device(&dev)) {
>> + }
>
> Why do you need to probe these before they are used? Also I think you
> need error checking.
This is the place that the device is going to be used. In flash_init()
the cfi flash is probed to find flash type and size.
There may be other MTD devices, so we scan through them. If there is not
cfi flash device, cfi_flash_num_flash_banks will be zero and the
flash_init will return size as zero. This is not an error.
>> +#ifdef CONFIG_FLASH_CFI_MTD
>> + dev->uclass_priv = &cfi_mtd_info[0];
>
> Could you put cfi_mtd_info in a struct and use auto-allocation to allocate it?
I planned this as follow-up patches which will merge cfi-mtd.c and use
mtd ops as major flash ops. Then the mtd_info will be auto-allocated.
This is quite similar to Jagan's work on spi-nor.
Best regards,
Thomas
next prev parent reply other threads:[~2015-11-06 4:34 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-08 7:34 [U-Boot] [PATCH] dm: implement a cfi flash uclass Thomas Chou
2015-10-09 9:36 ` Simon Glass
2015-10-09 13:31 ` Thomas Chou
2015-10-11 5:16 ` Thomas Chou
2015-10-11 5:41 ` Bin Meng
2015-10-11 7:25 ` Thomas Chou
2015-10-11 7:30 ` [U-Boot] [PATCH v2] " Thomas Chou
2015-10-11 7:54 ` Bin Meng
2015-10-11 8:54 ` Thomas Chou
2015-10-11 9:10 ` Bin Meng
2015-10-11 12:24 ` Thomas Chou
2015-10-11 12:43 ` Bin Meng
2015-10-11 13:29 ` Thomas Chou
2015-10-11 21:47 ` Simon Glass
2015-10-12 0:07 ` Thomas Chou
2015-10-12 3:07 ` Bin Meng
2015-10-11 9:35 ` Thomas Chou
2015-10-30 13:33 ` [U-Boot] [PATCH v3 1/3] dm: implement a MTD uclass Thomas Chou
2015-10-30 13:33 ` [U-Boot] [PATCH v3 2/3] cfi_flash: convert to driver model Thomas Chou
2015-11-02 8:20 ` Stefan Roese
2015-11-03 0:23 ` Thomas Chou
2015-11-03 5:56 ` Stefan Roese
2015-11-03 6:25 ` Thomas Chou
2015-11-03 7:22 ` Stefan Roese
2015-10-30 13:33 ` [U-Boot] [PATCH v3 3/3] nios2: use cfi flash " Thomas Chou
2015-11-03 13:09 ` [U-Boot] [PATCH v4 1/3] dm: implement a MTD uclass Thomas Chou
2015-11-03 13:09 ` [U-Boot] [PATCH v4 2/3] cfi_flash: convert to driver model Thomas Chou
2015-11-03 13:54 ` Stefan Roese
2015-11-06 1:09 ` Thomas Chou
2015-11-06 6:04 ` Stefan Roese
2015-11-06 6:33 ` Thomas Chou
2015-11-06 3:15 ` Simon Glass
2015-11-06 4:34 ` Thomas Chou [this message]
2015-11-06 23:58 ` Simon Glass
2015-11-03 13:09 ` [U-Boot] [PATCH v4 3/3] nios2: use cfi flash " Thomas Chou
2015-11-03 14:41 ` [U-Boot] [PATCH v4 1/3] dm: implement a MTD uclass Jagan Teki
2015-11-03 14:49 ` Thomas Chou
2015-11-03 14:55 ` Jagan Teki
2015-11-03 14:58 ` Jagan Teki
2015-11-04 3:12 ` Thomas Chou
2015-11-07 12:35 ` Jagan Teki
2015-11-07 13:43 ` Thomas Chou
2015-11-06 12:06 ` Simon Glass
2015-11-06 13:25 ` Thomas Chou
2015-11-06 23:58 ` Simon Glass
2015-11-07 7:57 ` [U-Boot] [PATCH v5 " Thomas Chou
2015-11-07 7:57 ` [U-Boot] [PATCH v5 2/3] cfi_flash: convert to driver model Thomas Chou
2015-11-09 20:24 ` Simon Glass
2015-12-06 8:23 ` Jagan Teki
2015-12-06 11:37 ` Thomas Chou
2015-12-06 13:10 ` Jagan Teki
2015-12-06 13:35 ` Thomas Chou
2015-12-06 15:03 ` Jagan Teki
2015-12-07 9:11 ` Thomas Chou
2015-11-07 7:57 ` [U-Boot] [PATCH v5 3/3] nios2: use cfi flash " Thomas Chou
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=563C2DD9.90502@wytron.com.tw \
--to=thomas@wytron.com.tw \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox