Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c226feb0 authored by Grant Likely's avatar Grant Likely
Browse files

Merge branch 'for_3.0/gpio-fixes' of...

Merge branch 'for_3.0/gpio-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into gpio/merge
parents 32919a28 85ec7b97
Loading
Loading
Loading
Loading
+4 −1
Original line number Original line Diff line number Diff line
@@ -999,7 +999,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
			With this option on every unmap_single operation will
			With this option on every unmap_single operation will
			result in a hardware IOTLB flush operation as opposed
			result in a hardware IOTLB flush operation as opposed
			to batching them for performance.
			to batching them for performance.

		sp_off [Default Off]
			By default, super page will be supported if Intel IOMMU
			has the capability. With this option, super page will
			not be supported.
	intremap=	[X86-64, Intel-IOMMU]
	intremap=	[X86-64, Intel-IOMMU]
			Format: { on (default) | off | nosid }
			Format: { on (default) | off | nosid }
			on	enable Interrupt Remapping (default)
			on	enable Interrupt Remapping (default)
+1 −1
Original line number Original line Diff line number Diff line
# This creates the demonstration utility "lguest" which runs a Linux guest.
# This creates the demonstration utility "lguest" which runs a Linux guest.
# Missing headers?  Add "-I../../include -I../../arch/x86/include"
# Missing headers?  Add "-I../../../include -I../../../arch/x86/include"
CFLAGS:=-m32 -Wall -Wmissing-declarations -Wmissing-prototypes -O3 -U_FORTIFY_SOURCE
CFLAGS:=-m32 -Wall -Wmissing-declarations -Wmissing-prototypes -O3 -U_FORTIFY_SOURCE


all: lguest
all: lguest
+2 −20
Original line number Original line Diff line number Diff line
@@ -49,7 +49,7 @@
#include <linux/virtio_rng.h>
#include <linux/virtio_rng.h>
#include <linux/virtio_ring.h>
#include <linux/virtio_ring.h>
#include <asm/bootparam.h>
#include <asm/bootparam.h>
#include "../../include/linux/lguest_launcher.h"
#include "../../../include/linux/lguest_launcher.h"
/*L:110
/*L:110
 * We can ignore the 42 include files we need for this program, but I do want
 * We can ignore the 42 include files we need for this program, but I do want
 * to draw attention to the use of kernel-style types.
 * to draw attention to the use of kernel-style types.
@@ -135,9 +135,6 @@ struct device {
	/* Is it operational */
	/* Is it operational */
	bool running;
	bool running;


	/* Does Guest want an intrrupt on empty? */
	bool irq_on_empty;

	/* Device-specific data. */
	/* Device-specific data. */
	void *priv;
	void *priv;
};
};
@@ -637,9 +634,6 @@ static void trigger_irq(struct virtqueue *vq)


	/* If they don't want an interrupt, don't send one... */
	/* If they don't want an interrupt, don't send one... */
	if (vq->vring.avail->flags & VRING_AVAIL_F_NO_INTERRUPT) {
	if (vq->vring.avail->flags & VRING_AVAIL_F_NO_INTERRUPT) {
		/* ... unless they've asked us to force one on empty. */
		if (!vq->dev->irq_on_empty
		    || lg_last_avail(vq) != vq->vring.avail->idx)
		return;
		return;
	}
	}


@@ -1057,15 +1051,6 @@ static void create_thread(struct virtqueue *vq)
	close(vq->eventfd);
	close(vq->eventfd);
}
}


static bool accepted_feature(struct device *dev, unsigned int bit)
{
	const u8 *features = get_feature_bits(dev) + dev->feature_len;

	if (dev->feature_len < bit / CHAR_BIT)
		return false;
	return features[bit / CHAR_BIT] & (1 << (bit % CHAR_BIT));
}

static void start_device(struct device *dev)
static void start_device(struct device *dev)
{
{
	unsigned int i;
	unsigned int i;
@@ -1079,8 +1064,6 @@ static void start_device(struct device *dev)
		verbose(" %02x", get_feature_bits(dev)
		verbose(" %02x", get_feature_bits(dev)
			[dev->feature_len+i]);
			[dev->feature_len+i]);


	dev->irq_on_empty = accepted_feature(dev, VIRTIO_F_NOTIFY_ON_EMPTY);

	for (vq = dev->vq; vq; vq = vq->next) {
	for (vq = dev->vq; vq; vq = vq->next) {
		if (vq->service)
		if (vq->service)
			create_thread(vq);
			create_thread(vq);
@@ -1564,7 +1547,6 @@ static void setup_tun_net(char *arg)
	/* Set up the tun device. */
	/* Set up the tun device. */
	configure_device(ipfd, tapif, ip);
	configure_device(ipfd, tapif, ip);


	add_feature(dev, VIRTIO_F_NOTIFY_ON_EMPTY);
	/* Expect Guest to handle everything except UFO */
	/* Expect Guest to handle everything except UFO */
	add_feature(dev, VIRTIO_NET_F_CSUM);
	add_feature(dev, VIRTIO_NET_F_CSUM);
	add_feature(dev, VIRTIO_NET_F_GUEST_CSUM);
	add_feature(dev, VIRTIO_NET_F_GUEST_CSUM);
+1 −1
Original line number Original line Diff line number Diff line
VERSION = 3
VERSION = 3
PATCHLEVEL = 0
PATCHLEVEL = 0
SUBLEVEL = 0
SUBLEVEL = 0
EXTRAVERSION = -rc1
EXTRAVERSION = -rc2
NAME = Sneaky Weasel
NAME = Sneaky Weasel


# *DOCUMENTATION*
# *DOCUMENTATION*
+56 −0
Original line number Original line Diff line number Diff line
@@ -249,6 +249,29 @@ static int slot_cn7_get_cd(struct platform_device *pdev)
{
{
	return !gpio_get_value(GPIO_PORT41);
	return !gpio_get_value(GPIO_PORT41);
}
}
/* MERAM */
static struct sh_mobile_meram_info meram_info = {
	.addr_mode      = SH_MOBILE_MERAM_MODE1,
};

static struct resource meram_resources[] = {
	[0] = {
		.name   = "MERAM",
		.start  = 0xe8000000,
		.end    = 0xe81fffff,
		.flags  = IORESOURCE_MEM,
	},
};

static struct platform_device meram_device = {
	.name           = "sh_mobile_meram",
	.id             = 0,
	.num_resources  = ARRAY_SIZE(meram_resources),
	.resource       = meram_resources,
	.dev            = {
		.platform_data = &meram_info,
	},
};


/* SH_MMCIF */
/* SH_MMCIF */
static struct resource sh_mmcif_resources[] = {
static struct resource sh_mmcif_resources[] = {
@@ -447,13 +470,29 @@ const static struct fb_videomode ap4evb_lcdc_modes[] = {
#endif
#endif
	},
	},
};
};
static struct sh_mobile_meram_cfg lcd_meram_cfg = {
	.icb[0] = {
		.marker_icb     = 28,
		.cache_icb      = 24,
		.meram_offset   = 0x0,
		.meram_size     = 0x40,
	},
	.icb[1] = {
		.marker_icb     = 29,
		.cache_icb      = 25,
		.meram_offset   = 0x40,
		.meram_size     = 0x40,
	},
};


static struct sh_mobile_lcdc_info lcdc_info = {
static struct sh_mobile_lcdc_info lcdc_info = {
	.meram_dev = &meram_info,
	.ch[0] = {
	.ch[0] = {
		.chan = LCDC_CHAN_MAINLCD,
		.chan = LCDC_CHAN_MAINLCD,
		.bpp = 16,
		.bpp = 16,
		.lcd_cfg = ap4evb_lcdc_modes,
		.lcd_cfg = ap4evb_lcdc_modes,
		.num_cfg = ARRAY_SIZE(ap4evb_lcdc_modes),
		.num_cfg = ARRAY_SIZE(ap4evb_lcdc_modes),
		.meram_cfg = &lcd_meram_cfg,
	}
	}
};
};


@@ -724,15 +763,31 @@ static struct platform_device fsi_device = {
static struct platform_device fsi_ak4643_device = {
static struct platform_device fsi_ak4643_device = {
	.name		= "sh_fsi2_a_ak4643",
	.name		= "sh_fsi2_a_ak4643",
};
};
static struct sh_mobile_meram_cfg hdmi_meram_cfg = {
	.icb[0] = {
		.marker_icb     = 30,
		.cache_icb      = 26,
		.meram_offset   = 0x80,
		.meram_size     = 0x100,
	},
	.icb[1] = {
		.marker_icb     = 31,
		.cache_icb      = 27,
		.meram_offset   = 0x180,
		.meram_size     = 0x100,
	},
};


static struct sh_mobile_lcdc_info sh_mobile_lcdc1_info = {
static struct sh_mobile_lcdc_info sh_mobile_lcdc1_info = {
	.clock_source = LCDC_CLK_EXTERNAL,
	.clock_source = LCDC_CLK_EXTERNAL,
	.meram_dev = &meram_info,
	.ch[0] = {
	.ch[0] = {
		.chan = LCDC_CHAN_MAINLCD,
		.chan = LCDC_CHAN_MAINLCD,
		.bpp = 16,
		.bpp = 16,
		.interface_type = RGB24,
		.interface_type = RGB24,
		.clock_divider = 1,
		.clock_divider = 1,
		.flags = LCDC_FLAGS_DWPOL,
		.flags = LCDC_FLAGS_DWPOL,
		.meram_cfg = &hdmi_meram_cfg,
	}
	}
};
};


@@ -961,6 +1016,7 @@ static struct platform_device *ap4evb_devices[] __initdata = {
	&csi2_device,
	&csi2_device,
	&ceu_device,
	&ceu_device,
	&ap4evb_camera,
	&ap4evb_camera,
	&meram_device,
};
};


static void __init hdmi_init_pm_clock(void)
static void __init hdmi_init_pm_clock(void)
Loading