[PATCH 1/1] doc: man-page for cp
Heinrich Schuchardt
heinrich.schuchardt at canonical.com
Fri Apr 28 21:43:28 CEST 2023
On 4/28/23 21:21, Simon Glass wrote:
> Hi Heinrich,
>
> On Fri, 28 Apr 2023 at 01:41, Heinrich Schuchardt
> <heinrich.schuchardt at canonical.com> wrote:
>>
>> Add a man-page for the cp command.
>>
>> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
>> ---
>> doc/usage/cmd/cp.rst | 83 ++++++++++++++++++++++++++++++++++++++++++++
>> doc/usage/index.rst | 1 +
>> 2 files changed, 84 insertions(+)
>> create mode 100644 doc/usage/cmd/cp.rst
>>
>> diff --git a/doc/usage/cmd/cp.rst b/doc/usage/cmd/cp.rst
>> new file mode 100644
>> index 0000000000..897c0bb7df
>> --- /dev/null
>> +++ b/doc/usage/cmd/cp.rst
>> @@ -0,0 +1,83 @@
>> +.. SPDX-License-Identifier: GPL-2.0+:
>> +
>> +cp command
>> +==========
>> +
>> +Synopsis
>> +--------
>> +
>> +::
>> +
>> + mm source target count
>> + mm.b source target count
>> + mm.w source target count
>> + mm.l source target count
>> + mm.q source target count
>
> Is this the cp or the mm command?
Thanks for reviewing. It must be cp.
>
> I think it is better to do:
>
> mm.<size>
>
> or something like that, to avoid repetition
We cannot completely avoid repetition as 'cp' without postfix exists.
With size I would associate a number.
Having to look into multiple places to find out that there is a cp.q
form is not helpful.
I think the current format is the easiest way to see at a glance how to
use the command.
>
>> +
>> +Description
>> +-----------
>> +
>> +The cp command is used to copy *count* words of memory from the *source*
>
> To me it is confusing to use the term 'words' here. A word typically
> means a machine word in a computer, e.g. 32- or 64-bits.
>
> How about just referring to 'transfer size' or 'access size'?
When hearing 'transfer size' I would think of the total number of bytes
being transferred. How about 'chunk'?
Best regards
Heinrich
>
>> +address to the *target* address. If the *target* address points to NOR flash,
>> +the flash is programmed.
>> +
>> +The word size is defined by the suffix defaulting to 32 bits:
>> +
>> +====== ============
>> +suffix word size
>> +====== ============
>> +.b 8 bit words
>> +.w 16 bit words
>> +.l 32 bit words
>> +.q 64 bit words
>> +<none> 32 bit words
>> +====== ============
>> +
>> +source
>> + source address, hexadecimal
>> +
>> +target
>> + target address, hexadecimal
>> +
>> +count
>> + number of words to be copied, hexadecimal
>> +
>> +Examples
>> +--------
>> +
>> +The example device has a NOR flash where the lower part of the flash is
>> +protected. We first copy to RAM, then to unprotected flash. Last we try to
>> +write to protectd flash.
>> +
>> +::
>> +
>> + => mtd list
>> + List of MTD devices:
>> + * nor0
>> + - device: flash at 0
>> + - parent: root_driver
>> + - driver: cfi_flash
>> + - path: /flash at 0
>> + - type: NOR flash
>> + - block size: 0x20000 bytes
>> + - min I/O: 0x1 bytes
>> + - 0x000000000000-0x000002000000 : "nor0"
>> + => cp.b 4020000 5000000 200000
>> + => cp.b 4020000 1e00000 20000
>> + Copy to Flash... done
>> + => cp.b 4020000 0 20000
>> + Copy to Flash... Can't write to protected Flash sectors
>> + =>
>> +
>> +Configuration
>> +-------------
>> +
>> +The cp command is available if CONFIG_CMD_MEMORY=y. Support for 64 bit words
>> +(cp.q) depends on CONFIG_MEM_SUPPORT_64BIT_DATA=y. Copying to flash depends on
>> +CONFIG_MTD_NOR_FLASH=y.
>> +
>> +Return value
>> +------------
>> +
>> +The return value $? is set to 0 (true) if the command was successfully,
>> +1 (false) otherwise.
>> diff --git a/doc/usage/index.rst b/doc/usage/index.rst
>> index cdf710919a..0fde130a54 100644
>> --- a/doc/usage/index.rst
>> +++ b/doc/usage/index.rst
>> @@ -41,6 +41,7 @@ Shell commands
>> cmd/cmp
>> cmd/coninfo
>> cmd/conitrace
>> + cmd/cp
>> cmd/cyclic
>> cmd/dm
>> cmd/ebtupdate
>> --
>> 2.39.2
>>
>
> Regards,
> Simon
More information about the U-Boot
mailing list