Cleanup coding style, update CHANGELOG
Signed-off-by: Wolfgang Denk <wd@denx.de>
This commit is contained in:
parent
b951f8d317
commit
438a4c1126
|
@ -23,15 +23,15 @@ kernel is passed a pointer to the FDT. The boot method is indicated for each
|
||||||
scenario.
|
scenario.
|
||||||
|
|
||||||
|
|
||||||
1. bootm boot image at the current address, equivalent to 2,3,8
|
1. bootm boot image at the current address, equivalent to 2,3,8
|
||||||
|
|
||||||
Old uImage:
|
Old uImage:
|
||||||
2. bootm <addr1> /* single image at <addr1> */
|
2. bootm <addr1> /* single image at <addr1> */
|
||||||
3. bootm <addr1> /* multi-image at <addr1> */
|
3. bootm <addr1> /* multi-image at <addr1> */
|
||||||
4. bootm <addr1> - /* multi-image at <addr1> */
|
4. bootm <addr1> - /* multi-image at <addr1> */
|
||||||
5. bootm <addr1> <addr2> /* single image at <addr1> */
|
5. bootm <addr1> <addr2> /* single image at <addr1> */
|
||||||
6. bootm <addr1> <addr2> <addr3> /* single image at <addr1> */
|
6. bootm <addr1> <addr2> <addr3> /* single image at <addr1> */
|
||||||
7. bootm <addr1> - <addr3> /* single image at <addr1> */
|
7. bootm <addr1> - <addr3> /* single image at <addr1> */
|
||||||
|
|
||||||
New uImage:
|
New uImage:
|
||||||
8. bootm <addr1>
|
8. bootm <addr1>
|
||||||
|
@ -40,8 +40,8 @@ New uImage:
|
||||||
11. bootm [<addr1>]:<subimg1> [<addr2>]:<subimg2>
|
11. bootm [<addr1>]:<subimg1> [<addr2>]:<subimg2>
|
||||||
12. bootm [<addr1>]:<subimg1> [<addr2>]:<subimg2> [<addr3>]:<subimg3>
|
12. bootm [<addr1>]:<subimg1> [<addr2>]:<subimg2> [<addr3>]:<subimg3>
|
||||||
13. bootm [<addr1>]:<subimg1> [<addr2>]:<subimg2> <addr3>
|
13. bootm [<addr1>]:<subimg1> [<addr2>]:<subimg2> <addr3>
|
||||||
14. bootm [<addr1>]:<subimg1> - [<addr3>]:<subimg3>
|
14. bootm [<addr1>]:<subimg1> - [<addr3>]:<subimg3>
|
||||||
15. bootm [<addr1>]:<subimg1> - <addr3>
|
15. bootm [<addr1>]:<subimg1> - <addr3>
|
||||||
|
|
||||||
|
|
||||||
Ad. 1. This is equivalent to cases 2,3,8, depending on the type of image at
|
Ad. 1. This is equivalent to cases 2,3,8, depending on the type of image at
|
||||||
|
@ -57,11 +57,11 @@ with the ramdisk from the image.
|
||||||
- boot method: depends on the number of components at <addr1>, and on whether
|
- boot method: depends on the number of components at <addr1>, and on whether
|
||||||
U-Boot is compiled with OF support:
|
U-Boot is compiled with OF support:
|
||||||
|
|
||||||
| 2 components | 3 components |
|
| 2 components | 3 components |
|
||||||
| (kernel, initrd) | (kernel, initrd, fdt) |
|
| (kernel, initrd) | (kernel, initrd, fdt) |
|
||||||
---------------------------------------------------------------------
|
---------------------------------------------------------------------
|
||||||
#ifdef CONFIG_OF_* | non-FDT | FDT |
|
#ifdef CONFIG_OF_* | non-FDT | FDT |
|
||||||
#ifndef CONFIG_OF_* | non-FDT | non-FDT |
|
#ifndef CONFIG_OF_* | non-FDT | non-FDT |
|
||||||
|
|
||||||
Ad. 4. Similar to case 3, but the kernel is booted without initrd. Second
|
Ad. 4. Similar to case 3, but the kernel is booted without initrd. Second
|
||||||
component of the multi-image is irrelevant (it can be a dummy, 1-byte file).
|
component of the multi-image is irrelevant (it can be a dummy, 1-byte file).
|
||||||
|
|
|
@ -37,8 +37,8 @@ To summarize the prerequisites needed for new uImage creation:
|
||||||
|
|
||||||
Here's a graphical overview of the image creation and booting process:
|
Here's a graphical overview of the image creation and booting process:
|
||||||
|
|
||||||
image source file mkimage + dtc transfer to target
|
image source file mkimage + dtc transfer to target
|
||||||
+ ---------------> image file --------------------> bootm
|
+ ---------------> image file --------------------> bootm
|
||||||
image data files(s)
|
image data files(s)
|
||||||
|
|
||||||
|
|
||||||
|
@ -61,24 +61,24 @@ DTC: dts->dtb on file "kernel.its"
|
||||||
$
|
$
|
||||||
$ mkimage -l kernel.itb
|
$ mkimage -l kernel.itb
|
||||||
FIT description: Simple image with single Linux kernel
|
FIT description: Simple image with single Linux kernel
|
||||||
Created: Tue Mar 11 17:26:15 2008
|
Created: Tue Mar 11 17:26:15 2008
|
||||||
Image 0 (kernel@1)
|
Image 0 (kernel@1)
|
||||||
Description: Vanilla Linux kernel
|
Description: Vanilla Linux kernel
|
||||||
Type: Kernel Image
|
Type: Kernel Image
|
||||||
Compression: gzip compressed
|
Compression: gzip compressed
|
||||||
Data Size: 943347 Bytes = 921.24 kB = 0.90 MB
|
Data Size: 943347 Bytes = 921.24 kB = 0.90 MB
|
||||||
Architecture: PowerPC
|
Architecture: PowerPC
|
||||||
OS: Linux
|
OS: Linux
|
||||||
Load Address: 0x00000000
|
Load Address: 0x00000000
|
||||||
Entry Point: 0x00000000
|
Entry Point: 0x00000000
|
||||||
Hash algo: crc32
|
Hash algo: crc32
|
||||||
Hash value: 2ae2bb40
|
Hash value: 2ae2bb40
|
||||||
Hash algo: sha1
|
Hash algo: sha1
|
||||||
Hash value: 3c200f34e2c226ddc789240cca0c59fc54a67cf4
|
Hash value: 3c200f34e2c226ddc789240cca0c59fc54a67cf4
|
||||||
Default Configuration: 'config@1'
|
Default Configuration: 'config@1'
|
||||||
Configuration 0 (config@1)
|
Configuration 0 (config@1)
|
||||||
Description: Boot Linux kernel
|
Description: Boot Linux kernel
|
||||||
Kernel: kernel@1
|
Kernel: kernel@1
|
||||||
|
|
||||||
|
|
||||||
The resulting image file kernel.itb can be now transferred to the target,
|
The resulting image file kernel.itb can be now transferred to the target,
|
||||||
|
@ -105,15 +105,15 @@ Bytes transferred = 944464 (e6950 hex)
|
||||||
## Checking Image at 00900000 ...
|
## Checking Image at 00900000 ...
|
||||||
FIT image found
|
FIT image found
|
||||||
FIT description: Simple image with single Linux kernel
|
FIT description: Simple image with single Linux kernel
|
||||||
Created: 2008-03-11 16:26:15 UTC
|
Created: 2008-03-11 16:26:15 UTC
|
||||||
Image 0 (kernel@1)
|
Image 0 (kernel@1)
|
||||||
Description: Vanilla Linux kernel
|
Description: Vanilla Linux kernel
|
||||||
Type: Kernel Image
|
Type: Kernel Image
|
||||||
Compression: gzip compressed
|
Compression: gzip compressed
|
||||||
Data Start: 0x009000e0
|
Data Start: 0x009000e0
|
||||||
Data Size: 943347 Bytes = 921.2 kB
|
Data Size: 943347 Bytes = 921.2 kB
|
||||||
Architecture: PowerPC
|
Architecture: PowerPC
|
||||||
OS: Linux
|
OS: Linux
|
||||||
Load Address: 0x00000000
|
Load Address: 0x00000000
|
||||||
Entry Point: 0x00000000
|
Entry Point: 0x00000000
|
||||||
Hash algo: crc32
|
Hash algo: crc32
|
||||||
|
@ -123,19 +123,19 @@ Bytes transferred = 944464 (e6950 hex)
|
||||||
Default Configuration: 'config@1'
|
Default Configuration: 'config@1'
|
||||||
Configuration 0 (config@1)
|
Configuration 0 (config@1)
|
||||||
Description: Boot Linux kernel
|
Description: Boot Linux kernel
|
||||||
Kernel: kernel@1
|
Kernel: kernel@1
|
||||||
|
|
||||||
=> bootm
|
=> bootm
|
||||||
## Booting kernel from FIT Image at 00900000 ...
|
## Booting kernel from FIT Image at 00900000 ...
|
||||||
Using 'config@1' configuration
|
Using 'config@1' configuration
|
||||||
Trying 'kernel@1' kernel subimage
|
Trying 'kernel@1' kernel subimage
|
||||||
Description: Vanilla Linux kernel
|
Description: Vanilla Linux kernel
|
||||||
Type: Kernel Image
|
Type: Kernel Image
|
||||||
Compression: gzip compressed
|
Compression: gzip compressed
|
||||||
Data Start: 0x009000e0
|
Data Start: 0x009000e0
|
||||||
Data Size: 943347 Bytes = 921.2 kB
|
Data Size: 943347 Bytes = 921.2 kB
|
||||||
Architecture: PowerPC
|
Architecture: PowerPC
|
||||||
OS: Linux
|
OS: Linux
|
||||||
Load Address: 0x00000000
|
Load Address: 0x00000000
|
||||||
Entry Point: 0x00000000
|
Entry Point: 0x00000000
|
||||||
Hash algo: crc32
|
Hash algo: crc32
|
||||||
|
@ -171,35 +171,35 @@ DTC: dts->dtb on file "kernel_fdt.its"
|
||||||
$
|
$
|
||||||
$ mkimage -l kernel_fdt.itb
|
$ mkimage -l kernel_fdt.itb
|
||||||
FIT description: Simple image with single Linux kernel and FDT blob
|
FIT description: Simple image with single Linux kernel and FDT blob
|
||||||
Created: Tue Mar 11 16:29:22 2008
|
Created: Tue Mar 11 16:29:22 2008
|
||||||
Image 0 (kernel@1)
|
Image 0 (kernel@1)
|
||||||
Description: Vanilla Linux kernel
|
Description: Vanilla Linux kernel
|
||||||
Type: Kernel Image
|
Type: Kernel Image
|
||||||
Compression: gzip compressed
|
Compression: gzip compressed
|
||||||
Data Size: 1092037 Bytes = 1066.44 kB = 1.04 MB
|
Data Size: 1092037 Bytes = 1066.44 kB = 1.04 MB
|
||||||
Architecture: PowerPC
|
Architecture: PowerPC
|
||||||
OS: Linux
|
OS: Linux
|
||||||
Load Address: 0x00000000
|
Load Address: 0x00000000
|
||||||
Entry Point: 0x00000000
|
Entry Point: 0x00000000
|
||||||
Hash algo: crc32
|
Hash algo: crc32
|
||||||
Hash value: 2c0cc807
|
Hash value: 2c0cc807
|
||||||
Hash algo: sha1
|
Hash algo: sha1
|
||||||
Hash value: 264b59935470e42c418744f83935d44cdf59a3bb
|
Hash value: 264b59935470e42c418744f83935d44cdf59a3bb
|
||||||
Image 1 (fdt@1)
|
Image 1 (fdt@1)
|
||||||
Description: Flattened Device Tree blob
|
Description: Flattened Device Tree blob
|
||||||
Type: Flat Device Tree
|
Type: Flat Device Tree
|
||||||
Compression: uncompressed
|
Compression: uncompressed
|
||||||
Data Size: 16384 Bytes = 16.00 kB = 0.02 MB
|
Data Size: 16384 Bytes = 16.00 kB = 0.02 MB
|
||||||
Architecture: PowerPC
|
Architecture: PowerPC
|
||||||
Hash algo: crc32
|
Hash algo: crc32
|
||||||
Hash value: 0d655d71
|
Hash value: 0d655d71
|
||||||
Hash algo: sha1
|
Hash algo: sha1
|
||||||
Hash value: 25ab4e15cd4b8a5144610394560d9c318ce52def
|
Hash value: 25ab4e15cd4b8a5144610394560d9c318ce52def
|
||||||
Default Configuration: 'conf@1'
|
Default Configuration: 'conf@1'
|
||||||
Configuration 0 (conf@1)
|
Configuration 0 (conf@1)
|
||||||
Description: Boot Linux kernel with FDT blob
|
Description: Boot Linux kernel with FDT blob
|
||||||
Kernel: kernel@1
|
Kernel: kernel@1
|
||||||
FDT: fdt@1
|
FDT: fdt@1
|
||||||
|
|
||||||
|
|
||||||
The resulting image file kernel_fdt.itb can be now transferred to the target,
|
The resulting image file kernel_fdt.itb can be now transferred to the target,
|
||||||
|
@ -212,7 +212,7 @@ TFTP from server 192.168.1.1; our IP address is 192.168.160.5
|
||||||
Filename '/path/to/tftp/location/kernel_fdt.itb'.
|
Filename '/path/to/tftp/location/kernel_fdt.itb'.
|
||||||
Load address: 0x900000
|
Load address: 0x900000
|
||||||
Loading: #################################################################
|
Loading: #################################################################
|
||||||
###########
|
###########
|
||||||
done
|
done
|
||||||
Bytes transferred = 1109776 (10ef10 hex)
|
Bytes transferred = 1109776 (10ef10 hex)
|
||||||
=> iminfo
|
=> iminfo
|
||||||
|
@ -220,15 +220,15 @@ Bytes transferred = 1109776 (10ef10 hex)
|
||||||
## Checking Image at 00900000 ...
|
## Checking Image at 00900000 ...
|
||||||
FIT image found
|
FIT image found
|
||||||
FIT description: Simple image with single Linux kernel and FDT blob
|
FIT description: Simple image with single Linux kernel and FDT blob
|
||||||
Created: 2008-03-11 15:29:22 UTC
|
Created: 2008-03-11 15:29:22 UTC
|
||||||
Image 0 (kernel@1)
|
Image 0 (kernel@1)
|
||||||
Description: Vanilla Linux kernel
|
Description: Vanilla Linux kernel
|
||||||
Type: Kernel Image
|
Type: Kernel Image
|
||||||
Compression: gzip compressed
|
Compression: gzip compressed
|
||||||
Data Start: 0x009000ec
|
Data Start: 0x009000ec
|
||||||
Data Size: 1092037 Bytes = 1 MB
|
Data Size: 1092037 Bytes = 1 MB
|
||||||
Architecture: PowerPC
|
Architecture: PowerPC
|
||||||
OS: Linux
|
OS: Linux
|
||||||
Load Address: 0x00000000
|
Load Address: 0x00000000
|
||||||
Entry Point: 0x00000000
|
Entry Point: 0x00000000
|
||||||
Hash algo: crc32
|
Hash algo: crc32
|
||||||
|
@ -237,7 +237,7 @@ Bytes transferred = 1109776 (10ef10 hex)
|
||||||
Hash value: 264b59935470e42c418744f83935d44cdf59a3bb
|
Hash value: 264b59935470e42c418744f83935d44cdf59a3bb
|
||||||
Image 1 (fdt@1)
|
Image 1 (fdt@1)
|
||||||
Description: Flattened Device Tree blob
|
Description: Flattened Device Tree blob
|
||||||
Type: Flat Device Tree
|
Type: Flat Device Tree
|
||||||
Compression: uncompressed
|
Compression: uncompressed
|
||||||
Data Start: 0x00a0abdc
|
Data Start: 0x00a0abdc
|
||||||
Data Size: 16384 Bytes = 16 kB
|
Data Size: 16384 Bytes = 16 kB
|
||||||
|
@ -249,19 +249,19 @@ Bytes transferred = 1109776 (10ef10 hex)
|
||||||
Default Configuration: 'conf@1'
|
Default Configuration: 'conf@1'
|
||||||
Configuration 0 (conf@1)
|
Configuration 0 (conf@1)
|
||||||
Description: Boot Linux kernel with FDT blob
|
Description: Boot Linux kernel with FDT blob
|
||||||
Kernel: kernel@1
|
Kernel: kernel@1
|
||||||
FDT: fdt@1
|
FDT: fdt@1
|
||||||
=> bootm
|
=> bootm
|
||||||
## Booting kernel from FIT Image at 00900000 ...
|
## Booting kernel from FIT Image at 00900000 ...
|
||||||
Using 'conf@1' configuration
|
Using 'conf@1' configuration
|
||||||
Trying 'kernel@1' kernel subimage
|
Trying 'kernel@1' kernel subimage
|
||||||
Description: Vanilla Linux kernel
|
Description: Vanilla Linux kernel
|
||||||
Type: Kernel Image
|
Type: Kernel Image
|
||||||
Compression: gzip compressed
|
Compression: gzip compressed
|
||||||
Data Start: 0x009000ec
|
Data Start: 0x009000ec
|
||||||
Data Size: 1092037 Bytes = 1 MB
|
Data Size: 1092037 Bytes = 1 MB
|
||||||
Architecture: PowerPC
|
Architecture: PowerPC
|
||||||
OS: Linux
|
OS: Linux
|
||||||
Load Address: 0x00000000
|
Load Address: 0x00000000
|
||||||
Entry Point: 0x00000000
|
Entry Point: 0x00000000
|
||||||
Hash algo: crc32
|
Hash algo: crc32
|
||||||
|
@ -274,7 +274,7 @@ Bytes transferred = 1109776 (10ef10 hex)
|
||||||
Using 'conf@1' configuration
|
Using 'conf@1' configuration
|
||||||
Trying 'fdt@1' FDT blob subimage
|
Trying 'fdt@1' FDT blob subimage
|
||||||
Description: Flattened Device Tree blob
|
Description: Flattened Device Tree blob
|
||||||
Type: Flat Device Tree
|
Type: Flat Device Tree
|
||||||
Compression: uncompressed
|
Compression: uncompressed
|
||||||
Data Start: 0x00a0abdc
|
Data Start: 0x00a0abdc
|
||||||
Data Size: 16384 Bytes = 16 kB
|
Data Size: 16384 Bytes = 16 kB
|
||||||
|
|
|
@ -68,11 +68,11 @@ actual binary of a new uImage.
|
||||||
|
|
||||||
tqm5200.its
|
tqm5200.its
|
||||||
+
|
+
|
||||||
vmlinux.bin.gz mkimage + dtc xfer to target
|
vmlinux.bin.gz mkimage + dtc xfer to target
|
||||||
eldk-4.2-ramdisk --------------> tqm5200.itb --------------> bootm
|
eldk-4.2-ramdisk --------------> tqm5200.itb --------------> bootm
|
||||||
tqm5200.dtb /|\
|
tqm5200.dtb /|\
|
||||||
... |
|
... |
|
||||||
'new uImage'
|
'new uImage'
|
||||||
|
|
||||||
- create .its file, automatically filled-in properties are omitted
|
- create .its file, automatically filled-in properties are omitted
|
||||||
- call mkimage tool on a .its file
|
- call mkimage tool on a .its file
|
||||||
|
|
|
@ -56,7 +56,7 @@ int vsc7385_upload_firmware(void *firmware, unsigned int size)
|
||||||
out_be32(icpu_rom_map, 1);
|
out_be32(icpu_rom_map, 1);
|
||||||
udelay(20);
|
udelay(20);
|
||||||
|
|
||||||
/* Write the firmware to I-RAM */
|
/* Write the firmware to I-RAM */
|
||||||
out_be32(icpu_addr, 0);
|
out_be32(icpu_addr, 0);
|
||||||
udelay(20);
|
udelay(20);
|
||||||
|
|
||||||
|
@ -78,8 +78,8 @@ int vsc7385_upload_firmware(void *firmware, unsigned int size)
|
||||||
udelay(20);
|
udelay(20);
|
||||||
if (value != fw[i]) {
|
if (value != fw[i]) {
|
||||||
debug("VSC7385: Upload mismatch: address 0x%x, "
|
debug("VSC7385: Upload mismatch: address 0x%x, "
|
||||||
"read value 0x%x, image value 0x%x\n",
|
"read value 0x%x, image value 0x%x\n",
|
||||||
i, value, fw[i]);
|
i, value, fw[i]);
|
||||||
|
|
||||||
return -EIO;
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,4 +10,3 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int vsc7385_upload_firmware(void *firmware, unsigned int size);
|
int vsc7385_upload_firmware(void *firmware, unsigned int size);
|
||||||
|
|
||||||
|
|
|
@ -310,7 +310,7 @@ static void set_clocks_in_mhz (bd_t *kbd)
|
||||||
kbd->bi_cpmfreq /= 1000000L;
|
kbd->bi_cpmfreq /= 1000000L;
|
||||||
kbd->bi_brgfreq /= 1000000L;
|
kbd->bi_brgfreq /= 1000000L;
|
||||||
kbd->bi_sccfreq /= 1000000L;
|
kbd->bi_sccfreq /= 1000000L;
|
||||||
kbd->bi_vco /= 1000000L;
|
kbd->bi_vco /= 1000000L;
|
||||||
#endif
|
#endif
|
||||||
#if defined(CONFIG_MPC5xxx)
|
#if defined(CONFIG_MPC5xxx)
|
||||||
kbd->bi_ipbfreq /= 1000000L;
|
kbd->bi_ipbfreq /= 1000000L;
|
||||||
|
@ -410,9 +410,9 @@ static int boot_get_fdt (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
|
||||||
ulong image_start, image_end;
|
ulong image_start, image_end;
|
||||||
ulong load_start, load_end;
|
ulong load_start, load_end;
|
||||||
#if defined(CONFIG_FIT)
|
#if defined(CONFIG_FIT)
|
||||||
void *fit_hdr;
|
void *fit_hdr;
|
||||||
const char *fit_uname_config = NULL;
|
const char *fit_uname_config = NULL;
|
||||||
const char *fit_uname_fdt = NULL;
|
const char *fit_uname_fdt = NULL;
|
||||||
ulong default_addr;
|
ulong default_addr;
|
||||||
int cfg_noffset;
|
int cfg_noffset;
|
||||||
int fdt_noffset;
|
int fdt_noffset;
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
* arch/sh/kernel/setup.c and may require tweaking if the kernel sources
|
* arch/sh/kernel/setup.c and may require tweaking if the kernel sources
|
||||||
* change.
|
* change.
|
||||||
*/
|
*/
|
||||||
#define PARAM ((unsigned char *)CFG_SDRAM_BASE + 0x1000)
|
#define PARAM ((unsigned char *)CFG_SDRAM_BASE + 0x1000)
|
||||||
|
|
||||||
#define MOUNT_ROOT_RDONLY (*(unsigned long *) (PARAM+0x000))
|
#define MOUNT_ROOT_RDONLY (*(unsigned long *) (PARAM+0x000))
|
||||||
#define RAMDISK_FLAGS (*(unsigned long *) (PARAM+0x004))
|
#define RAMDISK_FLAGS (*(unsigned long *) (PARAM+0x004))
|
||||||
|
@ -41,7 +41,7 @@
|
||||||
/* ... */
|
/* ... */
|
||||||
#define COMMAND_LINE ((char *) (PARAM+0x100))
|
#define COMMAND_LINE ((char *) (PARAM+0x100))
|
||||||
|
|
||||||
#define RAMDISK_IMAGE_START_MASK 0x07FF
|
#define RAMDISK_IMAGE_START_MASK 0x07FF
|
||||||
|
|
||||||
extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
|
extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
|
||||||
|
|
||||||
|
@ -60,7 +60,7 @@ static void hexdump (unsigned char *buf, int len)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void do_bootm_linux (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
|
void do_bootm_linux (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
|
||||||
bootm_headers_t *images)
|
bootm_headers_t *images)
|
||||||
{
|
{
|
||||||
ulong ep = 0;
|
ulong ep = 0;
|
||||||
char *bootargs = getenv("bootargs");
|
char *bootargs = getenv("bootargs");
|
||||||
|
|
Loading…
Reference in New Issue