All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [RFC] update lib_package.bbclass
From: Koen Kooi @ 2010-10-20  7:47 UTC (permalink / raw)
  To: openembedded-devel
In-Reply-To: <4CBDDD0D.1080303@opendreambox.org>

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 19-10-10 20:01, Andreas Oberritter wrote:
> On 10/18/2010 01:41 PM, Andreas Oberritter wrote:
>> On 10/18/2010 12:48 PM, Koen Kooi wrote:
>>>
>>> Well, .a files are supposed to go into -static, not into -dev.
>>>
> 
> [...]
> 
>> The problem was that I trusted lib_package to do the right thing. So the
>> real fix would be to add a -static package to lib_package.bbclass and to
>> add RDEPENDS_${PN}-static += "${PN}-dev" somewhere, because static libs
>> don't make much sense without develompent headers, right?
>>
>> Of course, this would create a different problem with upgrades, but I
>> would suspect that the number of users of static libraries on their
>> target machines is relatively small and, because a disappearing static
>> library doesn't create runtime problems, the installation of a new
>> -static package wouldn't impose a huge burden to the user.
>>
>> In case this solution was accepted: What's the policy for changing files
>> like lib_package.bbclass, in order to trigger an update of all relevant
>> packages? To bump every single PR?
> 
> I looked deeper into lib_package.bbclass and its history and I saw that
> it wasn't updated very often during the last years. It still uses
> hardcoded paths and doesn't include some files which would get packaged
> without lib_package.bbclass.
> 
> What lib_package.bbclass does now, compared to the defaults from
> bitbake.conf:
> 
> 1.) It adds ${libdir}/*.a and /lib/*.a to FILES_${PN}-dev.
> 
> 2.) It adds ${bindir}/*-config to FILES_${PN}-dev.
> 
> 3.) It creates an additional package ${PN}-bin, which contains all other
> executables: ${bindir}/* ${sbindir}/* /bin/* /sbin/*
> 
> 4.) It doesn't package any of the following:
>             ${datadir}/pixmaps ${datadir}/applications \
>             ${datadir}/idl ${datadir}/omf ${datadir}/sounds \
>             ${libdir}/bonobo/servers
> 
> In f624db1d3c7de3fcb3a9e76d388a8f9f8fedcf5c, Koen introduced
> ${PN}-static packages, but lib_package.bbclass has not been updated
> since then, which was one year ago.
> 
> Although it packages ${bindir}/*-config into FILES_${PN}-dev, it does
> not include the required mangling applied by binconfig.bbclass. I think
> that's wrong and just causes unnecessary confusion. IMO, lib_package
> should either inherit binconfig or not, but leave FILES_${PN}-dev
> untouched in any case.
> 
> Leaving FILES_${PN}-dev untouched would also allow lib_package to
> automatically inherit some updates from bitbake.conf and to create
> non-empty ${PN}-static packages.
> 
> I don't know whether #4 should be changed or whether those directories
> were left out on purpose.
> 
> So, my current proposal looks like this:
> 
> -
> inherit binconfig	# ... or not
> 
> PACKAGES += "${PN}-bin"
> 
> FILES_${PN} = "${libexecdir}/* ${libdir}/lib*${SOLIBS} \
>             ${sysconfdir} ${sharedstatedir} ${localstatedir} \
>             ${base_libdir}/*${SOLIBS} \
>             ${datadir}/${PN} ${libdir}/${PN}/*"
> 
> FILES_${PN}-bin = "${bindir}/* ${sbindir}/* \
>                 ${base_bindir}/* ${base_sbindir}/*"
> -
> 

How about this one:

inherit binconfig

PACKAGES =+ "${PN}-bin"
FILES_${PN}-bin = "${bindir}/* ${sbindir}/* \
                   ${base_bindir}* ${base_sbindir}/*"


Does that work for you?

regards,

Koen

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFMvp6FMkyGM64RGpERAmsTAJ0YDhVIcbXL59cei5Jrturv3zn6HwCfXydS
APscbmlBpvYasE+7O+99ksE=
=G5lN
-----END PGP SIGNATURE-----




^ permalink raw reply

* Re: [PATCH 2/2] Revert napi_poll fix for bonding driver
From: Cong Wang @ 2010-10-20  7:52 UTC (permalink / raw)
  To: nhorman; +Cc: netdev, bonding-devel, fubar, davem, andy
In-Reply-To: <1287507866-25156-3-git-send-email-nhorman@tuxdriver.com>

On 10/20/10 01:04, nhorman@tuxdriver.com wrote:
> From: Neil Horman<nhorman@tuxdriver.com>
>
> In an erlier patch I modified napi_poll so that devices with IFF_MASTER polled
> the per_cpu list instead of the device list for napi.  I did this because the
> bonding driver has no napi instances to poll, it instead expects to check the
> slave devices napi instances, which napi_poll was unaware of.  Looking at this
> more closely however, I now see this isn't strictly needed.  As the bond driver
> poll_controller calls the slaves poll_controller via netpoll_poll_dev, which
> recursively calls poll_napi on each slave, allowing those napi instances to get
> serviced.  The earlier patch isn't at all harmfull, its just not needed, so lets
> revert it to make the code cleaner.  Sorry for the noise,
>
> Signed-off-by: Neil Horman<nhorman@tuxdriver.com>

Looks reasonable to me,

Reviewed-by: WANG Cong <amwang@redhat.com>

Thanks.

^ permalink raw reply

* Re: [lm-sensors] Driver for SMSC SCH5627 needed
From: Juerg Haefliger @ 2010-10-20  7:47 UTC (permalink / raw)
  To: lm-sensors
In-Reply-To: <4CBD8E44.8070909@ts.fujitsu.com>

> Hi Juerg,

Hi Rainer,

>> First we need a datasheet. Then we can figure out if we already have a
>> driver that supports a similar device and could be easily extended. No
>> datasheet usually means no driver.
>>
> I perfectly understand that. So we used our contacts to SMSC to ask them
> for a chip documentation that is not under NDA. Didn't get an answer yet,
> but still hoping.

I sent an email to my SMSC contact. We'll see what happens.

...Juerg

_______________________________________________
lm-sensors mailing list
lm-sensors@lm-sensors.org
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors

^ permalink raw reply

* Re: [PATCH v2 3/3] drivers: cleanup Kconfig stuff
From: Roger Quadros @ 2010-10-20  7:46 UTC (permalink / raw)
  To: ext Felipe Contreras
  Cc: linux-usb@vger.kernel.org, linux-omap, linux-main, Greg KH,
	Felipe Balbi, Tony Lindgren
In-Reply-To: <AANLkTinRRyrXzqEu=u+CCYkmSNGm03SSo1tVG=5_wdpo@mail.gmail.com>

On 10/19/2010 05:33 PM, ext Felipe Contreras wrote:
> Hi Roger,
>
> On Tue, Oct 19, 2010 at 4:40 PM, Roger Quadros<roger.quadros@nokia.com>  wrote:
>>> @@ -843,6 +841,7 @@ config USB_CDC_COMPOSITE
>>>   config USB_G_NOKIA
>>>         tristate "Nokia composite gadget"
>>>         depends on PHONET
>>> +       depends on USB_GADGET_MUSB_HDRC
>>
>> This is wrong. Is there a build problem or run-time problem without this?
>
> Try:
> CONFIG_USB_G_NOKIA=y
> CONFIG_USB_GADGET_MUSB_HDRC=n
>
> At least g_nokia doesn't seem to work correctly on my N900.
>
It won't work on N900 because N900 has MUSB USB gadget controller and it needs 
to be selected somehow while building for N900.

You should set CONFIG_USB_GADGET_MUSB_HDRC to y somewhere else while building 
for N900 and not here because g_nokia is not MUSB specific.

-- 
regards,
-roger

^ permalink raw reply

* [U-Boot] [PATCH] kirkwood: Fix Makefile TEXT_BASE for mkimage
From: Mike Frysinger @ 2010-10-20  7:44 UTC (permalink / raw)
  To: u-boot
In-Reply-To: <F766E4F80769BD478052FB6533FA745D19A6A463C9@SC-VEXCH4.marvell.com>

On Wednesday, October 20, 2010 02:03:10 Prafulla Wadaskar wrote:
> Hi Gray

please dont top post

> It will be great if you put some comments too.
> That to describe patch objective

Wolfgang recently cleaned up TEXT_BASE so it no longer exists
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.denx.de/pipermail/u-boot/attachments/20101020/7ffa4c67/attachment.pgp 

^ permalink raw reply

* [U-Boot] ARM: Warning with current master
From: Albert ARIBAUD @ 2010-10-20  7:44 UTC (permalink / raw)
  To: u-boot
In-Reply-To: <4CBE98A1.9020301@arcor.de>

Le 20/10/2010 09:22, Matthias Wei?er a ?crit :
> Hi
>
> after pulling the latest changes I get the following warning during
> linking of arm boards (I tested jadecpu and tx25).
>
> arm-unknown-eabi-ld: warning: creating a DT_TEXTREL in object.

Hmm... Which toolchain do you use?

Amicalement,
-- 
Albert.

^ permalink raw reply

* Re: CONFIG_FEC is not good for mpc8xx ethernet?
From: tiejun.chen @ 2010-10-20  7:46 UTC (permalink / raw)
  To: Shawn Jin; +Cc: Scott Wood, ppcdev
In-Reply-To: <AANLkTinN-xOecVynPYxmLoT9HJKFs0iPo3pLXF05Tudv@mail.gmail.com>

Shawn Jin wrote:
>>> On MPC8xx you want drivers/net/fs_enet/mii-fec.c. �This is just the
>>> MDIO driver; it doesn't handle any particular PHY. �I don't know if
>>> there is a driver specifically for AM79C874, though the generic PHY
>>> support may be good enough.
>> Maybe.
>>
>> I can found one related patch for supporting PHY AM79C874 on 2.6.15,
>> ------
>> http://lists.ozlabs.org/pipermail/linuxppc-embedded/2005-November/021043.html
>>
>> But I don't see that on the latest kernel, and also I don't know the history
>> completely for that. Maybe its already merged into one generic PHY driver but
>> I'm not sure.
> 
> Thank Scott & Tiejun for valuable information.
> 
> The problem for me is that the PHY failed to be probed. The related
> error messages are shown below. I even tried the patch Tiejun pointed
> out. But that doesn't help. The phy ID read from the bus was all Fs.
> 
> FEC MII Bus: probed
> mdio_bus fa200e00: error probing PHY at address 0

Is this is all log related to PHY? And are you sure your PHY Address is zero?

Often there are at most 32 PHY devices resided one MDIO bus. So you can dump PHY
ID to check if there is a PHY firstly. A ID value of 0xffff indicates that the
address is invalid if I recalled properly.

But I think PHY driver already do the above process on Linux.

So looks MDIO driver cannot compatible for your platform. I recommend you try
debug mdio driver to access valid PHY ID firstly. Especially where/why this stop
at address '0'? When you can get a valid PHY ID you can go phy driver.

> 
> I don't know if AM79C874 requires any special handling. But from the
> comment in mdiobb_cmd() there seems to be something special.
>         /*
>          * Send a 32 bit preamble ('1's) with an extra '1' bit for good
>          * measure.  The IEEE spec says this is a PHY optional
>          * requirement.  The AMD 79C874 requires one after power up and
>          * one after a MII communications error.  This means that we are
>          * doing more preambles than we need, but it is safer and will be
>          * much more robust.
>          */
> 
> If there is any network action in u-boot, e.g., tftp or ping, the PHY
> can be successfully probed after that. Any hints what went wrong with

On bootstrap the driver should reset MDIO bus/PHY before probing PHY again.

Tiejun

> the PHY?
> 
> Thanks,
> -Shawn.
> 

^ permalink raw reply

* [U-Boot] Please pull u-boot-mpc85xx.git
From: Kumar Gala @ 2010-10-20  7:43 UTC (permalink / raw)
  To: u-boot

The following changes since commit 11c8dd36edcc82564a19dbd0103302df66d66db0:

  FAT: buffer overflow with FAT12/16 (2010-10-20 09:14:38 +0200)

are available in the git repository at:
  git://git.denx.de/u-boot-mpc85xx master

Aaron Sierra (1):
      85xx: Add support for not releasing secondary cores via 'mp_holdoff'

Kumar Gala (4):
      powerpc/fsl: Introduce common enum for PHY types
      powerpc/8xxx: Add fdt_fixup_phy_connection helper
      86xx: Create common linker script
      Fix compile warning in uli526x driver

Peter Tyser (6):
      mpc8641hpcn: Update PCI code
      sbc8641d: Update PCI code
      tqm85xx: Update PCI code
      mpc8640: Update the io_sel fields for PCI Express
      86xx: Use gc-sections to reduce image size
      85xx: Use gc-sections to reduce image size

Timur Tabi (1):
      always relocate fdt into an lmb-allocated memory block

York Sun (7):
      Adding more control to physical address mapping
      Add memory test feature for mpc85xx POST.
      Setup POST word for generic mpc85xx
      Enable POST memory test for corenet_ds
      Enable POST memory test for P2020DS
      Adding fixed sdram setting for cornet_ds board
      Disable unused chip-select for DDR controller interleaving

 arch/powerpc/cpu/mpc85xx/config.mk                 |    4 +
 arch/powerpc/cpu/mpc85xx/cpu.c                     |  219 ++++++++++++
 arch/powerpc/cpu/mpc85xx/fdt.c                     |   22 +-
 arch/powerpc/cpu/mpc85xx/mp.c                      |   31 ++
 arch/powerpc/cpu/mpc85xx/mp.h                      |    1 +
 arch/powerpc/cpu/mpc85xx/tlb.c                     |   16 +-
 arch/powerpc/cpu/mpc85xx/u-boot.lds                |   52 +---
 arch/powerpc/cpu/mpc86xx/config.mk                 |    7 +
 .../powerpc/cpu/mpc86xx}/u-boot.lds                |   26 +-
 arch/powerpc/cpu/mpc8xxx/ddr/ctrl_regs.c           |   17 +-
 arch/powerpc/cpu/mpc8xxx/fdt.c                     |   24 ++
 arch/powerpc/cpu/mpc8xxx/pci_cfg.c                 |    5 +-
 arch/powerpc/include/asm/fsl_ddr_sdram.h           |    6 +
 arch/powerpc/include/asm/fsl_enet.h                |   33 ++
 board/freescale/corenet_ds/Makefile                |    3 +-
 board/freescale/corenet_ds/corenet_ds.c            |   15 -
 board/freescale/corenet_ds/ddr.c                   |  131 +++++++-
 board/freescale/corenet_ds/p4080ds_ddr.c           |  356 ++++++++++++++++++++
 board/freescale/mpc8360emds/mpc8360emds.c          |   15 +-
 board/freescale/mpc837xemds/mpc837xemds.c          |    8 +-
 board/freescale/mpc8569mds/mpc8569mds.c            |    4 +-
 board/freescale/mpc8610hpcd/u-boot.lds             |  132 --------
 board/freescale/mpc8641hpcn/mpc8641hpcn.c          |   97 ++----
 board/freescale/mpc8641hpcn/u-boot.lds             |  133 --------
 board/sbc8641d/sbc8641d.c                          |  103 ++-----
 board/tqc/tqm85xx/law.c                            |    4 +-
 board/tqc/tqm85xx/tlb.c                            |   10 +-
 board/tqc/tqm85xx/tqm85xx.c                        |  151 +++------
 board/xes/xpedite5170/u-boot.lds                   |  132 --------
 common/image.c                                     |   83 ++---
 doc/README.fsl-ddr                                 |   14 +
 drivers/net/uli526x.c                              |    5 +-
 drivers/qe/uec.c                                   |   10 +-
 drivers/qe/uec.h                                   |   20 +-
 drivers/qe/uec_phy.c                               |    8 +-
 include/configs/P2020DS.h                          |    5 +-
 include/configs/TQM85xx.h                          |   20 +-
 include/configs/corenet_ds.h                       |   61 +----
 include/post.h                                     |    4 +-
 39 files changed, 1059 insertions(+), 928 deletions(-)
 rename {board/sbc8641d => arch/powerpc/cpu/mpc86xx}/u-boot.lds (90%)
 create mode 100644 arch/powerpc/include/asm/fsl_enet.h
 create mode 100644 board/freescale/corenet_ds/p4080ds_ddr.c
 delete mode 100644 board/freescale/mpc8610hpcd/u-boot.lds
 delete mode 100644 board/freescale/mpc8641hpcn/u-boot.lds
 delete mode 100644 board/xes/xpedite5170/u-boot.lds

^ permalink raw reply

* [PATCH] ARM: S5PC100: Debug clock sources
From: Kukjin Kim @ 2010-10-20  7:43 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <1287470544-26462-1-git-send-email-jassisinghbrar@gmail.com>

Jassi Brar wrote:
> 
> From: Jassi Brar <jassi.brar@samsung.com>
> 
> Audio, Keypad and ADC inherit PCLKD1 clock source.
> 
> Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
> ---
>  arch/arm/mach-s5pc100/clock.c |   18 +++++++++---------
>  1 files changed, 9 insertions(+), 9 deletions(-)
> 
> diff --git a/arch/arm/mach-s5pc100/clock.c b/arch/arm/mach-s5pc100/clock.c
> index be14d4e..8958bde 100644
> --- a/arch/arm/mach-s5pc100/clock.c
> +++ b/arch/arm/mach-s5pc100/clock.c
> @@ -679,55 +679,55 @@ static struct clk init_clocks_disable[] = {
>  	}, {
>  		.name		= "iis",
>  		.id		= 0,
> -		.parent		= &clk_div_d1_bus.clk,
> +		.parent		= &clk_div_pclkd1.clk,
>  		.enable		= s5pc100_d1_5_ctrl,
>  		.ctrlbit	= (1 << 0),
>  	}, {
>  		.name		= "iis",
>  		.id		= 1,
> -		.parent		= &clk_div_d1_bus.clk,
> +		.parent		= &clk_div_pclkd1.clk,
>  		.enable		= s5pc100_d1_5_ctrl,
>  		.ctrlbit	= (1 << 1),
>  	}, {
>  		.name		= "iis",
>  		.id		= 2,
> -		.parent		= &clk_div_d1_bus.clk,
> +		.parent		= &clk_div_pclkd1.clk,
>  		.enable		= s5pc100_d1_5_ctrl,
>  		.ctrlbit	= (1 << 2),
>  	}, {
>  		.name		= "ac97",
>  		.id		= -1,
> -		.parent		= &clk_div_d1_bus.clk,
> +		.parent		= &clk_div_pclkd1.clk,
>  		.enable		= s5pc100_d1_5_ctrl,
>  		.ctrlbit	= (1 << 3),
>  	}, {
>  		.name		= "pcm",
>  		.id		= 0,
> -		.parent		= &clk_div_d1_bus.clk,
> +		.parent		= &clk_div_pclkd1.clk,
>  		.enable		= s5pc100_d1_5_ctrl,
>  		.ctrlbit	= (1 << 4),
>  	}, {
>  		.name		= "pcm",
>  		.id		= 1,
> -		.parent		= &clk_div_d1_bus.clk,
> +		.parent		= &clk_div_pclkd1.clk,
>  		.enable		= s5pc100_d1_5_ctrl,
>  		.ctrlbit	= (1 << 5),
>  	}, {
>  		.name		= "spdif",
>  		.id		= -1,
> -		.parent		= &clk_div_d1_bus.clk,
> +		.parent		= &clk_div_pclkd1.clk,
>  		.enable		= s5pc100_d1_5_ctrl,
>  		.ctrlbit	= (1 << 6),
>  	}, {
>  		.name		= "adc",
>  		.id		= -1,
> -		.parent		= &clk_div_d1_bus.clk,
> +		.parent		= &clk_div_pclkd1.clk,
>  		.enable		= s5pc100_d1_5_ctrl,
>  		.ctrlbit	= (1 << 7),
>  	}, {
>  		.name		= "keypad",
>  		.id		= -1,
> -		.parent		= &clk_div_d1_bus.clk,
> +		.parent		= &clk_div_pclkd1.clk,
>  		.enable		= s5pc100_d1_5_ctrl,
>  		.ctrlbit	= (1 << 8),
>  	}, {
> --

Ok...will apply.

Thanks.

Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.

^ permalink raw reply

* Re: [PATCH 1/2] Remove netpoll blocking from uninit path
From: Cong Wang @ 2010-10-20  7:47 UTC (permalink / raw)
  To: nhorman; +Cc: netdev, bonding-devel, fubar, davem, andy
In-Reply-To: <1287507866-25156-2-git-send-email-nhorman@tuxdriver.com>

On 10/20/10 01:04, nhorman@tuxdriver.com wrote:
> From: Neil Horman<nhorman@tuxdriver.com>
>
> Some recent testing in netpoll with bonding showed this backtrace
>
>   ------------[ cut here ]------------
>   kernel BUG at drivers/net/bonding/bonding.h:134!
>   invalid opcode: 0000 [#1] SMP
>   last sysfs file: /sys/devices/pci0000:00/0000:00:1d.2/usb7/devnum
>   CPU 0
>   Pid: 1876, comm: rmmod Not tainted 2.6.36-rc3+ #10 D26928/
>   RIP: 0010:[<ffffffffa0514ba4>]  [<ffffffffa0514ba4>] bond_uninit+0x6f4/0x7a0
>   RSP: 0018:ffff88003b1b5d58  EFLAGS: 00010296
>   RAX: ffff88003b9b6200 RBX: ffff8800373e8e00 RCX: 00000000000f4240
>   RDX: 00000000ffffffff RSI: 0000000000000286 RDI: 0000000000000286
>   RBP: ffff88003b1b5dc8 R08: 0000000000000000 R09: 00000001af7de920
>   R10: 0000000000000000 R11: ffff880002495e98 R12: ffff880037922700
>   R13: ffff880038c31000 R14: ffff880037922730 R15: 0000000000000286
>   FS:  00007f90e6d72700(0000) GS:ffff880002400000(0000) knlGS:0000000000000000
>   CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
>   CR2: 000000346f0d9ad0 CR3: 000000003b263000 CR4: 00000000000006f0
>   DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
>   DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
>   Process rmmod (pid: 1876, threadinfo ffff88003b1b4000, task ffff88003b36aa80)
>   Stack:
>   00000000ffffffff ffff88003b1b5d7a ffff8800379221e8 ffff880037922000
>   <0>  ffff88003b1b5dc8 ffffffff813eb5fb ffff88003b1b5da8 0000000031b177a3
>   <0>  ffff88003b1b5da8 ffff880037922000 ffff88003b1b5e48 ffff88003b1b5e48
>   Call Trace:
>   [<ffffffff813eb5fb>] ? rtmsg_ifinfo+0xcb/0xf0
>   [<ffffffff813daad8>] rollback_registered_many+0x168/0x280
>   [<ffffffff813dac09>] unregister_netdevice_many+0x19/0x80
>   [<ffffffff813e97b3>] __rtnl_kill_links+0x63/0x90
>   [<ffffffff813e980b>] __rtnl_link_unregister+0x2b/0x60
>   [<ffffffff813e9bde>] rtnl_link_unregister+0x1e/0x30
>   [<ffffffffa052124b>] bonding_exit+0x37/0x51 [bonding]
>   [<ffffffff81098b2e>] sys_delete_module+0x19e/0x270
>   [<ffffffff810bb2b2>] ? audit_syscall_entry+0x252/0x280
>   [<ffffffff8100b0b2>] system_call_fastpath+0x16/0x1b
>   RIP  [<ffffffffa0514ba4>] bond_uninit+0x6f4/0x7a0 [bonding]
>   RSP<ffff88003b1b5d58>
>   ---[ end trace 1395ad691cea24d1 ]---
>
> It occurs because of my recent netpoll blocking patches, which I added to avoid
> recursive deadlock in the bonding driver.  It relies on some per cpu bits, but
> the shutdown path forces some rescheduling as we cancel workqueues for the
> driver and wait for some device refcounts.  If after the forced reschedule, we
> wind up on a different cpu we trigger the bughalt in unblock_netpoll_tx.
>
> The fix is to remove the netpoll block/unblock calls from bond_release_all.
> This is safe to do because bond_uninit, which is called via ndo_uninit in
> rollback_registered_many, doesn't occur until we send a NETDEV_UNREGISTER event,
> which triggers netconsole to remove us as a netpoll client, so we are guaranteed
> not to recurse into our own tx path here.

Also bond_release_all() is called after bond_netpoll_cleanup()
in bond_uninit().

>
> Signed-off-by: Neil Horman<nhorman@tuxdriver.com>

Reviewed-by: WANG Cong <amwang@redhat.com>

Thanks.

^ permalink raw reply

* [U-Boot] Observation: rebasing against current master increases code size by 1.8k
From: Mike Frysinger @ 2010-10-20  7:42 UTC (permalink / raw)
  To: u-boot
In-Reply-To: <4CBE9A99.1090508@emk-elektronik.de>

On Wednesday, October 20, 2010 03:30:33 Reinhard Meyer wrote:
> Just an observation on my AT91SAM9XE based board:
> 
> based on yesterday's master + arm elf relocations +
> my (then not mainstreamed) patches: 256288 bytes
> 
> based on current master: 258020 bytes
> 
> Otherwise it compiles without warnings and runs fine.
> Just some non-reloc-related patches have increased
> code size by that amount - finding out which are to
> "blame" is probably not worth the effort.

look at the env change ?
	ea882baf9c17cd142c99e3ff640d3ab01daa5cec
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.denx.de/pipermail/u-boot/attachments/20101020/a815d9c7/attachment.pgp 

^ permalink raw reply

* Re: [PATCH] drivers/hwmon: Use pr_fmt and pr_<level>
From: Jean Delvare @ 2010-10-20  7:42 UTC (permalink / raw)
  To: Joe Perches
  Cc: Guenter Roeck, Hans de Goede, Alistair John Strachan,
	Henrik Rydberg, Mark M. Hoffman, Luca Tettamanti, Fenghua Yu,
	Juerg Haefliger, Eric Piel, Jim Cromie, Roger Lucas, lm-sensors,
	LKML
In-Reply-To: <1287530020.10409.594.camel@Joe-Laptop>

Hi Joe,

On Tue, 19 Oct 2010 16:13:40 -0700, Joe Perches wrote:
> Convert printks to pr_<level>
> Coalesce long formats
> Removed prefixes from formats
> Added #define pr_fmt KBUILD_MODNAME ": " fmt
> Standardized abitguru messages for reporting and finding MAINTAINER
> (...)
> diff --git a/drivers/hwmon/abituguru.c b/drivers/hwmon/abituguru.c
> index 03694cc..8f07a9d 100644
> --- a/drivers/hwmon/abituguru.c
> +++ b/drivers/hwmon/abituguru.c
> @@ -20,6 +20,9 @@
>      the custom Abit uGuru chip found on Abit uGuru motherboards. Note: because
>      of lack of specs the CPU/RAM voltage & frequency control is not supported!
>  */
> +
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
>  #include <linux/module.h>

It looks odd that every driver would have to set this. Shouldn't this
be the default set in <linux/kernel.h>? Something like:

#ifndef pr_fmt
#ifdef KBUILD_MODNAME
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
#else
#define pr_fmt(fmt) fmt
#endif /* KBUILD_MODNAME */
#endif

Overall I like this cleanup patch, but the addition of #define pr_fmt
to every driver looks plain wrong.

I'll review the rest of the patch(es) once this point is sorted out.

-- 
Jean Delvare

^ permalink raw reply

* Re: [lm-sensors] [PATCH] drivers/hwmon: Use pr_fmt and pr_<level>
From: Jean Delvare @ 2010-10-20  7:42 UTC (permalink / raw)
  To: Joe Perches
  Cc: Guenter Roeck, Hans de Goede, Alistair John Strachan,
	Henrik Rydberg, Mark M. Hoffman, Luca Tettamanti, Fenghua Yu,
	Juerg Haefliger, Eric Piel, Jim Cromie, Roger Lucas, lm-sensors,
	LKML
In-Reply-To: <1287530020.10409.594.camel@Joe-Laptop>

Hi Joe,

On Tue, 19 Oct 2010 16:13:40 -0700, Joe Perches wrote:
> Convert printks to pr_<level>
> Coalesce long formats
> Removed prefixes from formats
> Added #define pr_fmt KBUILD_MODNAME ": " fmt
> Standardized abitguru messages for reporting and finding MAINTAINER
> (...)
> diff --git a/drivers/hwmon/abituguru.c b/drivers/hwmon/abituguru.c
> index 03694cc..8f07a9d 100644
> --- a/drivers/hwmon/abituguru.c
> +++ b/drivers/hwmon/abituguru.c
> @@ -20,6 +20,9 @@
>      the custom Abit uGuru chip found on Abit uGuru motherboards. Note: because
>      of lack of specs the CPU/RAM voltage & frequency control is not supported!
>  */
> +
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
>  #include <linux/module.h>

It looks odd that every driver would have to set this. Shouldn't this
be the default set in <linux/kernel.h>? Something like:

#ifndef pr_fmt
#ifdef KBUILD_MODNAME
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
#else
#define pr_fmt(fmt) fmt
#endif /* KBUILD_MODNAME */
#endif

Overall I like this cleanup patch, but the addition of #define pr_fmt
to every driver looks plain wrong.

I'll review the rest of the patch(es) once this point is sorted out.

-- 
Jean Delvare

_______________________________________________
lm-sensors mailing list
lm-sensors@lm-sensors.org
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors

^ permalink raw reply

* Re: fetch and bundle don't work in (semi-)broken repo
From: Uwe Kleine-König @ 2010-10-20  7:41 UTC (permalink / raw)
  To: Nicolas Pitre; +Cc: Jonathan Nieder, git
In-Reply-To: <alpine.LFD.2.00.1010192154200.2764@xanadu.home>

Hello Nico,

On Tue, Oct 19, 2010 at 11:06:50PM -0400, Nicolas Pitre wrote:
> On Tue, 19 Oct 2010, Jonathan Nieder wrote:
> 
> > Nicolas Pitre wrote:
> > 
> > >                                 But ideally you should simply find a 
> > > pack that contains the problematic object in another repository and 
> > > copy it with its index file into the broken repository.
> > 
> > I assume the object is gone for good, but if you have it in another
> > repo that would be interesting, too.
> > 
> > To be clear: I think the important data has been recovered from the
> > broken repo already in the form of patches (right?) so the question
> > at hand is whether it would be possible to teach git to do better at
> > recovering automatically.  Which might depend on the nature of the
> > missing objects.
> 
> Sure.  Given that it is possible to create a patch series, that means 
> that all the important objects are still available.  Therefore Git 
> should be able to produce the pack for the equivalent fetch/bundle as 
> well.
> 
> So the following patch should help.  I hope that Uwe still has a copy of 
> the broken repo to test this patch with.
> 
> diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c
> index f8eba53..691c2f1 100644
> --- a/builtin/pack-objects.c
> +++ b/builtin/pack-objects.c
> @@ -1299,6 +1299,15 @@ static int try_delta(struct unpacked *trg, struct unpacked *src,
>  		src->data = read_sha1_file(src_entry->idx.sha1, &type, &sz);
>  		read_unlock();
>  		if (!src->data)
> +			if (src_entry->preferred_base) {
> +				/* 
> +				 * Those objects are not included in the
> +				 * resulting pack.  Be resilient and ignore
> +				 * them, in case the pack could be created
> +				 * nevertheless.
> +				 */
> +				return 0;
> +			}
>  			die("object %s cannot be read",
>  			    sha1_to_hex(src_entry->idx.sha1));
>  		if (sz != src_size)
Doesn't help :-(  I added a warning(...) before your return 0, and I
don't see it.  Probably this means this is not the problematic code
path.

The output with your patch applied is:
	user@hostname:~/path/linux-2.6$ ~/gsrc/git/bin-wrappers/git bundle create tra linus/master..sectionmismatches
	Counting objects: 118, done.
	error: unable to find 40aaeb204dc04d3cf15c060133f65538b43b13b0
	Delta compression using up to 8 threads.
	fatal: object 3cf4fa25ab3d078a49e9488effaebf571fa128da cannot be read
	error: pack-objects died

If you want I can provide you the broken repo.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply

* [U-Boot] [PATCH] do_reset: unify duplicate prototypes
From: Mike Frysinger @ 2010-10-20  7:41 UTC (permalink / raw)
  To: u-boot

The duplication of the do_reset prototype has gotten out of hand,
and they're not all in sync.  Unify them all in command.h.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 api/api.c                                          |    3 ---
 arch/m68k/cpu/mcf5227x/cpu.c                       |    2 +-
 arch/m68k/cpu/mcf523x/cpu.c                        |    2 +-
 arch/m68k/cpu/mcf52x2/cpu.c                        |   14 +++++++-------
 arch/m68k/cpu/mcf532x/cpu.c                        |    2 +-
 arch/m68k/cpu/mcf5445x/cpu.c                       |    2 +-
 arch/m68k/cpu/mcf547x_8x/cpu.c                     |    2 +-
 arch/nios2/cpu/cpu.c                               |    2 +-
 arch/powerpc/cpu/mpc85xx/cpu.c                     |    2 +-
 arch/powerpc/cpu/ppc4xx/44x_spd_ddr2.c             |    1 -
 arch/powerpc/lib/bootm.c                           |    1 -
 board/eltec/bab7xx/bab7xx.c                        |    3 ++-
 board/esd/apc405/apc405.c                          |    1 -
 board/esd/ar405/ar405.c                            |    2 --
 board/esd/ash405/ash405.c                          |    1 -
 board/esd/canbt/canbt.c                            |    4 ----
 board/esd/cpci405/cpci405.c                        |    1 -
 board/esd/cpciiser4/cpciiser4.c                    |    3 ---
 board/esd/du405/du405.c                            |    3 ---
 board/esd/hh405/hh405.c                            |    1 -
 board/esd/pci405/pci405.c                          |    1 -
 board/esd/plu405/plu405.c                          |    1 -
 board/esd/tasreg/tasreg.c                          |    1 -
 board/esd/voh405/voh405.c                          |    1 -
 board/esd/wuh405/wuh405.c                          |    2 --
 board/freescale/m5249evb/m5249evb.c                |    4 ----
 board/funkwerk/vovpn-gw/vovpn-gw.c                 |    2 +-
 board/prodrive/pdnb3/pdnb3.c                       |    3 ---
 board/sacsng/sacsng.c                              |    2 --
 .../xilinx/microblaze-generic/microblaze-generic.c |    3 ++-
 board/zeus/zeus.c                                  |    1 -
 common/cmd_boot.c                                  |    2 --
 common/cmd_bootm.c                                 |    1 -
 common/hush.c                                      |    4 +---
 common/main.c                                      |    4 ----
 include/command.h                                  |    1 +
 include/exports.h                                  |    1 -
 lib/vsprintf.c                                     |    2 --
 38 files changed, 21 insertions(+), 67 deletions(-)

diff --git a/api/api.c b/api/api.c
index 190ee6a..853f010 100644
--- a/api/api.c
+++ b/api/api.c
@@ -36,9 +36,6 @@
 #define DEBUG
 #undef DEBUG
 
-/* U-Boot routines needed */
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-
 /*****************************************************************************
  *
  * This is the API core.
diff --git a/arch/m68k/cpu/mcf5227x/cpu.c b/arch/m68k/cpu/mcf5227x/cpu.c
index 5129a03..09ef1d2 100644
--- a/arch/m68k/cpu/mcf5227x/cpu.c
+++ b/arch/m68k/cpu/mcf5227x/cpu.c
@@ -33,7 +33,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	volatile rcm_t *rcm = (rcm_t *) (MMAP_RCM);
 	udelay(1000);
diff --git a/arch/m68k/cpu/mcf523x/cpu.c b/arch/m68k/cpu/mcf523x/cpu.c
index 582aec9..2376f97 100644
--- a/arch/m68k/cpu/mcf523x/cpu.c
+++ b/arch/m68k/cpu/mcf523x/cpu.c
@@ -34,7 +34,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	volatile ccm_t *ccm = (ccm_t *) MMAP_CCM;
 
diff --git a/arch/m68k/cpu/mcf52x2/cpu.c b/arch/m68k/cpu/mcf52x2/cpu.c
index 9fb717c..d43ef2a 100644
--- a/arch/m68k/cpu/mcf52x2/cpu.c
+++ b/arch/m68k/cpu/mcf52x2/cpu.c
@@ -38,7 +38,7 @@
 DECLARE_GLOBAL_DATA_PTR;
 
 #ifdef	CONFIG_M5208
-int do_reset(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	volatile rcm_t *rcm = (rcm_t *)(MMAP_RCM);
 
@@ -142,7 +142,7 @@ int checkcpu(void)
 	return 0;
 }
 
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	/* Call the board specific reset actions first. */
 	if(board_reset) {
@@ -177,7 +177,7 @@ int watchdog_init(void)
 #endif
 
 #ifdef	CONFIG_M5272
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	volatile wdog_t *wdp = (wdog_t *) (MMAP_WDOG);
 
@@ -257,7 +257,7 @@ int watchdog_init(void)
 #endif				/* #ifdef CONFIG_M5272 */
 
 #ifdef	CONFIG_M5275
-int do_reset(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	volatile rcm_t *rcm = (rcm_t *)(MMAP_RCM);
 
@@ -337,7 +337,7 @@ int checkcpu(void)
 	return 0;
 }
 
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	MCFRESET_RCR = MCFRESET_RCR_SOFTRST;
 	return 0;
@@ -354,7 +354,7 @@ int checkcpu(void)
 	return 0;
 }
 
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	/* enable watchdog, set timeout to 0 and wait */
 	mbar_writeByte(MCFSIM_SYPCR, 0xc0);
@@ -384,7 +384,7 @@ int checkcpu(void)
 	return 0;
 }
 
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	/* enable watchdog, set timeout to 0 and wait */
 	mbar_writeByte(SIM_SYPCR, 0xc0);
diff --git a/arch/m68k/cpu/mcf532x/cpu.c b/arch/m68k/cpu/mcf532x/cpu.c
index 0af4969..3346784 100644
--- a/arch/m68k/cpu/mcf532x/cpu.c
+++ b/arch/m68k/cpu/mcf532x/cpu.c
@@ -34,7 +34,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	volatile rcm_t *rcm = (rcm_t *) (MMAP_RCM);
 
diff --git a/arch/m68k/cpu/mcf5445x/cpu.c b/arch/m68k/cpu/mcf5445x/cpu.c
index 182521c..323a54e 100644
--- a/arch/m68k/cpu/mcf5445x/cpu.c
+++ b/arch/m68k/cpu/mcf5445x/cpu.c
@@ -34,7 +34,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	volatile rcm_t *rcm = (rcm_t *) (MMAP_RCM);
 	udelay(1000);
diff --git a/arch/m68k/cpu/mcf547x_8x/cpu.c b/arch/m68k/cpu/mcf547x_8x/cpu.c
index f9a4b64..7590f2c 100644
--- a/arch/m68k/cpu/mcf547x_8x/cpu.c
+++ b/arch/m68k/cpu/mcf547x_8x/cpu.c
@@ -34,7 +34,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int do_reset(cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	volatile gptmr_t *gptmr = (gptmr_t *) (MMAP_GPTMR);
 
diff --git a/arch/nios2/cpu/cpu.c b/arch/nios2/cpu/cpu.c
index d9c6544..ef360ee 100644
--- a/arch/nios2/cpu/cpu.c
+++ b/arch/nios2/cpu/cpu.c
@@ -40,7 +40,7 @@ int checkcpu (void)
 	return (0);
 }
 
-int do_reset(void)
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	disable_interrupts();
 	/* indirect call to go beyond 256MB limitation of toolchain */
diff --git a/arch/powerpc/cpu/mpc85xx/cpu.c b/arch/powerpc/cpu/mpc85xx/cpu.c
index 3f80700..84363a9 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu.c
@@ -196,7 +196,7 @@ int checkcpu (void)
 
 /* ------------------------------------------------------------------------- */
 
-int do_reset (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char * const argv[])
+int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 /* Everything after the first generation of PQ3 parts has RSTCR */
 #if defined(CONFIG_MPC8540) || defined(CONFIG_MPC8541) || \
diff --git a/arch/powerpc/cpu/ppc4xx/44x_spd_ddr2.c b/arch/powerpc/cpu/ppc4xx/44x_spd_ddr2.c
index cf9d66d..3f62e3c 100644
--- a/arch/powerpc/cpu/ppc4xx/44x_spd_ddr2.c
+++ b/arch/powerpc/cpu/ppc4xx/44x_spd_ddr2.c
@@ -418,7 +418,6 @@ static void	test(void);
 static void	DQS_calibration_process(void);
 #endif
 #endif
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 
 static unsigned char spd_read(uchar chip, uint addr)
 {
diff --git a/arch/powerpc/lib/bootm.c b/arch/powerpc/lib/bootm.c
index 4c3e2fe..116d81b 100644
--- a/arch/powerpc/lib/bootm.c
+++ b/arch/powerpc/lib/bootm.c
@@ -47,7 +47,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern ulong get_effective_memsize(void);
 static ulong get_sp (void);
 static void set_clocks_in_mhz (bd_t *kbd);
diff --git a/board/eltec/bab7xx/bab7xx.c b/board/eltec/bab7xx/bab7xx.c
index f5c9777..ea4897b 100644
--- a/board/eltec/bab7xx/bab7xx.c
+++ b/board/eltec/bab7xx/bab7xx.c
@@ -184,7 +184,7 @@ void after_reloc (ulong dest_addr)
  * do_reset is done here because in this case it is board specific, since the
  * 7xx CPUs can only be reset by external HW (the RTC in this case).
  */
-void do_reset (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const argv[])
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 #if defined(CONFIG_RTC_MK48T59)
 	/* trigger watchdog immediately */
@@ -192,6 +192,7 @@ void do_reset (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char * const ar
 #else
 #error "You must define the macro CONFIG_RTC_MK48T59."
 #endif
+	return 0;
 }
 
 /* ------------------------------------------------------------------------- */
diff --git a/board/esd/apc405/apc405.c b/board/esd/apc405/apc405.c
index 52477d7..def8a4f 100644
--- a/board/esd/apc405/apc405.c
+++ b/board/esd/apc405/apc405.c
@@ -38,7 +38,6 @@ DECLARE_GLOBAL_DATA_PTR;
 
 #undef FPGA_DEBUG
 
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern void lxt971_no_sleep(void);
 
 /* fpga configuration data - gzip compressed and generated by bin2c */
diff --git a/board/esd/ar405/ar405.c b/board/esd/ar405/ar405.c
index 8879faf..6ec507f 100644
--- a/board/esd/ar405/ar405.c
+++ b/board/esd/ar405/ar405.c
@@ -29,8 +29,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-/*cmd_boot.c*/
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern void lxt971_no_sleep(void);
 
 /* ------------------------------------------------------------------------- */
diff --git a/board/esd/ash405/ash405.c b/board/esd/ash405/ash405.c
index ea28090..1b0365e 100644
--- a/board/esd/ash405/ash405.c
+++ b/board/esd/ash405/ash405.c
@@ -33,7 +33,6 @@
 #define FPGA_DEBUG
 #endif
 
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern void lxt971_no_sleep(void);
 
 /* fpga configuration data - gzip compressed and generated by bin2c */
diff --git a/board/esd/canbt/canbt.c b/board/esd/canbt/canbt.c
index 0d2d7f1..cc537f2 100644
--- a/board/esd/canbt/canbt.c
+++ b/board/esd/canbt/canbt.c
@@ -29,10 +29,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-/*cmd_boot.c*/
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-
-
 /* ------------------------------------------------------------------------- */
 
 #if 0
diff --git a/board/esd/cpci405/cpci405.c b/board/esd/cpci405/cpci405.c
index 51e10fd..98a8584 100644
--- a/board/esd/cpci405/cpci405.c
+++ b/board/esd/cpci405/cpci405.c
@@ -32,7 +32,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern void __ft_board_setup(void *blob, bd_t *bd);
 
 #undef FPGA_DEBUG
diff --git a/board/esd/cpciiser4/cpciiser4.c b/board/esd/cpciiser4/cpciiser4.c
index 10a40be..8afc50d 100644
--- a/board/esd/cpciiser4/cpciiser4.c
+++ b/board/esd/cpciiser4/cpciiser4.c
@@ -28,9 +28,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-/*cmd_boot.c*/
-
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern void lxt971_no_sleep(void);
 
 
diff --git a/board/esd/du405/du405.c b/board/esd/du405/du405.c
index b1362a8..c32d333 100644
--- a/board/esd/du405/du405.c
+++ b/board/esd/du405/du405.c
@@ -30,9 +30,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-/*cmd_boot.c*/
-
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern void lxt971_no_sleep(void);
 
 
diff --git a/board/esd/hh405/hh405.c b/board/esd/hh405/hh405.c
index c5e9514..e9d2d36 100644
--- a/board/esd/hh405/hh405.c
+++ b/board/esd/hh405/hh405.c
@@ -236,7 +236,6 @@ static const SMI_REGS init_regs_1024x768 [] =
 #define FPGA_DEBUG
 #endif
 
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern void lxt971_no_sleep(void);
 
 /* fpga configuration data - gzip compressed and generated by bin2c */
diff --git a/board/esd/pci405/pci405.c b/board/esd/pci405/pci405.c
index 4018a7d..c1bac6a 100644
--- a/board/esd/pci405/pci405.c
+++ b/board/esd/pci405/pci405.c
@@ -34,7 +34,6 @@
 DECLARE_GLOBAL_DATA_PTR;
 
 /* Prototypes */
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 unsigned long fpga_done_state(void);
 unsigned long fpga_init_state(void);
 
diff --git a/board/esd/plu405/plu405.c b/board/esd/plu405/plu405.c
index b68ffaf..109d2dc 100644
--- a/board/esd/plu405/plu405.c
+++ b/board/esd/plu405/plu405.c
@@ -32,7 +32,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern void lxt971_no_sleep(void);
 
 /* fpga configuration data - gzip compressed and generated by bin2c */
diff --git a/board/esd/tasreg/tasreg.c b/board/esd/tasreg/tasreg.c
index 270caac..d2488b8 100644
--- a/board/esd/tasreg/tasreg.c
+++ b/board/esd/tasreg/tasreg.c
@@ -29,7 +29,6 @@
 
 
 /* Prototypes */
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 int i2c_write(uchar chip, uint addr, int alen, uchar *buffer, int len);
 int i2c_read(uchar chip, uint addr, int alen, uchar *buffer, int len);
 
diff --git a/board/esd/voh405/voh405.c b/board/esd/voh405/voh405.c
index da25212..5f28a48 100644
--- a/board/esd/voh405/voh405.c
+++ b/board/esd/voh405/voh405.c
@@ -33,7 +33,6 @@
 #define FPGA_DEBUG
 #endif
 
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 extern void lxt971_no_sleep(void);
 
 /* fpga configuration data - gzip compressed and generated by bin2c */
diff --git a/board/esd/wuh405/wuh405.c b/board/esd/wuh405/wuh405.c
index 5a65133..d8d4bb5 100644
--- a/board/esd/wuh405/wuh405.c
+++ b/board/esd/wuh405/wuh405.c
@@ -32,8 +32,6 @@
 #define FPGA_DEBUG
 #endif
 
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-
 /* fpga configuration data - gzip compressed and generated by bin2c */
 const unsigned char fpgadata[] =
 {
diff --git a/board/freescale/m5249evb/m5249evb.c b/board/freescale/m5249evb/m5249evb.c
index ac1937b..894873b 100644
--- a/board/freescale/m5249evb/m5249evb.c
+++ b/board/freescale/m5249evb/m5249evb.c
@@ -26,10 +26,6 @@
 #include <malloc.h>
 #include <asm/immap.h>
 
-
-/* Prototypes */
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-
 int checkboard (void) {
 	ulong val;
 	uchar val8;
diff --git a/board/funkwerk/vovpn-gw/vovpn-gw.c b/board/funkwerk/vovpn-gw/vovpn-gw.c
index e856ada..a4bfbc9 100644
--- a/board/funkwerk/vovpn-gw/vovpn-gw.c
+++ b/board/funkwerk/vovpn-gw/vovpn-gw.c
@@ -306,7 +306,7 @@ int misc_init_r (void)
 
 #if defined(CONFIG_HAVE_OWN_RESET)
 int
-do_reset (void *cmdtp, int flag, int argc, char * const argv[])
+do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	volatile ioport_t *iop;
 
diff --git a/board/prodrive/pdnb3/pdnb3.c b/board/prodrive/pdnb3/pdnb3.c
index 83b7914..928dd22 100644
--- a/board/prodrive/pdnb3/pdnb3.c
+++ b/board/prodrive/pdnb3/pdnb3.c
@@ -28,9 +28,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-/* Prototypes */
-int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-
 /* predefine these here for FPGA programming (before including fpga.c) */
 #define SET_FPGA(data)	*IXP425_GPIO_GPOUTR = (data)
 #define FPGA_DONE_STATE (*IXP425_GPIO_GPINR & CONFIG_SYS_FPGA_DONE)
diff --git a/board/sacsng/sacsng.c b/board/sacsng/sacsng.c
index 8edca59..61cab87 100644
--- a/board/sacsng/sacsng.c
+++ b/board/sacsng/sacsng.c
@@ -38,8 +38,6 @@
 extern void eth_loopback_test(void);
 #endif /* CONFIG_ETHER_LOOPBACK_TEST */
 
-extern int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-
 #include "clkinit.h"
 #include "ioconfig.h" /* I/O configuration table */
 
diff --git a/board/xilinx/microblaze-generic/microblaze-generic.c b/board/xilinx/microblaze-generic/microblaze-generic.c
index 744384c..183e4dc 100644
--- a/board/xilinx/microblaze-generic/microblaze-generic.c
+++ b/board/xilinx/microblaze-generic/microblaze-generic.c
@@ -31,7 +31,7 @@
 #include <asm/microblaze_intc.h>
 #include <asm/asm.h>
 
-void do_reset (void)
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 #ifdef CONFIG_SYS_GPIO_0
 	*((unsigned long *)(CONFIG_SYS_GPIO_0_ADDR)) =
@@ -41,6 +41,7 @@ void do_reset (void)
 	puts ("Reseting board\n");
 	asm ("bra r0");
 #endif
+	return 0;
 }
 
 int gpio_init (void)
diff --git a/board/zeus/zeus.c b/board/zeus/zeus.c
index a29e518..7e33d3f 100644
--- a/board/zeus/zeus.c
+++ b/board/zeus/zeus.c
@@ -44,7 +44,6 @@ extern uchar default_environment[];
 
 ulong flash_get_size(ulong base, int banknum);
 void env_crc_update(void);
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 
 static u32 start_time;
 
diff --git a/common/cmd_boot.c b/common/cmd_boot.c
index 72dacaa..7b603d3 100644
--- a/common/cmd_boot.c
+++ b/common/cmd_boot.c
@@ -67,8 +67,6 @@ U_BOOT_CMD(
 	"      passing 'arg' as arguments"
 );
 
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-
 U_BOOT_CMD(
 	reset, 1, 0,	do_reset,
 	"Perform RESET of the CPU",
diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index db59e6f..ab61eb3 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -93,7 +93,6 @@ static int fit_check_kernel (const void *fit, int os_noffset, int verify);
 
 static void *boot_get_kernel (cmd_tbl_t *cmdtp, int flag,int argc, char * const argv[],
 		bootm_headers_t *images, ulong *os_data, ulong *os_len);
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 
 /*
  *  Continue booting an OS image; caller already has:
diff --git a/common/hush.c b/common/hush.c
index 2482506..e6518c1 100644
--- a/common/hush.c
+++ b/common/hush.c
@@ -1021,9 +1021,7 @@ static void get_user_input(struct in_str *i)
 	static char the_command[CONFIG_SYS_CBSIZE];
 
 #ifdef CONFIG_BOOT_RETRY_TIME
-#  ifdef CONFIG_RESET_TO_RETRY
-	extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-#  else
+#  ifndef CONFIG_RESET_TO_RETRY
 #	error "This currently only works with CONFIG_RESET_TO_RETRY enabled"
 #  endif
 	reset_cmd_timeout();
diff --git a/common/main.c b/common/main.c
index bbb208b..878cffd 100644
--- a/common/main.c
+++ b/common/main.c
@@ -50,10 +50,6 @@ DECLARE_GLOBAL_DATA_PTR;
 void inline __show_boot_progress (int val) {}
 void show_boot_progress (int val) __attribute__((weak, alias("__show_boot_progress")));
 
-#if defined(CONFIG_BOOT_RETRY_TIME) && defined(CONFIG_RESET_TO_RETRY)
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);		/* for do_reset() prototype */
-#endif
-
 #if defined(CONFIG_UPDATE_TFTP)
 void update_tftp (void);
 #endif /* CONFIG_UPDATE_TFTP */
diff --git a/include/command.h b/include/command.h
index 72eab9d..81aa019 100644
--- a/include/command.h
+++ b/include/command.h
@@ -99,6 +99,7 @@ extern int cmd_get_data_size(char* arg, int default_size);
 extern int do_bootd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 #endif
 extern int do_bootm(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
+extern int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 
 #endif	/* __ASSEMBLY__ */
 
diff --git a/include/exports.h b/include/exports.h
index 7404a7c..6382311 100644
--- a/include/exports.h
+++ b/include/exports.h
@@ -19,7 +19,6 @@ void free(void*);
 void __udelay(unsigned long);
 unsigned long get_timer(unsigned long);
 int vprintf(const char *, va_list);
-void do_reset (void);
 unsigned long simple_strtoul(const char *cp,char **endp,unsigned int base);
 char *getenv (char *name);
 int setenv (char *varname, char *varvalue);
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index aa214dd..61e6f0d 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -17,8 +17,6 @@
 #include <common.h>
 #if !defined (CONFIG_PANIC_HANG)
 #include <command.h>
-/*cmd_boot.c*/
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 #endif
 
 #include <div64.h>
-- 
1.7.3.1

^ permalink raw reply related

* Re: including sparse headers in C++ code
From: Al Viro @ 2010-10-20  7:40 UTC (permalink / raw)
  To: Christopher Li; +Cc: Tomas Klacko, Josh Triplett, linux-sparse
In-Reply-To: <AANLkTin1VwzZ=nwEpfxD4WBXjo=Pyn0a+s=DnsSvQOg8@mail.gmail.com>

On Tue, Oct 19, 2010 at 04:07:42PM -0700, Christopher Li wrote:
> On Tue, Oct 19, 2010 at 2:31 PM, Al Viro <viro@zeniv.linux.org.uk> wrote:
> > On Tue, Oct 19, 2010 at 10:03:42PM +0200, Tomas Klacko wrote:
> >> @@ -188,7 +188,7 @@ static struct symbol_op char_op = {
> >> ? ? ? .type = KW_SPECIFIER,
> >> ? ? ? .test = Set_T|Set_Long|Set_Short,
> >> ? ? ? .set = Set_T|Set_Char,
> >> - ? ? .class = CChar,
> >> + ? ? .klass = CChar,
> >> ?};
> >
> > Egads... ?Why not "kC1455", while you are at it? ?Seriously, if you feel the
> > need to rename that, at least use something more palatable. ?Hell, even
> > adjust_type would be better...
> 
> I suggested the "klass", my bad. How about your suggest a perfect name
> and we will use it. Is "adjust_type" good enough?

type_group, probably...  FWIW, I'd probably spell that enum in parse.c as
	CInt = 0, CSInt = 1, CUInt = 2, CReal = 3, CChar = 4,
	CSChar = CChar + CSInt, CUChar = CChar + CUInt
while we are at it.

^ permalink raw reply

* RE: [PATCH/RFC v3 0/7] Videobuf2 framework
From: Marek Szyprowski @ 2010-10-20  7:40 UTC (permalink / raw)
  To: 'Hans Verkuil'; +Cc: linux-media, pawel, kyungmin.park
In-Reply-To: <201010200914.32868.hverkuil@xs4all.nl>

Hello,

On Wednesday, October 20, 2010 9:15 AM wrote:

> On Wednesday, October 20, 2010 08:41:06 Marek Szyprowski wrote:
> > Hello,
> >
> > As I promissed I continue the development of the VideoBuf2 at Samsung
> > until Pawel finds some spare time to help us. This is a third version of
> > the framework. Besides the minor bugfixes here and there I've added a
> > complete read() callback emulator. This emulator provides 2 types of
> > read() operation - 'streaming' and 'one shot'. It is suitable to replace
> > both videobuf_read_stream() and videobuf_read_one() methods from the old
> > videobuf.
> 
> One thing I never understood: what is the point of supporting 'one shot' read
> mode? Why not support just streaming? Does anyone know?

I can imagine that some simple cameras that capture pure JPG frames might want
to use 'one shot' mode. This enables easier scripting and things like 
'cat /dev/video >capture.jpg' working. If you think that 'one shot' mode should
be removed - let me know.

> Another question: how hard is it to support write mode as well? I think
> vb2 should support both. I suspect that once we have a read emulator it isn't
> difficult to make a write emulator too.

Well, that's possible. If you really think that write() emulator is also
required, I can implement both. This shouldn't be much work.

> A last remark: the locking has changed recently in videobuf due to the work
> done on eliminating the BKL.  It's probably a good idea to incorporate those
> changes as well in vb2.

Yes, I noticed that there are a lot of changes in for-2.6.37 staging tree, I
will try to get through them and update relevant parts of vb2. The current
version the vb2 patches is based on 2.6.36-rc8. Kernel tree with vb2 patches
(and the required multiplane patches) will be available in a few hours on:

http://git.infradead.org/users/kmpark/linux-2.6-samsung/shortlog/refs/heads/v4l/vb2

Best regards
--
Marek Szyprowski
Samsung Poland R&D Center


^ permalink raw reply

* [PATCH] Documentation about RS485 serial communications
From: Nicolas Ferre @ 2010-10-20  7:36 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <i9kk4o$svc$1@dough.gmane.org>

Le 19/10/2010 19:22, Grant Edwards :
> On 2010-10-19, Alexander Stein <alexander.stein@systec-electronic.com> wrote:
>> On Tuesday 19 October 2010, 16:29:48 Grant Edwards wrote:
>>> On 2010-10-19, Claudio Scordino <claudio@evidence.eu.com> wrote:
>>>> +2. HARDWARE-RELATED CONSIDERATIONS
>>>> +
>>>> +   Some CPUs (e.g., Atmel AT91) contain a transceiver capable of working
>>>> both +   as RS232 and RS485.
>>>
>>> Pardon my curiosity, but I've looked at a few AT91 parts, and I've
>>> never seen on with an internal transceiver -- nor does Google seem
>>> able to find any.
>>>
>>> Frankly, I'd be pretty surprised, since it would be very difficult
>>> (fab-wise), to build a mircoprocessor with I/O cells capable of
>>> withstanding the voltage levels specified in RS232.
>>>
>>> Can you specify to which parts you're referring?
>>
>> I doubt the AT91 do have an internal transceiver but it has a
>> dedicated pin feature (RTS or CTS or something) which can be used to
>> switch between RS232 and RS485 by setting a bit in the USART provided
>> the pin is connected properly.
> 
> Yes, the AT91 UARTs do have a built-in half-duplex mode that will
> automatically control line direction by toggling RTS.
> 
> That can used to control external half-duplex hardware like an RS485
> transceiver or any RS232-connected half-duplex device like some
> modems.

Yes, that is a vocabulary misuse to talk about "transceiver" but the
idea of Claudio's documentation is that the USART can work in both full
and half duplex and then can comply with RS-232 and RS-485 modes like
you describe precisely in your post.

> Though the Atmel docs refer to it as "RS485 mode" there is no RS485
> transceiver in the AT91 parts (AFAIK), and "RS485 mode" isn't specific
> to RS485 - it can be used with any external half-duplex hardware.

Yes, for sure you will have to use an external transceiver.

Thanks for clarifications.

Best regards,
-- 
Nicolas Ferre

^ permalink raw reply

* [U-Boot] [PATCH] do_bootd: unify duplicate prototypes
From: Mike Frysinger @ 2010-10-20  7:36 UTC (permalink / raw)
  To: u-boot

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 common/hush.c     |    4 ----
 common/main.c     |    2 --
 include/command.h |    3 +++
 3 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/common/hush.c b/common/hush.c
index 4dd9513..2482506 100644
--- a/common/hush.c
+++ b/common/hush.c
@@ -93,8 +93,6 @@
 #include <common.h>        /* readline */
 #include <hush.h>
 #include <command.h>        /* find_cmd */
-/*cmd_boot.c*/
-extern int do_bootd (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);      /* do_bootd */
 #endif
 #ifndef __U_BOOT__
 #include <ctype.h>     /* isalpha, isdigit */
@@ -1681,8 +1679,6 @@ static int run_pipe_real(struct pipe *pi)
 			} else {
 				int rcode;
 #if defined(CONFIG_CMD_BOOTD)
-	    extern int do_bootd (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-
 				/* avoid "bootd" recursion */
 				if (cmdtp->cmd == do_bootd) {
 					if (flag & CMD_FLAG_BOOTD) {
diff --git a/common/main.c b/common/main.c
index d97ccd7..bbb208b 100644
--- a/common/main.c
+++ b/common/main.c
@@ -54,8 +54,6 @@ void show_boot_progress (int val) __attribute__((weak, alias("__show_boot_progre
 extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);		/* for do_reset() prototype */
 #endif
 
-extern int do_bootd (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
-
 #if defined(CONFIG_UPDATE_TFTP)
 void update_tftp (void);
 #endif /* CONFIG_UPDATE_TFTP */
diff --git a/include/command.h b/include/command.h
index 7cebf8a..72eab9d 100644
--- a/include/command.h
+++ b/include/command.h
@@ -95,6 +95,9 @@ extern int cmd_auto_complete(const char *const prompt, char *buf, int *np, int *
 extern int cmd_get_data_size(char* arg, int default_size);
 #endif
 
+#ifdef CONFIG_CMD_BOOTD
+extern int do_bootd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
+#endif
 extern int do_bootm(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 
 #endif	/* __ASSEMBLY__ */
-- 
1.7.3.1

^ permalink raw reply related

* [U-Boot] [PATCH] do_bootm: unify duplicate prototypes
From: Mike Frysinger @ 2010-10-20  7:35 UTC (permalink / raw)
  To: u-boot

The duplication of the do_bootm prototype has gotten out of hand,
and they're pretty much all outdated (wrt constness).  Unify them
all in command.h.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 board/barco/barco.c            |    1 -
 board/cm5200/fwupdate.c        |    1 -
 board/esd/common/cmd_loadpci.c |    1 -
 board/esd/cpci750/cpci750.c    |    1 -
 board/esd/pci405/cmd_pci405.c  |    2 --
 board/pn62/cmd_pn62.c          |    2 --
 common/cmd_fdc.c               |    1 -
 common/cmd_fdos.c              |    1 -
 common/cmd_ide.c               |    1 -
 common/cmd_nand.c              |    1 -
 common/cmd_net.c               |    2 --
 common/cmd_scsi.c              |    1 -
 common/cmd_usb.c               |    1 -
 include/command.h              |    2 ++
 14 files changed, 2 insertions(+), 16 deletions(-)

diff --git a/board/barco/barco.c b/board/barco/barco.c
index 263a288..bcf6af2 100644
--- a/board/barco/barco.c
+++ b/board/barco/barco.c
@@ -257,7 +257,6 @@ void barcobcd_boot (void)
 	char *bootm_args[2];
 	char *buf;
 	int cnt;
-	extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
 
 	buf = (char *)(0x00800000);
 	/* make certain there are enough chars to print the command line here!
diff --git a/board/cm5200/fwupdate.c b/board/cm5200/fwupdate.c
index c1a4a19..9d4eadc 100644
--- a/board/cm5200/fwupdate.c
+++ b/board/cm5200/fwupdate.c
@@ -35,7 +35,6 @@
 
 #include "fwupdate.h"
 
-extern int do_bootm(cmd_tbl_t *, int, int, char * const []);
 extern long do_fat_read(const char *, void *, unsigned long, int);
 extern int do_fat_fsload(cmd_tbl_t *, int, int, char * const []);
 
diff --git a/board/esd/common/cmd_loadpci.c b/board/esd/common/cmd_loadpci.c
index 87da27d..8f4ad84 100644
--- a/board/esd/common/cmd_loadpci.c
+++ b/board/esd/common/cmd_loadpci.c
@@ -29,7 +29,6 @@
 
 #if defined(CONFIG_CMD_BSP)
 
-extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
 extern int do_source (cmd_tbl_t *, int, int, char *[]);
 
 #define ADDRMASK 0xfffff000
diff --git a/board/esd/cpci750/cpci750.c b/board/esd/cpci750/cpci750.c
index f9f7c7f..f27d65e 100644
--- a/board/esd/cpci750/cpci750.c
+++ b/board/esd/cpci750/cpci750.c
@@ -122,7 +122,6 @@ static char show_config_tab[][15] = {{"PCI0DLL_2     "},  /* 31 */
 
 extern flash_info_t flash_info[];
 
-extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
 extern int do_bootvx (cmd_tbl_t *, int, int, char *[]);
 
 /* ------------------------------------------------------------------------- */
diff --git a/board/esd/pci405/cmd_pci405.c b/board/esd/pci405/cmd_pci405.c
index 2fc9fda..13f9019 100644
--- a/board/esd/pci405/cmd_pci405.c
+++ b/board/esd/pci405/cmd_pci405.c
@@ -34,8 +34,6 @@
 
 #if defined(CONFIG_CMD_BSP)
 
-extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
-
 /*
  * Command loadpci: wait for signal from host and boot image.
  */
diff --git a/board/pn62/cmd_pn62.c b/board/pn62/cmd_pn62.c
index 58c680b..939cb4a 100644
--- a/board/pn62/cmd_pn62.c
+++ b/board/pn62/cmd_pn62.c
@@ -31,8 +31,6 @@
 
 #if defined(CONFIG_CMD_BSP)
 
-extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
-
 /*
  * Command led: controls the various LEDs 0..11 on the PN62 card.
  */
diff --git a/common/cmd_fdc.c b/common/cmd_fdc.c
index 831a07f..cdb050c 100644
--- a/common/cmd_fdc.c
+++ b/common/cmd_fdc.c
@@ -826,7 +826,6 @@ int do_fdcboot (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 	/* Check if we should attempt an auto-start */
 	if (((ep = getenv("autostart")) != NULL) && (strcmp(ep,"yes") == 0)) {
 		char *local_args[2];
-		extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
 
 		local_args[0] = argv[0];
 		local_args[1] = NULL;
diff --git a/common/cmd_fdos.c b/common/cmd_fdos.c
index a8822d9..2af4ca0 100644
--- a/common/cmd_fdos.c
+++ b/common/cmd_fdos.c
@@ -101,7 +101,6 @@ int do_fdosboot(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
     /* Check if we should attempt an auto-start */
     if (((ep = getenv("autostart")) != NULL) && (strcmp(ep,"yes") == 0)) {
 	char *local_args[2];
-	extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
 	local_args[0] = argv[0];
 	local_args[1] = NULL;
 	printf ("Automatic boot of image at addr 0x%08lX ...\n", load_addr);
diff --git a/common/cmd_ide.c b/common/cmd_ide.c
index ea0f4a7..df7bdf5 100644
--- a/common/cmd_ide.c
+++ b/common/cmd_ide.c
@@ -498,7 +498,6 @@ int do_diskboot (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 	/* Check if we should attempt an auto-start */
 	if (((ep = getenv("autostart")) != NULL) && (strcmp(ep,"yes") == 0)) {
 		char *local_args[2];
-		extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
 
 		local_args[0] = argv[0];
 		local_args[1] = NULL;
diff --git a/common/cmd_nand.c b/common/cmd_nand.c
index 634d036..6783645 100644
--- a/common/cmd_nand.c
+++ b/common/cmd_nand.c
@@ -789,7 +789,6 @@ static int nand_load_image(cmd_tbl_t *cmdtp, nand_info_t *nand,
 	/* Check if we should attempt an auto-start */
 	if (((ep = getenv("autostart")) != NULL) && (strcmp(ep, "yes") == 0)) {
 		char *local_args[2];
-		extern int do_bootm(cmd_tbl_t *, int, int, char *[]);
 
 		local_args[0] = cmd;
 		local_args[1] = NULL;
diff --git a/common/cmd_net.c b/common/cmd_net.c
index b131006..090ecea 100644
--- a/common/cmd_net.c
+++ b/common/cmd_net.c
@@ -28,8 +28,6 @@
 #include <command.h>
 #include <net.h>
 
-extern int do_bootm (cmd_tbl_t *, int, int, char * const []);
-
 static int netboot_common (proto_t, cmd_tbl_t *, int , char * const []);
 
 int do_bootp (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
diff --git a/common/cmd_scsi.c b/common/cmd_scsi.c
index 6b937f9..be4fe74 100644
--- a/common/cmd_scsi.c
+++ b/common/cmd_scsi.c
@@ -329,7 +329,6 @@ int do_scsiboot (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 	/* Check if we should attempt an auto-start */
 	if (((ep = getenv("autostart")) != NULL) && (strcmp(ep,"yes") == 0)) {
 		char *local_args[2];
-		extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
 		local_args[0] = argv[0];
 		local_args[1] = NULL;
 		printf ("Automatic boot of image at addr 0x%08lX ...\n", addr);
diff --git a/common/cmd_usb.c b/common/cmd_usb.c
index 226ea0d..b04a8df 100644
--- a/common/cmd_usb.c
+++ b/common/cmd_usb.c
@@ -490,7 +490,6 @@ int do_usbboot(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 	/* Check if we should attempt an auto-start */
 	if (((ep = getenv("autostart")) != NULL) && (strcmp(ep, "yes") == 0)) {
 		char *local_args[2];
-		extern int do_bootm(cmd_tbl_t *, int, int, char *[]);
 		local_args[0] = argv[0];
 		local_args[1] = NULL;
 		printf("Automatic boot of image at addr 0x%08lX ...\n", addr);
diff --git a/include/command.h b/include/command.h
index a153ce9..7cebf8a 100644
--- a/include/command.h
+++ b/include/command.h
@@ -95,6 +95,8 @@ extern int cmd_auto_complete(const char *const prompt, char *buf, int *np, int *
 extern int cmd_get_data_size(char* arg, int default_size);
 #endif
 
+extern int do_bootm(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
+
 #endif	/* __ASSEMBLY__ */
 
 /*
-- 
1.7.3.1

^ permalink raw reply related

* Re: [PATCH 1/2]percpu: introduce read mostly percpu API
From: Andi Kleen @ 2010-10-20  7:35 UTC (permalink / raw)
  To: Eric Dumazet
  Cc: Shaohua Li, lkml, Ingo Molnar, hpa@zytor.com, Andi Kleen,
	Chen, Tim C
In-Reply-To: <1287551880.2700.79.camel@edumazet-laptop>

On Wed, Oct 20, 2010 at 07:18:00AM +0200, Eric Dumazet wrote:
> Le mercredi 20 octobre 2010 à 11:07 +0800, Shaohua Li a écrit :
> > Add a new readmostly percpu section and api, next patch will use it.
> > 
> > Signed-off-by: Shaohua Li <shaohua.li@intel.com>
> > ---
> 
> 
> Could you precisely describe why grouping together read mostly percpu
> variables is a win ? Especially when you add in your next patch a single
> variable ?

Not Shaohua, but I can explain it:

There is some per cpu data which is read by other CPUs. In this 
case it's a win to use the separate section because you avoid false sharing 
and the cache line can be kept in shared mode on all CPUs.

The next patch has an example of such data: data which is read
by another CPU to send something to the target CPU.

I think the concept is useful and makes a lot of sense.
The alternative would be __read_mostly NR_CPUS arrays, but 
we all know that is a bad idea because it wastes too much memory
on CONFIG_MAX_SMP setups.

-Andi


^ permalink raw reply

* Re: [PATCH] drivers/hwmon: Use pr_fmt and pr_<level>
From: Jean Delvare @ 2010-10-20  7:34 UTC (permalink / raw)
  To: Joe Perches
  Cc: Guenter Roeck, Hans de Goede, Alistair John Strachan,
	Henrik Rydberg, Mark M. Hoffman, Luca Tettamanti, Fenghua Yu,
	Juerg Haefliger, Eric Piel, Jim Cromie, Roger Lucas,
	lm-sensors@lm-sensors.org, LKML
In-Reply-To: <1287547662.10409.618.camel@Joe-Laptop>

On Tue, 19 Oct 2010 21:07:42 -0700, Joe Perches wrote:
> On Tue, 2010-10-19 at 20:53 -0700, Guenter Roeck wrote:
> > On Tue, Oct 19, 2010 at 11:34:18PM -0400, Joe Perches wrote:
> > > On Tue, 2010-10-19 at 20:29 -0700, Guenter Roeck wrote:
> > > > There are several lines longer than 80 characters.
> > > > Does this rule no longer apply ?
> > > 80 columns isn't checked for printk format strings.
> > Interesting.
> > > A kernel general preference may be to keep formats as
> > > a single string without line breaks so that grep works
> > > better.
> > > > Oddly enough, there are only four checkpatch warnings about long lines,
> > > > even though there are many more.
> > > The version I use doesn't show any warnings.
> > checkpatch.pl from both v2.6.36-rc7 and v2.6.36-rc6 do report warnings.
> > Looks like those versions flag long lines for pr_warn. Is your version
> > older or newer ?
> 
> Newer.  It adds pr_warn to the exempted list, not just pr_warning.

I hope there's a plan to get rid of one of these? Having two macros
doing exactly the same thing will confuse everybody.

> > Anyway, would it be possible to split the patch into one patch per file ?
> 
> Oh sure.  It's trivial to do that.
> 
> > I don't know how Jean thinks about it, but in my opinion it would be cleaner,
> > permit revert on a single patch/file instead of having to revert the entire series,
> > it would simplify review, and it would make it much easier to cherry-pick 
> > pieces into other releases if needed.
> 
> Jean, do you have a preference?
> I'll resubmit if you want it separated.

Jean has no preference when sleeping.

Now Jean is awake and can express himself on the matter:

* This isn't the kind of fixes we want to cherry-pick from. We're not
  fixing any bug here, are we? I certainly hope that a real bug fix
  wouldn't be hidden within a larger patch, but would have the separate
  patch it deserves. At which point we no longer care if the rest is
  one large patch or one patch per driver.

* I don't see us reverting that kind of patch either. If we don't like
  the changes for whatever reason, we don't take them in the first
  place. Once in, we're not going to change our minds.

* 32 patches for a simple cleanup is actually a lot more work for me
  than a single large patch. It's cheaper for me to do minor
  adjustments to a large patch than to apply 32 patches individually.

* That being said, now that the hwmon subsystem maintainer is a shared
  duty between Guenter and myself, there's no single place where we can
  keep a patch touching many drivers and ensure it doesn't conflict
  with the changes in the other tree. But I would think   this is
  something for Gunter and myself to sort out, not patch contributors.

I currently have pending patches to the following hwmon drivers in my
tree: adt7475, ams, asc7621, hdaps, it87, k8temp, lm75, lm85, lm90,
pcf8591, s3c-hwmon, w83795. Two of these are affected by Joe's
patch(es). Guenter, what about you?

Joe, would you mind providing a similar patch for the driver at:
  http://khali.linux-fr.org/devel/misc/w83795/w83795.c
This driver will be added to kernel 2.6.37.

-- 
Jean Delvare

^ permalink raw reply

* [U-Boot] [PATCH] command_t: punt unused type
From: Mike Frysinger @ 2010-10-20  7:35 UTC (permalink / raw)
  To: u-boot

The recent command clean up to constify the argv option to command funcs
missed the command_t type itself.  This is probably because there are no
build time warnings from it because no one is actually using this thing.
So just punt it rather than fix it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 include/command.h |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/include/command.h b/include/command.h
index 5c14616..a153ce9 100644
--- a/include/command.h
+++ b/include/command.h
@@ -86,8 +86,6 @@ extern int cmd_auto_complete(const char *const prompt, char *buf, int *np, int *
  * void function (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
  */
 
-typedef	void	command_t (cmd_tbl_t *, int, int, char *[]);
-
 #if defined(CONFIG_CMD_MEMORY)		\
     || defined(CONFIG_CMD_I2C)		\
     || defined(CONFIG_CMD_ITEST)	\
-- 
1.7.3.1

^ permalink raw reply related

* [PATCH v2] ARM: S3C64XX: add support for mach-mini6410
From: Kukjin Kim @ 2010-10-20  7:34 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <4CBDD33B.5000007@gmail.com>

Darius Augulis wrote:
> 
> Kukjin,
> 
> please replace old patch in my previously sent series with this new one.
> Other I think should be OK. Could you please add this series to your
> tree? I'm afraid it's too late to have it in 2.3.37 even thought I sent
> them early enough.
> 
Don't worry about that. :-)

> Thanks,
> Darius
> 
> 
> On 10/19/2010 08:11 PM, Darius Augulis wrote:
> > Add support for mini6410 board from FriendlyARM
> >
> > Signed-off-by: Darius Augulis<augulis.darius@gmail.com>
> > ---
> >
> > Changelog since v1:
> >   - Removed .phys_io and .io_pg_offst from MACHINE_START
> >

(snip)

> > +
> > +MACHINE_START(MINI6410, "MINI6410")
> > +	/* Maintainer: Darius Augulis<augulis.darius@gmail.com>  */
> > +	.boot_params	= S3C64XX_PA_SDRAM + 0x100,
> > +	.init_irq	= s3c6410_init_irq,
> > +	.map_io		= mini6410_map_io,
> > +	.init_machine	= mini6410_machine_init,
> > +	.timer		=&s3c24xx_timer,
> > +MACHINE_END

Russell,

I'm confusing about commit 861bd81ee62a0d6759144c22909a8a3938951656 ("arm:
remove machine_desc.io_pg_offst and .phys_io") because couldn't find it in
your -devel and -master.

Anyway...should I remove .io_pg_offst and .phys_io of missed stuff from
commit 861bd81 like this which will be merged in the -next in my tree?

Thanks.

Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.

^ permalink raw reply

* Re: [lm-sensors] [PATCH] drivers/hwmon: Use pr_fmt and pr_<level>
From: Jean Delvare @ 2010-10-20  7:34 UTC (permalink / raw)
  To: Joe Perches
  Cc: Guenter Roeck, Hans de Goede, Alistair John Strachan,
	Henrik Rydberg, Mark M. Hoffman, Luca Tettamanti, Fenghua Yu,
	Juerg Haefliger, Eric Piel, Jim Cromie, Roger Lucas,
	lm-sensors@lm-sensors.org, LKML
In-Reply-To: <1287547662.10409.618.camel@Joe-Laptop>

On Tue, 19 Oct 2010 21:07:42 -0700, Joe Perches wrote:
> On Tue, 2010-10-19 at 20:53 -0700, Guenter Roeck wrote:
> > On Tue, Oct 19, 2010 at 11:34:18PM -0400, Joe Perches wrote:
> > > On Tue, 2010-10-19 at 20:29 -0700, Guenter Roeck wrote:
> > > > There are several lines longer than 80 characters.
> > > > Does this rule no longer apply ?
> > > 80 columns isn't checked for printk format strings.
> > Interesting.
> > > A kernel general preference may be to keep formats as
> > > a single string without line breaks so that grep works
> > > better.
> > > > Oddly enough, there are only four checkpatch warnings about long lines,
> > > > even though there are many more.
> > > The version I use doesn't show any warnings.
> > checkpatch.pl from both v2.6.36-rc7 and v2.6.36-rc6 do report warnings.
> > Looks like those versions flag long lines for pr_warn. Is your version
> > older or newer ?
> 
> Newer.  It adds pr_warn to the exempted list, not just pr_warning.

I hope there's a plan to get rid of one of these? Having two macros
doing exactly the same thing will confuse everybody.

> > Anyway, would it be possible to split the patch into one patch per file ?
> 
> Oh sure.  It's trivial to do that.
> 
> > I don't know how Jean thinks about it, but in my opinion it would be cleaner,
> > permit revert on a single patch/file instead of having to revert the entire series,
> > it would simplify review, and it would make it much easier to cherry-pick 
> > pieces into other releases if needed.
> 
> Jean, do you have a preference?
> I'll resubmit if you want it separated.

Jean has no preference when sleeping.

Now Jean is awake and can express himself on the matter:

* This isn't the kind of fixes we want to cherry-pick from. We're not
  fixing any bug here, are we? I certainly hope that a real bug fix
  wouldn't be hidden within a larger patch, but would have the separate
  patch it deserves. At which point we no longer care if the rest is
  one large patch or one patch per driver.

* I don't see us reverting that kind of patch either. If we don't like
  the changes for whatever reason, we don't take them in the first
  place. Once in, we're not going to change our minds.

* 32 patches for a simple cleanup is actually a lot more work for me
  than a single large patch. It's cheaper for me to do minor
  adjustments to a large patch than to apply 32 patches individually.

* That being said, now that the hwmon subsystem maintainer is a shared
  duty between Guenter and myself, there's no single place where we can
  keep a patch touching many drivers and ensure it doesn't conflict
  with the changes in the other tree. But I would think   this is
  something for Gunter and myself to sort out, not patch contributors.

I currently have pending patches to the following hwmon drivers in my
tree: adt7475, ams, asc7621, hdaps, it87, k8temp, lm75, lm85, lm90,
pcf8591, s3c-hwmon, w83795. Two of these are affected by Joe's
patch(es). Guenter, what about you?

Joe, would you mind providing a similar patch for the driver at:
  http://khali.linux-fr.org/devel/misc/w83795/w83795.c
This driver will be added to kernel 2.6.37.

-- 
Jean Delvare

_______________________________________________
lm-sensors mailing list
lm-sensors@lm-sensors.org
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors

^ permalink raw reply


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.