Re: [meta-intel] [Patch v2 00/11] machinesetuptool commits

2014-10-10 Thread Darren Hart
Hi Nitin,

This description helps to identify _what_ the tool is intended to do, but
it still does not address the _how_, which is important context to have
when reviewing the patches. There was also no mention of the sources to
the tool itself, also important for context.

One gap below is Gummiboot serial support, which I had intended to switch
meta-intel EFI support over too this release (looking like that may not
happen... Will look into how invasive that would be).

Another concern is the statement below about not allowing for a default
configuration. Like other recent changes to meta-intel, this should be an
opt-in thing, and as such, the BSPs need to be able to provide defaults.
The intel-corei7-64 BSP works well as it is for a number of Intel
platforms, and people using those may prefer not to use the
machinesetuptool.

--
Darren

On 10/8/14, 5:32, nitin.a.kam...@intel.com nitin.a.kam...@intel.com
wrote:

From: Nitin A Kamble nitin.a.kam...@intel.com

As this is totally new feature I am including some explanation as a simple
design document for ease of understanding the implementation.

Machine Setup Tool

Q. Why is this feature implemented?
A. Many of the BSPs from meta-intel are very similar differing only in the
   configuration of things such as serial port, X configuration, network,
   audio, kernel parameters etc. Now with the common kernel it is possible
   to support more platforms or boards with a single BSP. The only thing
   missing was the text configuration customization for a particular
hardware
   platform. The machine setup tool fills this gap.

Q. What the machine setup tool can do?
A. It provides following capabilities:
   * Provide previously defined machine configurations.
   * Ability to select a target machine at runtime at the time of boot.
   * Ability to reconfigure a previously configured machine for another
supported platform.
   * Ability to select a default machine when no user input is received
at the boot time.
   * These configurations can be specified for machines
 * ALSA audio configuration file
 * ALSA Mixer state file
 * Network configuration file
 * xorg configuration file
 * Machine formfactor file
 * Kernel boot parameters
 * A list of blacklisted kernel modules
 * A list of kernel modules to autoload
 * Serial port configuration for syslinux boot loader
 * Serial port configuration for grub boot loader
 * Serial port configuration for setting up serial console
 * Any scripts to run at setup time
 * Any scripts to run on every boot

Q. What the machine setup tool can not do?
A. Anything, which can not be easily manipulated on the target image is
   outside of the scope of the machine setup tool. So things like
providing
   a custom kernel, or providing any special binaries is outside the scope
   of the machine setup tool.

Q. Is the machine setup tool arch specific?
A. Even though, the tool is mainly designed for the BSPs from the
meta-intel
   layer, there is no architecture specific logic in the tool. It can be
   used on other architecture hardware similarly.

Q. What are the possible future extensions to the tool?
A. * The tool can be extended to detect the target hardware automatically.
   * It can also be extended to support more machine configuration
 customizations.
   * It can be extended to take the target machine from the kernel boot
parameter.
   * It can be extended to handle different versions of configuration
files, to
   deal with differences in configurations in the future.

Q. What is the history of the machine setup tool?
A. The tool has taken few ideas from the zaurusd project. And to avoid any
   legacy it has started the code from scratch.

Q. What kind of design decision are made while developing the tool?
A. The following points are considered in the design of the code.
  * The processing logic and the configuration can be neatly separated in
the
different Yocto Project layers. This way all the BSP specific
configuration can go in the individual BSP layers, and the common
logic
can be placed in the common layer.
  * If a target machine is not previously configured, then at the boot
time
a list of supported machines is displayed along with a prompt for the
selection of target machine.
  * A default target machine can be specified, which becomes the selected
machine when no user input is received at the boot time prompt. This
helps in situations where serial ports may not be accessible at the
1st
boot.
  * To get the ability of reconfiguration of image, complete machine
configuration need to be specified for each supported machine It can
not
rely on any kind of default configuration.

Q. What is missing in this pull request?
A. The documentation changes for README is missing at this point. These
will
   follow, once the structure and format of README for such kind of
features is
   finalized with the microcode commits.

Q. What kind of 

Re: [meta-intel] [Patch v2 01/11] machinesetuptool: a new recipe for setup of a machine

2014-10-10 Thread Darren Hart
On 10/8/14, 5:32, nitin.a.kam...@intel.com nitin.a.kam...@intel.com
wrote:

From: Nitin A Kamble nitin.a.kam...@intel.com

a new recipe which recipe provides the ability to setup a BSP image for a
specific machine or platform at the boot time. The base recipe does not
provide any machine configuration files, those are provided by individual
BSP layer.

Signed-off-by: Nitin A Kamble nitin.a.kam...@intel.com
---
 .../machinesetuptool/machinesetuptool_git.bb   | 48
++
 1 file changed, 48 insertions(+)
 create mode 100644
common/recipes-bsp/machinesetuptool/machinesetuptool_git.bb

diff --git a/common/recipes-bsp/machinesetuptool/machinesetuptool_git.bb
b/common/recipes-bsp/machinesetuptool/machinesetuptool_git.bb

Hrm, what was the policy on _git.bb again? Iirc we are trying to do away
with them and use the PV there?

new file mode 100644
index 000..8101526
--- /dev/null
+++ b/common/recipes-bsp/machinesetuptool/machinesetuptool_git.bb
@@ -0,0 +1,48 @@
+SUMMARY = Daemon to setup an image for a specific machine at boot time.
+SECTION = base
+LICENSE = GPLv3
+LIC_FILES_CHKSUM = file://COPYING;md5=d32239bcb673463ab874e80d47fae504
+RDEPENDS_${PN} = sysvinit sed
+
+PV = 1.0+git${SRCPV}
+
+SRCREV = 07f7c30b9ed5509087ad591ba4cb2543df9f08e2
+
+SRC_URI = git://git.yoctoproject.org/machinesetuptool.git
+
+S = ${WORKDIR}/git
+
+PACKAGE_ARCH = ${MACHINE_ARCH}


Heh... I *think* that's right... MACHINE_ARCH Yup

Kinda messes with your head a little bit doesn't it? :-)

+
+inherit autotools pkgconfig update-rc.d
+
+INITSCRIPT_NAME = machinesetuptool
+INITSCRIPT_PARAMS = start 00 S . stop 20 0 1 6 .
+
+# following variables are initialized to empty values now.
+# These need to be populated with the desired machine configurations
+# for each BSP in it's own layer.
+MACHINE_CONFIG_FILES ?= 
+SUPPORTED_MACHINES ?= 
+DEFAULT_MACHINE_SELECTION ?= none
+
+python __anonymous () {
+src_uri = d.getVar('SRC_URI', True)
+machine_config_files = (d.getVar('MACHINE_CONFIG_FILES', True) or )
+for file in machine_config_files.split():
+ src_uri +=  file:// + file
+d.setVar('SRC_URI', src_uri)

OK Why not just do this in the bbappend? Is it just so much shorter
this way and less to maintain?

There is a tradeoff here between easily debuggable explicit meta-data, and
cleaner optimization like this. It appears as though there are a lot of
files, which probably tips us toward this solution, but I wanted to raise
the question.

+}
+
+do_install_append() {
+  (cat  EOF
+SUPPORTED_MACHINES=${SUPPORTED_MACHINES}
+DEFAULT_MACHINE_SELECTION=${DEFAULT_MACHINE_SELECTION}
+EOF
+  )  ${D}/${sysconfdir}/${BPN}/defaults
+
+  for file in ${MACHINE_CONFIG_FILES}
+  do
+  install -m 0644 ${S}/../${file} 
${D}/${sysconfdir}/${BPN}/config/

Seems as though it would makes sense to have this broken out into MACHINE
subdirectories.

Where is the ${BPN}/config directory created? We typically see that in the
install I believe.

+  done
+}
-- 
1.8.1.4

-- 
Darren Hart
Intel Open Source Technology Center



-- 
___
meta-intel mailing list
meta-intel@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-intel


Re: [meta-intel] [PATCH 1/3] crownbay-noemgd: disable the gma500_gfx module

2014-10-10 Thread Kamble, Nitin A


On 10/10/14, 6:37 AM, Zanussi, Tom tom.zanu...@intel.com wrote:

On Thu, 2014-10-09 at 15:11 -0700, nitin.a.kam...@intel.com wrote:
 From: Nitin A Kamble nitin.a.kam...@intel.com
 
 The gmx500 graphics driver does not work on this BSP, but it takes
 the ownership of the graphics hardware at boot time, blocking other
 drivers from using the graphics hardware.
 
 Fix the issue by blacklisting the gma500_gfx kernel module in the kmod
 configuration, so that it doesn't get loaded at boot time.
 

Is this really the right way to do this?  It will only work if
CONFIG_XXX=m.  If m-y at some point, the whole .bbappend becomes
useless at best.

That is why the gma500 is converted from y to m. And with the common
kernel,
It should be m anyway. If you have better way to solve you can share.

Nitin



Tom

 Fixes Bug:
 [YOCTO #6807]
 
 Signed-off-by: Nitin A Kamble nitin.a.kam...@intel.com
 ---
  meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend | 3 +++
  1 file changed, 3 insertions(+)
  create mode 100644 meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
 
 diff --git a/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
b/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
 new file mode 100644
 index 000..56d8fcb
 --- /dev/null
 +++ b/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
 @@ -0,0 +1,3 @@
 +do_install_append () {
 +echo blacklist gma500_gfx 
${D}${sysconfdir}/modprobe.d/prohibit_gma500_gfx.conf
 +}



-- 
___
meta-intel mailing list
meta-intel@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-intel


Re: [meta-intel] [Patch v2 02/11] machinesetuptool: add nuc machine config to the intel-corei7-64 BSP

2014-10-10 Thread Darren Hart
On 10/8/14, 5:32, nitin.a.kam...@intel.com nitin.a.kam...@intel.com
wrote:

From: Nitin A Kamble nitin.a.kam...@intel.com

Add machine configuration for the NUC platform in the intel-corei7-64 BSP
image.


Hi Nitin,

A few comments inline below...


Signed-off-by: Nitin A Kamble nitin.a.kam...@intel.com
---
 .../machinesetuptool/intel-corei7-64/nuc-alsa.conf |  24 ++
 .../intel-corei7-64/nuc-alsa.state | 309
+
 .../nuc-bootscript-hdmi_port_audio.sh  |  19 ++
 .../intel-corei7-64/nuc-formfactor.machconfig  |   3 +
 .../intel-corei7-64/nuc-network.interfaces |  20 ++
 .../machinesetuptool/intel-corei7-64/nuc.vars  |  14 +
 .../machinesetuptool/machinesetuptool_git.bbappend |  18 ++
 7 files changed, 407 insertions(+)
 create mode 100644
common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc-a
lsa.conf
 create mode 100644
common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc-a
lsa.state
 create mode 100755
common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc-b
ootscript-hdmi_port_audio.sh
 create mode 100644
common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc-f
ormfactor.machconfig
 create mode 100644
common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc-n
etwork.interfaces
 create mode 100644
common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc.v
ars
 create mode 100644
common/recipes-bsp/machinesetuptool/machinesetuptool_git.bbappend




diff --git 
a/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
-bootscript-hdmi_port_audio.sh
b/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
-bootscript-hdmi_port_audio.sh
new file mode 100755
index 000..3c77ac9
--- /dev/null
+++ 
b/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
-bootscript-hdmi_port_audio.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# If both HDMI ports are connected then use HDMI0 for default ALSA audio
out..
+
+ALSA_CONF_FILE=/etc/asound.conf
+
+HDMI0_STATUS_FILE=/sys/class/drm/card0-HDMI-A-1/status
+HDMI1_STATUS_FILE=/sys/class/drm/card0-HDMI-A-2/status
+
+HDMI0_ALSA_CONF=hw:0,3
+HDMI1_ALSA_CONF=hw:0,7
+
+if [ -f ${HDMI0_STATUS_FILE} ]  [ `cat ${HDMI0_STATUS_FILE}` ==
connected ]
+then
+  sed -i s/pcm *\hw:[0-9]*,[0-9]*\/pcm \${HDMI0_ALSA_CONF}\/
${ALSA_CONF_FILE}
+elif [ -f ${HDMI1_STATUS_FILE} ]  [ `cat ${HDMI1_STATUS_FILE}` ==
connected ]
+then
+  sed -i s/pcm \hw:[0-9]*,[0-9]*\/pcm \${HDMI1_ALSA_CONF}\/
${ALSA_CONF_FILE}
+fi


This approach really strikes me as a hack. I understand it's coming from
the existing NUC BSP... But is this actually how this is done by the major
distros as well?


diff --git 
a/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
-formfactor.machconfig
b/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
-formfactor.machconfig
new file mode 100644
index 000..ffce012
--- /dev/null
+++ 
b/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
-formfactor.machconfig
@@ -0,0 +1,3 @@
+# Assume a USB mouse and keyboard are connected
+HAVE_TOUCHSCREEN=0
+HAVE_KEYBOARD=1


This is the default for basically all the BSPs, and it would be preferable
not to have to duplicate this across all the MACHINE config files. Having
this be the default for intel-corei7-64 and only overwrite it if the
configured machine provides the file seems like a reasonable approach to
me.


diff --git 
a/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
-network.interfaces
b/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
-network.interfaces
new file mode 100644
index 000..4ed0a85
--- /dev/null
+++ 
b/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
-network.interfaces
@@ -0,0 +1,20 @@
+# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
+
+# The loopback interface
+auto lo
+iface lo inet loopback
+
+# Wireless interfaces
+iface wlan0 inet dhcp
+  wireless_mode managed
+  wireless_essid any
+  wpa-driver wext
+  wpa-conf /etc/wpa_supplicant.conf
+
+# Wired or wireless interfaces
+auto eth0
+iface eth0 inet dhcp
+
+# Bluetooth networking
+iface bnep0 inet dhcp
+


Same with this particular network interface.

--
Darren

diff --git 
a/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
.vars 
b/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
.vars
new file mode 100644
index 000..c6f373f
--- /dev/null
+++ 
b/common/recipes-bsp/machinesetuptool/machinesetuptool/intel-corei7-64/nuc
.vars
@@ -0,0 +1,14 @@
+FORMFACTOR_FILE=nuc-formfactor.machconfig
+ALSA_CONFIG_FILE=nuc-alsa.conf
+ALSA_STATE_FILE=nuc-alsa.state
+XORG_CONFIG_FILE=
+NETWORK_INTERFACES_FILE=nuc-network.interfaces
+AUTOLOAD_KERNEL_MODULES=uio iwlwifi
+PROHIBIT_KERNEL_MODULES=
+EXTRA_KERNEL_PARAMETERS=

Re: [meta-intel] [PATCH 1/3] crownbay-noemgd: disable the gma500_gfx module

2014-10-10 Thread Darren Hart
On 10/10/14, 11:48, Kamble, Nitin A nitin.a.kam...@intel.com wrote:



On 10/10/14, 1:34 PM, Darren Hart dvh...@linux.intel.com wrote:

On 10/10/14, 10:46, Kamble, Nitin A nitin.a.kam...@intel.com wrote:



On 10/10/14, 10:31 AM, Zanussi, Tom tom.zanu...@intel.com wrote:

On Fri, 2014-10-10 at 12:25 -0500, Kamble, Nitin A wrote:
 
 On 10/10/14, 6:37 AM, Zanussi, Tom tom.zanu...@intel.com wrote:
 
 On Thu, 2014-10-09 at 15:11 -0700, nitin.a.kam...@intel.com wrote:
  From: Nitin A Kamble nitin.a.kam...@intel.com
  
  The gmx500 graphics driver does not work on this BSP, but it takes
  the ownership of the graphics hardware at boot time, blocking
other
  drivers from using the graphics hardware.
  
  Fix the issue by blacklisting the gma500_gfx kernel module in the
kmod
  configuration, so that it doesn't get loaded at boot time.

Does gma500 work anywhere? If not, perhaps it doesn't belong in the
intel-common BSPs. I really wanted it to be a reasonable fallback to
EMGD,
but it just doesn't seem to work anywhere.

It does work on and needed for the emenlow-noemgd BSP.

OK, glad it works somewhere! :-)

-- 
Darren Hart
Intel Open Source Technology Center



-- 
___
meta-intel mailing list
meta-intel@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-intel


Re: [meta-intel] [PATCH 1/3] crownbay-noemgd: disable the gma500_gfx module

2014-10-10 Thread Tom Zanussi
On Fri, 2014-10-10 at 12:46 -0500, Kamble, Nitin A wrote:
 
 On 10/10/14, 10:31 AM, Zanussi, Tom tom.zanu...@intel.com wrote:
 
 On Fri, 2014-10-10 at 12:25 -0500, Kamble, Nitin A wrote:
  
  On 10/10/14, 6:37 AM, Zanussi, Tom tom.zanu...@intel.com wrote:
  
  On Thu, 2014-10-09 at 15:11 -0700, nitin.a.kam...@intel.com wrote:
   From: Nitin A Kamble nitin.a.kam...@intel.com
   
   The gmx500 graphics driver does not work on this BSP, but it takes
   the ownership of the graphics hardware at boot time, blocking other
   drivers from using the graphics hardware.
   
   Fix the issue by blacklisting the gma500_gfx kernel module in the
 kmod
   configuration, so that it doesn't get loaded at boot time.
   
  
  Is this really the right way to do this?  It will only work if
  CONFIG_XXX=m.  If m-y at some point, the whole .bbappend becomes
  useless at best.
  
  That is why the gma500 is converted from y to m. And with the common
  kernel,
  It should be m anyway. If you have better way to solve you can share.
  
 
 Why not a config fragment that turns it off for that BSP?
 
 The more general question is whether the common kernel mandates
 everything be 'm' for this reason.
 
 Tom
 
 This will be going backwards. We are trying to consolidate kernel and

What seems backwards to me is starting with a broken config and using a
band-aid to fix the brokenness.

 BSPs. 
 And this suggested approach will make a separate kernel for this BSP.
 
 The common kernel has lot of drivers enabled. And very few of them will be
 actually used on any particular BSP. Not using kernel modules for these
 many
 drivers will be insane.
 

I guess I need to understand the new model where creating an embedded
system that only includes what it needs and which therefore doesn't need
to be a module is considered insane.

So what you're saying is that not only does everything in an Intel BSP
need to be configured as m, but also that an Intel BSP can't touch the
kernel, not even configuration.

Tom

 Nitin
 
 
 
  Nitin
  
  
  
  Tom
  
   Fixes Bug:
   [YOCTO #6807]
   
   Signed-off-by: Nitin A Kamble nitin.a.kam...@intel.com
   ---
meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend | 3 +++
1 file changed, 3 insertions(+)
create mode 100644
 meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
   
   diff --git a/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
  b/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
   new file mode 100644
   index 000..56d8fcb
   --- /dev/null
   +++ b/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
   @@ -0,0 +1,3 @@
   +do_install_append () {
   +   echo blacklist gma500_gfx 
  ${D}${sysconfdir}/modprobe.d/prohibit_gma500_gfx.conf
   +}
  
  
  
 
 
 


-- 
___
meta-intel mailing list
meta-intel@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-intel


Re: [meta-intel] [PATCH 1/3] crownbay-noemgd: disable the gma500_gfx module

2014-10-10 Thread Darren Hart
On 10/10/14, 12:00, Tom Zanussi tom.zanu...@intel.com wrote:

On Fri, 2014-10-10 at 12:46 -0500, Kamble, Nitin A wrote:
 
 On 10/10/14, 10:31 AM, Zanussi, Tom tom.zanu...@intel.com wrote:
 
 On Fri, 2014-10-10 at 12:25 -0500, Kamble, Nitin A wrote:
  
  On 10/10/14, 6:37 AM, Zanussi, Tom tom.zanu...@intel.com wrote:
  
  On Thu, 2014-10-09 at 15:11 -0700, nitin.a.kam...@intel.com wrote:
   From: Nitin A Kamble nitin.a.kam...@intel.com
   
   The gmx500 graphics driver does not work on this BSP, but it takes
   the ownership of the graphics hardware at boot time, blocking
other
   drivers from using the graphics hardware.
   
   Fix the issue by blacklisting the gma500_gfx kernel module in the
 kmod
   configuration, so that it doesn't get loaded at boot time.
   
  
  Is this really the right way to do this?  It will only work if
  CONFIG_XXX=m.  If m-y at some point, the whole .bbappend becomes
  useless at best.
  
  That is why the gma500 is converted from y to m. And with the common
  kernel,
  It should be m anyway. If you have better way to solve you can share.
  
 
 Why not a config fragment that turns it off for that BSP?
 
 The more general question is whether the common kernel mandates
 everything be 'm' for this reason.
 
 Tom
 
 This will be going backwards. We are trying to consolidate kernel and

What seems backwards to me is starting with a broken config and using a
band-aid to fix the brokenness.

 BSPs. 
 And this suggested approach will make a separate kernel for this BSP.
 
 The common kernel has lot of drivers enabled. And very few of them will
be
 actually used on any particular BSP. Not using kernel modules for these
 many
 drivers will be insane.
 

I guess I need to understand the new model where creating an embedded
system that only includes what it needs and which therefore doesn't need
to be a module is considered insane.

So what you're saying is that not only does everything in an Intel BSP
need to be configured as m, but also that an Intel BSP can't touch the
kernel, not even configuration.


Well, perhaps we need to sync up on this. We have a goal/vision of
simplifying what is a lot of per-board BSPs where it isn't necessary.
Since we don't know how each BSP is going to be used, we find we're often
adding USB drivers, etc. to the kernel configurations. To avoid a huge
bzImage, we do these as modules wherever feasible. The Linux kernel has
excellent support for Intel Architecture, which makes pervasive use of
enumerable and self describing buses and devices - this makes it possible
to use general purpose images across multiple boards and generations of
CPUs. Since the use-case tends to have a lot to say about which drivers
are needed - and we don't know what the use case will be - we serve users
best, IMO, but providing a highly functional kernel out of the box, and
enable them to tailor it themselves if they need a minimal image. This in
turn simplifies our maintenance and support effort through the use of the
intel-common package arch for the Linux kernel.

This particular driver challenges that vision, and there will be others,
but I don't think it defeats it. Worst case we have to drop gma500 from
the intel common kernel and build emenlow as an independent BSP. For now,
the blacklist seems like a reasonable workaround to maintain the
advantages of the common kernel mechanism.

At least, that's my take on it.

Thoughts?

--
Darren


Tom

 Nitin
 
 
 
  Nitin
  
  
  
  Tom
  
   Fixes Bug:
   [YOCTO #6807]
   
   Signed-off-by: Nitin A Kamble nitin.a.kam...@intel.com
   ---
meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend | 3 +++
1 file changed, 3 insertions(+)
create mode 100644
 meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
   
   diff --git a/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
  b/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
   new file mode 100644
   index 000..56d8fcb
   --- /dev/null
   +++ b/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
   @@ -0,0 +1,3 @@
   +do_install_append () {
   +  echo blacklist gma500_gfx 
  ${D}${sysconfdir}/modprobe.d/prohibit_gma500_gfx.conf
   +}
  
  
  
 
 
 





-- 
Darren Hart
Intel Open Source Technology Center



-- 
___
meta-intel mailing list
meta-intel@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-intel


Re: [meta-intel] [Patch v2 00/11] machinesetuptool commits

2014-10-10 Thread Burton, Ross
On 10 October 2014 22:18, Darren Hart dvh...@linux.intel.com wrote:
 The primary issue with eliminating the defaults from intel-corei7-64 and
 providing the default via machinesetuptool, is we then make
 machinesetuptool a requirement for that BSP for basic functionality. That
 isn't acceptable in my opinion.

Agreed.  The BSP should have sane defaults, and if a particular user
wants to use machinesetup for a particular machine then that can
override the defaults.  But there should be sane (has keyboard, no
touchscreen) defaults for the intel BSP.

Ross
-- 
___
meta-intel mailing list
meta-intel@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-intel


Re: [meta-intel] [PATCH 1/3] crownbay-noemgd: disable the gma500_gfx module

2014-10-10 Thread Tom Zanussi
On Fri, 2014-10-10 at 14:14 -0700, Darren Hart wrote:
 On 10/10/14, 12:00, Tom Zanussi tom.zanu...@intel.com wrote:
 
 On Fri, 2014-10-10 at 12:46 -0500, Kamble, Nitin A wrote:
  
  On 10/10/14, 10:31 AM, Zanussi, Tom tom.zanu...@intel.com wrote:
  
  On Fri, 2014-10-10 at 12:25 -0500, Kamble, Nitin A wrote:
   
   On 10/10/14, 6:37 AM, Zanussi, Tom tom.zanu...@intel.com wrote:
   
   On Thu, 2014-10-09 at 15:11 -0700, nitin.a.kam...@intel.com wrote:
From: Nitin A Kamble nitin.a.kam...@intel.com

The gmx500 graphics driver does not work on this BSP, but it takes
the ownership of the graphics hardware at boot time, blocking
 other
drivers from using the graphics hardware.

Fix the issue by blacklisting the gma500_gfx kernel module in the
  kmod
configuration, so that it doesn't get loaded at boot time.

   
   Is this really the right way to do this?  It will only work if
   CONFIG_XXX=m.  If m-y at some point, the whole .bbappend becomes
   useless at best.
   
   That is why the gma500 is converted from y to m. And with the common
   kernel,
   It should be m anyway. If you have better way to solve you can share.
   
  
  Why not a config fragment that turns it off for that BSP?
  
  The more general question is whether the common kernel mandates
  everything be 'm' for this reason.
  
  Tom
  
  This will be going backwards. We are trying to consolidate kernel and
 
 What seems backwards to me is starting with a broken config and using a
 band-aid to fix the brokenness.
 
  BSPs. 
  And this suggested approach will make a separate kernel for this BSP.
  
  The common kernel has lot of drivers enabled. And very few of them will
 be
  actually used on any particular BSP. Not using kernel modules for these
  many
  drivers will be insane.
  
 
 I guess I need to understand the new model where creating an embedded
 system that only includes what it needs and which therefore doesn't need
 to be a module is considered insane.
 
 So what you're saying is that not only does everything in an Intel BSP
 need to be configured as m, but also that an Intel BSP can't touch the
 kernel, not even configuration.
 
 
 Well, perhaps we need to sync up on this. We have a goal/vision of
 simplifying what is a lot of per-board BSPs where it isn't necessary.
 Since we don't know how each BSP is going to be used, we find we're often
 adding USB drivers, etc. to the kernel configurations. To avoid a huge
 bzImage, we do these as modules wherever feasible. The Linux kernel has
 excellent support for Intel Architecture, which makes pervasive use of
 enumerable and self describing buses and devices - this makes it possible
 to use general purpose images across multiple boards and generations of
 CPUs. Since the use-case tends to have a lot to say about which drivers
 are needed - and we don't know what the use case will be - we serve users
 best, IMO, but providing a highly functional kernel out of the box, and
 enable them to tailor it themselves if they need a minimal image. This in
 turn simplifies our maintenance and support effort through the use of the
 intel-common package arch for the Linux kernel.
 
 This particular driver challenges that vision, and there will be others,
 but I don't think it defeats it. Worst case we have to drop gma500 from
 the intel common kernel and build emenlow as an independent BSP. For now,
 the blacklist seems like a reasonable workaround to maintain the
 advantages of the common kernel mechanism.
 
 At least, that's my take on it.
 
 Thoughts?
 

Right, so I guess what it boils down to is that the whole common-kernel
philosophy is just fundamentally at odds with the concept of a BSP,
which is what we have here.

I don't object to the goal of a common image for all Intel, etc, but my
point was that if we do have a BSP, it should be allowed to modify the
kernel as needed, and making use of config fragments to directly address
the root problem seems the simplest and most straightforward way to do
that.

If the assumption here is that a dedicated crownbay BSP is going away
soon, then I have no problem pulling in whatever expedient hack works on
the grounds that it's temporary.

Tom

 --
 Darren
 
 
 Tom
 
  Nitin
  
  
  
   Nitin
   
   
   
   Tom
   
Fixes Bug:
[YOCTO #6807]

Signed-off-by: Nitin A Kamble nitin.a.kam...@intel.com
---
 meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend | 3 +++
 1 file changed, 3 insertions(+)
 create mode 100644
  meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend

diff --git a/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
   b/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
new file mode 100644
index 000..56d8fcb
--- /dev/null
+++ b/meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend
@@ -0,0 +1,3 @@
+do_install_append () {
+echo blacklist gma500_gfx 
   ${D}${sysconfdir}/modprobe.d/prohibit_gma500_gfx.conf
+}
   
   
   
  
  
  
 
 
 

Re: [meta-intel] [Patch v2 00/11] machinesetuptool commits

2014-10-10 Thread Kamble, Nitin A


On 10/10/14, 2:18 PM, Darren Hart dvh...@linux.intel.com wrote:

On 10/10/14, 11:46, Kamble, Nitin A nitin.a.kam...@intel.com wrote:


On 10/10/14, 9:40 AM, Darren Hart dvh...@linux.intel.com wrote:


Another concern is the statement below about not allowing for a default
configuration. Like other recent changes to meta-intel, this should be
an
opt-in thing, and as such, the BSPs need to be able to provide defaults.
The intel-corei7-64 BSP works well as it is for a number of Intel
platforms, and people using those may prefer not to use the
machinesetuptool.

As mentioned earlier, it was needed for the reconfiguration of images.
The
target machine which is configured as a default target machine can be
used
for this purpose. Which makes the tool transparent to them. So I am not
seeing any significant issue here. I think ability to reconfigure an
image
is a great benefit for development and testing.

The primary issue with eliminating the defaults from intel-corei7-64 and
providing the default via machinesetuptool, is we then make
machinesetuptool a requirement for that BSP for basic functionality. That
isn't acceptable in my opinion.

So what is the proposal? Disable machinesetuptool by default, and enable
it if you need it?
 
Nitin


-- 
Darren Hart
Intel Open Source Technology Center




-- 
___
meta-intel mailing list
meta-intel@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-intel