All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script
@ 2014-04-14  3:50 Denys Dmytriyenko
  2014-04-14  3:50 ` [RFC][PATCH 2/2] linux-ti-staging: add baseport, connectivity, ipc and systest config fragments Denys Dmytriyenko
  2014-04-14 12:01 ` [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script Maupin, Chase
  0 siblings, 2 replies; 7+ messages in thread
From: Denys Dmytriyenko @ 2014-04-14  3:50 UTC (permalink / raw)
  To: meta-ti

From: Denys Dmytriyenko <denys@ti.com>

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
---
 recipes-kernel/linux/setup-defconfig.inc | 27 ++++++++++++++++-----------
 1 file changed, 16 insertions(+), 11 deletions(-)

diff --git a/recipes-kernel/linux/setup-defconfig.inc b/recipes-kernel/linux/setup-defconfig.inc
index ed3bce2..d6e5557 100644
--- a/recipes-kernel/linux/setup-defconfig.inc
+++ b/recipes-kernel/linux/setup-defconfig.inc
@@ -5,27 +5,32 @@ KERNEL_LOCALVERSION ?= ""
 # Check the defconfig file and see if it points to an in kernel
 # defconfig that should be used, or if it is a complete config file
 
-addtask setup_defconfig before do_configure after do_patch
-do_setup_defconfig() {
-    # Always copy the defconfig file to .config to keep consistency
-    # between the case where there is a real config and the in kernel
-    # tree config
-    cp ${WORKDIR}/defconfig ${S}/.config
-}
-
 # define our own do_configure that will:
 #   1. Check the .config file and see if string use-kernel-config= is present
 #   2. If the use-kernel-config string is present parse out the config to use
-#      and run make ${config}
+#      and run make $config
 #   3. else run yes '' | oe_runmake oldconfig like the default do_configure
 #      does
 do_configure() {
+    # Always copy the defconfig file to .config to keep consistency
+    # between the case where there is a real config and the in kernel
+    # tree config
+    cp ${WORKDIR}/defconfig ${S}/.config
+
     echo ${KERNEL_LOCALVERSION} > ${B}/.scmversion
     echo ${KERNEL_LOCALVERSION} > ${S}/.scmversion
     config=`cat ${S}/.config | grep use-kernel-config | cut -d= -f2`
-    if [ "x${config}" != "x" ]
+    if [ "x$config" != "x" ]
     then
-        oe_runmake ${config}
+        # check for fragments
+        fragments=`cat ${S}/.config | grep config-fragment | cut -d= -f2`
+        oe_runmake $config
+        if [ "x$fragments" != "x" ]
+        then
+            fragnames=`basename -a $fragments`
+            ( cd ${WORKDIR} && ${S}/scripts/kconfig/merge_config.sh -m -r -O ${S} ${S}/.config $fragnames 1>&2 )
+            yes '' | oe_runmake oldconfig
+        fi
     else
         yes '' | oe_runmake oldconfig
     fi
-- 
1.9.2



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [RFC][PATCH 2/2] linux-ti-staging: add baseport, connectivity, ipc and systest config fragments
  2014-04-14  3:50 [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script Denys Dmytriyenko
@ 2014-04-14  3:50 ` Denys Dmytriyenko
  2014-04-14  4:22   ` Khem Raj
  2014-04-14 12:01 ` [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script Maupin, Chase
  1 sibling, 1 reply; 7+ messages in thread
From: Denys Dmytriyenko @ 2014-04-14  3:50 UTC (permalink / raw)
  To: meta-ti

From: Denys Dmytriyenko <denys@ti.com>

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
---
 .../linux/linux-ti-staging/baseport_defconfig        |  8 ++++++++
 .../linux/linux-ti-staging/connectivity_defconfig    | 14 ++++++++++++++
 recipes-kernel/linux/linux-ti-staging/defconfig      |  4 ++++
 recipes-kernel/linux/linux-ti-staging/ipc_defconfig  | 18 ++++++++++++++++++
 .../linux/linux-ti-staging/systest_defconfig         | 20 ++++++++++++++++++++
 recipes-kernel/linux/linux-ti-staging_3.12.bb        |  6 +++++-
 6 files changed, 69 insertions(+), 1 deletion(-)
 create mode 100644 recipes-kernel/linux/linux-ti-staging/baseport_defconfig
 create mode 100644 recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
 create mode 100644 recipes-kernel/linux/linux-ti-staging/ipc_defconfig
 create mode 100644 recipes-kernel/linux/linux-ti-staging/systest_defconfig

diff --git a/recipes-kernel/linux/linux-ti-staging/baseport_defconfig b/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
new file mode 100644
index 0000000..8dc24af
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
@@ -0,0 +1,8 @@
+##################################################
+# Baseport Config Options
+##################################################
+CONFIG_CRYPTO_HW=y
+CONFIG_CRYPTO_DEV_OMAP_AES=y
+CONFIG_CRYPTO_DEV_OMAP_SHAM=y
+CONFIG_CRYPTO_TEST=m
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=n
diff --git a/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig b/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
new file mode 100644
index 0000000..bf18dae
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
@@ -0,0 +1,14 @@
+##################################################
+# Connectivity Configs
+##################################################
+CONFIG_MTD_NAND_OMAP_BCH=y
+CONFIG_MTD_TESTS=m
+CONFIG_SPI_SPIDEV=y
+CONFIG_USB_TEST=m
+CONFIG_USB_ACM=y
+CONFIG_USB_SERIAL_PL2303=y
+CONFIG_USB_PRINTER=y
+CONFIG_USB_NET_AX8817X=y
+CONFIG_USB_G_MULTI=m
+CONFIG_USB_G_MULTI_RNDIS=y
+CONFIG_USB_G_MULTI_CDC=y
diff --git a/recipes-kernel/linux/linux-ti-staging/defconfig b/recipes-kernel/linux/linux-ti-staging/defconfig
index 926b35a..2a920e8 100644
--- a/recipes-kernel/linux/linux-ti-staging/defconfig
+++ b/recipes-kernel/linux/linux-ti-staging/defconfig
@@ -1 +1,5 @@
 use-kernel-config=omap2plus_defconfig
+config-fragment=baseport_defconfig
+config-fragment=connectivity_defconfig
+config-fragment=systest_defconfig
+config-fragment=ipc_defconfig
diff --git a/recipes-kernel/linux/linux-ti-staging/ipc_defconfig b/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
new file mode 100644
index 0000000..645dfdf
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
@@ -0,0 +1,18 @@
+##################################################
+# IPC config options
+##################################################
+CONFIG_IOMMU_API=y
+CONFIG_IOMMU_SUPPORT=y
+CONFIG_OF_IOMMU=y
+CONFIG_OMAP_IOMMU=y
+CONFIG_OMAP_IOVMM=y
+CONFIG_OMAP_IOMMU_DEBUG=y
+CONFIG_VIRTIO=m
+CONFIG_RPMSG=m
+CONFIG_RPMSG_RPC=m
+CONFIG_REMOTEPROC=m
+CONFIG_OMAP_REMOTEPROC=m
+CONFIG_OMAP_REMOTEPROC_IPU=y
+CONFIG_OMAP_REMOTEPROC_DSP=y
+CONFIG_OMAP_REMOTEPROC_IPU1=y
+CONFIG_OMAP_REMOTEPROC_DSP2=y
diff --git a/recipes-kernel/linux/linux-ti-staging/systest_defconfig b/recipes-kernel/linux/linux-ti-staging/systest_defconfig
new file mode 100644
index 0000000..e21602f
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti-staging/systest_defconfig
@@ -0,0 +1,20 @@
+##################################################
+# Systest config options
+##################################################
+CONFIG_DEBUG_SPINLOCK=y
+CONFIG_DEBUG_MUTEXES=y
+CONFIG_DEBUG_KMEMLEAK=y
+CONFIG_DEVKMEM=y
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
+CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400
+CONFIG_DEBUG_KMEMLEAK_TEST=n
+CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=n
+CONFIG_DEBUG_LOCK_ALLOC=y
+CONFIG_DEBUG_INFO=y
+CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
+CONFIG_PM_DEBUG=y
+CONFIG_DEBUG_GPIO=y
+CONFIG_USB_DEBUG=y
+CONFIG_SND_DEBUG=y
+CONFIG_RTC_DEBUG=y
diff --git a/recipes-kernel/linux/linux-ti-staging_3.12.bb b/recipes-kernel/linux/linux-ti-staging_3.12.bb
index 96be621..704d96b 100644
--- a/recipes-kernel/linux/linux-ti-staging_3.12.bb
+++ b/recipes-kernel/linux/linux-ti-staging_3.12.bb
@@ -40,11 +40,15 @@ SRCREV = "f0d4672333685697320f4907d5b4d3919121c299"
 PV = "3.12.17"
 
 # Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a rebuild
-MACHINE_KERNEL_PR_append = "a+gitr${SRCPV}"
+MACHINE_KERNEL_PR_append = "b+gitr${SRCPV}"
 PR = "${MACHINE_KERNEL_PR}"
 
 SRC_URI = "git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git;protocol=git;branch=${BRANCH} \
            file://defconfig \
+           file://baseport_defconfig \
+           file://connectivity_defconfig \
+           file://ipc_defconfig \
+           file://systest_defconfig \
           "
 
 # Disable SMP in defconfig on single-core platforms to reduce overhead
-- 
1.9.2



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [RFC][PATCH 2/2] linux-ti-staging: add baseport, connectivity, ipc and systest config fragments
  2014-04-14  3:50 ` [RFC][PATCH 2/2] linux-ti-staging: add baseport, connectivity, ipc and systest config fragments Denys Dmytriyenko
@ 2014-04-14  4:22   ` Khem Raj
  2014-04-14 13:54     ` Denys Dmytriyenko
  0 siblings, 1 reply; 7+ messages in thread
From: Khem Raj @ 2014-04-14  4:22 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: meta-ti

[-- Attachment #1: Type: text/plain, Size: 5675 bytes --]

On Apr 13, 2014 5:51 PM, "Denys Dmytriyenko" <denis@denix.org> wrote:
>
> From: Denys Dmytriyenko <denys@ti.com>
>
> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
> ---
>  .../linux/linux-ti-staging/baseport_defconfig        |  8 ++++++++
>  .../linux/linux-ti-staging/connectivity_defconfig    | 14 ++++++++++++++
>  recipes-kernel/linux/linux-ti-staging/defconfig      |  4 ++++
>  recipes-kernel/linux/linux-ti-staging/ipc_defconfig  | 18
++++++++++++++++++
>  .../linux/linux-ti-staging/systest_defconfig         | 20
++++++++++++++++++++
>  recipes-kernel/linux/linux-ti-staging_3.12.bb        |  6 +++++-
>  6 files changed, 69 insertions(+), 1 deletion(-)
>  create mode 100644
recipes-kernel/linux/linux-ti-staging/baseport_defconfig
>  create mode 100644
recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
>  create mode 100644 recipes-kernel/linux/linux-ti-staging/ipc_defconfig
>  create mode 100644
recipes-kernel/linux/linux-ti-staging/systest_defconfig

should they be called with .cfg extension ?

>
> diff --git a/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
b/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> new file mode 100644
> index 0000000..8dc24af
> --- /dev/null
> +++ b/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> @@ -0,0 +1,8 @@
> +##################################################
> +# Baseport Config Options
> +##################################################
> +CONFIG_CRYPTO_HW=y
> +CONFIG_CRYPTO_DEV_OMAP_AES=y
> +CONFIG_CRYPTO_DEV_OMAP_SHAM=y
> +CONFIG_CRYPTO_TEST=m
> +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=n
> diff --git a/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
b/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> new file mode 100644
> index 0000000..bf18dae
> --- /dev/null
> +++ b/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> @@ -0,0 +1,14 @@
> +##################################################
> +# Connectivity Configs
> +##################################################
> +CONFIG_MTD_NAND_OMAP_BCH=y
> +CONFIG_MTD_TESTS=m
> +CONFIG_SPI_SPIDEV=y
> +CONFIG_USB_TEST=m
> +CONFIG_USB_ACM=y
> +CONFIG_USB_SERIAL_PL2303=y
> +CONFIG_USB_PRINTER=y
> +CONFIG_USB_NET_AX8817X=y
> +CONFIG_USB_G_MULTI=m
> +CONFIG_USB_G_MULTI_RNDIS=y
> +CONFIG_USB_G_MULTI_CDC=y
> diff --git a/recipes-kernel/linux/linux-ti-staging/defconfig
b/recipes-kernel/linux/linux-ti-staging/defconfig
> index 926b35a..2a920e8 100644
> --- a/recipes-kernel/linux/linux-ti-staging/defconfig
> +++ b/recipes-kernel/linux/linux-ti-staging/defconfig
> @@ -1 +1,5 @@
>  use-kernel-config=omap2plus_defconfig
> +config-fragment=baseport_defconfig
> +config-fragment=connectivity_defconfig
> +config-fragment=systest_defconfig
> +config-fragment=ipc_defconfig
> diff --git a/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
b/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> new file mode 100644
> index 0000000..645dfdf
> --- /dev/null
> +++ b/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> @@ -0,0 +1,18 @@
> +##################################################
> +# IPC config options
> +##################################################
> +CONFIG_IOMMU_API=y
> +CONFIG_IOMMU_SUPPORT=y
> +CONFIG_OF_IOMMU=y
> +CONFIG_OMAP_IOMMU=y
> +CONFIG_OMAP_IOVMM=y
> +CONFIG_OMAP_IOMMU_DEBUG=y
> +CONFIG_VIRTIO=m
> +CONFIG_RPMSG=m
> +CONFIG_RPMSG_RPC=m
> +CONFIG_REMOTEPROC=m
> +CONFIG_OMAP_REMOTEPROC=m
> +CONFIG_OMAP_REMOTEPROC_IPU=y
> +CONFIG_OMAP_REMOTEPROC_DSP=y
> +CONFIG_OMAP_REMOTEPROC_IPU1=y
> +CONFIG_OMAP_REMOTEPROC_DSP2=y
> diff --git a/recipes-kernel/linux/linux-ti-staging/systest_defconfig
b/recipes-kernel/linux/linux-ti-staging/systest_defconfig
> new file mode 100644
> index 0000000..e21602f
> --- /dev/null
> +++ b/recipes-kernel/linux/linux-ti-staging/systest_defconfig
> @@ -0,0 +1,20 @@
> +##################################################
> +# Systest config options
> +##################################################
> +CONFIG_DEBUG_SPINLOCK=y
> +CONFIG_DEBUG_MUTEXES=y
> +CONFIG_DEBUG_KMEMLEAK=y
> +CONFIG_DEVKMEM=y
> +CONFIG_HAVE_DEBUG_KMEMLEAK=y
> +CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400
> +CONFIG_DEBUG_KMEMLEAK_TEST=n
> +CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=n
> +CONFIG_DEBUG_LOCK_ALLOC=y
> +CONFIG_DEBUG_INFO=y
> +CONFIG_DEBUG_FS=y
> +CONFIG_DEBUG_KERNEL=y
> +CONFIG_PM_DEBUG=y
> +CONFIG_DEBUG_GPIO=y
> +CONFIG_USB_DEBUG=y
> +CONFIG_SND_DEBUG=y
> +CONFIG_RTC_DEBUG=y
> diff --git a/recipes-kernel/linux/linux-ti-staging_3.12.bbb/recipes-kernel/linux/
linux-ti-staging_3.12.bb
> index 96be621..704d96b 100644
> --- a/recipes-kernel/linux/linux-ti-staging_3.12.bb
> +++ b/recipes-kernel/linux/linux-ti-staging_3.12.bb
> @@ -40,11 +40,15 @@ SRCREV = "f0d4672333685697320f4907d5b4d3919121c299"
>  PV = "3.12.17"
>
>  # Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a
rebuild
> -MACHINE_KERNEL_PR_append = "a+gitr${SRCPV}"
> +MACHINE_KERNEL_PR_append = "b+gitr${SRCPV}"
>  PR = "${MACHINE_KERNEL_PR}"
>
>  SRC_URI = "git://
git.ti.com/ti-linux-kernel/ti-linux-kernel.git;protocol=git;branch=${BRANCH}\
>             file://defconfig \
> +           file://baseport_defconfig \
> +           file://connectivity_defconfig \
> +           file://ipc_defconfig \
> +           file://systest_defconfig \
>            "
>
>  # Disable SMP in defconfig on single-core platforms to reduce overhead
> --
> 1.9.2
>
> --
> _______________________________________________
> meta-ti mailing list
> meta-ti@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-ti

[-- Attachment #2: Type: text/html, Size: 7390 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script
  2014-04-14  3:50 [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script Denys Dmytriyenko
  2014-04-14  3:50 ` [RFC][PATCH 2/2] linux-ti-staging: add baseport, connectivity, ipc and systest config fragments Denys Dmytriyenko
@ 2014-04-14 12:01 ` Maupin, Chase
  2014-04-14 13:59   ` Denys Dmytriyenko
  1 sibling, 1 reply; 7+ messages in thread
From: Maupin, Chase @ 2014-04-14 12:01 UTC (permalink / raw)
  To: Denys Dmytriyenko, meta-ti@yoctoproject.org

>-----Original Message-----
>From: meta-ti-bounces@yoctoproject.org [mailto:meta-ti-
>bounces@yoctoproject.org] On Behalf Of Denys Dmytriyenko
>Sent: Sunday, April 13, 2014 10:50 PM
>To: meta-ti@yoctoproject.org
>Subject: [meta-ti] [RFC][PATCH 1/2] setup-defconfig.inc: implement
>config fragments by using in-kernel script
>
>From: Denys Dmytriyenko <denys@ti.com>
>
>Signed-off-by: Denys Dmytriyenko <denys@ti.com>
>---
> recipes-kernel/linux/setup-defconfig.inc | 27 ++++++++++++++++---
>--------
> 1 file changed, 16 insertions(+), 11 deletions(-)
>
>diff --git a/recipes-kernel/linux/setup-defconfig.inc b/recipes-
>kernel/linux/setup-defconfig.inc
>index ed3bce2..d6e5557 100644
>--- a/recipes-kernel/linux/setup-defconfig.inc
>+++ b/recipes-kernel/linux/setup-defconfig.inc
>@@ -5,27 +5,32 @@ KERNEL_LOCALVERSION ?= ""
> # Check the defconfig file and see if it points to an in kernel
> # defconfig that should be used, or if it is a complete config
>file
>
>-addtask setup_defconfig before do_configure after do_patch
>-do_setup_defconfig() {
>-    # Always copy the defconfig file to .config to keep
>consistency
>-    # between the case where there is a real config and the in
>kernel
>-    # tree config
>-    cp ${WORKDIR}/defconfig ${S}/.config
>-}
>-
> # define our own do_configure that will:
> #   1. Check the .config file and see if string use-kernel-
>config= is present
> #   2. If the use-kernel-config string is present parse out the
>config to use
>-#      and run make ${config}
>+#      and run make $config
> #   3. else run yes '' | oe_runmake oldconfig like the default
>do_configure
> #      does
> do_configure() {
>+    # Always copy the defconfig file to .config to keep
>consistency
>+    # between the case where there is a real config and the in
>kernel
>+    # tree config
>+    cp ${WORKDIR}/defconfig ${S}/.config
>+
>     echo ${KERNEL_LOCALVERSION} > ${B}/.scmversion
>     echo ${KERNEL_LOCALVERSION} > ${S}/.scmversion
>     config=`cat ${S}/.config | grep use-kernel-config | cut -d= -
>f2`
>-    if [ "x${config}" != "x" ]
>+    if [ "x$config" != "x" ]
>     then
>-        oe_runmake ${config}
>+        # check for fragments
>+        fragments=`cat ${S}/.config | grep config-fragment | cut
>-d= -f2`

Implementation question here.  Would it be easier to instead list the fragments you want to merge in the recipe?  My reasoning is this:

1. You already have a list of all the fragments to pull down in the recipe, so why make it require updating two spots to add a fragment.  For example to add a new fragment you would add it to the SRC_URI in the recipe and then have to modify the defconfig to use it.
2. If we keep the list in the recipe we avoid having to store defconfigs based on machine or build type.  For example on the AM335x we could use the same defconfig file as the dra7xx but just specify that we want to add a no-SMP config fragment.  That way as we add new fragments we are not updating each defconfig.
3. For things like system test builds where they want to enable options that might hurt performance but are good for debug having the recipe control this would make it easier to add these through a bbappend or an environment variable.  The current way they would have to overlay the entire defconfig which means keeping them in sync rather than appending the recipe to add another config fragment to the list.

>+        oe_runmake $config
>+        if [ "x$fragments" != "x" ]
>+        then
>+            fragnames=`basename -a $fragments`
>+            ( cd ${WORKDIR} &&
>${S}/scripts/kconfig/merge_config.sh -m -r -O ${S} ${S}/.config
>$fragnames 1>&2 )
>+            yes '' | oe_runmake oldconfig
>+        fi
>     else
>         yes '' | oe_runmake oldconfig
>     fi
>--
>1.9.2
>
>--
>_______________________________________________
>meta-ti mailing list
>meta-ti@yoctoproject.org
>https://lists.yoctoproject.org/listinfo/meta-ti


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [RFC][PATCH 2/2] linux-ti-staging: add baseport, connectivity, ipc and systest config fragments
  2014-04-14  4:22   ` Khem Raj
@ 2014-04-14 13:54     ` Denys Dmytriyenko
  2014-04-14 16:52       ` Khem Raj
  0 siblings, 1 reply; 7+ messages in thread
From: Denys Dmytriyenko @ 2014-04-14 13:54 UTC (permalink / raw)
  To: Khem Raj; +Cc: meta-ti

On Sun, Apr 13, 2014 at 09:22:32PM -0700, Khem Raj wrote:
> On Apr 13, 2014 5:51 PM, "Denys Dmytriyenko" <denis@denix.org> wrote:
> >
> > From: Denys Dmytriyenko <denys@ti.com>
> >
> > Signed-off-by: Denys Dmytriyenko <denys@ti.com>
> > ---
> >  .../linux/linux-ti-staging/baseport_defconfig        |  8 ++++++++
> >  .../linux/linux-ti-staging/connectivity_defconfig    | 14 ++++++++++++++
> >  recipes-kernel/linux/linux-ti-staging/defconfig      |  4 ++++
> >  recipes-kernel/linux/linux-ti-staging/ipc_defconfig  | 18
> ++++++++++++++++++
> >  .../linux/linux-ti-staging/systest_defconfig         | 20
> ++++++++++++++++++++
> >  recipes-kernel/linux/linux-ti-staging_3.12.bb        |  6 +++++-
> >  6 files changed, 69 insertions(+), 1 deletion(-)
> >  create mode 100644
> recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> >  create mode 100644
> recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> >  create mode 100644 recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> >  create mode 100644
> recipes-kernel/linux/linux-ti-staging/systest_defconfig
> 
> should they be called with .cfg extension ?

Doesn't really matter. To match linux-yocto, they could have an extension, but 
it's not really required.


> > diff --git a/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> b/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> > new file mode 100644
> > index 0000000..8dc24af
> > --- /dev/null
> > +++ b/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> > @@ -0,0 +1,8 @@
> > +##################################################
> > +# Baseport Config Options
> > +##################################################
> > +CONFIG_CRYPTO_HW=y
> > +CONFIG_CRYPTO_DEV_OMAP_AES=y
> > +CONFIG_CRYPTO_DEV_OMAP_SHAM=y
> > +CONFIG_CRYPTO_TEST=m
> > +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=n
> > diff --git a/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> b/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> > new file mode 100644
> > index 0000000..bf18dae
> > --- /dev/null
> > +++ b/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> > @@ -0,0 +1,14 @@
> > +##################################################
> > +# Connectivity Configs
> > +##################################################
> > +CONFIG_MTD_NAND_OMAP_BCH=y
> > +CONFIG_MTD_TESTS=m
> > +CONFIG_SPI_SPIDEV=y
> > +CONFIG_USB_TEST=m
> > +CONFIG_USB_ACM=y
> > +CONFIG_USB_SERIAL_PL2303=y
> > +CONFIG_USB_PRINTER=y
> > +CONFIG_USB_NET_AX8817X=y
> > +CONFIG_USB_G_MULTI=m
> > +CONFIG_USB_G_MULTI_RNDIS=y
> > +CONFIG_USB_G_MULTI_CDC=y
> > diff --git a/recipes-kernel/linux/linux-ti-staging/defconfig
> b/recipes-kernel/linux/linux-ti-staging/defconfig
> > index 926b35a..2a920e8 100644
> > --- a/recipes-kernel/linux/linux-ti-staging/defconfig
> > +++ b/recipes-kernel/linux/linux-ti-staging/defconfig
> > @@ -1 +1,5 @@
> >  use-kernel-config=omap2plus_defconfig
> > +config-fragment=baseport_defconfig
> > +config-fragment=connectivity_defconfig
> > +config-fragment=systest_defconfig
> > +config-fragment=ipc_defconfig
> > diff --git a/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> b/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> > new file mode 100644
> > index 0000000..645dfdf
> > --- /dev/null
> > +++ b/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> > @@ -0,0 +1,18 @@
> > +##################################################
> > +# IPC config options
> > +##################################################
> > +CONFIG_IOMMU_API=y
> > +CONFIG_IOMMU_SUPPORT=y
> > +CONFIG_OF_IOMMU=y
> > +CONFIG_OMAP_IOMMU=y
> > +CONFIG_OMAP_IOVMM=y
> > +CONFIG_OMAP_IOMMU_DEBUG=y
> > +CONFIG_VIRTIO=m
> > +CONFIG_RPMSG=m
> > +CONFIG_RPMSG_RPC=m
> > +CONFIG_REMOTEPROC=m
> > +CONFIG_OMAP_REMOTEPROC=m
> > +CONFIG_OMAP_REMOTEPROC_IPU=y
> > +CONFIG_OMAP_REMOTEPROC_DSP=y
> > +CONFIG_OMAP_REMOTEPROC_IPU1=y
> > +CONFIG_OMAP_REMOTEPROC_DSP2=y
> > diff --git a/recipes-kernel/linux/linux-ti-staging/systest_defconfig
> b/recipes-kernel/linux/linux-ti-staging/systest_defconfig
> > new file mode 100644
> > index 0000000..e21602f
> > --- /dev/null
> > +++ b/recipes-kernel/linux/linux-ti-staging/systest_defconfig
> > @@ -0,0 +1,20 @@
> > +##################################################
> > +# Systest config options
> > +##################################################
> > +CONFIG_DEBUG_SPINLOCK=y
> > +CONFIG_DEBUG_MUTEXES=y
> > +CONFIG_DEBUG_KMEMLEAK=y
> > +CONFIG_DEVKMEM=y
> > +CONFIG_HAVE_DEBUG_KMEMLEAK=y
> > +CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400
> > +CONFIG_DEBUG_KMEMLEAK_TEST=n
> > +CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=n
> > +CONFIG_DEBUG_LOCK_ALLOC=y
> > +CONFIG_DEBUG_INFO=y
> > +CONFIG_DEBUG_FS=y
> > +CONFIG_DEBUG_KERNEL=y
> > +CONFIG_PM_DEBUG=y
> > +CONFIG_DEBUG_GPIO=y
> > +CONFIG_USB_DEBUG=y
> > +CONFIG_SND_DEBUG=y
> > +CONFIG_RTC_DEBUG=y
> > diff --git a/recipes-kernel/linux/linux-ti-staging_3.12.bbb/recipes-kernel/linux/
> linux-ti-staging_3.12.bb
> > index 96be621..704d96b 100644
> > --- a/recipes-kernel/linux/linux-ti-staging_3.12.bb
> > +++ b/recipes-kernel/linux/linux-ti-staging_3.12.bb
> > @@ -40,11 +40,15 @@ SRCREV = "f0d4672333685697320f4907d5b4d3919121c299"
> >  PV = "3.12.17"
> >
> >  # Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a
> rebuild
> > -MACHINE_KERNEL_PR_append = "a+gitr${SRCPV}"
> > +MACHINE_KERNEL_PR_append = "b+gitr${SRCPV}"
> >  PR = "${MACHINE_KERNEL_PR}"
> >
> >  SRC_URI = "git://
> git.ti.com/ti-linux-kernel/ti-linux-kernel.git;protocol=git;branch=${BRANCH}\
> >             file://defconfig \
> > +           file://baseport_defconfig \
> > +           file://connectivity_defconfig \
> > +           file://ipc_defconfig \
> > +           file://systest_defconfig \
> >            "
> >
> >  # Disable SMP in defconfig on single-core platforms to reduce overhead
> > --
> > 1.9.2
> >
> > --
> > _______________________________________________
> > meta-ti mailing list
> > meta-ti@yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/meta-ti

> -- 
> _______________________________________________
> meta-ti mailing list
> meta-ti@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-ti



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script
  2014-04-14 12:01 ` [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script Maupin, Chase
@ 2014-04-14 13:59   ` Denys Dmytriyenko
  0 siblings, 0 replies; 7+ messages in thread
From: Denys Dmytriyenko @ 2014-04-14 13:59 UTC (permalink / raw)
  To: Maupin, Chase; +Cc: meta-ti@yoctoproject.org

On Mon, Apr 14, 2014 at 12:01:16PM +0000, Maupin, Chase wrote:
> >-----Original Message-----
> >From: meta-ti-bounces@yoctoproject.org [mailto:meta-ti-
> >bounces@yoctoproject.org] On Behalf Of Denys Dmytriyenko
> >Sent: Sunday, April 13, 2014 10:50 PM
> >To: meta-ti@yoctoproject.org
> >Subject: [meta-ti] [RFC][PATCH 1/2] setup-defconfig.inc: implement
> >config fragments by using in-kernel script
> >
> >From: Denys Dmytriyenko <denys@ti.com>
> >
> >Signed-off-by: Denys Dmytriyenko <denys@ti.com>
> >---
> > recipes-kernel/linux/setup-defconfig.inc | 27 ++++++++++++++++---
> >--------
> > 1 file changed, 16 insertions(+), 11 deletions(-)
> >
> >diff --git a/recipes-kernel/linux/setup-defconfig.inc b/recipes-
> >kernel/linux/setup-defconfig.inc
> >index ed3bce2..d6e5557 100644
> >--- a/recipes-kernel/linux/setup-defconfig.inc
> >+++ b/recipes-kernel/linux/setup-defconfig.inc
> >@@ -5,27 +5,32 @@ KERNEL_LOCALVERSION ?= ""
> > # Check the defconfig file and see if it points to an in kernel
> > # defconfig that should be used, or if it is a complete config
> >file
> >
> >-addtask setup_defconfig before do_configure after do_patch
> >-do_setup_defconfig() {
> >-    # Always copy the defconfig file to .config to keep
> >consistency
> >-    # between the case where there is a real config and the in
> >kernel
> >-    # tree config
> >-    cp ${WORKDIR}/defconfig ${S}/.config
> >-}
> >-
> > # define our own do_configure that will:
> > #   1. Check the .config file and see if string use-kernel-
> >config= is present
> > #   2. If the use-kernel-config string is present parse out the
> >config to use
> >-#      and run make ${config}
> >+#      and run make $config
> > #   3. else run yes '' | oe_runmake oldconfig like the default
> >do_configure
> > #      does
> > do_configure() {
> >+    # Always copy the defconfig file to .config to keep
> >consistency
> >+    # between the case where there is a real config and the in
> >kernel
> >+    # tree config
> >+    cp ${WORKDIR}/defconfig ${S}/.config
> >+
> >     echo ${KERNEL_LOCALVERSION} > ${B}/.scmversion
> >     echo ${KERNEL_LOCALVERSION} > ${S}/.scmversion
> >     config=`cat ${S}/.config | grep use-kernel-config | cut -d= -
> >f2`
> >-    if [ "x${config}" != "x" ]
> >+    if [ "x$config" != "x" ]
> >     then
> >-        oe_runmake ${config}
> >+        # check for fragments
> >+        fragments=`cat ${S}/.config | grep config-fragment | cut
> >-d= -f2`
> 
> Implementation question here.  Would it be easier to instead list the 
> fragments you want to merge in the recipe?  My reasoning is this:
> 
> 1. You already have a list of all the fragments to pull down in the recipe, 
> so why make it require updating two spots to add a fragment.  For example to 
> add a new fragment you would add it to the SRC_URI in the recipe and then 
> have to modify the defconfig to use it.
> 2. If we keep the list in the recipe we avoid having to store defconfigs 
> based on machine or build type.  For example on the AM335x we could use the 
> same defconfig file as the dra7xx but just specify that we want to add a 
> no-SMP config fragment.  That way as we add new fragments we are not 
> updating each defconfig.
> 3. For things like system test builds where they want to enable options that 
> might hurt performance but are good for debug having the recipe control this 
> would make it easier to add these through a bbappend or an environment 
> variable.  The current way they would have to overlay the entire defconfig 
> which means keeping them in sync rather than appending the recipe to add 
> another config fragment to the list.

Good questions. My primary goal was to keep the syntax the same with Dan's 
kernel integration Jenkins job, so it is just a drop-in replacement. Moving 
the fragment definition from defconfig to the recipe would certainly change 
the syntax and require one to learn another way of doing things...


> >+        oe_runmake $config
> >+        if [ "x$fragments" != "x" ]
> >+        then
> >+            fragnames=`basename -a $fragments`
> >+            ( cd ${WORKDIR} &&
> >${S}/scripts/kconfig/merge_config.sh -m -r -O ${S} ${S}/.config
> >$fragnames 1>&2 )
> >+            yes '' | oe_runmake oldconfig
> >+        fi
> >     else
> >         yes '' | oe_runmake oldconfig
> >     fi
> >--
> >1.9.2
> >
> >--
> >_______________________________________________
> >meta-ti mailing list
> >meta-ti@yoctoproject.org
> >https://lists.yoctoproject.org/listinfo/meta-ti
> -- 
> _______________________________________________
> meta-ti mailing list
> meta-ti@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-ti


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [RFC][PATCH 2/2] linux-ti-staging: add baseport, connectivity, ipc and systest config fragments
  2014-04-14 13:54     ` Denys Dmytriyenko
@ 2014-04-14 16:52       ` Khem Raj
  0 siblings, 0 replies; 7+ messages in thread
From: Khem Raj @ 2014-04-14 16:52 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: meta-ti

[-- Attachment #1: Type: text/plain, Size: 6777 bytes --]

On Apr 14, 2014 3:54 AM, "Denys Dmytriyenko" <denys@ti.com> wrote:
>
> On Sun, Apr 13, 2014 at 09:22:32PM -0700, Khem Raj wrote:
> > On Apr 13, 2014 5:51 PM, "Denys Dmytriyenko" <denis@denix.org> wrote:
> > >
> > > From: Denys Dmytriyenko <denys@ti.com>
> > >
> > > Signed-off-by: Denys Dmytriyenko <denys@ti.com>
> > > ---
> > >  .../linux/linux-ti-staging/baseport_defconfig        |  8 ++++++++
> > >  .../linux/linux-ti-staging/connectivity_defconfig    | 14
++++++++++++++
> > >  recipes-kernel/linux/linux-ti-staging/defconfig      |  4 ++++
> > >  recipes-kernel/linux/linux-ti-staging/ipc_defconfig  | 18
> > ++++++++++++++++++
> > >  .../linux/linux-ti-staging/systest_defconfig         | 20
> > ++++++++++++++++++++
> > >  recipes-kernel/linux/linux-ti-staging_3.12.bb        |  6 +++++-
> > >  6 files changed, 69 insertions(+), 1 deletion(-)
> > >  create mode 100644
> > recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> > >  create mode 100644
> > recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> > >  create mode 100644
recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> > >  create mode 100644
> > recipes-kernel/linux/linux-ti-staging/systest_defconfig
> >
> > should they be called with .cfg extension ?
>
> Doesn't really matter. To match linux-yocto, they could have an
extension, but
> it's not really required.
>

yes however consistent naming would be helpful

>
> > > diff --git a/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> > b/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> > > new file mode 100644
> > > index 0000000..8dc24af
> > > --- /dev/null
> > > +++ b/recipes-kernel/linux/linux-ti-staging/baseport_defconfig
> > > @@ -0,0 +1,8 @@
> > > +##################################################
> > > +# Baseport Config Options
> > > +##################################################
> > > +CONFIG_CRYPTO_HW=y
> > > +CONFIG_CRYPTO_DEV_OMAP_AES=y
> > > +CONFIG_CRYPTO_DEV_OMAP_SHAM=y
> > > +CONFIG_CRYPTO_TEST=m
> > > +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=n
> > > diff --git
a/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> > b/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> > > new file mode 100644
> > > index 0000000..bf18dae
> > > --- /dev/null
> > > +++ b/recipes-kernel/linux/linux-ti-staging/connectivity_defconfig
> > > @@ -0,0 +1,14 @@
> > > +##################################################
> > > +# Connectivity Configs
> > > +##################################################
> > > +CONFIG_MTD_NAND_OMAP_BCH=y
> > > +CONFIG_MTD_TESTS=m
> > > +CONFIG_SPI_SPIDEV=y
> > > +CONFIG_USB_TEST=m
> > > +CONFIG_USB_ACM=y
> > > +CONFIG_USB_SERIAL_PL2303=y
> > > +CONFIG_USB_PRINTER=y
> > > +CONFIG_USB_NET_AX8817X=y
> > > +CONFIG_USB_G_MULTI=m
> > > +CONFIG_USB_G_MULTI_RNDIS=y
> > > +CONFIG_USB_G_MULTI_CDC=y
> > > diff --git a/recipes-kernel/linux/linux-ti-staging/defconfig
> > b/recipes-kernel/linux/linux-ti-staging/defconfig
> > > index 926b35a..2a920e8 100644
> > > --- a/recipes-kernel/linux/linux-ti-staging/defconfig
> > > +++ b/recipes-kernel/linux/linux-ti-staging/defconfig
> > > @@ -1 +1,5 @@
> > >  use-kernel-config=omap2plus_defconfig
> > > +config-fragment=baseport_defconfig
> > > +config-fragment=connectivity_defconfig
> > > +config-fragment=systest_defconfig
> > > +config-fragment=ipc_defconfig
> > > diff --git a/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> > b/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> > > new file mode 100644
> > > index 0000000..645dfdf
> > > --- /dev/null
> > > +++ b/recipes-kernel/linux/linux-ti-staging/ipc_defconfig
> > > @@ -0,0 +1,18 @@
> > > +##################################################
> > > +# IPC config options
> > > +##################################################
> > > +CONFIG_IOMMU_API=y
> > > +CONFIG_IOMMU_SUPPORT=y
> > > +CONFIG_OF_IOMMU=y
> > > +CONFIG_OMAP_IOMMU=y
> > > +CONFIG_OMAP_IOVMM=y
> > > +CONFIG_OMAP_IOMMU_DEBUG=y
> > > +CONFIG_VIRTIO=m
> > > +CONFIG_RPMSG=m
> > > +CONFIG_RPMSG_RPC=m
> > > +CONFIG_REMOTEPROC=m
> > > +CONFIG_OMAP_REMOTEPROC=m
> > > +CONFIG_OMAP_REMOTEPROC_IPU=y
> > > +CONFIG_OMAP_REMOTEPROC_DSP=y
> > > +CONFIG_OMAP_REMOTEPROC_IPU1=y
> > > +CONFIG_OMAP_REMOTEPROC_DSP2=y
> > > diff --git a/recipes-kernel/linux/linux-ti-staging/systest_defconfig
> > b/recipes-kernel/linux/linux-ti-staging/systest_defconfig
> > > new file mode 100644
> > > index 0000000..e21602f
> > > --- /dev/null
> > > +++ b/recipes-kernel/linux/linux-ti-staging/systest_defconfig
> > > @@ -0,0 +1,20 @@
> > > +##################################################
> > > +# Systest config options
> > > +##################################################
> > > +CONFIG_DEBUG_SPINLOCK=y
> > > +CONFIG_DEBUG_MUTEXES=y
> > > +CONFIG_DEBUG_KMEMLEAK=y
> > > +CONFIG_DEVKMEM=y
> > > +CONFIG_HAVE_DEBUG_KMEMLEAK=y
> > > +CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400
> > > +CONFIG_DEBUG_KMEMLEAK_TEST=n
> > > +CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=n
> > > +CONFIG_DEBUG_LOCK_ALLOC=y
> > > +CONFIG_DEBUG_INFO=y
> > > +CONFIG_DEBUG_FS=y
> > > +CONFIG_DEBUG_KERNEL=y
> > > +CONFIG_PM_DEBUG=y
> > > +CONFIG_DEBUG_GPIO=y
> > > +CONFIG_USB_DEBUG=y
> > > +CONFIG_SND_DEBUG=y
> > > +CONFIG_RTC_DEBUG=y
> > > diff --git
a/recipes-kernel/linux/linux-ti-staging_3.12.bbb/recipes-kernel/linux/
> > linux-ti-staging_3.12.bb
> > > index 96be621..704d96b 100644
> > > --- a/recipes-kernel/linux/linux-ti-staging_3.12.bb
> > > +++ b/recipes-kernel/linux/linux-ti-staging_3.12.bb
> > > @@ -40,11 +40,15 @@ SRCREV =
"f0d4672333685697320f4907d5b4d3919121c299"
> > >  PV = "3.12.17"
> > >
> > >  # Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a
> > rebuild
> > > -MACHINE_KERNEL_PR_append = "a+gitr${SRCPV}"
> > > +MACHINE_KERNEL_PR_append = "b+gitr${SRCPV}"
> > >  PR = "${MACHINE_KERNEL_PR}"
> > >
> > >  SRC_URI = "git://
> >
git.ti.com/ti-linux-kernel/ti-linux-kernel.git;protocol=git;branch=${BRANCH}\
> > >             file://defconfig \
> > > +           file://baseport_defconfig \
> > > +           file://connectivity_defconfig \
> > > +           file://ipc_defconfig \
> > > +           file://systest_defconfig \
> > >            "
> > >
> > >  # Disable SMP in defconfig on single-core platforms to reduce
overhead
> > > --
> > > 1.9.2
> > >
> > > --
> > > _______________________________________________
> > > meta-ti mailing list
> > > meta-ti@yoctoproject.org
> > > https://lists.yoctoproject.org/listinfo/meta-ti
>
> > --
> > _______________________________________________
> > meta-ti mailing list
> > meta-ti@yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/meta-ti
>

[-- Attachment #2: Type: text/html, Size: 9724 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-04-14 16:52 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-14  3:50 [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script Denys Dmytriyenko
2014-04-14  3:50 ` [RFC][PATCH 2/2] linux-ti-staging: add baseport, connectivity, ipc and systest config fragments Denys Dmytriyenko
2014-04-14  4:22   ` Khem Raj
2014-04-14 13:54     ` Denys Dmytriyenko
2014-04-14 16:52       ` Khem Raj
2014-04-14 12:01 ` [RFC][PATCH 1/2] setup-defconfig.inc: implement config fragments by using in-kernel script Maupin, Chase
2014-04-14 13:59   ` Denys Dmytriyenko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.