Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) .. SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) ===================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) PCI Test User Guide
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) ===================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) :Author: Kishon Vijay Abraham I <kishon@ti.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) This document is a guide to help users use pci-epf-test function driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) and pci_endpoint_test host driver for testing PCI. The list of steps to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) be followed in the host side and EP side is given below.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) Endpoint Device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) ===============
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) Endpoint Controller Devices
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) ---------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) To find the list of endpoint controller devices in the system::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) 	# ls /sys/class/pci_epc/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 	  51000000.pcie_ep
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) If PCI_ENDPOINT_CONFIGFS is enabled::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) 	# ls /sys/kernel/config/pci_ep/controllers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 	  51000000.pcie_ep
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) Endpoint Function Drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) -------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) To find the list of endpoint function drivers in the system::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) 	# ls /sys/bus/pci-epf/drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 	  pci_epf_test
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) If PCI_ENDPOINT_CONFIGFS is enabled::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) 	# ls /sys/kernel/config/pci_ep/functions
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 	  pci_epf_test
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) Creating pci-epf-test Device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) ----------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) PCI endpoint function device can be created using the configfs. To create
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) pci-epf-test device, the following commands can be used::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 	# mount -t configfs none /sys/kernel/config
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 	# cd /sys/kernel/config/pci_ep/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) 	# mkdir functions/pci_epf_test/func1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) The "mkdir func1" above creates the pci-epf-test function device that will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) be probed by pci_epf_test driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) The PCI endpoint framework populates the directory with the following
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) configurable fields::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 	# ls functions/pci_epf_test/func1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 	  baseclass_code	interrupt_pin	progif_code	subsys_id
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) 	  cache_line_size	msi_interrupts	revid		subsys_vendorid
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 	  deviceid          	msix_interrupts	subclass_code	vendorid
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) The PCI endpoint function driver populates these entries with default values
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) when the device is bound to the driver. The pci-epf-test driver populates
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) vendorid with 0xffff and interrupt_pin with 0x0001::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) 	# cat functions/pci_epf_test/func1/vendorid
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 	  0xffff
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) 	# cat functions/pci_epf_test/func1/interrupt_pin
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 	  0x0001
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) Configuring pci-epf-test Device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) -------------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) The user can configure the pci-epf-test device using configfs entry. In order
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) to change the vendorid and the number of MSI interrupts used by the function
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) device, the following commands can be used::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 	# echo 0x104c > functions/pci_epf_test/func1/vendorid
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 	# echo 0xb500 > functions/pci_epf_test/func1/deviceid
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 	# echo 16 > functions/pci_epf_test/func1/msi_interrupts
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 	# echo 8 > functions/pci_epf_test/func1/msix_interrupts
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) Binding pci-epf-test Device to EP Controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) --------------------------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) In order for the endpoint function device to be useful, it has to be bound to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) a PCI endpoint controller driver. Use the configfs to bind the function
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) device to one of the controller driver present in the system::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) 	# ln -s functions/pci_epf_test/func1 controllers/51000000.pcie_ep/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) Once the above step is completed, the PCI endpoint is ready to establish a link
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) with the host.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) Start the Link
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) --------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) In order for the endpoint device to establish a link with the host, the _start_
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) field should be populated with '1'::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) 	# echo 1 > controllers/51000000.pcie_ep/start
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) RootComplex Device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) ==================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) lspci Output
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) Note that the devices listed here correspond to the value populated in 1.4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) above::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 	00:00.0 PCI bridge: Texas Instruments Device 8888 (rev 01)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 	01:00.0 Unassigned class [ff00]: Texas Instruments Device b500
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) Using Endpoint Test function Device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) -----------------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) pcitest.sh added in tools/pci/ can be used to run all the default PCI endpoint
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) tests. To compile this tool the following commands should be used::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 	# cd <kernel-dir>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 	# make -C tools/pci
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) or if you desire to compile and install in your system::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 	# cd <kernel-dir>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) 	# make -C tools/pci install
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) The tool and script will be located in <rootfs>/usr/bin/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) pcitest.sh Output
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) ~~~~~~~~~~~~~~~~~
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) ::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) 	# pcitest.sh
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 	BAR tests
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 	BAR0:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) 	BAR1:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 	BAR2:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) 	BAR3:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 	BAR4:           NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 	BAR5:           NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 	Interrupt tests
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) 	SET IRQ TYPE TO LEGACY:         OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) 	LEGACY IRQ:     NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) 	SET IRQ TYPE TO MSI:            OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 	MSI1:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 	MSI2:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) 	MSI3:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) 	MSI4:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 	MSI5:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) 	MSI6:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 	MSI7:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 	MSI8:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) 	MSI9:           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) 	MSI10:          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) 	MSI11:          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 	MSI12:          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) 	MSI13:          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) 	MSI14:          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) 	MSI15:          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) 	MSI16:          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) 	MSI17:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) 	MSI18:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) 	MSI19:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 	MSI20:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) 	MSI21:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 	MSI22:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) 	MSI23:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 	MSI24:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 	MSI25:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) 	MSI26:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 	MSI27:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 	MSI28:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) 	MSI29:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) 	MSI30:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 	MSI31:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 	MSI32:          NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 	SET IRQ TYPE TO MSI-X:          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) 	MSI-X1:         OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 	MSI-X2:         OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) 	MSI-X3:         OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) 	MSI-X4:         OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 	MSI-X5:         OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) 	MSI-X6:         OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) 	MSI-X7:         OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) 	MSI-X8:         OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) 	MSI-X9:         NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) 	MSI-X10:        NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 	MSI-X11:        NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) 	MSI-X12:        NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) 	MSI-X13:        NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 	MSI-X14:        NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) 	MSI-X15:        NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) 	MSI-X16:        NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) 	[...]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) 	MSI-X2047:      NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) 	MSI-X2048:      NOT OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) 	Read Tests
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 	SET IRQ TYPE TO MSI:            OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) 	READ (      1 bytes):           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 	READ (   1024 bytes):           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 	READ (   1025 bytes):           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 	READ (1024000 bytes):           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) 	READ (1024001 bytes):           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) 	Write Tests
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) 	WRITE (      1 bytes):          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) 	WRITE (   1024 bytes):          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) 	WRITE (   1025 bytes):          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) 	WRITE (1024000 bytes):          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 	WRITE (1024001 bytes):          OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) 	Copy Tests
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) 	COPY (      1 bytes):           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) 	COPY (   1024 bytes):           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) 	COPY (   1025 bytes):           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) 	COPY (1024000 bytes):           OKAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) 	COPY (1024001 bytes):           OKAY