Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2014-01-08 Thread Marc Kleine-Budde


Andrew Lunn and...@lunn.ch wrote:
 Not quite, as 3.11 comes with DT for the sheeva plug, but that DT
 lacks ethernet support.

Hi Marc

I've not tested it, but ethernet should work. Adding DT support to the
ethernet driver took time, so during the transition, we instantiated
ethernet using old style platform_driver.

If it really does not work, it is a bug, which i will fix and get put
into stable.

Feel free to ask me about such issues.

Sheeva Plug without DT works on 3.11, but there isn't any Ethernet with 3.11 
and appended DT. I'm in 3.12 with my proposed patches and everything is fine.

Marc


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2014-01-08 Thread Andrew Lunn
 Hi Marc
 
 I've not tested it, but ethernet should work. Adding DT support to the
 ethernet driver took time, so during the transition, we instantiated
 ethernet using old style platform_driver.
 
 If it really does not work, it is a bug, which i will fix and get put
 into stable.
 
 Feel free to ask me about such issues.
 

 Sheeva Plug without DT works on 3.11, but there isn't any Ethernet
 with 3.11 and appended DT. I'm in 3.12 with my proposed patches and
 everything is fine.

So i looked at 3.11. The code is there to start the ethernet on Sheeva
plug. So it is not obvious why it does not work.

If you are happy with 3.12, i won't debug further. But if 3.11 is of
interest, i can help figure out what is wrong.

   Andrew


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2014-01-08 Thread Andrew Lunn
 Not quite, as 3.11 comes with DT for the sheeva plug, but that DT
 lacks ethernet support.

Hi Marc

I've not tested it, but ethernet should work. Adding DT support to the
ethernet driver took time, so during the transition, we instantiated
ethernet using old style platform_driver.

If it really does not work, it is a bug, which i will fix and get put
into stable.

Feel free to ask me about such issues.

 Andrew


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-16 Thread Ian Campbell
On Sun, 2013-12-15 at 21:13 +0100, Marc Kleine-Budde wrote:
 On 12/06/2013 09:31 AM, Ian Campbell wrote:
 [...]
 
  This is because v3.11 ships with:
 
  /usr/lib/linux-image-3.11-2-kirkwood/kirkwood-sheevaplug.dtb
 
  But non-DT Sheeva support is still in the kernel, so non-DT Sheeva Plug
  is used with current flash-kernel and v3.11. Although v3.10 and v3.11
  are not Wheezy's kernels.
 
  Is 3.11+DTB actively broken though?
 
  v3.11+DT works on Sheeva Plug, just tested it.
  
  That's good. Do you know if v3.10 or earlier shipped a DT in the kernel
  package?
 
 I just noticed that the Ethernet is missing with v3.11+DT.

Hrm, that's rather unfortunate.

I suppose a field describing the minimum kernel version for dtb support
is the only way to go here. :-/ At least the linux-version tool is
available to simplify the logic.

 Ethernet support was added with v3.12-rc1~114^2~10^2~12. So probably
 don't want to use v3.11-DT on the Sheeva Plug.

Indeed not.

Ian.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-15 Thread Marc Kleine-Budde
On 12/06/2013 09:31 AM, Ian Campbell wrote:
[...]

 This is because v3.11 ships with:

 /usr/lib/linux-image-3.11-2-kirkwood/kirkwood-sheevaplug.dtb

 But non-DT Sheeva support is still in the kernel, so non-DT Sheeva Plug
 is used with current flash-kernel and v3.11. Although v3.10 and v3.11
 are not Wheezy's kernels.

 Is 3.11+DTB actively broken though?

 v3.11+DT works on Sheeva Plug, just tested it.
 
 That's good. Do you know if v3.10 or earlier shipped a DT in the kernel
 package?

I just noticed that the Ethernet is missing with v3.11+DT.

Ethernet support was added with v3.12-rc1~114^2~10^2~12. So probably
don't want to use v3.11-DT on the Sheeva Plug.

Marc




signature.asc
Description: OpenPGP digital signature


Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-07 Thread Christian PERRIER
Quoting Marc Kleine-Budde (m...@blackshift.org):
 Package: flash-kernel
 Version: 3.11
 Severity: normal
 Tags: patch
 
 Hello, I've two patches to support DT based kernel on Sheeva
 Plug. These patches are needed to boot 3.12 (which is currently in
 experimental).

I actually know nearly nothing about these kind of things but it seems
to me that we should be able to commi tthis without a big risk to
break anything. Cyril, objections?




signature.asc
Description: Digital signature


Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-07 Thread Cyril Brulebois
Christian PERRIER bubu...@debian.org (2013-12-07):
 Quoting Marc Kleine-Budde (m...@blackshift.org):
  Package: flash-kernel
  Version: 3.11
  Severity: normal
  Tags: patch
  
  Hello, I've two patches to support DT based kernel on Sheeva
  Plug. These patches are needed to boot 3.12 (which is currently in
  experimental).
 
 I actually know nearly nothing about these kind of things but it seems
 to me that we should be able to commi tthis without a big risk to
 break anything. Cyril, objections?

I'd rather see Martin or Ian come to a conclusion on their own, given
the length of the thread already, and the DT-specific subtleties.

Mraw,
KiBi.


signature.asc
Description: Digital signature


Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-06 Thread Ian Campbell
On Thu, 2013-12-05 at 18:42 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 06:01 PM, Ian Campbell wrote:
  On Thu, 2013-12-05 at 13:39 +0100, Marc Kleine-Budde wrote:
  On 12/05/2013 01:15 PM, Ian Campbell wrote:
  On Thu, 2013-12-05 at 13:04 +0100, Marc Kleine-Budde wrote:
  On 12/05/2013 12:57 PM, Ian Campbell wrote:
  On Thu, 2013-12-05 at 12:46 +0100, Marc Kleine-Budde wrote:
  On 12/05/2013 12:34 PM, Martin Michlmayr wrote:
  * Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
  That's no option, as non DT Sheeva Plug support has been removed from
  the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:
 
  ffbc506 ARM: kirkwood: remove support for legacy booting of 
  Sheevaplug
 
  Interesting.  I thought they promised not to remove non-DT support for
  existing devices.
 
  I personally don't mind, if it's removed once the DT works properly.
 
  Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
  add a check to flash-kernel whether DT is required or not.  i.e. that
  flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
  but not on previous kernels.
 
  Yes, sounds like the way to go. Otherwise you have to tie certain
  flash-kernel versions to the non-DT and DT kernels. This will probably
  not scale when more no-DT board are removed from the kernel.
 
  Where should this information go? What about adding another field to
  all.db which limits an entry to certain kernel versions? Something like
  this:
 
  I think it would be sufficient to have a field marking the DTB as
  optional and have f-k only do the append if there is a dtb present in
  the DTS directory (/usr/lib/linux-X.Y/whatever) for the version it is
  handling. If the kernel needs a DTB but doesn't ship one, well ,that's a
  bug in the kernel (until we get to the point of burning DTBs into
  firmware, but lets not worry about that now!).
 
  ...or when the DT sources will be move into a separate repository.
 
  Indeed.
 
  Actually, now that I think about it -- a non-DT aware kernel just
  shouldn't care if you append a DT to it, it won't ever go looking. It's
  probably safe to just append it unconditionally.
 
  Yes, should be safe.
 
  Which is what you did, so we've come full circle, sorry for the
  distraction.
 
  It's good to talk about the implications. If we want to handle
  downgrading of kernels with an updated flash-kernel, I think, that
  cannot be done without an additional Kernel-Version field.
 
  This is because v3.11 ships with:
 
  /usr/lib/linux-image-3.11-2-kirkwood/kirkwood-sheevaplug.dtb
 
  But non-DT Sheeva support is still in the kernel, so non-DT Sheeva Plug
  is used with current flash-kernel and v3.11. Although v3.10 and v3.11
  are not Wheezy's kernels.
  
  Is 3.11+DTB actively broken though?
 
 v3.11+DT works on Sheeva Plug, just tested it.

That's good. Do you know if v3.10 or earlier shipped a DT in the kernel
package?

 I was thinking of the following scenario:
 
 I have installed current flash-kernel (without DT support) and kernel
 v3.11. Then the new flash-kernel with
 append-DT-if-present-in-the-Kernel-package feature is released together
 with a new DT only kernel (=v3.12). I upgrade, because I want to have
 the shiny new kernel.
 
 For whatever reason I want to downgrade to v3.11, then I end up with
 v3.11 with DT, because the flash-kernel is still the new one.

Right, this is the scenario I am worried about.

 The system does not behave as I expected. I downgraded to the same
 kernel but now the DT Sheeva Plug is booted.

Ideally v3.11+DT would work well enough that the user wouldn't care
about the difference. even if not I think so long as v3.11+DT works well
enough to be able to manually fix things (e.g. by downgrading f-k) then
this would be an acceptable trade-off to support such partial upgrades.

 Although the bootloader sets the ARCH number, an attached DT seems to be
 preferred.

That is what I would expect, yes.

  I suppose it would be nice to just check that the Wheezy kernel doesn't
  complain about or get confused by the appended DTB. Can you check that?
 
  I don't have physical access to that Sheeva Plug.
  
  Hrm, this would be something which would be good to try somewhere.
 
 On Wheezy there is no Sheevaplug DTB to attach...

Oh yes, of course.

  Now I think of it the Wheezy kirkwood kernel did have DT and
  APPENDED_DTB support enabled, in order to support dreamplugs.
 
 http://packages.debian.org/wheezy/armel/linux-image-3.2.0-4-kirkwood/filelist
 
 Wheezy has two dtb files:
 
 /usr/lib/linux-image-3.2.0-4-kirkwood/kirkwood-dreamplug.dtb
 /usr/lib/linux-image-3.2.0-4-kirkwood/kirkwood-iconnect.dtb
 
  I have a feeling that would mean that it wouldn't boot if you appended a
  dtb to it. Which would mean we do have to think about versioned checks
  or something.
 
 Just stating the obvious: The Sheeva Plug probably wouldn't boot if I
 attach a dreamplug dtb to it. :)

Right, I was thinking/worrying that it won't boot if you 

Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-06 Thread Marc Kleine-Budde
On 12/06/2013 09:31 AM, Ian Campbell wrote:
 It's good to talk about the implications. If we want to handle
 downgrading of kernels with an updated flash-kernel, I think, that
 cannot be done without an additional Kernel-Version field.

 This is because v3.11 ships with:

 /usr/lib/linux-image-3.11-2-kirkwood/kirkwood-sheevaplug.dtb

 But non-DT Sheeva support is still in the kernel, so non-DT Sheeva Plug
 is used with current flash-kernel and v3.11. Although v3.10 and v3.11
 are not Wheezy's kernels.

 Is 3.11+DTB actively broken though?

 v3.11+DT works on Sheeva Plug, just tested it.
 
 That's good. Do you know if v3.10 or earlier shipped a DT in the kernel
 package?

There is no DT for Sheeva Plug in Debian's v3.10, but 25 dtb in total.

 I was thinking of the following scenario:

 I have installed current flash-kernel (without DT support) and kernel
 v3.11. Then the new flash-kernel with
 append-DT-if-present-in-the-Kernel-package feature is released together
 with a new DT only kernel (=v3.12). I upgrade, because I want to have
 the shiny new kernel.

 For whatever reason I want to downgrade to v3.11, then I end up with
 v3.11 with DT, because the flash-kernel is still the new one.
 
 Right, this is the scenario I am worried about.
 
 The system does not behave as I expected. I downgraded to the same
 kernel but now the DT Sheeva Plug is booted.
 
 Ideally v3.11+DT would work well enough that the user wouldn't care
 about the difference. even if not I think so long as v3.11+DT works well
 enough to be able to manually fix things (e.g. by downgrading f-k) then
 this would be an acceptable trade-off to support such partial upgrades.

Yes works for me.

 Although the bootloader sets the ARCH number, an attached DT seems to be
 preferred.
 
 That is what I would expect, yes.
 
 I suppose it would be nice to just check that the Wheezy kernel doesn't
 complain about or get confused by the appended DTB. Can you check that?

 I don't have physical access to that Sheeva Plug.

 Hrm, this would be something which would be good to try somewhere.

 On Wheezy there is no Sheevaplug DTB to attach...
 
 Oh yes, of course.
 
 Now I think of it the Wheezy kirkwood kernel did have DT and
 APPENDED_DTB support enabled, in order to support dreamplugs.

 http://packages.debian.org/wheezy/armel/linux-image-3.2.0-4-kirkwood/filelist

 Wheezy has two dtb files:

 /usr/lib/linux-image-3.2.0-4-kirkwood/kirkwood-dreamplug.dtb
 /usr/lib/linux-image-3.2.0-4-kirkwood/kirkwood-iconnect.dtb

 I have a feeling that would mean that it wouldn't boot if you appended a
 dtb to it. Which would mean we do have to think about versioned checks
 or something.

 Just stating the obvious: The Sheeva Plug probably wouldn't boot if I
 attach a dreamplug dtb to it. :)
 
 Right, I was thinking/worrying that it won't boot if you attach any DTB
 to it, including a newer one for the shivaplug. But of course f-k
 wouldn't ever do that.
 
 So the only concern is intermediate kernel versions which have a DT file
 but prefer non-DT operation. As I say I think so long as it boots well
 enough to allow repair then this is ok.

In Debian, v3.11 is the first kernel that ships with a Sheeva Plug DT
and that works for me.

 Do shivaplugs typically provide u-boot console access as standard or
 does that require soldering and/or cracking the case open?

No, just plug in a Mini USB Cable and you have a serial console (and a
JTAG for debricking via openocd).

Marc



signature.asc
Description: OpenPGP digital signature


Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Marc Kleine-Budde
On 12/05/2013 11:43 AM, Martin Michlmayr wrote:
 * Marc Kleine-Budde m...@blackshift.org [2013-12-04 14:23]:
 Hello, I've two patches to support DT based kernel on Sheeva
 Plug. These patches are needed to boot 3.12 (which is currently in
 experimental).
 
 When I spoke to Ian Campbell recently, I got the impression that the
 plan was to keep devices that were not using DT in wheezy as non-DT
 in future releases.  So maybe the kernel config for 3.12 should be
 changed?

That's no option, as non DT Sheeva Plug support has been removed from
the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:

ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug

This patch was first released on mainline linux in v3.12-rc1.

Marc



signature.asc
Description: OpenPGP digital signature


Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Martin Michlmayr
* Marc Kleine-Budde m...@blackshift.org [2013-12-04 14:23]:
 Hello, I've two patches to support DT based kernel on Sheeva
 Plug. These patches are needed to boot 3.12 (which is currently in
 experimental).

When I spoke to Ian Campbell recently, I got the impression that the
plan was to keep devices that were not using DT in wheezy as non-DT
in future releases.  So maybe the kernel config for 3.12 should be
changed?

-- 
Martin Michlmayr
http://www.cyrius.com/


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Martin Michlmayr
* Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
 That's no option, as non DT Sheeva Plug support has been removed from
 the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:
 
 ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug

Interesting.  I thought they promised not to remove non-DT support for
existing devices.

Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
add a check to flash-kernel whether DT is required or not.  i.e. that
flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
but not on previous kernels.

-- 
Martin Michlmayr
http://www.cyrius.com/


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Ian Campbell
On Thu, 2013-12-05 at 11:34 +, Martin Michlmayr wrote:
 * Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
  That's no option, as non DT Sheeva Plug support has been removed from
  the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:
  
  ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug
 
 Interesting.  I thought they promised not to remove non-DT support for
 existing devices.

Yes :-/

 Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
 add a check to flash-kernel whether DT is required or not.  i.e. that
 flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
 but not on previous kernels.

That was my thought -- whether flash-kernel would ignore the DT if it
wasn't present in the kernel package or if it would fail?

We want to support upgrading flash-kernel without upgrading the kernel,
or if you want to downgrade your kernel for some reason, so it needs to
cope gracefully.

We probably do need some sort of relationship between the kernel image
and f-k though such that f-k gets upgraded at the same time. Since we
don't have a dependency (because some platforms don't need/use f-k) what
should that relationship be? Does a Breaks do the trick?

Ian.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Marc Kleine-Budde
On 12/05/2013 12:34 PM, Martin Michlmayr wrote:
 * Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
 That's no option, as non DT Sheeva Plug support has been removed from
 the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:

 ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug
 
 Interesting.  I thought they promised not to remove non-DT support for
 existing devices.

I personally don't mind, if it's removed once the DT works properly.

 Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
 add a check to flash-kernel whether DT is required or not.  i.e. that
 flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
 but not on previous kernels.

Yes, sounds like the way to go. Otherwise you have to tie certain
flash-kernel versions to the non-DT and DT kernels. This will probably
not scale when more no-DT board are removed from the kernel.

Where should this information go? What about adding another field to
all.db which limits an entry to certain kernel versions? Something like
this:

Machine: Marvell SheevaPlug Reference Board
Kernel-Flavors: kirkwood
Kernel-Version:  3.12
U-Boot-Kernel-Address: 0x8000
U-Boot-Initrd-Address: 0x0
Boot-Kernel-Path: /boot/uImage
Boot-Initrd-Path: /boot/uInitrd
Required-Packages: u-boot-tools
Bootloader-Sets-Root: no

Machine: Marvell SheevaPlug Reference Board
Kernel-Flavors: kirkwood
Kernel-Version: = 3.12
DTB-Id: kirkwood-sheevaplug.dtb
DTB-Append: yes
U-Boot-Kernel-Address: 0x8000
U-Boot-Initrd-Address: 0x0
Boot-Kernel-Path: /boot/uImage
Boot-Initrd-Path: /boot/uInitrd
Boot-DTB-Path: dtb
Required-Packages: u-boot-tools
Bootloader-Sets-Root: no

Marc




signature.asc
Description: OpenPGP digital signature


Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Ian Campbell
On Thu, 2013-12-05 at 12:46 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 12:34 PM, Martin Michlmayr wrote:
  * Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
  That's no option, as non DT Sheeva Plug support has been removed from
  the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:
 
  ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug
  
  Interesting.  I thought they promised not to remove non-DT support for
  existing devices.
 
 I personally don't mind, if it's removed once the DT works properly.
 
  Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
  add a check to flash-kernel whether DT is required or not.  i.e. that
  flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
  but not on previous kernels.
 
 Yes, sounds like the way to go. Otherwise you have to tie certain
 flash-kernel versions to the non-DT and DT kernels. This will probably
 not scale when more no-DT board are removed from the kernel.
 
 Where should this information go? What about adding another field to
 all.db which limits an entry to certain kernel versions? Something like
 this:

I think it would be sufficient to have a field marking the DTB as
optional and have f-k only do the append if there is a dtb present in
the DTS directory (/usr/lib/linux-X.Y/whatever) for the version it is
handling. If the kernel needs a DTB but doesn't ship one, well ,that's a
bug in the kernel (until we get to the point of burning DTBs into
firmware, but lets not worry about that now!).

I take it from your original patches that the machine ID differs with DT
vs non as well?

 
 Machine: Marvell SheevaPlug Reference Board
 Kernel-Flavors: kirkwood
 Kernel-Version:  3.12
 U-Boot-Kernel-Address: 0x8000
 U-Boot-Initrd-Address: 0x0
 Boot-Kernel-Path: /boot/uImage
 Boot-Initrd-Path: /boot/uInitrd
 Required-Packages: u-boot-tools
 Bootloader-Sets-Root: no
 
 Machine: Marvell SheevaPlug Reference Board
 Kernel-Flavors: kirkwood
 Kernel-Version: = 3.12
 DTB-Id: kirkwood-sheevaplug.dtb
 DTB-Append: yes
 U-Boot-Kernel-Address: 0x8000
 U-Boot-Initrd-Address: 0x0
 Boot-Kernel-Path: /boot/uImage
 Boot-Initrd-Path: /boot/uInitrd
 Boot-DTB-Path: dtb
 Required-Packages: u-boot-tools
 Bootloader-Sets-Root: no
 
 Marc
 
 


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Marc Kleine-Budde
On 12/05/2013 12:57 PM, Ian Campbell wrote:
 On Thu, 2013-12-05 at 12:46 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 12:34 PM, Martin Michlmayr wrote:
 * Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
 That's no option, as non DT Sheeva Plug support has been removed from
 the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:

 ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug

 Interesting.  I thought they promised not to remove non-DT support for
 existing devices.

 I personally don't mind, if it's removed once the DT works properly.

 Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
 add a check to flash-kernel whether DT is required or not.  i.e. that
 flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
 but not on previous kernels.

 Yes, sounds like the way to go. Otherwise you have to tie certain
 flash-kernel versions to the non-DT and DT kernels. This will probably
 not scale when more no-DT board are removed from the kernel.

 Where should this information go? What about adding another field to
 all.db which limits an entry to certain kernel versions? Something like
 this:
 
 I think it would be sufficient to have a field marking the DTB as
 optional and have f-k only do the append if there is a dtb present in
 the DTS directory (/usr/lib/linux-X.Y/whatever) for the version it is
 handling. If the kernel needs a DTB but doesn't ship one, well ,that's a
 bug in the kernel (until we get to the point of burning DTBs into
 firmware, but lets not worry about that now!).

...or when the DT sources will be move into a separate repository.

 I take it from your original patches that the machine ID differs with DT
 vs non as well?

Yes, this is why the second patch adds another entry.

Marc



signature.asc
Description: OpenPGP digital signature


Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Ian Campbell
On Thu, 2013-12-05 at 13:04 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 12:57 PM, Ian Campbell wrote:
  On Thu, 2013-12-05 at 12:46 +0100, Marc Kleine-Budde wrote:
  On 12/05/2013 12:34 PM, Martin Michlmayr wrote:
  * Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
  That's no option, as non DT Sheeva Plug support has been removed from
  the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:
 
  ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug
 
  Interesting.  I thought they promised not to remove non-DT support for
  existing devices.
 
  I personally don't mind, if it's removed once the DT works properly.
 
  Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
  add a check to flash-kernel whether DT is required or not.  i.e. that
  flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
  but not on previous kernels.
 
  Yes, sounds like the way to go. Otherwise you have to tie certain
  flash-kernel versions to the non-DT and DT kernels. This will probably
  not scale when more no-DT board are removed from the kernel.
 
  Where should this information go? What about adding another field to
  all.db which limits an entry to certain kernel versions? Something like
  this:
  
  I think it would be sufficient to have a field marking the DTB as
  optional and have f-k only do the append if there is a dtb present in
  the DTS directory (/usr/lib/linux-X.Y/whatever) for the version it is
  handling. If the kernel needs a DTB but doesn't ship one, well ,that's a
  bug in the kernel (until we get to the point of burning DTBs into
  firmware, but lets not worry about that now!).
 
 ...or when the DT sources will be move into a separate repository.

Indeed.

Actually, now that I think about it -- a non-DT aware kernel just
shouldn't care if you append a DT to it, it won't ever go looking. It's
probably safe to just append it unconditionally.

Which is what you did, so we've come full circle, sorry for the
distraction.

I suppose it would be nice to just check that the Wheezy kernel doesn't
complain about or get confused by the appended DTB. Can you check that?

Ian.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Marc Kleine-Budde
On 12/05/2013 01:15 PM, Ian Campbell wrote:
 On Thu, 2013-12-05 at 13:04 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 12:57 PM, Ian Campbell wrote:
 On Thu, 2013-12-05 at 12:46 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 12:34 PM, Martin Michlmayr wrote:
 * Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
 That's no option, as non DT Sheeva Plug support has been removed from
 the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:

 ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug

 Interesting.  I thought they promised not to remove non-DT support for
 existing devices.

 I personally don't mind, if it's removed once the DT works properly.

 Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
 add a check to flash-kernel whether DT is required or not.  i.e. that
 flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
 but not on previous kernels.

 Yes, sounds like the way to go. Otherwise you have to tie certain
 flash-kernel versions to the non-DT and DT kernels. This will probably
 not scale when more no-DT board are removed from the kernel.

 Where should this information go? What about adding another field to
 all.db which limits an entry to certain kernel versions? Something like
 this:

 I think it would be sufficient to have a field marking the DTB as
 optional and have f-k only do the append if there is a dtb present in
 the DTS directory (/usr/lib/linux-X.Y/whatever) for the version it is
 handling. If the kernel needs a DTB but doesn't ship one, well ,that's a
 bug in the kernel (until we get to the point of burning DTBs into
 firmware, but lets not worry about that now!).

 ...or when the DT sources will be move into a separate repository.
 
 Indeed.
 
 Actually, now that I think about it -- a non-DT aware kernel just
 shouldn't care if you append a DT to it, it won't ever go looking. It's
 probably safe to just append it unconditionally.

Yes, should be safe.

 Which is what you did, so we've come full circle, sorry for the
 distraction.

It's good to talk about the implications. If we want to handle
downgrading of kernels with an updated flash-kernel, I think, that
cannot be done without an additional Kernel-Version field.

This is because v3.11 ships with:

/usr/lib/linux-image-3.11-2-kirkwood/kirkwood-sheevaplug.dtb

But non-DT Sheeva support is still in the kernel, so non-DT Sheeva Plug
is used with current flash-kernel and v3.11. Although v3.10 and v3.11
are not Wheezy's kernels.

 I suppose it would be nice to just check that the Wheezy kernel doesn't
 complain about or get confused by the appended DTB. Can you check that?

I don't have physical access to that Sheeva Plug.

Marc



signature.asc
Description: OpenPGP digital signature


Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Ian Campbell
On Thu, 2013-12-05 at 13:39 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 01:15 PM, Ian Campbell wrote:
  On Thu, 2013-12-05 at 13:04 +0100, Marc Kleine-Budde wrote:
  On 12/05/2013 12:57 PM, Ian Campbell wrote:
  On Thu, 2013-12-05 at 12:46 +0100, Marc Kleine-Budde wrote:
  On 12/05/2013 12:34 PM, Martin Michlmayr wrote:
  * Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
  That's no option, as non DT Sheeva Plug support has been removed from
  the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:
 
  ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug
 
  Interesting.  I thought they promised not to remove non-DT support for
  existing devices.
 
  I personally don't mind, if it's removed once the DT works properly.
 
  Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
  add a check to flash-kernel whether DT is required or not.  i.e. that
  flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
  but not on previous kernels.
 
  Yes, sounds like the way to go. Otherwise you have to tie certain
  flash-kernel versions to the non-DT and DT kernels. This will probably
  not scale when more no-DT board are removed from the kernel.
 
  Where should this information go? What about adding another field to
  all.db which limits an entry to certain kernel versions? Something like
  this:
 
  I think it would be sufficient to have a field marking the DTB as
  optional and have f-k only do the append if there is a dtb present in
  the DTS directory (/usr/lib/linux-X.Y/whatever) for the version it is
  handling. If the kernel needs a DTB but doesn't ship one, well ,that's a
  bug in the kernel (until we get to the point of burning DTBs into
  firmware, but lets not worry about that now!).
 
  ...or when the DT sources will be move into a separate repository.
  
  Indeed.
  
  Actually, now that I think about it -- a non-DT aware kernel just
  shouldn't care if you append a DT to it, it won't ever go looking. It's
  probably safe to just append it unconditionally.
 
 Yes, should be safe.
 
  Which is what you did, so we've come full circle, sorry for the
  distraction.
 
 It's good to talk about the implications. If we want to handle
 downgrading of kernels with an updated flash-kernel, I think, that
 cannot be done without an additional Kernel-Version field.
 
 This is because v3.11 ships with:
 
 /usr/lib/linux-image-3.11-2-kirkwood/kirkwood-sheevaplug.dtb
 
 But non-DT Sheeva support is still in the kernel, so non-DT Sheeva Plug
 is used with current flash-kernel and v3.11. Although v3.10 and v3.11
 are not Wheezy's kernels.

Is 3.11+DTB actively broken though?

  I suppose it would be nice to just check that the Wheezy kernel doesn't
  complain about or get confused by the appended DTB. Can you check that?
 
 I don't have physical access to that Sheeva Plug.

Hrm, this would be something which would be good to try somewhere.

Now I think of it the Wheezy kirkwood kernel did have DT and
APPENDED_DTB support enabled, in order to support dreamplugs.

I have a feeling that would mean that it wouldn't boot if you appended a
dtb to it. Which would mean we do have to think about versioned checks
or something.

Ian.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-05 Thread Marc Kleine-Budde
On 12/05/2013 06:01 PM, Ian Campbell wrote:
 On Thu, 2013-12-05 at 13:39 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 01:15 PM, Ian Campbell wrote:
 On Thu, 2013-12-05 at 13:04 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 12:57 PM, Ian Campbell wrote:
 On Thu, 2013-12-05 at 12:46 +0100, Marc Kleine-Budde wrote:
 On 12/05/2013 12:34 PM, Martin Michlmayr wrote:
 * Marc Kleine-Budde m...@blackshift.org [2013-12-05 11:49]:
 That's no option, as non DT Sheeva Plug support has been removed from
 the kernel in ffbc50663b69462adc9d97b93b6b92c4fe74b94c:

 ffbc506 ARM: kirkwood: remove support for legacy booting of Sheevaplug

 Interesting.  I thought they promised not to remove non-DT support for
 existing devices.

 I personally don't mind, if it's removed once the DT works properly.

 Anyway, Marc, so thanks for your patch.  I wonder if it makes sense to
 add a check to flash-kernel whether DT is required or not.  i.e. that
 flash-kernel would append the DT blob on 3.12+ kernels on SheevaPlug
 but not on previous kernels.

 Yes, sounds like the way to go. Otherwise you have to tie certain
 flash-kernel versions to the non-DT and DT kernels. This will probably
 not scale when more no-DT board are removed from the kernel.

 Where should this information go? What about adding another field to
 all.db which limits an entry to certain kernel versions? Something like
 this:

 I think it would be sufficient to have a field marking the DTB as
 optional and have f-k only do the append if there is a dtb present in
 the DTS directory (/usr/lib/linux-X.Y/whatever) for the version it is
 handling. If the kernel needs a DTB but doesn't ship one, well ,that's a
 bug in the kernel (until we get to the point of burning DTBs into
 firmware, but lets not worry about that now!).

 ...or when the DT sources will be move into a separate repository.

 Indeed.

 Actually, now that I think about it -- a non-DT aware kernel just
 shouldn't care if you append a DT to it, it won't ever go looking. It's
 probably safe to just append it unconditionally.

 Yes, should be safe.

 Which is what you did, so we've come full circle, sorry for the
 distraction.

 It's good to talk about the implications. If we want to handle
 downgrading of kernels with an updated flash-kernel, I think, that
 cannot be done without an additional Kernel-Version field.

 This is because v3.11 ships with:

 /usr/lib/linux-image-3.11-2-kirkwood/kirkwood-sheevaplug.dtb

 But non-DT Sheeva support is still in the kernel, so non-DT Sheeva Plug
 is used with current flash-kernel and v3.11. Although v3.10 and v3.11
 are not Wheezy's kernels.
 
 Is 3.11+DTB actively broken though?

v3.11+DT works on Sheeva Plug, just tested it.

I was thinking of the following scenario:

I have installed current flash-kernel (without DT support) and kernel
v3.11. Then the new flash-kernel with
append-DT-if-present-in-the-Kernel-package feature is released together
with a new DT only kernel (=v3.12). I upgrade, because I want to have
the shiny new kernel.

For whatever reason I want to downgrade to v3.11, then I end up with
v3.11 with DT, because the flash-kernel is still the new one.

The system does not behave as I expected. I downgraded to the same
kernel but now the DT Sheeva Plug is booted.

Although the bootloader sets the ARCH number, a attached DT seems to be
preferred.

 I suppose it would be nice to just check that the Wheezy kernel doesn't
 complain about or get confused by the appended DTB. Can you check that?

 I don't have physical access to that Sheeva Plug.
 
 Hrm, this would be something which would be good to try somewhere.

On Wheezy there is no Sheevaplug DTB to attach...

 Now I think of it the Wheezy kirkwood kernel did have DT and
 APPENDED_DTB support enabled, in order to support dreamplugs.

http://packages.debian.org/wheezy/armel/linux-image-3.2.0-4-kirkwood/filelist

Wheezy has two dtb files:

/usr/lib/linux-image-3.2.0-4-kirkwood/kirkwood-dreamplug.dtb
/usr/lib/linux-image-3.2.0-4-kirkwood/kirkwood-iconnect.dtb

 I have a feeling that would mean that it wouldn't boot if you appended a
 dtb to it. Which would mean we do have to think about versioned checks
 or something.

Just stating the obvious: The Sheeva Plug probably wouldn't boot if I
attach a dreamplug dtb to it. :)

Marc



signature.asc
Description: OpenPGP digital signature


Bug#731345: flash-kernel: add support for DT based kernels on Sheeva Plug

2013-12-04 Thread Marc Kleine-Budde
Package: flash-kernel
Version: 3.11
Severity: normal
Tags: patch

Hello, I've two patches to support DT based kernel on Sheeva
Plug. These patches are needed to boot 3.12 (which is currently in
experimental).

regards,
Marc

-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (700, 'testing'), (70, 'experimental'), (70, 'unstable')
Architecture: armel (armv5tel)

Kernel: Linux 3.12-trunk-kirkwood
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages flash-kernel depends on:
ii  devio1.2-1+b1
ii  initramfs-tools  0.115
ii  linux-base   3.5

flash-kernel recommends no packages.

Versions of packages flash-kernel suggests:
ii  u-boot-tools  2013.01.01-4

-- no debconf information
From 4fb0373e4596a5efcbc086b7e127096efd36fd7c Mon Sep 17 00:00:00 2001
From: Marc Kleine-Budde m...@pengutronix.de
Date: Wed, 4 Dec 2013 13:59:40 +0100
Subject: [PATCH 1/2] all.db: add dtb support for Sheeva Plug

This patch adds support to upgrade from a non DT based kernel
(linux-image-3.11-2-kirkwood) or older to a DT based one (i.e.
linux-image-3.12-trunk-kirkwood which is currently in experimental).
---
 db/all.db | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/db/all.db b/db/all.db
index 76e99fd..55db11a 100644
--- a/db/all.db
+++ b/db/all.db
@@ -250,10 +250,13 @@ Bootloader-Sets-Root: no
 
 Machine: Marvell SheevaPlug Reference Board
 Kernel-Flavors: kirkwood
+DTB-Id: kirkwood-sheevaplug.dtb
+DTB-Append: yes
 U-Boot-Kernel-Address: 0x8000
 U-Boot-Initrd-Address: 0x0
 Boot-Kernel-Path: /boot/uImage
 Boot-Initrd-Path: /boot/uInitrd
+Boot-DTB-Path: dtb
 Required-Packages: u-boot-tools
 Bootloader-Sets-Root: no
 
-- 
1.8.5.rc0

From 2595607efde8338d35863e00eb60d409db050ec2 Mon Sep 17 00:00:00 2001
From: Marc Kleine-Budde m...@pengutronix.de
Date: Wed, 4 Dec 2013 14:03:55 +0100
Subject: [PATCH 2/2] all.db: add section for DT based Sheeva Plug

This patch is needed to let flash-kernel recognize a DT based Sheeva Plug.
---
 db/all.db | 12 
 1 file changed, 12 insertions(+)

diff --git a/db/all.db b/db/all.db
index 55db11a..3e060e4 100644
--- a/db/all.db
+++ b/db/all.db
@@ -248,6 +248,18 @@ Boot-Initrd-Path: /boot/uInitrd
 Required-Packages: u-boot-tools
 Bootloader-Sets-Root: no
 
+Machine: Globalscale Technologies SheevaPlug
+Kernel-Flavors: kirkwood
+DTB-Id: kirkwood-sheevaplug.dtb
+DTB-Append: yes
+U-Boot-Kernel-Address: 0x8000
+U-Boot-Initrd-Address: 0x0
+Boot-Kernel-Path: /boot/uImage
+Boot-Initrd-Path: /boot/uInitrd
+Boot-DTB-Path: dtb
+Required-Packages: u-boot-tools
+Bootloader-Sets-Root: no
+
 Machine: Marvell SheevaPlug Reference Board
 Kernel-Flavors: kirkwood
 DTB-Id: kirkwood-sheevaplug.dtb
-- 
1.8.5.rc0