[OE-core] [PATCH 1/2] parted: add ontrack DM6 aux3 support

Otavio Salvador otavio at ossystems.com.br
Tue Apr 24 18:48:15 UTC 2018


Add ontrack DM6 aux3 partition support to enable creating
partitions required to boot i.MX MXS based platforms.

This patch has been sent long time ago by Alexandre Belloni to
meta-freescale however this must be incuded on OE-Core as this is a
common component across different BSP.

Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
---

 .../parted/files/Add_ontrackdm6aux3.patch     | 109 ++++++++++++++++++
 meta/recipes-extended/parted/parted_3.2.bb    |   1 +
 2 files changed, 110 insertions(+)
 create mode 100644 meta/recipes-extended/parted/files/Add_ontrackdm6aux3.patch

diff --git a/meta/recipes-extended/parted/files/Add_ontrackdm6aux3.patch b/meta/recipes-extended/parted/files/Add_ontrackdm6aux3.patch
new file mode 100644
index 00000000000..0fc36cdd389
--- /dev/null
+++ b/meta/recipes-extended/parted/files/Add_ontrackdm6aux3.patch
@@ -0,0 +1,109 @@
+diff -Nburp parted-3.2.orig/libparted/fs/Makefile.am parted-3.2/libparted/fs/Makefile.am
+--- parted-3.2.orig/libparted/fs/Makefile.am	2014-07-28 04:29:16.000000000 +0200
++++ parted-3.2/libparted/fs/Makefile.am	2015-03-25 19:51:38.912544030 +0100
+@@ -42,6 +42,7 @@ libfs_la_SOURCES =		\
+   linux_swap/linux_swap.c	\
+   nilfs2/nilfs2.c		\
+   ntfs/ntfs.c			\
++  ontrack/ontrack.c		\
+   reiserfs/reiserfs.c		\
+   reiserfs/reiserfs.h		\
+   ufs/ufs.c			\
+diff -Nburp parted-3.2.orig/libparted/fs/ontrack/ontrack.c parted-3.2/libparted/fs/ontrack/ontrack.c
+--- parted-3.2.orig/libparted/fs/ontrack/ontrack.c	1970-01-01 01:00:00.000000000 +0100
++++ parted-3.2/libparted/fs/ontrack/ontrack.c	2015-03-25 19:55:01.342048099 +0100
+@@ -0,0 +1,39 @@
++#include <config.h>
++
++#include <parted/parted.h>
++#include <parted/crc32.h>
++#include <parted/endian.h>
++
++PedGeometry*
++ontrackdm6aux3_probe (PedGeometry* geom)
++{
++	PedSector length = geom->length;
++
++	/* ignore if sector size is not 512bytes for now  */
++	if (geom->dev->sector_size != PED_SECTOR_SIZE_DEFAULT)
++		return NULL;
++
++	return ped_geometry_new(geom->dev, geom->start, length);
++}
++
++static PedFileSystemOps ontrackdm6aux3_ops = {
++	probe:			ontrackdm6aux3_probe,
++};
++
++static PedFileSystemType ontrackdm6aux3_type = {
++	next:   NULL,
++	ops:    &ontrackdm6aux3_ops,
++	name:   "ontrackdm6aux3",
++};
++
++void
++ped_file_system_ontrack_init ()
++{
++	ped_file_system_type_register (&ontrackdm6aux3_type);
++}
++
++void
++ped_file_system_ontrack_done ()
++{
++	ped_file_system_type_unregister (&ontrackdm6aux3_type);
++}
+diff -Nburp parted-3.2.orig/libparted/labels/dos.c parted-3.2/libparted/labels/dos.c
+--- parted-3.2.orig/libparted/labels/dos.c	2014-06-15 20:17:43.000000000 +0200
++++ parted-3.2/libparted/labels/dos.c	2015-03-25 19:51:38.916543965 +0100
+@@ -83,6 +83,7 @@ static const char MBR_BOOT_CODE[] = {
+ #define PARTITION_COMPAQ_DIAG	0x12
+ #define PARTITION_MSFT_RECOVERY	0x27
+ #define PARTITION_LDM		0x42
++#define PARTITION_ONTRACK_DM6_AUX3	0x53
+ #define PARTITION_LINUX_SWAP	0x82
+ #define PARTITION_LINUX		0x83
+ #define PARTITION_IRST		0x84
+@@ -1500,6 +1501,8 @@ msdos_partition_set_system (PedPartition
+ 		dos_data->system = PARTITION_HFS;
+ 	else if (!strcmp (fs_type->name, "sun-ufs"))
+ 		dos_data->system = PARTITION_SUN_UFS;
++	else if (!strcmp (fs_type->name, "ontrackdm6aux3"))
++		dos_data->system = PARTITION_ONTRACK_DM6_AUX3;
+ 	else if (is_linux_swap (fs_type->name))
+ 		dos_data->system = PARTITION_LINUX_SWAP;
+ 	else
+diff -Nburp parted-3.2.orig/libparted/libparted.c parted-3.2/libparted/libparted.c
+--- parted-3.2.orig/libparted/libparted.c	2014-06-15 20:17:43.000000000 +0200
++++ parted-3.2/libparted/libparted.c	2015-03-25 19:51:38.912544030 +0100
+@@ -110,6 +110,7 @@ extern void ped_file_system_fat_init (vo
+ extern void ped_file_system_ext2_init (void);
+ extern void ped_file_system_nilfs2_init (void);
+ extern void ped_file_system_btrfs_init (void);
++extern void ped_file_system_ontrack_init (void);
+ 
+ static void
+ init_file_system_types ()
+@@ -126,6 +127,7 @@ init_file_system_types ()
+ 	ped_file_system_ext2_init ();
+ 	ped_file_system_nilfs2_init ();
+ 	ped_file_system_btrfs_init ();
++	ped_file_system_ontrack_init ();
+ }
+ 
+ extern void ped_disk_aix_done ();
+@@ -177,6 +179,7 @@ _init()
+ #endif
+ }
+ 
++extern void ped_file_system_ontrack_done (void);
+ extern void ped_file_system_nilfs2_done (void);
+ extern void ped_file_system_ext2_done (void);
+ extern void ped_file_system_fat_done (void);
+@@ -193,6 +196,7 @@ extern void ped_file_system_btrfs_done (
+ static void
+ done_file_system_types ()
+ {
++	ped_file_system_ontrack_done ();
+ 	ped_file_system_nilfs2_done ();
+ 	ped_file_system_ext2_done ();
+ 	ped_file_system_fat_done ();
diff --git a/meta/recipes-extended/parted/parted_3.2.bb b/meta/recipes-extended/parted/parted_3.2.bb
index ab30108bf23..2415d031bd6 100644
--- a/meta/recipes-extended/parted/parted_3.2.bb
+++ b/meta/recipes-extended/parted/parted_3.2.bb
@@ -11,6 +11,7 @@ SRC_URI = "${GNU_MIRROR}/parted/parted-${PV}.tar.xz \
            file://syscalls.patch \
            file://fix-doc-mandir.patch \
            file://fix-compile-failure-while-dis.patch \
+	   file://Add_ontrackdm6aux3.patch \
            file://0001-Include-fcntl.h-in-platform_defs.h.patch \
            file://0001-Unset-need_charset_alias-when-building-for-musl.patch \
            file://0002-libparted_fs_resize-link-against-libuuid-explicitly-.patch \
-- 
2.17.0




More information about the Openembedded-core mailing list